Re: [PATCH] POSIX message queues - syscalls & SIGEV_THREAD

From: Ulrich Drepper
Date: Mon Nov 17 2003 - 14:08:13 EST


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Krzysztof Benedyczak wrote:
> In userspace we can assign one futex to
> every such a queue and pass it to kernel in mq_notify syscall. Then we can
> use FUTEX_FD to get file descriptors of all futexes and wait on them with
> poll(). On the kernel side it notification have to be triggered we change
> futex value and do FUTEX_WAKE.

Yes, this would be possible if FUTEX_FD wouldn't be useless as it is
implemented today (see the futex paper I announced here recently). The
thing which makes FUTEX_WAIT work is the current value of the futex
which is passed to the kernel and based on which the userlevel code made
it decisions. This part doesn't exist in case of using FUTEX_FD.


The main recent I suggested using futexes for the notification is that
it is flexible. For now, we can use simple waiting by creating the
thread ahead of time. This could change later when there is a reliable
multi-futex wait operation.

- --
â Ulrich Drepper â Red Hat, Inc. â 444 Castro St â Mountain View, CA â
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)

iD8DBQE/uRxU2ijCOnn/RHQRArcGAJ921MfetyPy1ciyYE2C7SG6nm0RLQCfbbwh
AUFbyDBmQJGAd1Vk+20TaTc=
=o+cD
-----END PGP SIGNATURE-----

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/