[PATCH v6 0/2] Fix compiler warnings/errors in SUNRPC and MACB

Sean Chang posted 2 patches 1 month, 2 weeks ago
drivers/net/ethernet/cadence/macb_main.c | 7 ++-----
fs/lockd/svclock.c                       | 2 --
fs/nfsd/nfsfh.c                          | 2 +-
include/linux/sunrpc/debug.h             | 6 ++----
net/sunrpc/xprtrdma/svc_rdma_transport.c | 4 +---
5 files changed, 6 insertions(+), 15 deletions(-)
[PATCH v6 0/2] Fix compiler warnings/errors in SUNRPC and MACB
Posted by Sean Chang 1 month, 2 weeks ago
This series addresses compiler warnings and a build error identified across 
different architectures and configurations.

The first patch refactors the dfprintk macros in the SUNRPC subsystem. This 
global fix silences unused variable warnings and, by incorporating 
no_printk(), ensures continued compiler type checking. It also includes 
a specific fix for a build error in nfsd (nfsfh.c) uncovered by syzbot 
in non-debug configurations.

The second patch fixes a format-truncation warning in the MACB ethernet
driver by ensuring the snprintf output fits within the destination buffer.

v6:
- Instead of wrapping dprintk in #if blocks, completely remove the 
  redundant RPC_IFDEBUG() macro and associated #if guards in nfsfh.c and 
  svc_rdma_transport.c.
- Remove the #if guard around the static helper nlmdbg_cookie2a() in 
  svclock.c.
- Verified via .lst and nm that both variables (buf) and helper functions 
  (nlmdbg_cookie2a) are fully optimized out by the compiler when 
  CONFIG_SUNRPC_DEBUG is disabled.

v5:
- Simplify dfprintk and dfprintk_rcu macros by removing the redundant 'fmt' 
  argument and calling no_printk(__VA_ARGS__) directly, as suggested by 
  David Laight.
- Fix a build error in fs/nfsd/nfsfh.c reported by syzbot. The error was 
  caused by a mismatch between the variable's lifecycle (defined via 
  RPC_IFDEBUG) and its usage in dprintk.
- Add Link tag to the syzbot build failure report.
- Update series title to reflect the general nature of the fixes.

v4:
- Refactor patch 1 to use no_printk() in sunrpc headers instead of marking
  variables as __maybe_unused. This provides a cleaner, global fix and
  enables compiler type checking.

v3:
- Expand commit descriptions to include technical details regarding macro
  expansion, as requested by Andrew Lunn.
- Test the different platform, such as ARM, ARM64, X86_64.

v2:
- Split the original treewide patch into subsystem-specific commits.
- Added more detailed commit descriptions to satisfy checkpatch.

Sean Chang (2):
  sunrpc: simplify dprintk macros and cleanup redundant debug guards
  net: macb: use ethtool_sprintf to fill ethtool stats strings

 drivers/net/ethernet/cadence/macb_main.c | 7 ++-----
 fs/lockd/svclock.c                       | 2 --
 fs/nfsd/nfsfh.c                          | 2 +-
 include/linux/sunrpc/debug.h             | 6 ++----
 net/sunrpc/xprtrdma/svc_rdma_transport.c | 4 +---
 5 files changed, 6 insertions(+), 15 deletions(-)

-- 
2.34.1
Re: [PATCH v6 0/2] Fix compiler warnings/errors in SUNRPC and MACB
Posted by Andrew Lunn 1 month, 2 weeks ago
> - Verified via .lst and nm that both variables (buf) and helper functions 
>   (nlmdbg_cookie2a) are fully optimized out by the compiler when 
>   CONFIG_SUNRPC_DEBUG is disabled.

Thanks for doing this bit. It was needed to show my guess was correct.

Reviewed-by: Andrew Lunn <andrew@lunn.ch>

    Andrew
Re: [PATCH v6 0/2] Fix compiler warnings/errors in SUNRPC and MACB
Posted by Andy Shevchenko 1 month, 2 weeks ago
On Sun, Mar 01, 2026 at 06:39:44PM +0100, Andrew Lunn wrote:
> > - Verified via .lst and nm that both variables (buf) and helper functions 
> >   (nlmdbg_cookie2a) are fully optimized out by the compiler when 
> >   CONFIG_SUNRPC_DEBUG is disabled.
> 
> Thanks for doing this bit. It was needed to show my guess was correct.
> 
> Reviewed-by: Andrew Lunn <andrew@lunn.ch>

It already has your tag. My Q in v5 still stands: Why is this a series and not
standalone changes?

Also I just gave a tag, please split these two and send individually.

-- 
With Best Regards,
Andy Shevchenko
Re: [PATCH v6 0/2] Fix compiler warnings/errors in SUNRPC and MACB
Posted by Sean Chang 1 month, 2 weeks ago
On Mon, Mar 2, 2026 at 9:26 PM Andy Shevchenko
<andriy.shevchenko@intel.com> wrote:
>
> On Sun, Mar 01, 2026 at 06:39:44PM +0100, Andrew Lunn wrote:
> > > - Verified via .lst and nm that both variables (buf) and helper functions
> > >   (nlmdbg_cookie2a) are fully optimized out by the compiler when
> > >   CONFIG_SUNRPC_DEBUG is disabled.
> >
> > Thanks for doing this bit. It was needed to show my guess was correct.
> >
> > Reviewed-by: Andrew Lunn <andrew@lunn.ch>
>
> It already has your tag. My Q in v5 still stands: Why is this a series and not
> standalone changes?
>
> Also I just gave a tag, please split these two and send individually.
>

Hi Andy,
Thanks for the suggestion. I have split these into two standalone patches
as you requested:
1. The SUNRPC/NFSD macro simplification [1]
2. The Ethtool/macb redundant guard cleanup [2]

I've also verified the optimization again via .lst files to ensure everything
is clean.

[1] https://lore.kernel.org/all/20260302142931.49108-1-seanwascoding@gmail.com/
[2] https://lore.kernel.org/all/20260302161818.63651-1-seanwascoding@gmail.com/
---
Best Regards,
Sean