From: Simon Horman <horms@kernel.org>
To: David Wei <dw@davidwei.uk>
Cc: netdev@vger.kernel.org, Michael Chan <michael.chan@broadcom.com>,
Pavan Chebbi <pavan.chebbi@broadcom.com>,
Andy Gospodarek <andrew.gospodarek@broadcom.com>,
Adrian Alvarado <adrian.alvarado@broadcom.com>,
Mina Almasry <almasrymina@google.com>,
Shailend Chand <shailend@google.com>,
Jakub Kicinski <kuba@kernel.org>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Paolo Abeni <pabeni@redhat.com>
Subject: Re: [RFC PATCH net-next v2 1/9] queue_api: define queue api
Date: Sat, 4 May 2024 13:11:54 +0100 [thread overview]
Message-ID: <20240504121154.GF3167983@kernel.org> (raw)
In-Reply-To: <20240502045410.3524155-2-dw@davidwei.uk>
On Wed, May 01, 2024 at 09:54:02PM -0700, David Wei wrote:
> From: Mina Almasry <almasrymina@google.com>
>
> This API enables the net stack to reset the queues used for devmem TCP.
>
> Signed-off-by: Mina Almasry <almasrymina@google.com>
> Signed-off-by: David Wei <dw@davidwei.uk>
...
> diff --git a/include/net/netdev_queues.h b/include/net/netdev_queues.h
> index 1ec408585373..58042957c39f 100644
> --- a/include/net/netdev_queues.h
> +++ b/include/net/netdev_queues.h
> @@ -60,6 +60,33 @@ struct netdev_stat_ops {
> struct netdev_queue_stats_tx *tx);
> };
>
> +/**
> + * struct netdev_queue_mgmt_ops - netdev ops for queue management
> + *
> + * @ndo_queue_mem_alloc: Allocate memory for an RX queue. The memory returned
> + * in the form of a void* can be passed to
> + * ndo_queue_mem_free() for freeing or to ndo_queue_start
> + * to create an RX queue with this memory.
> + *
> + * @ndo_queue_mem_free: Free memory from an RX queue.
> + *
> + * @ndo_queue_start: Start an RX queue at the specified index.
> + *
> + * @ndo_queue_stop: Stop the RX queue at the specified index.
> + */
> +struct netdev_queue_mgmt_ops {
> + void * (*ndo_queue_mem_alloc)(struct net_device *dev,
> + int idx);
> + void (*ndo_queue_mem_free)(struct net_device *dev,
> + void *queue_mem);
> + int (*ndo_queue_start)(struct net_device *dev,
> + int idx,
> + void *queue_mem);
> + int (*ndo_queue_stop)(struct net_device *dev,
> + int idx,
> + void **out_queue_mem);
Nit: The indentation (before the return types) should use tabs rather than
spaces. And I'm not sure I see the value of the large indentation after
the return types. Basically, I suggest this:
void * (*ndo_queue_mem_alloc)(struct net_device *dev, int idx);
void (*ndo_queue_mem_free)(struct net_device *dev, void *queue_mem);
int (*ndo_queue_start)(struct net_device *dev, int idx,
void *queue_mem);
int (*ndo_queue_stop)(struct net_device *dev, int idx,
void **out_queue_mem);
> +};
> +
> /**
> * DOC: Lockless queue stopping / waking helpers.
> *
> --
> 2.43.0
>
>
next prev parent reply other threads:[~2024-05-04 12:12 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-02 4:54 [RFC PATCH net-next v2 0/9] bnxt: implement queue api David Wei
2024-05-02 4:54 ` [RFC PATCH net-next v2 1/9] queue_api: define " David Wei
2024-05-04 12:11 ` Simon Horman [this message]
2024-05-06 0:34 ` David Wei
2024-05-02 4:54 ` [RFC PATCH net-next v2 2/9] bnxt: implement " David Wei
2024-05-02 17:23 ` Mina Almasry
2024-05-06 0:36 ` David Wei
2024-05-02 4:54 ` [RFC PATCH net-next v2 3/9] netdev: add netdev_rx_queue_restart() David Wei
2024-05-02 17:27 ` Mina Almasry
2024-05-06 0:38 ` David Wei
2024-05-04 12:20 ` Simon Horman
2024-05-06 0:41 ` David Wei
2024-05-07 16:46 ` Simon Horman
2024-05-08 17:13 ` Mina Almasry
2024-05-02 4:54 ` [RFC PATCH net-next v2 4/9] bnxt: refactor bnxt_{alloc,free}_one_rx_ring() David Wei
2024-05-02 4:54 ` [RFC PATCH net-next v2 5/9] bnxt: refactor bnxt_{alloc,free}_one_tpa_info() David Wei
2024-05-04 12:30 ` Simon Horman
2024-05-06 0:43 ` David Wei
2024-05-02 4:54 ` [RFC PATCH net-next v2 6/9] bnxt: add __bnxt_init_rx_ring_struct() helper David Wei
2024-05-02 4:54 ` [RFC PATCH net-next v2 7/9] bnxt: add helpers for allocating rx ring mem David Wei
2024-05-04 12:34 ` Simon Horman
2024-05-06 0:42 ` David Wei
2024-05-02 4:54 ` [RFC PATCH net-next v2 8/9] bnxt: alloc rx ring mem first before reset David Wei
2024-05-02 4:54 ` [RFC PATCH net-next v2 9/9] bnxt: swap rx ring mem during queue_stop() David Wei
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240504121154.GF3167983@kernel.org \
--to=horms@kernel.org \
--cc=adrian.alvarado@broadcom.com \
--cc=almasrymina@google.com \
--cc=andrew.gospodarek@broadcom.com \
--cc=davem@davemloft.net \
--cc=dw@davidwei.uk \
--cc=edumazet@google.com \
--cc=kuba@kernel.org \
--cc=michael.chan@broadcom.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=pavan.chebbi@broadcom.com \
--cc=shailend@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.