Re: [PATCH] rculist: Fix _list_check_srcu() macro

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on rcu/dev]
[cannot apply to v5.8-rc5 next-20200713]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use  as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/madhuparnabhowmik10-gmail-com/rculist-Fix-_list_check_srcu-macro/20200714-015126
base:   https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git dev
config: x86_64-rhel-7.6 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-14) 9.3.0
reproduce (this is a W=1 build):
        # save the attached .config to linux build tree
        make W=1 ARCH=x86_64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

   In file included from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from include/linux/kvm_host.h:12,
                    from arch/x86/kvm/mmu/page_track.c:14:
   arch/x86/kvm/mmu/page_track.c: In function 'kvm_page_track_write':
>> include/linux/rculist.h:76:33: error: 'TRUE' undeclared (first use in this function)
      76 | #define __list_check_srcu(cond) TRUE
         |                                 ^~~~
   include/linux/rculist.h:727:7: note: in expansion of macro '__list_check_srcu'
     727 |  for (__list_check_srcu(cond),     \
         |       ^~~~~~~~~~~~~~~~~
   arch/x86/kvm/mmu/page_track.c:232:2: note: in expansion of macro 'hlist_for_each_entry_srcu'
     232 |  hlist_for_each_entry_srcu(n, &head->track_notifier_list, node,
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/rculist.h:76:33: note: each undeclared identifier is reported only once for each function it appears in
      76 | #define __list_check_srcu(cond) TRUE
         |                                 ^~~~
   include/linux/rculist.h:727:7: note: in expansion of macro '__list_check_srcu'
     727 |  for (__list_check_srcu(cond),     \
         |       ^~~~~~~~~~~~~~~~~
   arch/x86/kvm/mmu/page_track.c:232:2: note: in expansion of macro 'hlist_for_each_entry_srcu'
     232 |  hlist_for_each_entry_srcu(n, &head->track_notifier_list, node,
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/rculist.h:727:30: warning: left-hand operand of comma expression has no effect [-Wunused-value]
     727 |  for (__list_check_srcu(cond),     \
         |                              ^
   arch/x86/kvm/mmu/page_track.c:232:2: note: in expansion of macro 'hlist_for_each_entry_srcu'
     232 |  hlist_for_each_entry_srcu(n, &head->track_notifier_list, node,
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~
   arch/x86/kvm/mmu/page_track.c: In function 'kvm_page_track_flush_slot':
>> include/linux/rculist.h:76:33: error: 'TRUE' undeclared (first use in this function)
      76 | #define __list_check_srcu(cond) TRUE
         |                                 ^~~~
   include/linux/rculist.h:727:7: note: in expansion of macro '__list_check_srcu'
     727 |  for (__list_check_srcu(cond),     \
         |       ^~~~~~~~~~~~~~~~~
   arch/x86/kvm/mmu/page_track.c:258:2: note: in expansion of macro 'hlist_for_each_entry_srcu'
     258 |  hlist_for_each_entry_srcu(n, &head->track_notifier_list, node,
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/rculist.h:727:30: warning: left-hand operand of comma expression has no effect [-Wunused-value]
     727 |  for (__list_check_srcu(cond),     \
         |                              ^
   arch/x86/kvm/mmu/page_track.c:258:2: note: in expansion of macro 'hlist_for_each_entry_srcu'
     258 |  hlist_for_each_entry_srcu(n, &head->track_notifier_list, node,
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~

vim +/TRUE +76 include/linux/rculist.h

    58	
    59	#ifdef CONFIG_PROVE_RCU_LIST
    60	#define __list_check_rcu(dummy, cond, extra...)				\
    61		({								\
    62		check_arg_count_one(extra);					\
    63		RCU_LOCKDEP_WARN(!(cond) && !rcu_read_lock_any_held(),		\
    64				 "RCU-list traversed in non-reader section!");	\
    65		})
    66	
    67	#define __list_check_srcu(cond)					 \
    68		({								 \
    69		RCU_LOCKDEP_WARN(!(cond),					 \
    70			"RCU-list traversed without holding the required lock!");\
    71		})
    72	#else
    73	#define __list_check_rcu(dummy, cond, extra...)				\
    74		({ check_arg_count_one(extra); })
    75	
  > 76	#define __list_check_srcu(cond)	TRUE
    77	#endif
    78	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux