From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id AFE2DA054D; Tue, 16 Feb 2021 21:35:50 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 44D8016078D; Tue, 16 Feb 2021 21:35:50 +0100 (CET) Received: from mail-pf1-f179.google.com (mail-pf1-f179.google.com [209.85.210.179]) by mails.dpdk.org (Postfix) with ESMTP id 20C3116078A for ; Tue, 16 Feb 2021 21:35:49 +0100 (CET) Received: by mail-pf1-f179.google.com with SMTP id 189so6905680pfy.6 for ; Tue, 16 Feb 2021 12:35:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pensando.io; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=3xVl4UReMjHoESDAt8yS53sjh4W5EPEHqDLKU6zQPKU=; b=aELFVcdz99TTmwhgsE1zxArMIKbg86BO7rPXqsvC0mEATBZfOURfXzutlykLPEH5bB SnNCGTIEWLUbuWndPg+8lrT40VTk6ru4dxewl4w3xgxG2bi1wU7ihp0HntAfC4nQqhpk Vw4TtAg5FdMOsy6OmeEIl8RG/BsAkvfcU5WAyyvIwL0VUU+Vx39EbU2RYdfowWMMele5 F8CZhoXsvB4dQvr/BWywH2i5tKFefvqlFwj/camg799bYaoDjZaIPKwjN1pqBvfo5TfC ntK+jtr0T2VN95KZDQlPxmIyFBgPz2RyewFLO4YX27nKbnYBbb3FIPZI+ZjGLVi3xXCV ZYxw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=3xVl4UReMjHoESDAt8yS53sjh4W5EPEHqDLKU6zQPKU=; b=Wl0IXPbCXQ6Sv+SP5dCzK8zlgTjUstoeD7srskFi4XxGB427NubnbKLjLtNGBJBhSK SCvwK2sLRMcIxhfTK5qEo0wkYFSzovTEVsPD6cx6g3EsJ7l+uxVIrqYzp6z7XfCwDRty c53QlZG7ZrkxXPeVMB/rFN3h9f//Ut1Pagkx8pXEF1V6XLyZ17E73h8lJbImVGDf/eNA AJtxAKVJ6+ujJSM6pk1u3bpwHKV37sFf7gR27ggRQ6mBagxGuW0i5eKsxEYp4oNf7tyj 7YPUY8mNDnPC8wWcmCdk3NjW0XNjPAZ57/3ZqGtWgi70+iSZ4JRoR/lQ9tkGnnyxrasU xz5Q== X-Gm-Message-State: AOAM532J54GTDlFgmF5zZWYUKo7Enk2y6lJsk86HRqeM5cXbwUbF4Hwt iFVTeIwIy2DYwyAyxE1kDQ0CplDkKFQjqQ== X-Google-Smtp-Source: ABdhPJxZyORr/Djm3rhb25mmICSBDeU0OLu2rAzM7T3fGByNcaogcHjMff1QEQvVk60VPBzTgCJs+A== X-Received: by 2002:a62:fc83:0:b029:1d6:1767:dd1c with SMTP id e125-20020a62fc830000b02901d61767dd1cmr21078636pfh.70.1613507748049; Tue, 16 Feb 2021 12:35:48 -0800 (PST) Received: from driver-dev1.pensando.io ([12.226.153.42]) by smtp.gmail.com with ESMTPSA id u17sm11371pgh.72.2021.02.16.12.35.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 16 Feb 2021 12:35:47 -0800 (PST) From: Andrew Boyer To: dev@dpdk.org Cc: Alfredo Cardigliano , Andrew Boyer Date: Tue, 16 Feb 2021 12:35:25 -0800 Message-Id: <20210216203540.29290-1-aboyer@pensando.io> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20210204195853.13411-1-aboyer@pensando.io> References: <20210204195853.13411-1-aboyer@pensando.io> Subject: [dpdk-dev] [PATCH v2 00/15] net/ionic: struct optimizations, fixes X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" This patch series reorganizes the main datastructure for each queue, struct ionic_qcq. Its constituent struct ionic_queue and struct ionic_cq are stripped down first. Then the generic struct ionic_qcq is stripped down, and a unique struct is created for each queue type. The adminq code is consolidated into ionic_main.c as part of the cleanup. Next comes some minor performance fixups related to queue posting and doorbells. Finally, a minor improvement to Tx packet prep and a minor fix for LIF init. Signed-off-by: Andrew Boyer -- v2: * Resend for new DPDK release cycle * Insert a new patch "net/ionic: remove unused filter delete function" so that even more adminq code can be staticized * Update second-to-last patch which was partially applied in 21.02 Andrew Boyer (15): net/ionic: cut down completion queue structure net/ionic: remove unused filter delete function net/ionic: consolidate adminq code net/ionic: convert info array to generic pointers net/ionic: remove unused field from queue structure net/ionic: remove unused interrupt free function net/ionic: cut down queue structure net/ionic: split up queue-completion queue structure net/ionic: use the socket id passed in for Rx and Tx queues net/ionic: log queue counters when tearing down net/ionic: break up queue post function net/ionic: ring doorbell once at the end of each burst net/ionic: send as many packets as possible net/ionic: store Tx fragment limit in queue net/ionic: fix code around lif init devcmd drivers/net/ionic/ionic.h | 13 +- drivers/net/ionic/ionic_dev.c | 132 +------------- drivers/net/ionic/ionic_dev.h | 82 +++------ drivers/net/ionic/ionic_lif.c | 242 +++++++++++++------------ drivers/net/ionic/ionic_lif.h | 77 +++++--- drivers/net/ionic/ionic_main.c | 95 +++++++++- drivers/net/ionic/ionic_rx_filter.c | 15 +- drivers/net/ionic/ionic_rx_filter.h | 1 - drivers/net/ionic/ionic_rxtx.c | 265 ++++++++++++++++------------ 9 files changed, 458 insertions(+), 464 deletions(-) -- 2.17.1