Re: Re: [PATCH v7 11/12] vduse: Introduce VDUSE - vDPA Device in Userspace
From: Yongji Xie <hidden>
Date: 2021-05-27 05:08:51
Also in:
kvm, linux-fsdevel, linux-iommu, lkml
From: Yongji Xie <hidden>
Date: 2021-05-27 05:08:51
Also in:
kvm, linux-fsdevel, linux-iommu, lkml
On Thu, May 27, 2021 at 1:00 PM Jason Wang [off-list ref] wrote:
在 2021/5/27 下午12:57, Yongji Xie 写道:quoted
On Thu, May 27, 2021 at 12:13 PM Jason Wang [off-list ref] wrote:quoted
在 2021/5/17 下午5:55, Xie Yongji 写道:quoted
+ +static int vduse_dev_msg_sync(struct vduse_dev *dev, + struct vduse_dev_msg *msg) +{ + init_waitqueue_head(&msg->waitq); + spin_lock(&dev->msg_lock); + vduse_enqueue_msg(&dev->send_list, msg); + wake_up(&dev->waitq); + spin_unlock(&dev->msg_lock); + wait_event_killable(msg->waitq, msg->completed);What happens if the userspace(malicous) doesn't give a response forever? It looks like a DOS. If yes, we need to consider a way to fix that.How about using wait_event_killable_timeout() instead?Probably, and then we need choose a suitable timeout and more important, need to report the failure to virtio.
Makes sense to me. But it looks like some vdpa_config_ops/virtio_config_ops such as set_status() didn't have a return value. Now I add a WARN_ON() for the failure. Do you mean we need to add some change for virtio core to handle the failure? Thanks, Yongji