diff options
author | Roland McGrath <roland@gnu.org> | 1996-07-17 22:55:08 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 1996-07-17 22:55:08 +0000 |
commit | 5b9e5e24f883db76aa783678b77698c47caecc30 (patch) | |
tree | 199fc2010d664be83723e838f8217dbb4c3eab82 /libps | |
parent | b3657b27182f2c707cb940795cb982e4bb0f5660 (diff) |
Initial revision
Diffstat (limited to 'libps')
-rw-r--r-- | libps/ChangeLog | 747 |
1 files changed, 747 insertions, 0 deletions
diff --git a/libps/ChangeLog b/libps/ChangeLog new file mode 100644 index 00000000..0f07b03e --- /dev/null +++ b/libps/ChangeLog @@ -0,0 +1,747 @@ +Wed Jul 10 22:49:39 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * procstat.c (set_procinfo_flags): Don't use fake "*" wait value + if there's no msgport. + +Mon Jul 8 21:39:58 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * write.c (_ps_stream_write_field): If a field is truncatable + (MAX_WIDTH >= 0), take some of our spacing deficit out of it. + +Tue Jul 2 14:43:39 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * procstat.c (proc_stat_set_flags): Pass PS->task_events_info to + task_info, not its address. + +Thu Jun 27 18:32:27 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu> + + * Makefile (LCLHDRS): Add common.h. + +Thu Jun 27 12:33:41 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * ps.h (struct ps_fmt): Add SRC_LEN field. + (proc_stat_list_clone, ps_fmt_clone): New declarations. + * fmt.c (_fmt_create): Set NEW_FMT->src_len. Use strdup. + (ps_fmt_clone): New function. + * proclist.c (proc_stat_list_clone): New function. + +Mon Jun 3 10:17:43 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * spec.c (ps_emit_wait): Never truncate what we write. + + * user.c (ps_user_passwd): Check return value of install_passwd + correctly (it's an error_t). + + * ps.h (struct proc_stat): Add PROC_INFO_VM_ALLOCED, + THREAD_WAITS_VM_ALLOCED, and ARGS_VM_ALLOCED fields, + * procstat.c (merge_procinfo) Take a struct proc_stat as an arg, + not all the individual fields. Correctly set OLD_PI_HDR. + Correctly calculate REALLY_NEED. + (set_procinfo_flags): Use new calling merge_procinfo calling convention. + (_proc_stat_free): Use explicit VM_ALLOCED flag for MFREEMEM. + (proc_stat_set_flags): Try mallocing a buffer for PS->args. + Move second call to set_procinfo_flags after msgport suppress test. + Add TEST_MSGPORT_FLAGS variable, & use it. + Be more picky about when we call set_procinfo_flags. + +Sat Jun 1 11:18:58 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * procstat.c (set_procinfo_flags): New function. + (proc_stat_set_flags): Use it, to get msgport validity testing right. + (merge_procinfo): Take and return HAVE instead of using a + reference parameter. Clean up malloced storage if we get an error. + + * spec.c (struct ps_fmt_spec_block): New type. + (specs_add_alias): Use a linked list of ps_fmt_spec_blocks instead of + reallocing a vector of specs. + (ps_fmt_specs_find): Change searching accordingly. + * ps.h (struct ps_fmt_specs): The EXPANSIONS field now points to a + struct ps_fmt_spec_block. Delete EXPANSIONS_ALLOCED field. + + * procstat.c (merge_procinfo): Correctly test for malloc failure. + +Fri May 31 18:36:18 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * procstat.c (MFREEMEM): New macro combining MFREEM & MFREEVM. + (MFREEM, MFREEVM): Macros deleted. + (merge_procinfo): Do mem allocation more efficiently and correctly. + (fetch_procinfo): Do conversion for PI_SIZE from/to units of + sizeof (int), so no one else has to deal with it. + (PROCINFO_MALLOC_SIZE, WAITS_MALLOC_SIZE): New macros. + + * procstat.c (proc_stat_set_flags): After fetching number of + threads to guess whether we need wait info, put it in PS->num_threads. + (merge_procinfo): Avoid vm_allocing a procinfo buffer each time if + we can help it. + Correctly reflect newly fetched info. + (PSTAT_PROCINFO_MERGE, PSTAT_PROCINFO_REFETCH): New macros. + +Wed May 29 11:31:31 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * procstat.c (MP_MGET): Only disable msgport on timeout. + (get_thread_wait): Decrement N in loop. + + * ps.h: Renumber PSTAT_ values to remove dup. + + * procstat.c (merge_procinfo): Don't die if WAITS == 0. + (summarize_thread_waits): Correctly advance NEXT_WAIT. + Skip threads marked `itimer'. + (proc_stat_set_flags): Consider processes with less than 4 threads + to be candidates for a meaningful process wait status. + (get_thread_wait): Use strnlen instead of memchr. + (PSTAT_PROCINFO): Typo: PSTAT_THREAD_WAIT --> PSTAT_THREAD_WAITS. + (PSTAT_USES_MSGPORT): Add PSTAT_THREAD_WAIT. + +Tue May 28 16:36:17 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * fmt.c (_fmt_create): Make NAME termination work for posix-mode. + + * fmt.c (ps_fmt_write_proc_stat): Call the output function correctly. + (_fmt_create): Get FIELD's precision, not width, from its spec. + +Fri May 24 13:33:14 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu> + + * procstat.c (fetch_procinfo): Always turn on PSTAT_PROC_INFO if + proc_getprocinfo returns successfully. + (merge_procinfo): Update *HAVE with PSTAT_PROC_INFO from + REALLY_HAVE here. + +Wed May 22 19:55:04 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * fmt.c (_fmt_create): Increment SRC when reading modifiers. + Recognize '^' modifier. + +Sun May 12 13:33:16 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * procstat.c (PSTAT_PROCINFO, PSTAT_PROCINFO_THREAD): Add + PSTAT_THREAD_WAITS. + (proc_stat_set_flags): Be more careful about when we fetch + thread_wait information, and synthesize a process-summary thread_wait + value for lots of threads. + (summarize_thread_waits): Only give a real summary if there's but + a single user thread. + (fetch_procinfo): Use PSTAT_THREAD_WAITS instead of PSTAT_THREAD_WAIT. + * ps.h (PSTAT_THREAD_WAITS): New macro. + + * procstat.c (merge_procinfo, fetch_procinfo): Change HAVE to be an + input/output parameter. + (proc_stat_set_flags): Change accordingly. + + * procstat.c (get_thread_wait): Correctly advance WAIT. + + * spec.c (specs): Give runtime specs 2 fraction digits by default. + +Thu May 9 17:03:37 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu> + + * procstat.c (fetch_procinfo): Pass a reference to PI_FLAGS in + call to fetch_procinfo. + +Mon May 6 16:28:54 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * proclist.c (proc_stat_list_spec_nominal): Take a spec again. + * ps.h (proc_stat_list_spec_nominal): Change FIELD arg to SPEC. + + * user.c (install_passwd): New function. + (ps_user_passwd): Use it. + (ps_user_uname_create, ps_user_passwd_create): New functions. + * ps.h (ps_user_uname_create, ps_user_passwd_create): New declarations. + (ps_fmt_set_output_width): New declaration. + + * spec.c (ps_emit_user_name): New function. + + * ps.h (struct ps_fmt_spec): Remove keep field, add flags field. + (struct ps_fmt_field): Remove at_mod, colon_mod, & keep fields, + add flags field. + (PS_FMT_FIELD_AT_MOD, PS_FMT_FIELD_COLON_MOD, PS_FMT_FIELD_KEEP, + PS_FMT_FIELD_UPCASE_TITLE): New macros. + * spec.c (specs): Initialize flags field, not keep field. + (specs_add_alias): Pass on flags field. + * fmt.c (_fmt_create): Use flags fields, and implement global + flags, and add upcase flag (^). + (ps_fmt_write_titles): Implement PS_FMT_FIELD_UPCASE_TITLE. + * proclist.c (proc_stat_list_spec_nominal): Use flags field, not + keep field. + + * ps.h (struct proc_stat): Remove exec_flags field. + (PSTAT_EXEC_FLAGS): Macro removed. + * procstat.c (add_preconditions, proc_stat_set_flags): Remove + references to exec_flags. + +Sun May 5 00:22:01 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * proclist.c (proc_stat_list_spec_nominal): Take a field, not a spec. + If the field has the keep flag set, don't nominalize it. + * fmt.c (_fmt_create): Change syntax of fields. Add support for + precision and `@', `:', `?', & `!' modifiers. + Add POSIX argument, and support for posix-style format strings. + When using the field name as the title, use the defn, not the user's. + (ps_fmt_squash): Call FN with the field, not the field's spec. + (ps_fmt_squash_flags): Appropiately modify the function we use. + (ps_fmt_create, ps_fmt_creation_error): Add POSIX argument. + * ps.h (struct ps_fmt_spec): Add precision & keep fields. + Change args to OUTPUT_FN. + (struct ps_fmt_field): Add precision, keep, at_mod, & colon_mod fields. + (proc_stat_list_spec_nominal): Change SPEC arg to FIELD. + (ps_fmt_squash): Call FN on the field, not the spec. + (ps_fmt_create, ps_fmt_creation_error): Add POSIX arg. + * spec.c (specs): Add precision & keep fields. + (FG): New macro. + (ps_emit_*): Take FIELD argument instead of WIDTH. + +Thu May 2 00:12:19 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * ps.h (ps_fmt_creation_error): New declaration. + +Tue Apr 30 18:54:57 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * fmt.c (_fmt_create): New function (was ps_fmt_create). + (ps_fmt_create): Call _fmt_create. + (ps_fmt_creation_error): New function. + + * spec.c (ps_emit_past_time): Implement. + +Mon Apr 29 12:59:08 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * spec.c (ps_emit_seconds): Use new args to fmt_seconds. + (ps_emit_minutes): Use new args to fmt_minutes. + +Tue Apr 23 13:38:06 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * ps.h (PSTAT_STATE_P_ATTRS): Fix names of individual flags. + + * spec.c (state_shadows): If a process has no parent don't show + various process attributes (that are likely to be noise). + +Thu Apr 11 18:05:16 1996 Michael I. Bushnell, p/BSG <mib@gnu.ai.mit.edu> + + * Makefile (MIGCOMUFLAGS): Delete variable. + + * spec.c (ps_emit_past_time): Return zero. + +Wed Mar 27 15:19:40 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * Makefile (msg-MIGUFLAGS, term-MIGUFLAGS): Add a user prefix of `ps_'. + * procstat.c (proc_stat_set_flags): Use new prefix. + Include "ps_msg.h". + * tty.c (ps_tty_name): Use new prefix. + Include "ps_term.h". + +Mon Mar 25 11:35:48 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * ...just about everything...: Get rid of mega typedefs, and just + use structure pointers like other hurd libraries. Other misc cleanups. + + * ps.h (struct ps_fmt_specs): Add EXPANSIONS & EXPANSIONS_ALLOCED. + * spec.c (ps_fmt_specs_find): Use new alias expansion method. + (specv_find, specs_add_alias): New functions. + +Mon Mar 11 16:27:14 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * write.c (noise_write): Keep track of amount printed correctly. + +Sat Mar 9 15:52:55 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * write.c (iscntl): New macro. + (noise_write, noise_len): Correctly handle MAX < 0 case. + (noise_write): Use new arguments for flush. + (flush): Moved to file scope. Remove END argument and use NEW - 1. + (noise_write): Make T of type unsigned char * so that chars with + the high bit set print correctly. + +Thu Mar 7 19:08:00 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * write.c (iscntl): New macro. + (noise_write, noise_len, flush): New functions. + (ps_stream_write, _ps_stream_write_field): Use noise functions. + +Thu Feb 15 00:02:53 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * spec.c (specs): Right-align the TTY column. + +Wed Feb 14 17:49:17 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * write.c (ps_stream_write): Don't screw up on negative spaces. + + * proclist.c (proc_stat_list_add_pids): Add and support new return + parameter PROC_STATS. + (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.h (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. + + * filters.c (ps_alive_filter): New variable. + (ps_alive_p): New function. + * ps.h (ps_alive_filter): New declaration. + +Mon Feb 12 14:34:22 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * spec.c (ps_emit_wait): For rpcs, put the port first. + +Fri Feb 9 15:55:35 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * ps.h (struct proc_stat): Add thread_wait, thread_waits, & + thread_waits_len fields. + (PSTAT_THREAD_WAIT): Renamed from PSTAT_THREAD_RPC. + (proc_stat_thread_wait): New macro. + (ps_stream_write_trunc_field): New declaration. + * procstat.c (fetch_procinfo, merge_procinfo): Return wait strings. + (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. + * spec.c (specs): Change `Rpc' entry to `Wait'. + (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. + * write.c (ps_stream_write_field): Call _ps_stream_write_field. + (ps_stream_write_trunc_field): New function. + (_ps_stream_write_field): New function, from ps_stream_write_field. + +Sat Feb 3 22:22:01 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * spec.c (specs, state_shadows, ps_pid_getter, + ps_thread_index_getter, 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. + * ps.h (ps_getter_t, ps_filter_t, struct ps_filter, + ps_not_leader_filter, ps_ctty_filter, ps_unorphaned_filter, + ps_parent_filter, ps_std_fmt_specs): Make const. + +Mon Jan 15 16:32:31 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * procstat.c (summarize_thread_basic_info): If there are any + running threads, then only average priority from them. + +Sun Jan 14 00:24:55 1996 Miles Bader <miles@gnu.ai.mit.edu> + + * spec.c (state_shadows): Don't reflect a suspended thread in the + process state display if any thread isn't suspended. + +Sun Dec 24 14:24:52 1995 Miles Bader <miles@gnu.ai.mit.edu> + + * Makefile (installhdrsubdir): New macro (put ps.h in <>, not <hurd/>). + +Sat Dec 23 21:50:58 1995 Miles Bader <miles@gnu.ai.mit.edu> + + * fmt.c (ps_fmt_set_output_width): New function. + +Fri Dec 22 12:21:04 1995 Miles Bader <miles@gnu.ai.mit.edu> + + * ps.h (struct ps_user_hooks): New structure. + (PSTAT_HOOK, PSTAT_USER_BASE, PSTAT_USER_MASK): New macros. + (struct ps_context): Add USER_HOOKS field. + * procstat.c (_proc_stat_free): Call user cleanup hook. + (proc_stat_set_flags, add_preconditions): Deal with user bits. + * context.c (ps_context_create): Initialize USER_HOOKS field. + +Thu Dec 21 12:04:24 1995 Miles Bader <miles@gnu.ai.mit.edu> + + * spec.c (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. + (ps_emit_seconds, ps_emit_minutes): Use timefmt functions. + (append_fraction, sprint_long_time, ps_emit_nice_seconds): Deleted. + Include <timefmt.h>. + + * ps.h (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. + * spec.c (specs): Rearrange to use new field layout. + + * fmt.c (ps_fmt_create): Use the new spec fields. + (ps_fmt_write_proc_stat): Support new inval field in FMT. + + * spec.c (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.h (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. + + * fmt.c (ps_fmt_create): Now takes a ps_fmt_specs_t instead of an + array of specs. Also fixup call to ps_fmt_specs_find(). + + * ps.h (struct proc_stat): Add failed and hook fields. + * procstat.c (proc_stat_set_flags): Support the failed field. + (_proc_stat_create): Initialize the failed and hook fields. + +Wed Dec 20 12:49:24 1995 Miles Bader <miles@gnu.ai.mit.edu> + + * spec.c (ps_emit_nz_int): Write `-' when the value is 0, rather + than mangling the output. + +Sun Dec 17 03:09:31 1995 Miles Bader <miles@gnu.ai.mit.edu> + + * procstat.c (proc_stat_set_flags): If there's no owner, set the + uid to -1 (and the owner to null), instead of failing. + * spec.c (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. + + * filters.c (ps_not_leader_p): Renamed from ps_not_sess_leader_p. + (ps_not_leader_filter): Renamed from ps_not_sess_leader_filter. + (ps_unorphaned_p): Include login leaders as well as session leaders. + * ps.h (ps_not_leader_filter): Renamed from ps_not_sess_leader_filter. + +Sat Dec 16 23:42:27 1995 Miles Bader <miles@gnu.ai.mit.edu> + + * ps.h (proc_stat_owner_uid): New macro. + (PSTAT_OWNER_UID): New macro. + (struct proc_stat): Add owner_uid field. + * procstat.c (proc_stat_set_flags): Add support for PROC_OWNER_UID. + (add_preconditions): Add preconditions for owner_uid (& owner). + * spec.c (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). + * filters.c (ps_own_filter): Depend on PSTAT_OWNER_UID. + (ps_own_p): Account for there being no uid. + +Thu Nov 16 12:51:34 1995 Miles Bader <miles@gnu.ai.mit.edu> + + * write.c (ps_stream_write_field): Trim spaces from BUF. + +Wed Nov 15 18:55:26 1995 Miles Bader <miles@gnu.ai.mit.edu> + + * ps.h (ps_fmt_write_titles, ps_fmt_write_proc_stat, + proc_stat_list_fmt, 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. + + * fmt.c (ps_fmt_write_titles, ps_fmt_write_proc_stat): Use new + write function names. Use new STREAM parameter instead of old one + and count. + * proclist.c (proc_stat_list_fmt): Ditto. + * spec.c (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): + Ditto. + (ps_emit_seconds): Remove leading spaces from what we print. + + * write.c (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_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_newline): New function. + (ps_stream_pad, ps_stream_write_field): Use negative spaces. + +Tue Nov 7 17:43:48 1995 Miles Bader <miles@gnu.ai.mit.edu> + + * spec.c (ps_base_priority_getter, ps_cur_priority_getter, + ps_get_base_priority, ps_get_cur_priority): Get this info using + PSTAT_THREAD_BASIC instead of PSTAT_THREAD_SCHED. + * procstat.c (summarize_thread_basic_info): Summarize available + priority info too. + (summarize_thread_sched_info): Do max_ & depress_priority too. + + * procstat.c (proc_stat_set_flags): Initialize the proc_info and + proc_info_size fields if they've never been set before. + 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. + +Tue Oct 31 14:03:53 1995 Miles Bader <miles@gnu.ai.mit.edu> + + * spec.c (ps_rpc_getter): New variable. + (ps_get_rpc): New function. + (ps_std_fmt_specs): Add "RPC" entry. + (ps_emit_nz_int): New function. + + * ps.h (PSTAT_STATE_P_LOGINLDR, PSTAT_STATE_P_WAIT, + PSTAT_STATE_P_GETMSG): New flags. + * procstat.c (add_preconditions): Don't require PSTAT_EXEC_FLAGS for + getting the state anymore (but do require PSTAT_{TASK,THREAD}_BASIC). + (proc_stat_state_tags): Update to reflect new flags. + (proc_stat_set_flags): Set new flags. + + * procstat.c (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 functions. + (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. + + * spec.c (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. + + * filters.c (ps_own_filter): Use PSTAT_PROC_INFO, not PSTAT_INFO. + (ps_own_p): Use proc_stat_proc_info, not proc_stat_info. + + * ps.h (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. + +Mon Oct 9 14:57:48 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> + + * Makefile: Specify shared library dependencies. + +Fri Aug 25 18:55:51 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu> + + * ps.h (ps_std_fmt_specs): Declare extern. + +Wed Aug 23 15:04:51 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu> + + * Makefile (OBJS): Just put the migs stubs directly in here. + (REMHDRS, MIGSTUBS): Removed. + +Sat Aug 19 11:49:06 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu> + + * procstat.c (proc_stat_set_flags): Actually set the P_STOP bit. + +Fri Aug 18 16:43:41 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu> + + * ps.h (PSTAT_STATE_*): All proc state flags reorganized and + renamed to PSTAT_STATE_P_* for process-global bits, and + PSTAT_STATE_T_* for per-thread bits. + * procstat.c (proc_stat_state_tags): Reordered to reflect the new + ordering of the state bits. + (thread_state, proc_stat_set_flags): Use the new state bits. + * spec.c (ps_emit_state): Rearrange things to reflect the new + state bits. + (state_shadows): New variable. + (ps_emit_state): Use the state_shadows list to turn off some states. + * filters.c (ps_not_sess_leader_p, ps_unorphaned_p, ps_parent_p): + Use the new state bits. + +Sat Jul 8 13:34:20 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu> + + * tty.c (ps_tty_short_name): That assignment around which extra + parents were put was actually supposed to be a test! Make it so... + +Thu Jul 6 22:25:20 1995 Michael I Bushnell <mib@duality.gnu.ai.mit.edu> + + * tty.c (ps_tty_short_name): Put extra parens around assignment + inside if test. + +Thu Jul 6 15:36:04 1995 Miles Bader <miles@geech.gnu.ai.mit.edu> + + * Makefile: Remove include dependencies. + +Thu Jun 29 15:29:05 1995 Miles Bader <miles@geech.gnu.ai.mit.edu> + + * Makefile (REMHDRS): New variable. + ($(OBJS)): depend on ../libihash/ihash.h. + * ps.h: Include hurd/ihash.h instead of ihash.h. + +Wed May 31 13:09:04 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu> + + * fmt.c (ps_fmt_create): Don't mutate the format spec name in the + fmt_spec list we're 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. + + * ps.h (ps_own_filter, ps_not_sess_leader_filter, ps_ctty_filter, + 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). + +Thu May 4 20:01:32 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu> + + * procstat.c (proc_stat_set_flags): If a msg port call times out, + disable use of that msg port. + * Makefile (MIGSTUBS, term-MIGUFLAGS, msg-MIGUFLAGS): Compile our + own msg & term user stubs to add msg timeouts. + +Wed May 3 11:32:52 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu> + + * proclist.c (proc_stat_list_for_each): New function for iterating + over proc_stat_lists. + (proc_stat_list_spec_nominal): New function for deciding if a + particular spec is always nominal. + * ps.h: Add entries for proc_stat_list_for_each and + proc_stat_list_spec_nominal. + + * fmt.c (ps_fmt_squash, ps_fmt_squash_flags): Recalculate the set + of ps flags needed by the fmt in ps_fmt_squash. + +Tue May 2 12:25:57 1995 Miles Bader <miles@geech.gnu.ai.mit.edu> + + * ps.h (ps_fmt_squash): Rename to ps_fmt_squash_flags. + * fmt.c (ps_fmt_squash, ps_fmt_squash_flags): Rename ps_fmt_squash to + ps_fmt_squash_flags, moving most of the guts into a new more + general ps_fmt_squash, which is usable for other things than flags. + + * ps.h (struct ps_fmt_spec): Add the nominal_fn field, which will + be used to decide whether values are `unexciting'. + * spec.c (ps_std_fmt_specs): Add values for the nominal_fn field. + (ps_nominal_zint, ps_nominal_user, ps_nominal_pri, ps_nominal_nth): + Possible nominal funs. + + * ps.h (struct proc_stat): Add the suspend_count field, along with + PSTAT_SUSPEND_COUNT, and proc_stat_suspend_count(ps). + * procstat.c (proc_stat_set_flags, add_preconditions): Add support for + the suspend_count field. + * spec.c (ps_std_fmt_specs): Add the Susp (task/thread suspend count), + PSusp (task suspend count), and TSusp (thread suspend count) output + specs. + + * procstat.c (add_preconditions): A new function that calculates inter- + flag dependencies; code moved here from from proc_stat_set_flags. + (should_suppress_msgport): A new function that returns true when + there's some condition indicating that we shouldn't use a process's msg + port. + (proc_stat_set_flags): Avoid using a process's msg port when it may be + unusable. + + * ps.h (PSTAT_STATE_FORKED): A new flag to replace PSTAT_STATE_EXECED; + we want to the flags to mark exceptional conditions, and this is rarer. + * procstat.c (proc_stat_set_flags): Set PSTAT_STATE_FORKED instead of + PSTAT_STATE_EXECED. + (proc_stat_state_tags): Change the user state letter to "f" from "e". + +Sun Apr 23 15:38:39 1995 Miles Bader <miles@geech.gnu.ai.mit.edu> + + * Makefile: Set libname. + +Fri Apr 7 11:12:15 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu> + + * proclist.c (proc_stat_list_sort1): Always keep threads after their + process when sorting! + + * spec.c (ps_emit_state): If a process is marked as stopped, then + don't mention sleeping or idle threads' status (as that's presumably + the signal thread). + + * ps.h: Add decls for proc_stat_list_add_pgrp & ps_tty_short_name. + + * proclist.c (proc_stat_list_add_all, proc_stat_list_add_login_coll, + proc_stat_list_add_session): Move most of the functionality into + proc_stat_list_add_[id_]fn_pids. + (proc_stat_list_add_pgrp): New function, adds pids for a pgrp. + + * tty.c (ps_tty_short_name): New function; functionality used to be in + spec.c + (ps_tty_create, ps_tty_free): Add short_name fields. + * spec.c (ps_emit_tty_name): Move guts into into ps_tty_short_name. + + * Just about everything: tighten up types used (i.e., don't use int + for everything). + +Wed Apr 5 22:42:24 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu> + + * spec.c (ps_std_fmt_specs): Add the `Arg0' spec, which is the + same as `Args', but only prints the first one. Change MsgsIn + and MsgsOut to MsgIn and MsgOut. + +Tue Apr 4 20:13:55 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu> + + * ps.h: Add the PSTAT_NO_MSGPORT flag, which when set disables any + use of the process's message port. + * procstat.c (proc_stat_set_flags): If PSTAT_NO_MSGPORT is set, + don't use the msg port. + +Wed Mar 29 15:36:43 1995 Miles Bader <miles@churchy.gnu.ai.mit.edu> + + * procstat.c (proc_stat_set_flags): Don't barf if a process has + zero threads. + +Tue Mar 28 10:33:08 1995 Miles Bader <miles@duality.gnu.ai.mit.edu> + + * ps.h: Add the exec_flags field to the proc_stat structure, and + add PSTAT_STATE_TRACED. + * procstat.c (proc_stat_set_flags): Add support for the exec_flags + field, and make the state bits calculation use that to support the + PSTAT_STATE_TRACED bit. + +Mon Mar 20 20:51:51 1995 Michael I Bushnell <mib@duality.gnu.ai.mit.edu> + + * user.c (ps_user_passwd) [COUNT, COPY]: Use `if' statement. + * spec.c (ps_emit_num_blocks): Use int format for int arg. + (sprint_frac_value): Likewise. + * write.c (ps_write_int_field): Likewise. + * host.c (ps_host_basic_info): Cast third arg to host_info. + (ps_host_sched_info): Likewise. + (ps_host_load_info): Likewise. + + * filters.c: Include <unistd.h>. + * context.c: Include <hurd/term.h>. + * tty.c: Likewise. + * spec.c: Include <string.h>. + * procstat.c: Likewise. + + * host.c: Don't include "pshost.h". + * spec.c: Likewise. + + * ps.h: Include <errno.h>. + (ps_get_host, ps_host_basic_info, ps_host_sched_info, + ps_host_load_info): Copied here from pshost.h. + (ps_write_string, ps_write_spaces, ps_write_padding, + ps_write_field, ps_write_int_field): Copied here from pswrite.h + * pshost.h, pswrite.h: Delete files. + + * New ChangeLog, moved into canonical directory structure. + Old ChangeLog is in .../hurd/utils/ps.ChangeLog. + |