Linus Torvalds
bd0f9b356d
sched/headers: fix up header file dependency on <linux/sched/signal.h>
...
The scheduler header file split and cleanups ended up exposing a few
nasty header file dependencies, and in particular it showed how we in
<linux/wait.h> ended up depending on "signal_pending()", which now comes
from <linux/sched/signal.h>.
That's a very subtle and annoying dependency, which already caused a
semantic merge conflict (see commit e58bc92783 "Pull overlayfs updates
from Miklos Szeredi", which added that fixup in the merge commit).
It turns out that we can avoid this dependency _and_ improve code
generation by moving the guts of the fairly nasty helper #define
__wait_event_interruptible_locked() to out-of-line code. The code that
includes the signal_pending() check is all in the slow-path where we
actually go to sleep waiting for the event anyway, so using a helper
function is the right thing to do.
Using a helper function is also what we already did for the non-locked
versions, see the "__wait_event*()" macros and the "prepare_to_wait*()"
set of helper functions.
We might want to try to unify all these macro games, we have a _lot_ of
subtly different wait-event loops. But this is the minimal patch to fix
the annoying header dependency.
Acked-by: Ingo Molnar <mingo@kernel.org >
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org >
2017-03-08 10:36:03 -08:00
..
2017-02-08 11:19:43 -08:00
2017-02-06 15:13:24 +01:00
2017-02-24 19:04:57 +01:00
2017-02-20 12:16:11 +01:00
2017-01-25 11:51:39 +05:30
2017-02-10 15:20:44 +01:00
2017-02-23 08:46:04 -08:00
2017-01-24 12:37:43 -08:00
2017-01-28 18:21:49 +00:00
2017-01-31 11:31:49 -08:00
2017-02-22 18:22:53 -08:00
2017-02-13 17:02:50 -05:00
2017-02-27 19:59:21 -08:00
2017-03-01 09:50:58 -08:00
2017-02-23 11:27:49 -08:00
2017-02-22 10:15:09 -08:00
2017-02-27 18:43:46 -08:00
2017-02-12 14:45:11 +01:00
2017-01-26 15:27:54 +01:00
2017-02-27 19:59:21 -08:00
2017-02-19 18:10:42 -05:00
2017-02-06 13:49:29 -08:00
2017-03-03 01:45:41 +01:00
2017-02-23 15:57:04 -08:00
2017-02-27 18:43:46 -08:00
2017-03-02 08:42:32 +01:00
2017-01-20 15:27:35 +08:00
2017-02-20 17:55:15 -08:00
2017-02-08 14:54:12 +00:00
2017-02-16 10:08:41 +05:30
2017-02-21 13:25:50 -08:00
2017-03-02 08:32:46 +01:00
2017-02-02 08:20:50 -07:00
2017-02-02 08:21:32 -07:00
2017-03-03 01:45:23 +01:00
2017-02-15 11:22:05 -08:00
2017-02-10 15:52:24 -05:00
2017-01-31 14:00:44 -07:00
2017-02-27 20:54:05 +02:00
2017-03-02 08:56:04 -07:00
2017-03-02 08:42:27 +01:00
2017-02-02 10:20:16 -07:00
2017-01-25 13:17:47 -05:00
2017-02-12 21:52:19 -05:00
2017-02-17 13:40:05 -05:00
2017-02-07 13:03:10 -05:00
2017-01-27 15:08:35 -07:00
2017-02-08 15:41:43 -08:00
2017-02-24 17:46:56 -08:00
2017-02-14 08:29:56 -07:00
2017-03-02 08:42:25 +01:00
2017-02-07 20:58:30 +01:00
2017-02-24 17:46:55 -08:00
2017-02-27 18:43:45 -08:00
2017-03-01 20:32:25 +01:00
2017-02-27 23:09:29 -08:00
2017-01-25 11:54:02 +01:00
2017-03-02 08:42:40 +01:00
2017-02-04 00:47:59 +01:00
2017-03-02 13:53:13 -08:00
2017-01-31 08:32:13 +11:00
2017-02-20 10:06:32 -08:00
2017-03-02 08:42:38 +01:00
2017-03-02 08:42:31 +01:00
2017-02-02 11:52:14 -05:00
2017-02-24 17:46:54 -08:00
2017-03-02 08:42:24 +01:00
2017-02-23 20:33:51 -08:00
2017-01-20 14:32:39 -08:00
2017-03-03 01:45:28 +01:00
2017-01-31 15:46:49 +09:00
2017-01-27 15:08:35 -07:00
2017-02-25 13:45:43 -08:00
2017-02-24 17:46:55 -08:00
2017-02-06 13:14:10 +01:00
2017-02-25 13:45:43 -08:00
2017-01-31 09:03:20 +05:30
2017-03-02 08:42:38 +01:00
2017-02-01 08:45:46 +01:00
2017-02-07 10:42:10 +01:00
2017-02-10 09:09:59 -07:00
2017-03-02 08:42:36 +01:00
2017-01-29 19:24:12 -05:00
2017-02-03 08:28:25 -08:00
2017-02-27 10:07:47 -08:00
2017-03-03 01:45:28 +01:00
2017-02-21 17:56:45 -08:00
2017-03-01 20:32:25 +01:00
2017-03-02 20:51:15 -05:00
2017-01-31 13:23:09 -05:00
2017-02-06 23:26:43 -05:00
2017-02-06 23:26:43 -05:00
2017-02-06 23:26:43 -05:00
2017-02-10 15:19:48 +01:00
2017-02-06 08:54:01 +01:00
2017-02-20 13:51:07 +01:00
2017-02-23 20:33:51 -08:00
2017-02-02 08:23:19 -07:00
2017-02-24 17:46:55 -08:00
2017-03-03 01:45:40 +01:00
2017-02-24 17:46:54 -08:00
2017-02-22 16:41:28 -08:00
2017-02-14 10:20:35 -08:00
2017-03-02 08:42:32 +01:00
2017-01-31 14:00:44 -07:00
2017-02-13 21:44:03 -05:00
2017-02-08 10:06:24 +01:00
2017-02-03 15:21:21 -05:00
2017-01-27 11:32:26 -05:00
2017-02-11 20:59:41 -05:00
2017-02-11 20:59:41 -05:00
2017-03-03 01:43:47 +01:00
2017-02-07 12:32:52 -08:00
2017-02-10 15:13:10 +01:00
2017-02-24 17:46:54 -08:00
2017-02-10 15:13:10 +01:00
2017-02-24 17:46:56 -08:00
2017-01-27 10:25:34 -05:00
2017-02-20 10:52:23 -08:00
2017-01-23 15:00:45 +00:00
2017-02-01 09:13:45 +01:00
2017-03-07 09:37:28 -08:00
2017-03-03 01:45:32 +01:00
2017-02-27 18:43:47 -08:00
2017-02-01 09:13:58 +01:00
2017-02-24 17:46:57 -08:00
2017-03-02 10:09:00 +11:00
2017-03-02 08:42:28 +01:00
2017-01-19 12:45:33 +01:00
2017-02-27 18:43:45 -08:00
2017-02-10 09:04:19 +01:00
2017-03-02 08:42:28 +01:00
2017-03-01 17:03:21 +01:00
2017-01-29 19:59:42 +01:00
2017-02-21 17:21:32 -08:00
2017-03-01 00:49:42 -08:00
2017-01-31 08:32:13 -07:00
2017-02-03 16:35:42 -05:00
2017-01-23 11:37:13 -08:00
2017-03-02 12:17:22 -08:00
2017-02-10 10:28:49 +11:00
2017-02-24 17:46:57 -08:00
2017-02-02 22:05:28 -05:00
2017-02-07 10:51:46 -05:00
2017-02-24 17:46:54 -08:00
2017-02-22 16:41:27 -08:00
2017-02-03 14:13:19 -08:00
2017-02-24 17:46:56 -08:00
2017-01-24 12:23:35 -05:00
2017-01-27 11:10:50 -05:00
2017-02-24 17:46:55 -08:00
2017-02-23 09:54:19 -08:00
2017-02-24 17:46:54 -08:00
2017-03-03 01:45:25 +01:00
2017-03-03 01:43:48 +01:00
2017-02-24 17:46:56 -08:00
2017-02-24 17:46:54 -08:00
2017-02-24 17:46:54 -08:00
2017-02-07 10:51:46 -05:00
2017-02-22 17:08:33 -08:00
2017-02-02 04:36:12 +13:00
2017-01-18 15:43:59 -05:00
2017-02-23 11:53:22 -08:00
2017-02-20 13:23:30 -08:00
2017-02-03 17:28:29 -05:00
2017-03-01 09:50:58 -08:00
2017-01-24 12:50:47 -05:00
2017-03-02 20:51:15 -05:00
2017-03-03 01:43:38 +01:00
2017-02-22 13:34:00 -07:00
2017-02-22 13:34:00 -07:00
2017-02-22 19:23:14 -08:00
2017-02-15 08:53:32 -06:00
2017-02-10 14:54:37 +01:00
2017-03-02 08:42:29 +01:00
2017-02-22 16:41:30 -08:00
2017-02-03 16:35:42 -05:00
2017-02-09 09:13:20 -06:00
2017-03-02 08:56:04 -07:00
2017-01-28 07:49:42 -05:00
2017-02-10 09:08:09 +01:00
2017-03-02 08:42:36 +01:00
2017-02-24 17:46:54 -08:00
2017-01-25 14:40:19 -05:00
2017-02-20 10:15:11 -05:00
2017-02-24 17:46:56 -08:00
2017-03-02 08:42:38 +01:00
2017-02-09 14:29:27 +01:00
2017-02-09 22:52:17 +01:00
2017-03-03 00:43:11 +01:00
2017-02-06 11:25:55 -07:00
2017-02-01 09:13:55 +01:00
2017-03-03 01:43:47 +01:00
2017-02-08 11:07:11 +01:00
2017-02-07 13:21:15 +01:00
2017-02-20 10:27:56 -05:00
2017-03-02 08:42:29 +01:00
2017-01-30 09:36:42 +01:00
2017-02-13 21:44:09 -05:00
2017-02-24 17:46:57 -08:00
2017-03-02 08:42:24 +01:00
2017-03-02 08:42:24 +01:00
2017-03-02 08:42:24 +01:00
2017-02-01 09:17:51 +01:00
2017-02-24 09:02:10 +01:00
2017-02-03 12:34:59 +01:00
2017-01-30 14:18:54 -08:00
2017-01-20 10:36:15 +01:00
2017-03-02 08:42:38 +01:00
2017-02-24 17:46:55 -08:00
2017-02-27 18:43:48 -08:00
2017-01-18 10:43:15 -08:00
2017-01-27 08:17:44 -07:00
2017-03-03 01:45:41 +01:00
2017-02-19 18:17:59 -05:00
2017-02-23 20:33:51 -08:00
2017-02-23 11:55:41 -07:00
2017-02-27 18:43:46 -08:00
2017-02-03 10:17:02 +01:00
2017-01-19 14:17:05 +01:00
2017-02-24 17:46:56 -08:00
2017-03-03 01:43:48 +01:00
2017-03-03 01:43:48 +01:00
2017-03-02 08:42:29 +01:00
2017-03-02 08:42:27 +01:00
2017-02-22 16:41:27 -08:00
2017-02-22 16:41:27 -08:00
2017-01-25 11:48:03 +01:00
2017-01-25 12:53:20 -08:00
2017-03-02 20:51:15 -05:00
2017-02-08 15:11:22 -05:00
2017-01-20 03:33:57 +01:00
2017-02-22 16:41:30 -08:00
2017-02-22 16:41:30 -08:00
2017-03-02 20:51:15 -05:00
2017-02-13 17:00:06 +13:00
2017-03-02 08:42:29 +01:00
2017-02-03 11:19:34 -05:00
2017-03-03 01:45:25 +01:00
2017-03-03 01:45:25 +01:00
2017-03-03 01:45:39 +01:00
2017-02-22 16:41:26 -08:00
2017-02-03 10:17:02 +01:00
2017-03-06 15:26:37 -06:00
2017-02-24 17:46:55 -08:00
2017-02-10 16:34:17 +00:00
2017-02-27 20:54:05 +02:00
2017-01-20 11:01:17 -05:00
2017-02-07 10:05:12 -05:00
2017-02-22 16:41:29 -08:00
2017-03-02 08:42:25 +01:00
2017-02-03 11:49:06 +01:00
2017-03-08 10:36:03 -08:00
2017-02-24 14:00:23 -08:00
2017-02-02 15:22:18 -05:00
2017-02-24 17:46:54 -08:00