diff options
author | Almudena Garcia <liberamenso10000@gmail.com> | 2019-10-31 01:53:52 +0100 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2019-10-31 01:59:00 +0100 |
commit | d8671bc2a0fead7655b9e80736db33d84f14025c (patch) | |
tree | 11bc9379bf6946619b42789370a43dfe131fb068 /proc | |
parent | 40ab805df48b2f65d5028ba59063e2a36f19f452 (diff) | |
download | hurd-d8671bc2a0fead7655b9e80736db33d84f14025c.tar.gz hurd-d8671bc2a0fead7655b9e80736db33d84f14025c.tar.bz2 hurd-d8671bc2a0fead7655b9e80736db33d84f14025c.zip |
proc: add support for last_processor
Read last_processor (new member) from thread_info structures, and fill stat
structure with this.
* configure.ac: Check whether thread_sched_info structure includes
`last_processor' member.
* proc/info.c (S_proc_getprocinfo)
[HAVE_STRUCT_THREAD_SCHED_INFO_LAST_PROCESSOR]: Set `last_processor' field.
* procfs/process.c (process_file_gc_stat)
[HAVE_STRUCT_THREAD_SCHED_INFO_LAST_PROCESSOR]: Set last processor proc
field to `thsi->last_processor'.
[!HAVE_STRUCT_THREAD_SCHED_INFO_LAST_PROCESSOR]: Set last processor proc
field to 0.
Diffstat (limited to 'proc')
-rw-r--r-- | proc/info.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/proc/info.c b/proc/info.c index f2e60114..2ea2a114 100644 --- a/proc/info.c +++ b/proc/info.c @@ -713,6 +713,14 @@ S_proc_getprocinfo (struct proc *callerp, *flags &= ~PI_FETCH_THREAD_SCHED; err = 0; } + +#ifdef HAVE_STRUCT_THREAD_SCHED_INFO_LAST_PROCESSOR + /* If the structure read doesn't include last_processor field, assume + CPU 0. */ + if (thcount < 8) + thds[i]->last_processor = 0; +#endif + } /* Note that there are thread wait entries only for those threads |