On Tue, Oct 15, 2024 at 6:19 PM Michael S. Tsirkin <mst@xxxxxxxxxx> wrote: > > On Mon, Oct 14, 2024 at 03:56:33PM -0500, Mike Christie wrote: > > On 10/3/24 8:58 PM, Cindy Lu wrote: > > > Add a new UAPI to support setting the vhost device to > > > use task mode. The user space application needs to use > > > VHOST_SET_INHERIT_FROM_OWNER to set the mode. > > > This setting must be set before VHOST_SET_OWNER is set. > > > > > > Signed-off-by: Cindy Lu <lulu@xxxxxxxxxx> > > > --- > > > drivers/vhost/vhost.c | 18 +++++++++++++++++- > > > include/uapi/linux/vhost.h | 2 ++ > > > 2 files changed, 19 insertions(+), 1 deletion(-) > > > > > > diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c > > > index 08c9e77916ca..0e5c81026acd 100644 > > > --- a/drivers/vhost/vhost.c > > > +++ b/drivers/vhost/vhost.c > > > @@ -2341,8 +2341,24 @@ long vhost_dev_ioctl(struct vhost_dev *d, unsigned int ioctl, void __user *argp) > > > { > > > struct eventfd_ctx *ctx; > > > u64 p; > > > - long r; > > > + long r = 0; > > > int i, fd; > > > + bool inherit_owner; > > > + > > > + if (ioctl == VHOST_SET_INHERIT_FROM_OWNER) { > > > > Maybe instead of a modparam and this ioctl we just want a new ioctl: > > > > /* > > * This will setup the owner based on the calling thread instead of > > * using kthread. > > */ > > #define VHOST_INHERIT_OWNER _IO(VHOST_VIRTIO, 0x83) > > I feel this is not good because it is insecure - > process should not normally have a say in whether > namespaces work correctly. Note there's still a lot of kthread users, so the "problem" is not specific to vhost. > So we want the system admin to be able to block the > old mode. Then we will break the userspace silently which seems not good. > > > It would initially be used by vhost-scsi when worker_per_virtqueue=true > > since that is a new use case and there will be no regressions. > > > > For the other cases we default to VHOST_SET_OWNER. Other QEMU cases or > > tool XYZ can use the new ioctl when they are ready. > > I do not like it that we switched default now we apparently will be > switching it back. Will break some userspace whatever we do. > > -- > MST > Thanks