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 7/9] bnxt: add helpers for allocating rx ring mem
Date: Sat, 4 May 2024 13:34:32 +0100 [thread overview]
Message-ID: <20240504123432.GI3167983@kernel.org> (raw)
In-Reply-To: <20240502045410.3524155-8-dw@davidwei.uk>
On Wed, May 01, 2024 at 09:54:08PM -0700, David Wei wrote:
> Add several helper functions for allocating rx ring memory. These are
> mostly taken from existing functions, but with unnecessary bits stripped
> out such that only allocations are done.
>
> Signed-off-by: David Wei <dw@davidwei.uk>
> ---
> drivers/net/ethernet/broadcom/bnxt/bnxt.c | 87 +++++++++++++++++++++++
> 1 file changed, 87 insertions(+)
>
> diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
> index b0a8d14b7319..21c1a7cb70ab 100644
> --- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
> +++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
> @@ -14845,6 +14845,93 @@ static const struct netdev_stat_ops bnxt_stat_ops = {
> .get_base_stats = bnxt_get_base_stats,
> };
>
> +static int __bnxt_alloc_rx_desc_ring(struct pci_dev *pdev, struct bnxt_ring_mem_info *rmem)
> +{
> + int i, rc;
> +
> + for (i = 0; i < rmem->nr_pages; i++) {
> + rmem->pg_arr[i] = dma_alloc_coherent(&pdev->dev,
> + rmem->page_size,
> + &rmem->dma_arr[i],
> + GFP_KERNEL);
> + if (!rmem->pg_arr[i]) {
> + rc = -ENOMEM;
> + goto err_free;
> + }
> + }
> +
> + return 0;
> +
> +err_free:
> + while (i--) {
> + dma_free_coherent(&pdev->dev, rmem->page_size,
> + rmem->pg_arr[i], rmem->dma_arr[i]);
> + rmem->pg_arr[i] = NULL;
> + }
> + return rc;
> +}
> +
> +static int bnxt_alloc_rx_ring_struct(struct bnxt *bp, struct bnxt_ring_struct *ring)
Hi David,
W=1 builds fail because this and other functions introduced by
this patch are unused. I agree that it is nice to split up changes
into discrete patches. But in this case the change isn't really discrete.
So perhaps it is best to add helper functions in the same patch
where they are first used.
next prev parent reply other threads:[~2024-05-04 12:34 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
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 [this message]
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=20240504123432.GI3167983@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).