Hi Johannes,

kernel test robot noticed the following build errors:

[auto build test ERROR on linus/master]
[also build test ERROR on v6.19-rc7]
[cannot apply to mst-vhost/linux-next next-20260127]
[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/Johannes-Thumshirn/virtio-silence-KCSAN-warning-in-virtqueue_get_buf_ctx_split/20260127-235023
base:   linus/master
patch link:    
https://lore.kernel.org/r/20260127152524.200465-3-johannes.thumshirn%40wdc.com
patch subject: [PATCH v2 2/2] virtio: silence KCSAN warning in 
virtqueue_kick_prepare
config: sh-allmodconfig 
(https://download.01.org/0day-ci/archive/20260128/[email protected]/config)
compiler: sh4-linux-gcc (GCC) 15.2.0
reproduce (this is a W=1 build): 
(https://download.01.org/0day-ci/archive/20260128/[email protected]/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 protected]>
| Closes: 
https://lore.kernel.org/oe-kbuild-all/[email protected]/

All errors (new ones prefixed by >>):

   drivers/vhost/vringh.c: In function '__vringh_notify_enable':
>> drivers/vhost/vringh.c:559:33: error: lvalue required as unary '&' operand
     559 |                 if (putu16(vrh, &vring_avail_event(&vrh->vring),
         |                                 ^
   drivers/vhost/vringh.c:562:36: error: lvalue required as unary '&' operand
     562 |                                    &vring_avail_event(&vrh->vring));
         |                                    ^


vim +559 drivers/vhost/vringh.c

f87d0fbb579818f Rusty Russell      2013-03-20  542  
f87d0fbb579818f Rusty Russell      2013-03-20  543  static inline bool 
__vringh_notify_enable(struct vringh *vrh,
b9f7ac8c72894c1 Michael S. Tsirkin 2014-12-12  544                              
          int (*getu16)(const struct vringh *vrh,
b9f7ac8c72894c1 Michael S. Tsirkin 2014-12-12  545                              
                        u16 *val, const __virtio16 *p),
b9f7ac8c72894c1 Michael S. Tsirkin 2014-12-12  546                              
          int (*putu16)(const struct vringh *vrh,
b9f7ac8c72894c1 Michael S. Tsirkin 2014-12-12  547                              
                        __virtio16 *p, u16 val))
f87d0fbb579818f Rusty Russell      2013-03-20  548  {
f87d0fbb579818f Rusty Russell      2013-03-20  549      u16 avail;
f87d0fbb579818f Rusty Russell      2013-03-20  550  
f87d0fbb579818f Rusty Russell      2013-03-20  551      if 
(!vrh->event_indices) {
f87d0fbb579818f Rusty Russell      2013-03-20  552              /* Old-school; 
update flags. */
b9f7ac8c72894c1 Michael S. Tsirkin 2014-12-12  553              if (putu16(vrh, 
&vrh->vring.used->flags, 0) != 0) {
f87d0fbb579818f Rusty Russell      2013-03-20  554                      
vringh_bad("Clearing used flags %p",
f87d0fbb579818f Rusty Russell      2013-03-20  555                              
   &vrh->vring.used->flags);
f87d0fbb579818f Rusty Russell      2013-03-20  556                      return 
true;
f87d0fbb579818f Rusty Russell      2013-03-20  557              }
f87d0fbb579818f Rusty Russell      2013-03-20  558      } else {
b9f7ac8c72894c1 Michael S. Tsirkin 2014-12-12 @559              if (putu16(vrh, 
&vring_avail_event(&vrh->vring),
f87d0fbb579818f Rusty Russell      2013-03-20  560                         
vrh->last_avail_idx) != 0) {
f87d0fbb579818f Rusty Russell      2013-03-20  561                      
vringh_bad("Updating avail event index %p",
f87d0fbb579818f Rusty Russell      2013-03-20  562                              
   &vring_avail_event(&vrh->vring));
f87d0fbb579818f Rusty Russell      2013-03-20  563                      return 
true;
f87d0fbb579818f Rusty Russell      2013-03-20  564              }
f87d0fbb579818f Rusty Russell      2013-03-20  565      }
f87d0fbb579818f Rusty Russell      2013-03-20  566  
f87d0fbb579818f Rusty Russell      2013-03-20  567      /* They could have 
slipped one in as we were doing that: make
f87d0fbb579818f Rusty Russell      2013-03-20  568       * sure it's written, 
then check again. */
f87d0fbb579818f Rusty Russell      2013-03-20  569      
virtio_mb(vrh->weak_barriers);
f87d0fbb579818f Rusty Russell      2013-03-20  570  
b9f7ac8c72894c1 Michael S. Tsirkin 2014-12-12  571      if (getu16(vrh, &avail, 
&vrh->vring.avail->idx) != 0) {
f87d0fbb579818f Rusty Russell      2013-03-20  572              
vringh_bad("Failed to check avail idx at %p",
f87d0fbb579818f Rusty Russell      2013-03-20  573                         
&vrh->vring.avail->idx);
f87d0fbb579818f Rusty Russell      2013-03-20  574              return true;
f87d0fbb579818f Rusty Russell      2013-03-20  575      }
f87d0fbb579818f Rusty Russell      2013-03-20  576  
f87d0fbb579818f Rusty Russell      2013-03-20  577      /* This is unlikely, so 
we just leave notifications enabled
f87d0fbb579818f Rusty Russell      2013-03-20  578       * (if we're using 
event_indices, we'll only get one
f87d0fbb579818f Rusty Russell      2013-03-20  579       * notification 
anyway). */
f87d0fbb579818f Rusty Russell      2013-03-20  580      return avail == 
vrh->last_avail_idx;
f87d0fbb579818f Rusty Russell      2013-03-20  581  }
f87d0fbb579818f Rusty Russell      2013-03-20  582  

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

Reply via email to