]> git.baikalelectronics.ru Git - kernel.git/commit
Revert "vsock: Fix blocking ops call in prepare_to_wait"
authorClaudio Imbrenda <imbrenda@linux.vnet.ibm.com>
Tue, 22 Mar 2016 16:05:51 +0000 (17:05 +0100)
committerDavid S. Miller <davem@davemloft.net>
Tue, 22 Mar 2016 20:18:41 +0000 (16:18 -0400)
commite05602bad929a6d4642a6d0be168bdbcc6a83f8b
treebc5604c18b8e1ea7f9e68c9d22a39d538acf3402
parentb7cccc58ccb9a3671ab27561726883f2c24d78bc
Revert "vsock: Fix blocking ops call in prepare_to_wait"

This reverts commit 705aca8a1b71ee6f45fec591d8d0c80b6aa01486 ("vsock: Fix
blocking ops call in prepare_to_wait")

The commit reverted with this patch caused us to potentially miss wakeups.
Since the condition is not checked between the prepare_to_wait and the
schedule(), if a wakeup happens after the condition is checked but before
the sleep happens, we will miss it. ( A description of the problem can be
found here: http://www.makelinux.net/ldd3/chp-6-sect-2 ).

By reverting the patch, the behaviour is still incorrect (since we
shouldn't sleep between the prepare_to_wait and the schedule) but at least
it will not miss wakeups.

The next patch in the series actually fixes the behaviour.

Signed-off-by: Claudio Imbrenda <imbrenda@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/vmw_vsock/af_vsock.c