• Xuan Zhuo's avatar
    virtio_ring: fix KMSAN error for premapped mode · 840b2d39
    Xuan Zhuo authored
    Add kmsan for virtqueue_dma_map_single_attrs to fix:
    
    BUG: KMSAN: uninit-value in receive_buf+0x45ca/0x6990
     receive_buf+0x45ca/0x6990
     virtnet_poll+0x17e0/0x3130
     net_rx_action+0x832/0x26e0
     handle_softirqs+0x330/0x10f0
     [...]
    
    Uninit was created at:
     __alloc_pages_noprof+0x62a/0xe60
     alloc_pages_noprof+0x392/0x830
     skb_page_frag_refill+0x21a/0x5c0
     virtnet_rq_alloc+0x50/0x1500
     try_fill_recv+0x372/0x54c0
     virtnet_open+0x210/0xbe0
     __dev_open+0x56e/0x920
     __dev_change_flags+0x39c/0x2000
     dev_change_flags+0xaa/0x200
     do_setlink+0x197a/0x7420
     rtnl_setlink+0x77c/0x860
     [...]
    Signed-off-by: default avatarXuan Zhuo <xuanzhuo@linux.alibaba.com>
    Tested-by: default avatarAlexander Potapenko <glider@google.com>
    Message-Id: <20240606111345.93600-1-xuanzhuo@linux.alibaba.com>
    Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
    Tested-by: Ilya Leoshkevich <iii@linux.ibm.com>  # s390x
    Acked-by: default avatarJason Wang <jasowang@redhat.com>
    840b2d39
virtio_ring.c 82.9 KB