Age | Commit message (Collapse) | Author |
|
libraries. Other misc cleanups.
|
|
(specv_find, specs_add_alias): New functions.
Get rid of mega typedefs, and just use structure pointers like other hurd
libraries. Other misc cleanups.
|
|
Get rid of mega typedefs, and just use structure pointers like other hurd
libraries. Other misc cleanups.
|
|
(noise_write, noise_len, flush): New functions.
(ps_stream_write, _ps_stream_write_field): Use noise functions.
|
|
(ps_alive_p): New function.
|
|
(proc_stat_list_add_pids, proc_stat_list_add_pid,
proc_stat_list_add_all, proc_stat_list_add_login_coll,
proc_stat_list_add_session, proc_stat_list_add_pgrp):
Update declarations.
|
|
(proc_stat_list_add_pid): Add and support new return parameter PS.
(proc_stat_list_add_fn_pids, proc_stat_list_add_id_fn_pids,
proc_stat_list_add_all, proc_stat_list_add_login_coll,
proc_stat_list_add_session, proc_stat_list_add_pgrp):
Add and support new return parameters PROC_STATS & NUM_PROCS.
|
|
|
|
|
|
(ps_emit_wait): New function.
(ps_emit_string, ps_emit_string0): Use ps_stream_write_trunc_field.
(ps_get_wait): Renamed from ps_get_rpc; calling convention changed.
(ps_wait_getter): Renamed from ps_rpc_getter & contents changed accord.
(get_syscall_name, get_rpc_name): New stub functions.
|
|
(summarize_thread_waits): Return both wait and rpc info.
(get_thread_wait): New function.
(proc_stat_set_flags): Support finding wait info.
Change occurances of PSTAT_THREAD_RPC to PSTAT_THREAD_WAIT.
|
|
(PSTAT_THREAD_WAIT): Renamed from PSTAT_THREAD_RPC.
(proc_stat_thread_wait): New macro.
(ps_stream_write_trunc_field): New declaration.
|
|
(ps_stream_write_trunc_field): New function.
(_ps_stream_write_field): New function, from ps_stream_write_field.
|
|
ps_ctty_filter, ps_unorphaned_filter, ps_parent_filter, ps_std_fmt_specs):
Make const.
|
|
ps_owner_getter, ps_owner_uid_getter, ps_ppid_getter, ps_pgrp_getter,
ps_session_getter, ps_login_col_getter, ps_num_threads_getter,
ps_args_getter, ps_state_getter, ps_rpc_getter, ps_vsize_getter,
ps_rsize_getter, ps_cur_priority_getter, ps_base_priority_getter,
ps_max_priority_getter, ps_usr_time_getter, ps_sys_time_getter,
ps_tot_time_getter, ps_rmem_frac_getter, ps_cpu_frac_getter,
ps_sleep_getter, ps_susp_count_getter, ps_proc_susp_count_getter,
ps_thread_susp_count_getter, ps_tty_getter, ps_page_faults_getter,
ps_cow_faults_getter, ps_pageins_getter, ps_msgs_sent_getter,
ps_msgs_rcvd_getter, ps_zero_fills_getter):
Make const.
|
|
display if any thread isn't suspended.
(ps_get_usr_time, ps_get_sys_time, ps_get_tot_time):
Return a struct timeval instead of mach time_value_t.
(ps_cmp_times): New function.
(specs): Rearrange to use new field layout.
(ps_fmt_specs_find): Renamed from find_ps_fmt_spec; now uses a struct
ps_fmt_specs instead of an array of specs.
(specs): Renamed from ps_std_fmt_specs;
(ps_std_fmt_specs): Now of type struct ps_fmt_specs, pointing to specs.
(ps_emit_seconds, ps_emit_minutes): Use timefmt functions.
(append_fraction, sprint_long_time, ps_emit_nice_seconds): Deleted.
Include <timefmt.h>.
|
|
|
|
|
|
Use the new spec fields.
Now takes a ps_fmt_specs_t instead of an array of specs.
Also fixup call to ps_fmt_specs_find().
(ps_fmt_write_proc_stat): Support new inval field in FMT.
(ps_fmt_set_output_width): New function.
|
|
If there are any running threads, then only average priority from them.
(_proc_stat_free): Call user cleanup hook.
(proc_stat_set_flags, add_preconditions): Deal with user bits.
(proc_stat_set_flags): Support the failed field.
(_proc_stat_create): Initialize the failed and hook fields.
|
|
(PSTAT_HOOK, PSTAT_USER_BASE, PSTAT_USER_MASK): New macros.
(struct ps_context): Add USER_HOOKS field.
(struct ps_fmt_spec): Add TITLE field. Renamed DEFAULT_WIDTH field to WIDTH,
and move to after TITLE.
(ps_fmt_spec_width): Renamed from ps_fmt_spec_default_width().
(ps_fmt_spec_title): New macro.
(struct ps_fmt): Add INVAL field.
(ps_fmt_inval): New macro.
(ps_fmt_specs_t): New typedef.
(struct ps_fmt_specs): New structure.
(ps_std_fmt_specs): Now of type struct ps_fmt_specs.
(ps_fmt_specs_find): Renamed from find_ps_fmt_spec; now uses a struct
ps_fmt_specs instead of an array of specs.
(ps_fmt_create): Now takes a ps_fmt_specs_t structure instead of an array of
specs.
(struct proc_stat): Add failed and hook fields.
|
|
Write `-' when the value is 0, rather than mangling the output.
(ps_emit_uid): Use an int uid, and emit "-" for none.
(ps_emit_uname, ps_cmp_uids, ps_cmp_unames, ps_nominal_user):
Handle NULL users.
(ps_owner_uid_getter): New variable.
(ps_get_owner_uid, ps_nominal_uid): New functions.
(ps_std_fmt_specs): Make "UID" use owner_uid rather than owner.
(own_uid): New variable (was function local).
|
|
(ps_not_leader_filter): Renamed from ps_not_sess_leader_filter.
(ps_unorphaned_p): Include login leaders as well as session leaders.
(ps_own_filter): Depend on PSTAT_OWNER_UID.
(ps_own_p): Account for there being no uid.
|
|
to null), instead of failing.
(proc_stat_set_flags): Add support for PROC_OWNER_UID.
(add_preconditions): Add preconditions for owner_uid (& owner).
|
|
(PSTAT_OWNER_UID): New macro.
(struct proc_stat): Add owner_uid field.
(ps_not_leader_filter): Renamed from ps_not_sess_leader_filter.
|
|
Use new STREAM parameter instead of old one and count.
|
|
ps_emit_percent, ps_emit_num_blocks, ps_emit_nice_int,
ps_emit_nice_seconds, ps_emit_seconds, ps_emit_uid, ps_emit_uname,
ps_emit_string0, ps_emit_string, ps_emit_tty_name, ps_emit_state):
Use new STREAM parameter instead of old one and count.
Use new function names.
|
|
(ps_stream_space): Renamed from ps_write_spaces.
(ps_stream_pad): Renamed from ps_write_padding.
(ps_stream_write_field): Renamed from ps_write_field.
(ps_stream_write_int_field): Renamed from ps_write_int_field.
(ps_stream_write, ps_stream_space, ps_stream_pad,
ps_stream_newline, ps_stream_write_field, ps_stream_write_int_field):
Use new STREAM parameter instead of old one and count.
Use new function names.
(ps_stream_write, ps_stream_space): Support negative spaces.
(ps_stream_pad, ps_stream_write_field): Use negative spaces.
(ps_stream_newline): New function.
|
|
Use new STREAM parameter instead of old one and count.
|
|
ps_emit_int, ps_emit_nz_int, ps_emit_priority, ps_emit_percent,
ps_emit_num_blocks, ps_emit_nice_int, ps_emit_nice_seconds, ps_emit_seconds,
ps_emit_uid, ps_emit_uname, ps_emit_string0, ps_emit_string,
ps_emit_tty_name, ps_emit_state, ps_stream_write, ps_stream_space,
ps_stream_pad, ps_stream_newline, ps_stream_write_field,
ps_stream_write_int_field):
Use new STREAM parameter instead of old one and count.
(ps_stream_write): Renamed from ps_write_string.
(ps_stream_space): Renamed from ps_write_spaces.
(ps_stream_pad): Renamed from ps_write_padding.
(ps_stream_write_field): Renamed from ps_write_field.
(ps_stream_write_int_field): Renamed from ps_write_int_field.
(ps_stream_newline): New declaration.
|
|
ps_get_cur_priority):
Get this info using PSTAT_THREAD_BASIC instead of PSTAT_THREAD_SCHED.
|
|
Initialize the proc_info and proc_info_size fields if they've never been set.
Always update proc_getprocinfo fields, even if we already had them.
(add_preconditions): Correct preconditions for PSTAT_STATE.
(PSTAT_TEST_MSGPORT): Renamed from SHOULD_SUPPRESS_MSGPORT_FLAGS.
(PSTAT_USES_MSGPORT): New macro.
(SUPPRESS_MSGPORT_FLAGS): Use PSTAT_USES_MSGPORT, not PSTAT_MSGPORT.
(proc_stat_set_flags): Use PSTAT_TEST_MSGPORT.
(merge_procinfo): Only copy old task info if we actually had it.
(proc_stat_set_flags): Don't unnecessarily grab procinfo stuff.
(summarize_thread_basic_info): Summarize available priority info too.
(summarize_thread_sched_info): Do max_ & depress_priority too.
|
|
anymore (but do require PSTAT_{TASK,THREAD}_BASIC).
(proc_stat_state_tags): Update to reflect new flags.
(proc_stat_set_flags): Set new flags.
(PSTAT_PROCINFO, PSTAT_PROCINFO_THREAD): New macros.
(fetch_procinfo, merge_procinfo): New functions.
(SHOULD_SUPPRESS_MSGPORT_FLAGS): Change to use more accurate flags.
(should_suppress_msgport): Use new fields.
(summarize_thread_basic_info, summarize_thread_sched_info,
summarize_thread_states, summarize_thread_rpcs, count_threads): New funcs.
(proc_stat_set_flags): Support the new division of PSTAT_INFO into individual
flags, and support getting thread information by using the thread's origin
proc_stat.
(_proc_stat_free):
Free the thread_basic_info and thread_sched_info fields if necessary.
(proc_stat_thread_create): Don't require that the source process have thread
information around; it will be fetched later if necessary.
|
|
(ps_own_p): Use proc_stat_proc_info, not proc_stat_info.
|
|
(ps_get_rpc): New function.
(ps_std_fmt_specs): Add "RPC" entry.
(ps_emit_nz_int): New function.
(ps_ppid_getter, ps_pgrp_getter, ps_session_getter, ps_login_col_getter):
Use PSTAT_PROC_INFO, not PSTAT_INFO.
(ps_get_ppid, ps_get_pgrp, ps_get_session, ps_get_login_col):
Use proc_stat_proc_info, not proc_stat_info.
(ps_vsize_getter, ps_rsize_getter, ps_rmem_frac_getter,
ps_proc_susp_count_getter): Use PSTAT_TASK_BASIC, not PSTAT_INFO.
(ps_get_vsize, ps_get_rsize, ps_get_rmem_frac, ps_get_proc_susp_count):
Use proc_stat_task_basic_info, not proc_stat_info.
(ps_cur_priority_getter, ps_base_priority_getter, ps_max_priority_getter):
Use PSTAT_THREAD_SCHED, not PSTAT_THREAD_INFO.
(ps_usr_time_getter, ps_sys_time_getter, ps_tot_time_getter,
ps_cpu_frac_getter, ps_sleep_getter):
Use PSTAT_THREAD_BASIC, not PSTAT_THREAD_INFO.
|
|
(proc_stat_num_threads): Use the num_threads field.
(proc_stat_thread_sched_info, proc_stat_thread_basic_info):
Don't take the address, now that the fields used are pointers themselves.
(proc_stat_thread_rpc, proc_stat_task_basic_info): New macros.
(proc_stat_proc_info): Renamed from proc_stat_info.
(PSTAT_PROC_INFO): Renamed from PSTAT_INFO.
(PSTAT_TASK_BASIC, PSTAT_THREAD_BASIC, PSTAT_THREAD_SCHED, PSTAT_THREAD_RPC):
New macros.
(struct proc_stat):
info & info_len --> proc_info & proc_info_len.
Add the num_threads, task_basic_info, and thread_rpc fields.
thread_basic_info & thread_sched_info are now pointers.
|
|
|
|
|
|
(REMHDRS, MIGSTUBS): Removed.
|
|
|
|
(state_shadows): New variable.
(ps_emit_state): Use the state_shadows list to turn off some states.
|
|
PSTAT_STATE_P_* for process-global bits, and PSTAT_STATE_T_* for per-thread
bits.
|
|
(proc_stat_set_flags): Actually set the PSTAT_STATE_P_STOP bit.
(proc_stat_state_tags): Reordered to reflect the new ordering of the state
bits.
|
|
(REMHDRS): New variable.
|
|
actually supposed to be a test! Make it so...
|
|
|
|
test.
|
|
ps_unorphaned_filter, ps_parent_filter): Declare these as extern so that the
linker will bring in the initialized version (it's not doing so otherwise may
be a bug).
|
|
passed just to get correctly capitalized titles. Instead, do things
correctly by making enough room to store our own version of the title string,
which we can do with what we please.
|
|
|