Jeff Roberson
1c4bcd050a
- Move rusage from being per-process in struct pstats to per-thread in
...
td_ru. This removes the requirement for per-process synchronization in
statclock() and mi_switch(). This was previously supported by
sched_lock which is going away. All modifications to rusage are now
done in the context of the owning thread. reads proceed without locks.
- Aggregate exiting threads rusage in thread_exit() such that the exiting
thread's rusage is not lost.
- Provide a new routine, rufetch() to fetch an aggregate of all rusage
structures from all threads in a process. This routine must be used
in any place requiring a rusage from a process prior to it's exit. The
exited process's rusage is still available via p_ru.
- Aggregate tick statistics only on demand via rufetch() or when a thread
exits. Tick statistics are kept in the thread and protected by sched_lock
until it exits.
Initial patch by: attilio
Reviewed by: attilio, bde (some objections), arch (mostly silent)
2007-06-01 01:12:45 +00:00
..
2007-02-23 12:19:07 +00:00
2006-03-16 08:51:59 +00:00
2007-05-14 22:40:04 +00:00
2007-06-01 01:12:45 +00:00
2006-11-03 18:57:49 +00:00
2007-06-01 01:12:45 +00:00
2007-03-06 12:08:38 +00:00
2007-06-01 01:12:45 +00:00
2007-05-08 21:49:59 +00:00
2007-05-31 11:51:53 +00:00
2007-03-05 13:10:58 +00:00
2007-03-26 18:03:29 +00:00
2007-05-31 11:51:53 +00:00
2007-03-05 13:10:58 +00:00
2007-05-28 17:15:05 +00:00
2007-05-31 11:51:53 +00:00
2007-06-01 01:12:45 +00:00
2007-06-01 01:12:45 +00:00
2007-01-23 08:46:51 +00:00
2007-05-31 19:25:35 +00:00
2007-04-13 23:54:22 +00:00
2007-03-21 21:20:51 +00:00
2007-01-23 08:46:51 +00:00
2006-09-09 16:09:01 +00:00
2007-05-31 11:51:53 +00:00
2007-05-31 11:51:53 +00:00
2007-05-18 15:04:59 +00:00
2007-05-31 22:52:15 +00:00
2007-04-04 21:27:01 +00:00
2007-05-31 22:52:15 +00:00
2007-03-04 22:36:48 +00:00
2007-05-27 20:50:23 +00:00
2007-05-18 15:04:59 +00:00
2007-03-05 13:10:58 +00:00
2006-12-06 06:34:57 +00:00
2006-11-06 13:37:19 +00:00
2007-06-01 01:12:45 +00:00
2007-03-05 13:10:58 +00:00
2007-06-01 01:12:45 +00:00
2007-05-18 15:04:59 +00:00
2007-03-04 22:36:48 +00:00
2007-06-01 01:12:45 +00:00
2007-01-16 11:40:55 +00:00
2007-02-08 01:52:25 +00:00
2007-05-31 09:14:48 +00:00
2007-06-01 01:12:45 +00:00
2006-08-01 16:32:20 +00:00
2007-03-05 13:10:58 +00:00
2006-08-04 07:56:35 +00:00
2007-01-23 08:46:51 +00:00
2007-06-01 01:12:45 +00:00
2007-04-22 15:31:22 +00:00
2007-05-11 20:52:47 +00:00
2007-03-05 13:10:58 +00:00
2007-04-23 12:53:00 +00:00
2007-03-05 13:10:58 +00:00
2006-12-06 06:34:57 +00:00
2007-05-31 11:51:53 +00:00
2007-05-31 11:51:53 +00:00
2007-05-13 18:21:54 +00:00
2006-08-05 19:25:14 +00:00
2006-11-11 16:26:58 +00:00
2006-03-30 18:45:50 +00:00
2007-03-05 13:10:58 +00:00
2006-11-12 03:34:03 +00:00
2007-02-27 17:23:29 +00:00
2007-03-08 06:44:34 +00:00
2007-04-20 05:45:46 +00:00
2006-04-23 22:12:39 +00:00
2006-11-06 13:42:10 +00:00
2006-07-19 18:53:56 +00:00
2007-05-23 17:28:21 +00:00
2006-10-02 18:23:37 +00:00
2006-10-31 21:11:21 +00:00
2006-10-24 10:27:23 +00:00
2007-02-15 17:21:31 +00:00
2006-07-09 21:42:58 +00:00
2006-06-18 12:27:59 +00:00
2007-05-18 15:04:59 +00:00
2007-05-27 17:38:36 +00:00
2007-03-08 06:44:34 +00:00
2007-05-20 22:11:50 +00:00
2007-04-28 07:37:49 +00:00
2006-10-02 18:23:37 +00:00
2007-05-18 06:32:24 +00:00
2007-03-08 06:44:34 +00:00
2006-05-28 22:15:28 +00:00
2007-01-23 08:46:51 +00:00
2007-06-01 01:12:45 +00:00
2007-05-18 06:32:24 +00:00
2007-05-29 18:55:41 +00:00
2007-05-01 06:35:54 +00:00
2007-05-27 17:33:10 +00:00
2007-03-04 22:36:48 +00:00
2007-03-04 17:50:46 +00:00
2006-11-03 18:57:49 +00:00
2006-11-03 15:23:16 +00:00
2006-11-03 15:23:16 +00:00
2007-02-20 00:06:59 +00:00
2007-03-05 13:10:58 +00:00
2007-03-26 17:41:14 +00:00
2007-03-05 13:10:58 +00:00
2007-05-31 11:51:53 +00:00
2007-01-08 17:49:59 +00:00
2006-11-06 13:42:10 +00:00
2006-09-27 16:41:15 +00:00
2006-12-20 02:49:59 +00:00
2007-05-03 14:42:42 +00:00
2007-05-16 20:41:08 +00:00
2006-10-22 11:52:19 +00:00
2007-05-16 20:41:08 +00:00
2007-05-23 13:36:02 +00:00
2007-03-05 13:10:58 +00:00
2007-05-31 11:51:22 +00:00
2007-06-01 01:12:45 +00:00
2007-05-19 20:50:59 +00:00
2007-05-29 12:36:00 +00:00
2007-03-05 13:26:07 +00:00
2007-06-01 01:12:45 +00:00
2007-06-01 01:12:45 +00:00
2007-05-25 22:23:38 +00:00
2007-06-01 01:12:45 +00:00
2007-05-18 13:02:13 +00:00
2007-02-15 22:08:35 +00:00
2006-12-23 00:30:03 +00:00
2007-03-13 01:50:27 +00:00
2007-02-16 17:32:41 +00:00
2007-05-27 20:50:23 +00:00
2007-04-26 08:56:56 +00:00
2007-05-31 22:52:15 +00:00
2007-05-31 11:51:53 +00:00
2007-05-31 11:51:53 +00:00
2007-05-31 11:51:53 +00:00