[v2,00/15] net/ionic: struct optimizations, fixes
Message ID | 20210216203540.29290-1-aboyer@pensando.io (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org 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 <dev@dpdk.org>; Tue, 16 Feb 2021 21:35:49 +0100 (CET) Received: by mail-pf1-f179.google.com with SMTP id 189so6905680pfy.6 for <dev@dpdk.org>; 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 <aboyer@pensando.io> To: dev@dpdk.org Cc: Alfredo Cardigliano <cardigliano@ntop.org>, Andrew Boyer <aboyer@pensando.io> 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 <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Message
Andrew Boyer
Feb. 16, 2021, 8:35 p.m. UTC
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 <aboyer@pensando.io>
--
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(-)