OpenCloudOS-Kernel/drivers/vhost
Eli Cohen 680ab9d69a vdpa: Protect vdpa reset with cf_mutex
Call reset using the wrapper function vdpa_reset() to make sure the
operation is serialized with cf_mutex.

This comes to protect from the following possible scenario:

vhost_vdpa_set_status() could call the reset op. Since the call is not
protected by cf_mutex, a netlink thread calling vdpa_dev_config_fill
could get passed the VIRTIO_CONFIG_S_FEATURES_OK check in
vdpa_dev_config_fill() and end up reporting wrong features.

Fixes: 5f6e85953d8f ("vdpa: Read device configuration only if FEATURES_OK")
Signed-off-by: Eli Cohen <elic@nvidia.com>
Link: https://lore.kernel.org/r/20220111183400.38418-3-elic@nvidia.com
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Si-Wei Liu<si-wei.liu@oracle.com>
Acked-by: Jason Wang <jasowang@redhat.com>
2022-01-14 18:50:54 -05:00
..
Kconfig vhost_vdpa: implement IRQ offloading in vhost_vdpa 2020-08-05 11:08:42 -04:00
Makefile vhost: introduce vDPA-based backend 2020-04-02 10:41:40 -04:00
iotlb.c vhost-iotlb: Add an opaque pointer for vhost IOTLB 2021-09-06 07:20:57 -04:00
net.c vhost_net: fix OoB on sendmsg() failure. 2021-09-09 10:52:12 +01:00
scsi.c vhost scsi: Convert to SPDX identifier 2021-09-05 16:23:08 -04:00
test.c vhost/test: fix memory leak of vhost virtqueues 2022-01-14 18:50:53 -05:00
test.h tools/virtio: Add --reset 2020-06-22 12:34:21 -04:00
vdpa.c vdpa: Protect vdpa reset with cf_mutex 2022-01-14 18:50:54 -05:00
vhost.c vhost: Fix the calculation in vhost_overflow() 2021-08-11 06:44:15 -04:00
vhost.h vhost: fix up vhost_work coding style 2021-07-03 04:50:55 -04:00
vringh.c vringh: Use wiov->used to check for read/write desc order 2021-08-11 06:44:24 -04:00
vsock.c vhost/vsock: cleanup removing `len` variable 2021-11-24 19:00:28 -05:00