git: d90df8ac1324 - main - linux(4): Add a comment about wait/requeue pi operations.
Dmitry Chagin
dchagin at FreeBSD.org
Thu Jul 29 09:59:02 UTC 2021
The branch main has been updated by dchagin:
URL: https://cgit.FreeBSD.org/src/commit/?id=d90df8ac1324d731f8423b5501158ee870fbd5ba
commit d90df8ac1324d731f8423b5501158ee870fbd5ba
Author: Dmitry Chagin <dchagin at FreeBSD.org>
AuthorDate: 2021-07-29 09:55:59 +0000
Commit: Dmitry Chagin <dchagin at FreeBSD.org>
CommitDate: 2021-07-29 09:55:59 +0000
linux(4): Add a comment about wait/requeue pi operations.
MFC after: 2 weeks
---
sys/compat/linux/linux_futex.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/sys/compat/linux/linux_futex.c b/sys/compat/linux/linux_futex.c
index 5f18c93b0988..edf059f74272 100644
--- a/sys/compat/linux/linux_futex.c
+++ b/sys/compat/linux/linux_futex.c
@@ -314,6 +314,18 @@ linux_futex(struct thread *td, struct linux_futex_args *args)
return (linux_futex_lock_pi(td, true, args));
+ /*
+ * Current implementation of FUTEX_WAIT_REQUEUE_PI and FUTEX_CMP_REQUEUE_PI
+ * can't be used anymore to implement conditional variables.
+ * A detailed explanation can be found here:
+ *
+ * https://sourceware.org/bugzilla/show_bug.cgi?id=13165
+ * and here http://austingroupbugs.net/view.php?id=609
+ *
+ * And since commit
+ * https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=ed19993b5b0d05d62cc883571519a67dae481a14
+ * glibc does not uses it.
+ */
case LINUX_FUTEX_WAIT_REQUEUE_PI:
/* not yet implemented */
pem = pem_find(td->td_proc);
More information about the dev-commits-src-main
mailing list