git: 486459056822 - main - Revert "linux(4): The futex_wait operation should restart."
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 11 Jun 2023 09:53:55 UTC
The branch main has been updated by dchagin:
URL: https://cgit.FreeBSD.org/src/commit/?id=486459056822f080b1ae24600a4c6a7d8ff6f7d6
commit 486459056822f080b1ae24600a4c6a7d8ff6f7d6
Author: Dmitry Chagin <dchagin@FreeBSD.org>
AuthorDate: 2023-06-11 09:47:27 +0000
Commit: Dmitry Chagin <dchagin@FreeBSD.org>
CommitDate: 2023-06-11 09:47:27 +0000
Revert "linux(4): The futex_wait operation should restart."
This reverts commit 5eec19c8eb0e1afafd7290325c61611c9a13b621 due to its
wrong. Linux interrupts futex syscall on signal and return EINTR.
---
sys/compat/linux/linux_futex.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/sys/compat/linux/linux_futex.c b/sys/compat/linux/linux_futex.c
index 8aaf81bdf950..9cc41b8d72f5 100644
--- a/sys/compat/linux/linux_futex.c
+++ b/sys/compat/linux/linux_futex.c
@@ -786,6 +786,8 @@ linux_futex_wait(struct thread *td, struct linux_futex_args *args)
}
umtxq_unlock(&uq->uq_key);
umtx_key_release(&uq->uq_key);
+ if (error == ERESTART)
+ error = EINTR;
return (error);
}