Nathan Scott
6ab1e468ef
Update docs/styleguide.md
...
Co-authored-by: BenBE <BenBE@geshi.org>
2020-12-01 14:05:46 +11:00
Nathan Scott
b2a8b2426e
Tweak style guide wording around single code statements
...
There was wording about brace-enclosing single code statements
being 'strongly encouraged' - this isn't consistently used and
IMO it introduces unnecessary noise in otherwise neat, concise
code.
I've reworded (dropped) this section and also fixed a handful
of minor typos while reading this doc a little more carefully.
2020-11-28 23:47:13 +01:00
Nathan Scott
003f2c06a4
Merge branch 'cleanup-init-done' into master
2020-11-23 17:34:44 +11:00
Nathan Scott
82a69ee87a
Consistent ordering of function declarations for FreeBSD
2020-11-23 17:32:57 +11:00
Christian Göttsche
17eeb7573a
LinuxProcessList: skip parsing threads if the kind of thread is disabled
2020-11-22 16:49:43 +01:00
Benny Baumann
be39de14dd
Reduce scope of cached values
2020-11-22 14:24:18 +01:00
Christian Göttsche
be568b1153
Object: assert callbacks exists
...
Improves stacktraces.
Current stacktrace:
./htop(backtrace+0x5b)[0x45d98b]
./htop(CRT_handleSIGSEGV+0x189)[0x4eb5e9]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x14140)[0x7fbbfb1ea140]
New:
./htop(backtrace+0x5b)[0x45d98b]
./htop(CRT_handleSIGSEGV+0x189)[0x4eb7f9]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x14140)[0x7f62b0a65140]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141)[0x7f62b089ac41]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x123)[0x7f62b0884537]
/lib/x86_64-linux-gnu/libc.so.6(+0x2540f)[0x7f62b088440f]
/lib/x86_64-linux-gnu/libc.so.6(+0x345c2)[0x7f62b08935c2]
./htop(Vector_delete+0x873)[0x54b303]
./htop(Panel_done+0x7b)[0x51abbb]
./htop[0x4ed8ee]
./htop(Vector_delete+0x414)[0x54aea4]
./htop(ScreenManager_delete+0x37)[0x536ea7]
./htop[0x4d9d1a]
./htop[0x4d5516]
./htop[0x5078d7]
./htop(ScreenManager_run+0x69f)[0x5388bf]
./htop(main+0x7c6)[0x4fcf76]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xea)[0x7f62b0885cca]
./htop(_start+0x2a)[0x42688a]
2020-11-22 10:10:34 +01:00
Benny Baumann
03f9a86918
Reduce scope of local variables
2020-11-22 10:08:27 +01:00
Benny Baumann
ddda739cb2
Simplify code flow by inlining declarations where they are used
...
Note that xStrdup always returns non-NULL, thus the one error case cannot be reached.
2020-11-22 10:07:01 +01:00
Benny Baumann
3cb96f1a36
No need to check for change when no action is required
2020-11-22 10:04:54 +01:00
Benny Baumann
98943d595e
Reduce scope of totaltime
2020-11-22 10:04:18 +01:00
Benny Baumann
51be2d5415
Fix NULL pointer dereference on kstat_lookup failure
2020-11-22 10:03:55 +01:00
Benny Baumann
d2c64c16e6
Fix build for custom make targets
2020-11-21 22:31:10 +01:00
Christian Göttsche
0f4e3ebc95
Simplify page size related calculations
2020-11-21 19:39:45 +01:00
Christian Göttsche
fa002c0ba9
Rename virtual memory column from M_SIZE to M_VIRT
...
Closes : #325
2020-11-21 19:39:45 +01:00
Christian Göttsche
3e5cba91ce
LinuxProcess: mark LinuxProcess_printDelay static
2020-11-21 19:26:55 +01:00
Christian Göttsche
4fb82e301d
fix indent
2020-11-21 19:26:42 +01:00
Benny Baumann
f752c6e2d1
Remove unnecessary parens
2020-11-21 16:07:19 +01:00
Christian Goettsche
f5c3349bdb
IWYU update (FreeBSD)
2020-11-19 23:51:50 +01:00
Christian Göttsche
7cf5277594
IWYU update (Linux)
2020-11-19 23:51:50 +01:00
Nathan Scott
5d50f43d5f
Add whitespace to improve Linux Platform_init readability
2020-11-19 19:00:00 +11:00
Nathan Scott
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
Nathan Scott
329011bb98
Add missing OpenBSD battery function declaration
2020-11-19 12:00:56 +11:00
Christian Göttsche
0a2105eb22
Spelling corrections
2020-11-18 13:59:55 +01:00
Christian Göttsche
f720868998
Align command line argument descriptions in help output
...
Also drop #link comment
2020-11-18 13:59:36 +01:00
Nathan Scott
0eb3c7589d
Merge individual Battery.[ch] files into Platform.[ch]
...
Small changes from review - keep headers sorted and keep local
variable declarations at the top of source files.
2020-11-18 10:17:33 +11:00
Nathan Scott
ea9622b8c9
Merge individual Battery.[ch] files into Platform.[ch]
...
Consistent with everything else involving platform-specific
calls from core htop code.
2020-11-18 10:17:33 +11:00
Christian Göttsche
e3af8d0d08
DarwinProcessList: mark local functions static and sort includes
2020-11-17 21:50:38 +01:00
Christian Göttsche
ba2d59020d
DarwinProcess: mark local function static and sort includes
2020-11-17 21:50:38 +01:00
Christian Göttsche
b3b890f546
Use 0 as no-match value for sortkey
...
Field numbers start at 1, and using -1 as no-match special value triggers
static analyzers using a potential negative array access.
2020-11-17 13:06:31 +01:00
Christian Göttsche
f38af725c2
Silence theoretical memory leak
...
In practice systemctl should never return multiple SystemState= lines.
2020-11-17 13:06:31 +01:00
Daniel Lange
fec9af4e6f
Merge branch 'temperature_v2' of cgzones/htop
...
Closes #111 , closes #49
Closes #93 - thank you for leading the way @DX37 (Maxim Kurnosenko)!
2020-11-17 11:05:15 +01:00
Benny Baumann
a94fd87b05
Avoid calling Object_isA from inside Vector_isConsistent
2020-11-17 08:06:02 +01:00
Christian Göttsche
307c34b028
Hashtable: use dynamic growth and use primes as size
...
Dynamically increase the hashmap size to not exceed the load factor and
avoid too long chains.
Switch from Separate Chaining to Robin Hood linear probing to improve
cache locality.
Use primes as size to further avoid collisions.
E.g. on a standard kde system the number of entries in the ProcessTable
might be around 650.
2020-11-17 02:01:02 +01:00
Christian Göttsche
7914ec201e
Hashtable update
...
- use consistent type for key by introducing a new typedef
- use unsigned types for sizes
- name parameters in foreach function typedef
2020-11-17 02:01:02 +01:00
Christian Göttsche
15eab2012d
Add process column for normalized CPU usage
...
Shows the process CPU usage divided by the number of CPU cores
2020-11-16 18:14:06 +01:00
Daniel Lange
a8a723ffe9
Add debug state to the configure report (thanks @benbe for the idea)
2020-11-16 17:01:51 +01:00
Christian Göttsche
1b225cd7a0
Show CPU temperature in CPU meter
...
Show the CPU temperature in the CPU meter, like CPU frequency, instead
of using an extra Meter.
2020-11-16 16:38:54 +01:00
Daniel Lange
309f1d7282
hwloc = (portable) HardWare LOCality, not related to lock
2020-11-16 13:29:37 +01:00
Daniel Lange
8bc083c6c6
Merge branch 'highlight-new-old-processes'
...
Thanks to @adsr for the great work
Closes #241 , closes #74
Massive rebase, so #keepfingerscrossed
2020-11-16 13:19:31 +01:00
Daniel Lange
19868a3c29
Fix whitespace before comma in the new color definitions
2020-11-16 13:18:29 +01:00
Daniel Lange
8f2d129dce
Apply patch from BenBE as per https://github.com/htop-dev/htop/pull/241#issuecomment-720081138
2020-11-16 12:55:32 +01:00
Daniel Lange
0951090fa4
Merge branch 'hili-new-old' of adsr/htop into highlight-new-old-processes
2020-11-16 12:55:07 +01:00
Christian Göttsche
0411fdbcef
Use spaceship comparison for TTYs
2020-11-15 22:54:14 +01:00
Christian Göttsche
f856fe6463
Early skip non-directories when searching for process information
2020-11-15 22:54:14 +01:00
Christian Göttsche
ad72b747fa
Drop hideThreads Setting
...
It is only used to read process directories on RedHat beginning with a dot.
Unconditionally accept directories with a starting dot.
2020-11-15 22:54:14 +01:00
Christian Göttsche
9f67b95308
Mark local functions static
2020-11-15 18:35:30 +01:00
Christian Göttsche
91317322fe
Mark ProcessList_keyAt argument const
2020-11-15 18:35:30 +01:00
Christian Göttsche
42073babb9
Use uid_t type for Process_getuid
2020-11-15 18:35:30 +01:00
Christian Göttsche
397b5c4bd0
Introduce spaceship comparison for Processes
...
If currently two unsigned values are compared via `a - b`, in the case b
is actually bigger than a, the result will not be an negative number (as
-1 is expected) but a huge positive number as the subtraction is an
unsigned subtraction.
Avoid over-/underflow affected operations; use comparisons.
Modern compilers will generate sane code, like:
xor eax, eax
cmp rdi, rsi
seta al
sbb eax, 0
ret
2020-11-15 18:25:21 +01:00