Re: [PATCH v2 3/7] vhost: Add kthread support in function vhost_workers_free()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Oct 15, 2024 at 02:05:47PM +0800, Cindy Lu wrote:
On Tue, 15 Oct 2024 at 05:06, Mike Christie <michael.christie@xxxxxxxxxx> wrote:

On 10/3/24 8:58 PM, Cindy Lu wrote:
> +static void vhost_workers_free(struct vhost_dev *dev)
> +{
> +     if (enforce_inherit_owner)
> +             vhost_workers_free_task(dev);
> +     else
> +             vhost_workers_free_kthread(dev);
> +}

With patch 7, userspace could change enforce_inherit_owner after
we created thread and we would call the wrong function above.

enforce_inherit_owner will only change before the owner was set.

As I pointed out in patch 7, enforce_inherit_owner seems to be shared among all vhost devices, so what happens if for example a user sets it to /dev/vhost-net, while /dev/vhost-vsock is already initialized and therefore already has an owner?

Thanks,
Stefano

the process is like set enforce_inherit_owner---->set owner->
thread/task creating
in in patch 7's code I have add the check for vhost's owner, if the
owner was set, the ioctl
to set enforce_inherit_owner will fail
Thanks
Cindy







[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux