Thread (8 messages) flat view 8 messages, 4 authors, 2022-11-03

Re: [PATCH v2 2/2] vsock: fix possible infinite sleep in vsock_connectible_wait_data()

From: Frederic Dalleau <hidden>
Date: 2022-11-02 13:31:00
Also in: linux-hyperv, lkml, virtualization

Hi Dexuan, Stefano,

Tested-by: Frédéric Dalleau <redacted>

Regards,
Frédéric


On Wed, Nov 2, 2022 at 10:42 AM Stefano Garzarella [off-list ref] wrote:
On Wed, Nov 02, 2022 at 10:31:37AM +0100, Stefano Garzarella wrote:
quoted
On Mon, Oct 31, 2022 at 07:17:06PM -0700, Dexuan Cui wrote:
quoted
Currently vsock_connectible_has_data() may miss a wakeup operation
between vsock_connectible_has_data() == 0 and the prepare_to_wait().

Fix the race by adding the process to the wait queue before checking
vsock_connectible_has_data().

Fixes: b3f7fd54881b ("af_vsock: separate wait data loop")
Signed-off-by: Dexuan Cui <decui@microsoft.com>
---

Changes in v2 (Thanks Stefano!):
Fixed a typo in the commit message.
Removed the unnecessary finish_wait() at the end of the loop.
LGTM:

Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
And I would add

Reported-by: Frédéric Dalleau <redacted>

Since Frédéric posted a similar patch some months ago (I lost it because
netdev and I were not in cc):
https://lore.kernel.org/virtualization/20220824074251.2336997-2-frederic.dalleau@docker.com/ (local)

Thanks,
Stefano
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help