d1db9da936
Linux: avoid float division by 0 after system sleep
...
linux/LinuxProcessList.c:1403:63: runtime error: division by zero
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior linux/LinuxProcessList.c:1403:63 in
2020-12-03 13:25:17 +01:00
fe84840314
Add Linux cwd process column
2020-12-03 09:21:28 +01:00
b76eaf187a
Dynamically load libsensors at runtime
2020-12-02 21:03:24 +01:00
f7a8952933
Add xReadfile wrapper for reading small to medium size files
...
Inspired by proposed Linux syscall
Avoid file descriptor leaks like 4af8c63f
2020-12-02 20:39:36 +01:00
1d8192c10b
PressureStallMeter: improve display strings
...
- Shorten name for header setup menu
- Improve caption in bar mode
2020-12-02 19:51:43 +01:00
c0b50164dd
Use String_eq for readability and consistency
2020-12-02 19:14:22 +01:00
7975cd2ca3
Add cast to unsigned char to avoid signed char misuse
2020-12-02 19:14:22 +01:00
9029cc83ad
Merge identical conditional branches
2020-12-02 19:14:22 +01:00
43ee295c23
Drop redundant return statements
2020-12-02 19:14:22 +01:00
9549ca8c88
Linux: fix process parsing for hidden pid directories
2020-11-29 12:46:25 +01:00
5ee6875f73
Typo
2020-11-28 20:53:49 +01:00
ea4f33409a
Update even more snprintfs
...
Use size of actual buffers instead of magic numbers
2020-11-28 19:33:07 +01:00
0b29e5074c
Use 'N/A' instead of 'no perm' for more consistency
2020-11-28 17:43:08 +01:00
6c306315c8
Fix reading of device nodes > 2 chars from memory maps
2020-11-28 17:06:06 +01:00
2ff2859c23
Add compat mode for systems without openat(2)
2020-11-28 12:35:34 +01:00
638207a2ff
LinuxProcessList: use openat instead of building path strings
...
openat() is available since Linux 2.6.16
2020-11-28 12:35:34 +01:00
f704baeb82
Drop unused global ProcessList memory fields
...
The global ProcessList structure contains a couple of unused
fields. 'sharedMem' has never been used by any Meter, since
its not been anything other than zero in Linux /proc/meminfo
for many, many years. The freeMem field is only used in the
usedMem calculation, so it can reside on the stack like some
other memory variables used within-calculations-only and not
exposed to the user via a Meter.
2020-11-27 07:55:58 +01:00
2c27f1d9ab
Randomly refresh M_LRS calculation, but latest after 2s
2020-11-26 22:58:34 +01:00
08d6e25301
Distinguish display of no permissions for reading M_LRS
2020-11-26 22:58:34 +01:00
31044d1729
Roll our own strtoull implementation specialized to handle the parsing requirements
2020-11-26 22:58:34 +01:00
cceab5f803
Hardcode actual conversions to read the maps file data
2020-11-26 22:58:34 +01:00
721d9112d9
Only calculate M_LRS size every 5 seconds
2020-11-26 22:58:34 +01:00
7f18b352b0
Calculate library size (M_LRS column) from maps file
2020-11-26 22:58:34 +01:00
46a2e8ac63
IOPriorityPanel: drop unnecessary buffer size decrement
...
xSnprintf guarantees null-termination within the passed size.
2020-11-26 20:42:38 +01:00
d62c2e9cca
LinuxProcessList_recurseProcTree: compute time only once and mark parent const
2020-11-25 22:14:35 +01:00
9b31ee5b63
Drop taskstats conditional
...
taskstats is only checked on runtime if the column RCHAR, WCHAR, SYSCR,
SYSCW, RBYTES, WBYTES, CNCLWB, IO_READ_RATE, IO_WRITE_RATE or IO_RATE is
selected.
taskstats is currently enabled by default.
Drop the taskstats configuration switch, to reduce the maintenance cost.
2020-11-25 20:49:39 +01:00
c88c80e3bd
Drop cgroup conditional
...
cgroup is only checked on runtime if the column CGROUP is selected.
cgroup is currently disabled by default, but most distributions do
enable it.
Drop the cgroup configuration switch, to reduce the maintenance cost.
2020-11-25 20:49:39 +01:00
c038326a70
LinuxProcessList: fix misspelling
2020-11-25 12:49:17 +01:00
601ad61e7d
Unify naming of first argument of Platform_getBattery
...
Use percent throughout
2020-11-25 12:47:07 +01:00
4af8c63f63
Fix file descriptor leak in LinuxProcessList_readCmdlineFile after xread failure
...
Found by Coverity
2020-11-24 19:54:25 +01:00
21e3063e2e
Include comm before cmdline if exe could not be read, but comm mismatches basename from cmdline
...
Also highlights entries where exe was marked deleted
2020-11-24 19:05:48 +01:00
46ee28e897
Refactor command string creation
...
Hopefully this patch makes it a bit more approachable how it's done.
2020-11-24 19:05:48 +01:00
27b36dab1a
Make kernel thread display for COMM/EXE columns less visible and more consistent
2020-11-24 19:05:48 +01:00
f0a232568f
Reduce visual noise to when comm and cmdline actually disagree on the program basename
2020-11-24 19:05:48 +01:00
dde2af1fdb
Assume full basename matches COMM when matching full COMM buffer
2020-11-24 19:05:48 +01:00
be60419630
Cleanup some documentation
2020-11-24 19:05:48 +01:00
fcda517a67
Add heuristic for space-separated cmdline
2020-11-24 19:05:48 +01:00
98fce1fb43
Compatibility function for faccessat
2020-11-24 19:05:48 +01:00
09fe94da18
Improving Command display/sort
2020-11-24 19:05:48 +01:00
42c842c190
LinuxProcess_adjustTime: simplify by not using double
...
Does not work with -ffast-math else.
2020-11-24 17:30:21 +01:00
952ee9cd77
LinuxProcessList: fix misspelling
2020-11-24 11:46:17 +01:00
6c2849ec81
Linux: fix display of new thread for one cycle when hidden
2020-11-23 14:44:31 +01:00
003f2c06a4
Merge branch 'cleanup-init-done' into master
2020-11-23 17:34:44 +11:00
17eeb7573a
LinuxProcessList: skip parsing threads if the kind of thread is disabled
2020-11-22 16:49:43 +01:00
03f9a86918
Reduce scope of local variables
2020-11-22 10:08:27 +01:00
fa002c0ba9
Rename virtual memory column from M_SIZE to M_VIRT
...
Closes : #325
2020-11-21 19:39:45 +01:00
3e5cba91ce
LinuxProcess: mark LinuxProcess_printDelay static
2020-11-21 19:26:55 +01:00
7cf5277594
IWYU update (Linux)
2020-11-19 23:51:50 +01:00
5d50f43d5f
Add whitespace to improve Linux Platform_init readability
2020-11-19 19:00:00 +11:00
c75c5ef9c6
Minor cleanups to platform-specific init and done
...
Move platform-specific code out of the htop.c main function
and into the platform sub-directories - primarily this is
the Linux procfs path check and sensors setup/teardown; not
needed on any other platforms. No functional changes here.
2020-11-19 12:32:07 +11:00