diff options
author | Dexuan Cui <[email protected]> | 2022-10-31 19:17:06 -0700 |
---|---|---|
committer | Paolo Abeni <[email protected]> | 2022-11-03 10:49:29 +0100 |
commit | 466a85336fee6e3b35eb97b8405a28302fd25809 (patch) | |
tree | 39f15fff8291acfde6a706a7b9206aeece8e4110 /include/linux/workqueue_api.h | |
parent | cf6ff0df0fd123493e57278a1bd4414a97511a34 (diff) |
vsock: fix possible infinite sleep in vsock_connectible_wait_data()
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 <[email protected]>
Reviewed-by: Stefano Garzarella <[email protected]>
Reported-by: Frédéric Dalleau <[email protected]>
Tested-by: Frédéric Dalleau <[email protected]>
Signed-off-by: Paolo Abeni <[email protected]>
Diffstat (limited to 'include/linux/workqueue_api.h')
0 files changed, 0 insertions, 0 deletions