Bosko Milekic
4bde2ac539
Fix is a similar race condition as existed in the mbuf code. When we go
...
into an interruptable sleep and we increment a sleep count, we make sure
that we are the thread that will decrement the count when we wakeup.
Otherwise, what happens is that if we get interrupted (signal) and we
have to wake up, but before we get our mutex, some thread that wants
to wake us up detects that the count is non-zero and so enters wakeup_one(),
but there's nothing on the sleep queue and so we don't get woken up. The
thread will still decrement the sleep count, which is bad because we will
also decrement it again later (as we got interrupted) and are already off
the sleep queue.
2001-03-08 19:21:45 +00:00
..
2000-11-28 06:49:15 +00:00
2000-04-08 14:17:18 +00:00
2001-01-28 06:39:56 +00:00
2001-01-29 01:55:54 +00:00
2001-01-27 00:01:31 +00:00
2001-03-04 11:58:50 +00:00
2001-01-24 08:42:39 +00:00
2000-04-26 20:58:40 +00:00
1999-12-29 05:07:58 +00:00
2001-03-04 11:58:50 +00:00
2000-12-02 05:45:32 +00:00
2001-02-09 06:11:45 +00:00
2001-03-06 17:28:24 +00:00
2000-10-29 13:57:19 +00:00
2001-02-19 04:15:59 +00:00
2001-03-07 03:26:39 +00:00
2001-03-07 07:09:55 +00:00
2001-02-15 16:34:11 +00:00
2000-07-04 11:25:35 +00:00
2001-02-24 01:44:03 +00:00
2001-03-07 03:27:32 +00:00
2001-03-07 02:22:31 +00:00
2001-03-07 05:21:47 +00:00
2001-02-12 00:20:08 +00:00
2001-03-02 06:07:38 +00:00
2001-02-21 06:39:57 +00:00
2001-03-07 02:36:47 +00:00
2001-02-20 10:39:55 +00:00
2001-02-21 06:39:57 +00:00
2001-02-04 16:08:18 +00:00
2001-02-09 16:27:41 +00:00
2001-02-09 06:11:45 +00:00
2001-02-21 06:39:57 +00:00
2001-02-04 13:13:25 +00:00
2001-03-07 02:45:15 +00:00
2000-09-10 09:13:34 +00:00
2000-05-05 09:59:14 +00:00
2001-03-07 06:52:12 +00:00
2001-02-21 06:39:57 +00:00
2000-11-18 21:01:04 +00:00
2001-02-22 20:12:52 +00:00
2001-03-07 02:50:09 +00:00
2001-03-07 02:59:54 +00:00
2001-02-16 14:31:49 +00:00
2001-02-24 14:06:36 +00:00
2001-03-06 23:13:15 +00:00
2001-03-07 03:01:53 +00:00
2000-12-01 08:57:47 +00:00
2001-03-08 01:20:43 +00:00
2001-01-01 23:09:53 +00:00
2001-03-07 03:02:56 +00:00
2001-02-09 06:11:45 +00:00
2001-02-22 13:46:09 +00:00
2001-02-25 07:25:05 +00:00
2001-02-25 07:26:54 +00:00
2001-02-25 07:26:54 +00:00
2000-04-29 13:19:31 +00:00
2000-12-31 23:12:20 +00:00
2001-01-04 13:41:24 +00:00
2000-12-28 12:17:35 +00:00
2001-01-04 13:41:24 +00:00
2000-12-01 08:47:54 +00:00
2000-09-29 13:36:47 +00:00
2000-05-01 20:32:07 +00:00
2000-04-22 15:13:06 +00:00
2001-03-06 17:28:24 +00:00
2000-05-26 02:09:24 +00:00
2000-12-08 21:51:06 +00:00
2001-01-08 22:16:26 +00:00
2001-02-06 11:21:58 +00:00
2001-02-04 16:08:18 +00:00
2000-12-15 17:55:24 +00:00
2001-01-14 18:48:42 +00:00
2000-11-26 19:29:15 +00:00
2000-10-31 07:05:40 +00:00
2001-02-09 06:11:45 +00:00
2000-12-08 21:51:06 +00:00
2000-12-20 21:50:37 +00:00
2001-02-25 06:33:50 +00:00
2001-02-18 10:43:53 +00:00
2000-10-29 16:57:42 +00:00
2001-01-10 04:43:51 +00:00
2001-02-22 18:07:31 +00:00
2001-02-09 06:11:45 +00:00
2001-03-06 17:48:26 +00:00
1999-11-24 01:03:08 +00:00
2001-02-23 01:25:02 +00:00
2001-02-09 17:46:35 +00:00
2001-03-07 03:53:39 +00:00
2001-03-07 02:45:15 +00:00
2001-03-07 02:45:15 +00:00
2001-02-15 16:34:11 +00:00
2001-03-07 03:37:06 +00:00
2001-02-15 16:34:11 +00:00
2001-03-07 03:06:18 +00:00
2001-02-15 16:34:11 +00:00
2000-12-02 05:45:32 +00:00
2000-12-02 05:41:30 +00:00
2000-12-01 08:57:47 +00:00
2001-02-21 06:39:57 +00:00
2001-02-21 06:39:57 +00:00
2001-02-21 06:39:57 +00:00
2000-01-30 10:14:13 +00:00
2001-02-15 16:34:11 +00:00
2001-02-21 06:39:57 +00:00
2001-01-29 10:06:22 +00:00
2001-02-06 11:21:58 +00:00
2000-07-11 22:07:57 +00:00
2001-03-07 03:37:06 +00:00
2000-10-29 13:57:19 +00:00
2000-11-27 22:52:31 +00:00
2001-02-11 05:02:06 +00:00
2001-02-21 09:24:13 +00:00
2000-11-19 22:22:47 +00:00
2000-11-19 22:22:47 +00:00
2001-02-27 13:48:07 +00:00
2001-03-08 19:21:45 +00:00
2001-02-21 06:39:57 +00:00
2001-03-06 17:28:24 +00:00
2001-03-07 03:37:06 +00:00
2001-02-28 04:13:11 +00:00
2000-12-08 20:09:00 +00:00
2001-02-28 04:13:11 +00:00
2001-03-01 21:00:17 +00:00
2001-02-18 02:22:58 +00:00
2001-02-23 20:06:01 +00:00
2001-03-07 02:25:13 +00:00
2001-02-04 16:08:18 +00:00
2000-12-06 07:09:08 +00:00
2001-03-01 21:00:17 +00:00
2001-02-23 20:06:01 +00:00
2001-03-07 02:25:13 +00:00
2001-02-15 16:34:11 +00:00
2000-12-06 06:59:38 +00:00
2001-03-07 07:09:55 +00:00