Don Lewis
ad9f180121
Back out the removal of LK_NOWAIT from the VOP_LOCK() call in
...
vlrureclaim() in vfs_subr.c 1.636 because waiting for the vnode
lock aggravates an existing race condition. It is also undesirable
according to the commit log for 1.631.
Fix the tiny race condition that remains by rechecking the vnode
state after grabbing the vnode lock and grabbing the vnode interlock.
Fix the problem of other threads being starved (which 1.636 attempted
to fix by removing LK_NOWAIT) by calling uio_yield() periodically
in vlrureclaim(). This should be more deterministic than hoping
that VOP_LOCK() without LK_NOWAIT will block, which may not happen
in this loop.
Reviewed by: kan
MFC after: 5 days
2005-08-23 03:44:06 +00:00
..
2005-01-06 23:35:40 +00:00
2005-01-06 23:35:40 +00:00
2005-02-18 00:23:36 +00:00
2005-01-06 23:35:40 +00:00
2005-05-03 10:51:38 +00:00
2005-06-30 07:49:22 +00:00
2005-04-01 20:00:11 +00:00
2005-06-19 02:21:03 +00:00
2005-07-01 16:28:32 +00:00
2005-07-08 15:06:58 +00:00
2005-03-01 08:56:13 +00:00
2004-07-26 07:24:04 +00:00
2005-04-16 12:12:27 +00:00
2005-06-30 17:17:29 +00:00
2004-10-12 18:36:20 +00:00
2005-08-20 12:13:51 +00:00
2005-08-18 16:41:25 +00:00
2005-06-25 03:34:49 +00:00
2005-07-31 10:28:35 +00:00
2005-07-01 16:28:32 +00:00
2005-06-30 19:01:26 +00:00
2005-07-18 20:08:14 +00:00
2005-07-01 16:28:32 +00:00
2005-04-04 21:53:56 +00:00
2005-06-20 19:32:23 +00:00
2005-06-23 22:13:29 +00:00
2005-08-19 22:30:13 +00:00
2005-01-06 23:35:40 +00:00
2005-06-10 23:21:29 +00:00
2005-06-24 12:05:24 +00:00
2005-05-28 23:20:05 +00:00
2005-08-03 04:59:07 +00:00
2005-03-29 08:13:01 +00:00
2005-07-14 10:46:03 +00:00
2005-08-02 20:03:23 +00:00
2005-07-17 14:04:03 +00:00
2005-08-21 18:03:31 +00:00
2005-02-18 22:14:40 +00:00
2005-02-10 12:02:37 +00:00
2005-07-30 05:54:30 +00:00
2005-05-28 14:34:41 +00:00
2005-01-06 23:35:40 +00:00
2005-07-30 09:02:42 +00:00
2005-08-09 10:20:02 +00:00
2005-04-18 02:10:37 +00:00
2005-04-18 13:36:57 +00:00
2005-06-01 17:52:51 +00:00
2005-01-06 23:35:40 +00:00
2005-04-12 05:45:58 +00:00
2005-06-06 05:13:10 +00:00
2005-01-06 23:35:40 +00:00
2005-08-03 01:23:45 +00:00
2005-01-06 23:35:40 +00:00
2005-05-23 23:01:53 +00:00
2004-07-15 08:26:07 +00:00
2005-08-08 21:06:42 +00:00
2005-03-26 20:04:28 +00:00
2005-07-10 23:31:11 +00:00
2005-05-27 04:27:22 +00:00
2005-03-31 22:51:18 +00:00
2005-02-11 00:14:00 +00:00
2005-03-05 09:15:03 +00:00
2005-01-06 23:35:40 +00:00
2005-01-06 23:35:40 +00:00
2005-01-07 02:29:27 +00:00
2004-08-29 01:21:51 +00:00
2004-08-09 18:46:13 +00:00
2005-01-06 23:35:40 +00:00
2005-07-13 20:50:17 +00:00
2005-05-30 15:09:18 +00:00
2005-01-06 23:35:40 +00:00
2005-02-10 12:20:42 +00:00
2005-03-31 22:54:48 +00:00
2004-12-01 23:16:38 +00:00
2005-06-24 00:16:57 +00:00
2005-08-19 11:51:41 +00:00
2004-07-26 07:24:04 +00:00
2005-01-06 23:35:40 +00:00
2004-06-04 04:03:26 +00:00
2005-06-09 05:50:01 +00:00
2005-01-06 23:35:40 +00:00
2005-01-06 23:35:40 +00:00
2005-05-03 10:58:05 +00:00
2005-06-15 23:32:07 +00:00
2005-02-23 19:32:29 +00:00
2005-07-31 10:46:55 +00:00
2005-06-29 23:23:16 +00:00
2005-08-07 02:20:35 +00:00
2005-02-27 22:02:03 +00:00
2005-01-06 23:35:40 +00:00
2005-07-29 13:22:37 +00:00
2005-01-06 23:35:40 +00:00
2005-04-16 15:07:41 +00:00
2005-01-06 23:35:40 +00:00
2005-06-06 22:18:32 +00:00
2005-03-02 21:33:29 +00:00
2005-05-06 02:50:00 +00:00
2005-01-06 23:35:40 +00:00
2005-02-10 12:02:37 +00:00
2005-05-27 15:57:27 +00:00
2005-06-30 03:38:10 +00:00
2005-08-03 04:27:40 +00:00
2005-05-01 00:38:11 +00:00
2005-03-28 12:52:46 +00:00
2005-02-10 12:02:37 +00:00
2005-03-14 06:51:29 +00:00
2005-08-09 13:27:50 +00:00
2005-07-07 18:17:55 +00:00
2005-07-01 16:28:32 +00:00
2005-08-19 13:35:34 +00:00
2005-04-16 18:46:29 +00:00
2005-07-08 15:06:58 +00:00
2005-07-08 15:01:13 +00:00
2005-01-06 23:35:40 +00:00
2005-02-12 01:22:39 +00:00
2005-06-07 05:03:28 +00:00
2005-08-06 07:20:18 +00:00
2004-06-21 22:57:16 +00:00
2004-07-15 20:47:41 +00:00
2005-02-27 21:52:42 +00:00
2005-08-08 19:55:32 +00:00
2005-01-06 23:35:40 +00:00
2005-08-08 19:55:32 +00:00
2005-07-01 16:28:32 +00:00
2005-06-11 11:59:48 +00:00
2005-06-05 17:13:23 +00:00
2005-01-06 23:35:40 +00:00
2005-07-17 14:04:03 +00:00
2005-07-30 01:32:16 +00:00
2005-06-08 07:29:22 +00:00
2005-07-01 16:28:32 +00:00
2005-07-01 16:28:32 +00:00
2005-08-01 21:15:09 +00:00
2005-07-05 22:49:10 +00:00
2005-05-07 00:41:36 +00:00
2004-07-26 07:24:04 +00:00
2005-07-20 19:06:06 +00:00
2005-08-03 05:02:08 +00:00
2005-06-17 01:05:13 +00:00
2005-08-13 20:21:33 +00:00
2005-08-17 06:59:23 +00:00
2005-05-11 18:25:42 +00:00
2005-06-23 22:13:29 +00:00
2005-04-07 07:54:08 +00:00
2005-02-20 23:02:20 +00:00
2005-08-14 18:10:04 +00:00
2005-05-18 22:05:12 +00:00
2005-08-23 03:44:06 +00:00
2005-06-23 22:13:29 +00:00
2005-08-03 04:48:22 +00:00
2005-06-09 20:20:31 +00:00