On Thu, Oct 19, 2023 at 03:13:48PM +0800, Xuan Zhuo wrote: > On Thu, 19 Oct 2023 02:38:16 -0400, "Michael S. Tsirkin" <mst@xxxxxxxxxx> wrote: > > On Tue, Oct 17, 2023 at 10:02:05AM +0800, Xuan Zhuo wrote: > > > On Mon, 16 Oct 2023 16:44:34 -0700, Jakub Kicinski <kuba@xxxxxxxxxx> wrote: > > > > On Mon, 16 Oct 2023 20:00:27 +0800 Xuan Zhuo wrote: > > > > > @@ -305,9 +311,15 @@ static inline void virtnet_free_old_xmit(struct virtnet_sq *sq, bool in_napi, > > > > > > > > > > stats->bytes += xdp_get_frame_len(frame); > > > > > xdp_return_frame(frame); > > > > > + } else { > > > > > + stats->bytes += virtnet_ptr_to_xsk(ptr); > > > > > + ++xsknum; > > > > > } > > > > > stats->packets++; > > > > > } > > > > > + > > > > > + if (xsknum) > > > > > + xsk_tx_completed(sq->xsk.pool, xsknum); > > > > > } > > > > > > > > sparse complains: > > > > > > > > drivers/net/virtio/virtio_net.h:322:41: warning: incorrect type in argument 1 (different address spaces) > > > > drivers/net/virtio/virtio_net.h:322:41: expected struct xsk_buff_pool *pool > > > > drivers/net/virtio/virtio_net.h:322:41: got struct xsk_buff_pool > > > > [noderef] __rcu *pool > > > > > > > > please build test with W=1 C=1 > > > > > > OK. I will add C=1 to may script. > > > > > > Thanks. > > > > And I hope we all understand, rcu has to be used properly it's not just > > about casting the warning away. > > > Yes. I see. I will use rcu_dereference() and rcu_read_xxx(). > > Thanks. When you do, pls don't forget to add comments documenting what does rcu_read_lock and synchronize_rcu. -- MST