Subject: Re: [PATCH v5 1/2] sunrpc: simplify dfprintk macros and fix nfsd build error

From: kernel test robot <[email-masked]>
Date: Sun, 1 Mar 2026 08:10:27 +0800

Hi Sean,

kernel test robot noticed the following build errors:

[auto build test ERROR on brauner-vfs/vfs.all]
[also build test ERROR on trondmy-nfs/linux-next net/main net-next/main linus/master v7.0-rc1 next-20260227]
[cannot apply to horms-ipvs/master]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Sean-Chang/sunrpc-simplify-dfprintk-macros-and-fix-nfsd-build-error/20260301-040617
base:   https://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs.git vfs.all
patch link:    https://lore.kernel.org/r/20260228180821.811683-2-seanwascoding%40gmail.com
patch subject: [PATCH v5 1/2] sunrpc: simplify dfprintk macros and fix nfsd build error
config: i386-randconfig-001-20260301 (https://download.01.org/0day-ci/archive/20260301/[email-masked]/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260301/[email-masked]/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <[email-masked]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email-masked]/

All errors (new ones prefixed by >>):

   In file included from include/asm-generic/bug.h:31,
                    from arch/x86/include/asm/bug.h:193,
                    from include/linux/bug.h:5,
                    from include/linux/slab.h:15,
                    from fs/lockd/svclock.c:25:
   fs/lockd/svclock.c: In function 'nlmsvc_lookup_block':
>> fs/lockd/svclock.c:163:33: error: implicit declaration of function 'nlmdbg_cookie2a' [-Wimplicit-function-declaration]
     163 |                                 nlmdbg_cookie2a(&block->b_call->a_args.cookie));
         |                                 ^~~~~~~~~~~~~~~
   include/linux/printk.h:134:32: note: in definition of macro 'no_printk'
     134 |                 _printk(fmt, ##__VA_ARGS__);            \
         |                                ^~~~~~~~~~~
   include/linux/sunrpc/debug.h:23:9: note: in expansion of macro 'dfprintk'
      23 |         dfprintk(FACILITY, fmt, ##__VA_ARGS__)
         |         ^~~~~~~~
   fs/lockd/svclock.c:159:17: note: in expansion of macro 'dprintk'
     159 |                 dprintk("lockd: check f=%p pd=%d %Ld-%Ld ty=%d cookie=%s\n",
         |                 ^~~~~~~
   fs/lockd/svclock.c:159:25: warning: format '%s' expects argument of type 'char *', but argument 7 has type 'int' [-Wformat=]
     159 |                 dprintk("lockd: check f=%p pd=%d %Ld-%Ld ty=%d cookie=%s\n",
         |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   ......
     163 |                                 nlmdbg_cookie2a(&block->b_call->a_args.cookie));
         |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         |                                 |
         |                                 int
   include/linux/printk.h:134:25: note: in definition of macro 'no_printk'
     134 |                 _printk(fmt, ##__VA_ARGS__);            \
         |                         ^~~
   include/linux/sunrpc/debug.h:23:9: note: in expansion of macro 'dfprintk'
      23 |         dfprintk(FACILITY, fmt, ##__VA_ARGS__)
         |         ^~~~~~~~
   fs/lockd/svclock.c:159:17: note: in expansion of macro 'dprintk'
     159 |                 dprintk("lockd: check f=%p pd=%d %Ld-%Ld ty=%d cookie=%s\n",
         |                 ^~~~~~~
   fs/lockd/svclock.c:159:72: note: format string is defined here
     159 |                 dprintk("lockd: check f=%p pd=%d %Ld-%Ld ty=%d cookie=%s\n",
         |                                                                       ~^
         |                                                                        |
         |                                                                        char *
         |                                                                       %d
   fs/lockd/svclock.c: In function 'nlmsvc_find_block':
   fs/lockd/svclock.c:202:17: warning: format '%s' expects argument of type 'char *', but argument 2 has type 'int' [-Wformat=]
     202 |         dprintk("nlmsvc_find_block(%s): block=%p\n", nlmdbg_cookie2a(cookie), block);
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  ~~~~~~~~~~~~~~~~~~~~~~~
         |                                                      |
         |                                                      int
   include/linux/printk.h:134:25: note: in definition of macro 'no_printk'
     134 |                 _printk(fmt, ##__VA_ARGS__);            \
         |                         ^~~
   include/linux/sunrpc/debug.h:23:9: note: in expansion of macro 'dfprintk'
      23 |         dfprintk(FACILITY, fmt, ##__VA_ARGS__)
         |         ^~~~~~~~
   fs/lockd/svclock.c:202:9: note: in expansion of macro 'dprintk'
     202 |         dprintk("nlmsvc_find_block(%s): block=%p\n", nlmdbg_cookie2a(cookie), block);
         |         ^~~~~~~
   fs/lockd/svclock.c:202:37: note: format string is defined here
     202 |         dprintk("nlmsvc_find_block(%s): block=%p\n", nlmdbg_cookie2a(cookie), block);
         |                                    ~^
         |                                     |
         |                                     char *
         |                                    %d

vim +/nlmdbg_cookie2a +163 fs/lockd/svclock.c

^1da177e4c3f41 Linus Torvalds  2005-04-16  141  
^1da177e4c3f41 Linus Torvalds  2005-04-16  142  /*
d9f6eb75d49007 Trond Myklebust 2006-03-20  143   * Find a block for a given lock
^1da177e4c3f41 Linus Torvalds  2005-04-16  144   */
^1da177e4c3f41 Linus Torvalds  2005-04-16  145  static struct nlm_block *
d9f6eb75d49007 Trond Myklebust 2006-03-20  146  nlmsvc_lookup_block(struct nlm_file *file, struct nlm_lock *lock)
^1da177e4c3f41 Linus Torvalds  2005-04-16  147  {
68a2d76cea4234 Olaf Kirch      2006-10-04  148  	struct nlm_block	*block;
^1da177e4c3f41 Linus Torvalds  2005-04-16  149  	struct file_lock	*fl;
^1da177e4c3f41 Linus Torvalds  2005-04-16  150  
^1da177e4c3f41 Linus Torvalds  2005-04-16  151  	dprintk("lockd: nlmsvc_lookup_block f=%p pd=%d %Ld-%Ld ty=%d\n",
eb8ed7c6ab08cd Jeff Layton     2024-01-31  152  				file, lock->fl.c.flc_pid,
^1da177e4c3f41 Linus Torvalds  2005-04-16  153  				(long long)lock->fl.fl_start,
eb8ed7c6ab08cd Jeff Layton     2024-01-31  154  				(long long)lock->fl.fl_end,
eb8ed7c6ab08cd Jeff Layton     2024-01-31  155  				lock->fl.c.flc_type);
be2be5f7f44364 Alexander Aring 2023-07-20  156  	spin_lock(&nlm_blocked_lock);
68a2d76cea4234 Olaf Kirch      2006-10-04  157  	list_for_each_entry(block, &nlm_blocked, b_list) {
92737230dd3f14 Trond Myklebust 2006-03-20  158  		fl = &block->b_call->a_args.lock.fl;
^1da177e4c3f41 Linus Torvalds  2005-04-16  159  		dprintk("lockd: check f=%p pd=%d %Ld-%Ld ty=%d cookie=%s\n",
eb8ed7c6ab08cd Jeff Layton     2024-01-31  160  				block->b_file, fl->c.flc_pid,
^1da177e4c3f41 Linus Torvalds  2005-04-16  161  				(long long)fl->fl_start,
eb8ed7c6ab08cd Jeff Layton     2024-01-31  162  				(long long)fl->fl_end, fl->c.flc_type,
92737230dd3f14 Trond Myklebust 2006-03-20 @163  				nlmdbg_cookie2a(&block->b_call->a_args.cookie));
^1da177e4c3f41 Linus Torvalds  2005-04-16  164  		if (block->b_file == file && nlm_compare_locks(fl, &lock->fl)) {
6849c0cab69f5d Trond Myklebust 2006-03-20  165  			kref_get(&block->b_count);
be2be5f7f44364 Alexander Aring 2023-07-20  166  			spin_unlock(&nlm_blocked_lock);
^1da177e4c3f41 Linus Torvalds  2005-04-16  167  			return block;
^1da177e4c3f41 Linus Torvalds  2005-04-16  168  		}
^1da177e4c3f41 Linus Torvalds  2005-04-16  169  	}
be2be5f7f44364 Alexander Aring 2023-07-20  170  	spin_unlock(&nlm_blocked_lock);
^1da177e4c3f41 Linus Torvalds  2005-04-16  171  
^1da177e4c3f41 Linus Torvalds  2005-04-16  172  	return NULL;
^1da177e4c3f41 Linus Torvalds  2005-04-16  173  }
^1da177e4c3f41 Linus Torvalds  2005-04-16  174  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki