[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87y1idv4du.fsf@meer.lwn.net>
Date: Mon, 14 Aug 2023 12:57:17 -0600
From: Jonathan Corbet <corbet@....net>
To: Pavan Kumar Linga <pavan.kumar.linga@...el.com>, netdev@...r.kernel.org,
kuba@...nel.org
Cc: linux-doc@...r.kernel.org, emil.s.tantilov@...el.com,
joshua.a.hay@...el.com, sridhar.samudrala@...el.com, alan.brady@...el.com,
madhu.chittim@...el.com, jesse.brandeburg@...el.com,
anthony.l.nguyen@...el.com, willemb@...gle.com, decot@...gle.com,
rdunlap@...radead.org, Pavan Kumar Linga <pavan.kumar.linga@...el.com>
Subject: Re: [PATCH net-next v2 1/2] scripts: kernel-doc: parse
DEFINE_DMA_UNMAP_[ADDR|LEN]
Pavan Kumar Linga <pavan.kumar.linga@...el.com> writes:
> At present, if the macros DEFINE_DMA_UNMAP_ADDR() and
> DEFINE_DMA_UNMAP_LEN() are used in the structures as shown
> below, instead of parsing the parameter in the parentheses,
> kernel-doc parses 'DEFINE_DMA_UNMAP_ADDR(' and
> 'DEFINE_DMA_UNMAP_LEN(' which results in the following
> warnings:
>
> drivers/net/ethernet/intel/idpf/idpf_txrx.h:201: warning: Function
> parameter or member 'DEFINE_DMA_UNMAP_ADDR(dma' not described in
> 'idpf_tx_buf'
> drivers/net/ethernet/intel/idpf/idpf_txrx.h:201: warning: Function
> parameter or member 'DEFINE_DMA_UNMAP_LEN(len' not described in
> 'idpf_tx_buf'
>
> struct idpf_tx_buf {
> DEFINE_DMA_UNMAP_ADDR(dma);
> DEFINE_DMA_UNMAP_LEN(len);
> };
>
> Fix the warnings by parsing DEFINE_DMA_UNMAP_ADDR() and
> DEFINE_DMA_UNMAP_LEN().
>
> Signed-off-by: Pavan Kumar Linga <pavan.kumar.linga@...el.com>
> Acked-by: Randy Dunlap <rdunlap@...radead.org>
> ---
> scripts/kernel-doc | 4 ++++
> 1 file changed, 4 insertions(+)
Is there a reason why you didn't CC me on these?
> diff --git a/scripts/kernel-doc b/scripts/kernel-doc
> index d0116c6939dc..cfb1cb223508 100755
> --- a/scripts/kernel-doc
> +++ b/scripts/kernel-doc
> @@ -1168,6 +1168,10 @@ sub dump_struct($$) {
> $members =~ s/DECLARE_KFIFO_PTR\s*\($args,\s*$args\)/$2 \*$1/gos;
> # replace DECLARE_FLEX_ARRAY
> $members =~ s/(?:__)?DECLARE_FLEX_ARRAY\s*\($args,\s*$args\)/$1 $2\[\]/gos;
> + #replace DEFINE_DMA_UNMAP_ADDR
> + $members =~ s/DEFINE_DMA_UNMAP_ADDR\s*\($args\)/dma_addr_t $1/gos;
> + #replace DEFINE_DMA_UNMAP_LEN
> + $members =~ s/DEFINE_DMA_UNMAP_LEN\s*\($args\)/__u32 $1/gos;
> my $declaration = $members;
I'm not happy with this ... we are continuing to reimplement parts of
the C preprocessor here, badly, creating an ugly mess in the process.
That said, you are just the latest arrival at the party, can't blame you
for this. Until we come up with a better way here, I guess this will
do.
Thanks,
jon
Powered by blists - more mailing lists