Christoph Hellwig
7a074e96de
aio: implement io_pgetevents
...
This is the io_getevents equivalent of ppoll/pselect and allows to
properly mix signals and aio completions (especially with IOCB_CMD_POLL)
and atomically executes the following sequence:
sigset_t origmask;
pthread_sigmask(SIG_SETMASK, &sigmask, &origmask);
ret = io_getevents(ctx, min_nr, nr, events, timeout);
pthread_sigmask(SIG_SETMASK, &origmask, NULL);
Note that unlike many other signal related calls we do not pass a sigmask
size, as that would get us to 7 arguments, which aren't easily supported
by the syscall infrastructure. It seems a lot less painful to just add a
new syscall variant in the unlikely case we're going to increase the
sigset size.
Signed-off-by: Christoph Hellwig <hch@lst.de >
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com >
2018-05-02 19:57:24 +02:00
..
2018-03-31 01:33:09 +08:00
2018-04-02 11:17:51 +02:00
2018-04-13 15:51:06 -07:00
2018-04-04 15:19:26 -07:00
2018-04-13 16:20:36 -07:00
2018-04-06 17:35:43 -07:00
2018-04-24 17:41:18 +02:00
2018-03-30 11:41:18 -04:00
2018-04-13 16:20:36 -07:00
2018-04-07 12:08:19 -07:00
2018-04-11 10:28:37 -07:00
2018-04-10 12:09:27 -07:00
2018-04-12 12:55:50 -07:00
2018-04-05 10:42:07 -07:00
2018-04-20 17:18:35 -07:00
2018-04-20 17:18:35 -07:00
2018-04-11 10:28:37 -07:00
2018-04-02 20:52:27 -07:00
2018-04-25 07:58:18 -06:00
2018-04-25 21:13:40 -07:00
2018-03-31 02:15:18 +02:00
2018-03-31 02:16:26 +02:00
2018-04-11 01:01:40 +02:00
2018-04-03 18:00:13 -07:00
2018-05-02 19:57:24 +02:00
2018-04-20 17:18:35 -07:00
2018-04-11 10:28:35 -07:00
2018-04-11 10:28:38 -07:00
2018-04-19 12:29:41 -03:00
2018-04-10 08:40:45 +02:00
2018-04-06 09:29:34 +02:00
2018-04-03 05:41:19 -07:00
2018-04-04 00:40:19 -04:00
2018-04-06 11:50:19 -07:00
2018-04-19 09:48:32 +02:00
2018-04-03 15:04:23 -04:00
2018-04-05 10:23:24 -07:00
2018-04-05 14:21:13 -07:00
2018-04-24 13:38:42 -04:00
2018-04-05 21:36:26 -07:00
2018-03-31 02:15:18 +02:00
2018-04-12 12:28:32 -07:00
2018-04-06 14:05:14 +01:00
2018-04-06 14:05:14 +01:00
2018-04-25 21:23:38 -07:00
2018-04-02 20:15:02 +02:00
2018-04-09 09:26:12 +02:00
2018-04-11 10:28:31 -07:00
2018-04-26 14:53:32 +02:00
2018-04-09 11:42:31 -07:00
2018-04-05 14:27:02 -07:00
2018-04-11 10:28:39 -07:00
2018-04-17 13:59:28 -04:00
2018-04-06 09:28:50 +02:00
2018-04-05 21:36:24 -07:00
2018-03-31 12:22:38 +09:00
2018-04-11 10:28:35 -07:00
2018-04-13 17:10:28 -07:00
2018-04-11 10:28:38 -07:00
2018-04-07 07:53:23 -07:00
2018-03-29 17:29:09 -06:00
2018-04-05 21:36:27 -07:00
2018-04-17 13:42:48 +02:00
2018-04-12 09:41:19 -07:00
2018-04-07 16:53:59 -07:00
2018-04-07 12:08:19 -07:00
2018-04-11 10:28:31 -07:00
2018-04-11 10:28:32 -07:00
2018-04-05 21:36:25 -07:00
2018-04-12 21:46:10 -04:00
2018-04-11 10:28:32 -07:00
2018-04-05 21:36:27 -07:00
2018-04-11 10:28:39 -07:00
2018-04-05 21:36:27 -07:00
2018-04-11 10:28:32 -07:00
2018-04-13 15:37:59 +02:00
2018-03-30 12:56:22 -04:00
2018-03-31 23:37:32 -04:00
2018-03-30 10:11:06 -04:00
2018-04-10 16:06:22 -04:00
2018-04-10 16:06:22 -04:00
2018-04-05 21:36:25 -07:00
2018-03-30 10:40:18 -04:00
2018-04-05 21:36:25 -07:00
2018-04-05 21:36:25 -07:00
2018-04-11 10:28:32 -07:00
2018-04-11 10:28:39 -07:00
2018-04-06 18:31:06 -07:00
2018-04-03 12:38:05 +01:00
2018-04-03 12:23:38 +01:00
2018-04-06 18:31:06 -07:00
2018-03-30 10:11:06 -04:00
2018-04-02 20:15:46 +02:00
2018-04-11 10:28:39 -07:00
2018-03-31 23:25:39 -04:00
2018-04-05 14:27:02 -07:00
2018-04-05 10:56:16 +02:00
2018-04-07 16:53:59 -07:00
2018-04-11 10:28:36 -07:00
2018-04-23 10:06:59 +02:00
2018-04-13 17:10:28 -07:00
2018-04-16 02:06:47 -04:00
2018-03-31 23:25:40 -04:00
2018-04-05 21:36:24 -07:00
2018-04-05 21:36:27 -07:00
2018-04-05 21:36:24 -07:00
2018-04-03 14:04:18 -07:00
2018-04-28 15:01:14 -07:00
2018-04-05 21:36:25 -07:00
2018-05-02 19:57:24 +02:00
2018-04-16 18:53:13 -04:00
2018-04-02 21:49:01 +08:00
2018-04-20 17:18:35 -07:00
2018-04-18 10:07:13 -07:00
2018-04-09 11:54:56 +02:00
2018-04-26 14:53:32 +02:00
2018-04-17 17:18:05 +02:00
2018-04-26 14:53:32 +02:00
2018-04-17 17:18:04 +02:00
2018-04-10 11:27:30 -07:00
2018-04-23 11:05:52 +02:00
2018-04-11 10:28:35 -07:00
2018-04-23 13:41:55 +02:00
2018-04-25 20:33:19 +03:00
2018-04-11 10:28:30 -07:00
2018-04-03 18:00:13 -07:00
2018-04-11 10:28:39 -07:00
2018-04-05 21:36:26 -07:00