[00/14] net/ionic: struct optimizations, fixes
Message ID | 20210204195853.13411-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 9CB64A0524; Thu, 4 Feb 2021 20:59:10 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1236F2407D0; Thu, 4 Feb 2021 20:59:10 +0100 (CET) Received: from mail-pl1-f173.google.com (mail-pl1-f173.google.com [209.85.214.173]) by mails.dpdk.org (Postfix) with ESMTP id 147962407C2 for <dev@dpdk.org>; Thu, 4 Feb 2021 20:59:09 +0100 (CET) Received: by mail-pl1-f173.google.com with SMTP id y10so2335242plk.7 for <dev@dpdk.org>; Thu, 04 Feb 2021 11:59:08 -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; bh=hd8UcMBAUq/dQvVXWoaGyEIz1ASMBwSEcEqlc0T3ajE=; b=Q71LEGZrYteDXaoDewxrQUMMyrQAqOC+xkyOF9rq4QsFvg1C9XCATADSuTLySXsJW6 Sh6oD8qLKrVmfbHOUVnGrgYqszF28ouTp2WbT9hS9RFxeVpuK8x3bpfpakGRoO/aSK9M 3yJvLmzfDLeAqNH/lsBwbBsJm0jobPBAuc2uiYPcIOuQd/tuAO458M87CfF8oV0/Xsnf R5avyusRhqOMt63d1jItTfJseq78phQLAwg1Dac04QGC5bLC1wnZ14wTdBetPvBoTJXi CRGyxT7vW+JjYMJ+yE/Ws4s8Fv2jCIs6NUdBtPM6c57nkqJzjo9ZHWecz/tMMxAiPpBZ z5nQ== 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; bh=hd8UcMBAUq/dQvVXWoaGyEIz1ASMBwSEcEqlc0T3ajE=; b=I6RmoSoO3yOFV9ClcEMo2glcqNzE0hGJwzGXjo9iWZ6clVvJu7CkrIScOo8ZmYwofv mAHj8MRjxv0t6+tOpPc63jsUuJjhrKK56Nh99clAA3ONeJ0phpnHZuLJY9OxnPcH3vM3 Kkz9Qei0D+PWeXUEar53SltZVF56uAnLkCndqtcOPN67xIMwQ0a7EGEwvCBsRoSOoqhO gVx9sFav4QlmR46pZcV651lVLlIAiB2sjK7lZunGK3haPhX6j+wyxYf2ObLyqlhTCxdg rxpx12Evxy7nY7Y79fIkMLoefrmvAOGQjqAKtWZ77/Zu6+DgdRhd9patdVftRZ69S1rM yjtQ== X-Gm-Message-State: AOAM532874Dnebncg9eoWFXJmBzmQFxdfDXJiTazXpQvUcvf7qHnjIQt IIiIuunH7qE25DZtpiegc6Q9qKIpFbeimg== X-Google-Smtp-Source: ABdhPJytsPqUa37xSWpJ6HsYseK53GcKf9gvJf43PYQx0szRmm3bZ2KRwBLIS8lffJYcDdl1LZMcSQ== X-Received: by 2002:a17:902:123:b029:dc:27b:3c62 with SMTP id 32-20020a1709020123b02900dc027b3c62mr784923plb.16.1612468747882; Thu, 04 Feb 2021 11:59:07 -0800 (PST) Received: from driver-dev1.pensando.io ([12.226.153.42]) by smtp.gmail.com with ESMTPSA id r14sm7757915pgi.27.2021.02.04.11.59.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 04 Feb 2021 11:59:07 -0800 (PST) From: Andrew Boyer <aboyer@pensando.io> To: dev@dpdk.org Cc: Alfredo Cardigliano <cardigliano@ntop.org>, Andrew Boyer <aboyer@pensando.io> Date: Thu, 4 Feb 2021 11:58:39 -0800 Message-Id: <20210204195853.13411-1-aboyer@pensando.io> X-Mailer: git-send-email 2.17.1 Subject: [dpdk-dev] [PATCH 00/14] 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. 4, 2021, 7:58 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, two minor fixes to Tx packet prep and LIF init.
Signed-off-by: Andrew Boyer <aboyer@pensando.io>
Andrew Boyer (14):
net/ionic: cut down completion queue structure
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: fix Tx fragment limit check
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 | 81 +++------
drivers/net/ionic/ionic_lif.c | 242 +++++++++++++------------
drivers/net/ionic/ionic_lif.h | 77 +++++---
drivers/net/ionic/ionic_main.c | 93 +++++++++-
drivers/net/ionic/ionic_rx_filter.c | 1 +
drivers/net/ionic/ionic_rxtx.c | 265 ++++++++++++++++------------
8 files changed, 458 insertions(+), 446 deletions(-)