263343 |
19-Mar-2014 |
rwatson |
Merge r262690 from head to stable/9:
When querying a process's umask via sysctl in libprocstat(), don't print a warning if EPERM is returned as this is an expected failure mode rather than error -- similar to current handling of ESRCH. This makes the output of 'procstat -as' vastly more palatable.
Sponsored by: DARPA, AFRL
|
252163 |
24-Jun-2013 |
jhb |
MFC 250223,250233: Similar to 233760 and 236717, export some more useful info about the kernel-based POSIX semaphore descriptors to userland via procstat(1) and fstat(1): - Change sem file descriptors to track the pathname they are associated with and add a ksem_info() method to copy the path out to a caller-supplied buffer. - Use the fo_stat() method of shared memory objects and ksem_info() to export the path, mode, and value of a semaphore via struct kinfo_file. - Add a struct semstat to the libprocstat(3) interface along with a procstat_get_sem_info() to export the mode and value of a semaphore. - Teach fstat about semaphores and to display their path, mode, and value.
|
251003 |
26-May-2013 |
trociny |
MFC r250147:
procstat_getpathname: for kvm method, instead of returning the error that the method is not supported, return an empty string.
This looks more handy for callers like procstat(1), which will not abort after the failed call and still output some useful information.
|
250870 |
21-May-2013 |
trociny |
MFC r249666, r249667, r249670, r249672, r249674, r249676, r249677, r249679, r249681, r249684, r249688, r249711, r249731, r250146
r249666, r249682:
Make libprocstat(3) extract procstat notes from a process core file.
PR: kern/173723 Suggested by: jhb Glanced by: kib
r249667:
Add procstat_getvmmap function to get VM layout of a process.
r249670:
Add procstat_getgroups function to retrieve process groups.
r249672:
Add procstat_getumask function to retrieve a process umask.
r249674:
Add procstat_getrlimit function to retrieve a process resource limits info.
r249676:
Add procstat_getpathname function to retrieve a process executable.
r249677:
Add procstat_getosrel function to retrieve a process osrel info.
r249679:
Extend libprocstat with functions to retrieve process command line arguments and environment variables.
Suggested by: stas Reviewed by: jhb and stas (initial version)
r249681:
Add procstat_getauxv function to retrieve a process auxiliary vector.
r249684:
Add procstat_getkstack function to dump kernel stacks of a process.
r249688:
Bump date.
r249711 (joel):
mdoc: end function context properly.
r249731:
Embed revision id in the library.
r250146:
KVM method support for procstat_getgroups, procstat_getumask, procstat_getrlimit, and procstat_getosrel.
|
236698 |
06-Jun-2012 |
jhb |
MFC 233760: Export some more useful info about shared memory objects to userland via procstat(1) and fstat(1): - Change shm file descriptors to track the pathname they are associated with and add a shm_path() method to copy the path out to a caller-supplied buffer. - Use the fo_stat() method of shared memory objects and shm_path() to export the path, mode, and size of a shared memory object via struct kinfo_file. - Add a struct shmstat to the libprocstat(3) interface along with a procstat_get_shm_info() to export the mode and size of a shared memory object. - Change procstat to always print out the path for a given object if it is valid. - Teach fstat about shared memory objects and to display their path, mode, and size.
|
223279 |
18-Jun-2011 |
jilles |
libprocstat: For MAP_PRIVATE, do not consider the file open for writing.
If a file is mapped with with MAP_PRIVATE, no write permission is required and changes do not end up in the file. Therefore, tools like fuser and fstat should not show the file as open for writing.
The protection as displayed by procstat -v still includes write in this case, and shows 'C' for copy-on-write.
|
221807 |
12-May-2011 |
stas |
- Commit work from libprocstat project. These patches add support for runtime file and processes information retrieval from the running kernel via sysctl in the form of new library, libprocstat. The library also supports KVM backend for analyzing memory crash dumps. Both procstat(1) and fstat(1) utilities have been modified to take advantage of the library (as the bonus point the fstat(1) utility no longer need superuser privileges to operate), and the procstat(1) utility is now able to display information from memory dumps as well.
The newly introduced fuser(1) utility also uses this library and able to operate via sysctl and kvm backends.
The library is by no means complete (e.g. KVM backend is missing vnode name resolution routines, and there're no manpages for the library itself) so I plan to improve it further. I'm commiting it so it will get wider exposure and review.
We won't be able to MFC this work as it relies on changes in HEAD, which was introduced some time ago, that break kernel ABI. OTOH we may be able to merge the library with KVM backend if we really need it there.
Discussed with: rwatson
|