Re: [PATCH v5 5/5] Revert "nfsd: Mark variable __maybe_unused to avoid W=1 build break"

From: Chuck Lever

Date: Sat Mar 21 2026 - 12:40:30 EST


On 3/21/26 10:15 AM, Sean Chang wrote:
> This reverts commit ebae102897e760e9e6bc625f701dd666b2163bd1.
>
> The __maybe_unused attributes are no longer needed because dprintk()
> now uses no_printk(), which ensures variables are referenced by the
> compiler even when debugging is disabled.

Some commit message improvements are needed:

This revert is safe only because ("sunrpc: Fix dprintk type mismatch
using do-while(0)") already changed the non-debug dfprintk path to use
no_printk(__VA_ARGS__). The commit message doesn't reference that
enabling commit by SHA or subject. If this revert is cherry-picked or
backported without that pre-requisite, the W=1 build warning returns
silently.

The commit message says "dprintk() now uses no_printk()", but this is
true only for the !CONFIG_SUNRPC_DEBUG path. When CONFIG_SUNRPC_DEBUG is
enabled, dfprintk expands inode directly via __sunrpc_printk, not
through no_printk.


> Signed-off-by: Sean Chang <seanwascoding@xxxxxxxxx>
> ---
> fs/nfsd/export.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/nfsd/export.c b/fs/nfsd/export.c
> index 8fdbba7cad96..8116e5bcbe00 100644
> --- a/fs/nfsd/export.c
> +++ b/fs/nfsd/export.c
> @@ -1025,7 +1025,7 @@ exp_rootfh(struct net *net, struct auth_domain *clp, char *name,
> {
> struct svc_export *exp;
> struct path path;
> - struct inode *inode __maybe_unused;
> + struct inode *inode;
> struct svc_fh fh;
> int err;
> struct nfsd_net *nn = net_generic(net, nfsd_net_id);


--
Chuck Lever