| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
|
|
| |
Co-authored-by: BenBE <BenBE@geshi.org>
|
|
|
|
|
|
| |
This cannot happen in these code locations, but for the purposes
of static checkers like Coverity scan (and for future proofing),
add two more guards on NULL hash table entry pointers.
|
|
|
|
| |
Pass one less instead of subtracting one inside the function.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Implements support for arbitrary Performance Co-Pilot
metrics with per-process instance domains to form new
htop columns. The column-to-metric mappings are setup
using configuration files which will be documented via
man pages as part of a follow-up commit.
We provide an initial set of column configurations so
as to provide new capabilities to pcp-htop: including
configs for containers, open fd counts, scheduler run
queue time, tcp/udp bytes/calls sent/recv, delay acct,
virtual machine guests, detailed virtual memory, swap.
Note there is a change to the configuration file path
resolution algorithm introduced for 'dynamic meters'.
First, look in any custom PCP_HTOP_DIR location. Then
iterate, in priority order, users home directory, then
local sysadmins files in /etc/pcp/htop, then readonly
configuration files below /usr/share/pcp/htop. This
final location becomes the preferred place for our own
shipped meter and column files.
The Settings file (htoprc) writing code is updated to
not using the numeric identifier for dynamic columns.
The same strategy used for dynamic meters is used here
where we write Dynamic(name) so the name can be setup
once more at start. Regular (static) columns writing
to htoprc - i.e. numerically indexed - is unchanged.
|
|
|
|
|
| |
sched_getaffinity() and sched_setaffinity() are also available on BSDs.
Remove the Linux restraint.
|
|
|
|
|
|
|
|
|
|
|
| |
Currently htop does not support offline CPUs and hot-swapping, e.g. via
echo 0 > /sys/devices/system/cpu/cpu2/online
Split the current single cpuCount variable into activeCPUs and
existingCPUs.
Supersedes: #650
Related: #580
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Add command line option to disable all system and process changing
features.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
- stay in follow mode on sort inversion (I)
- stay in follow mode after viewing help screen (h)
- select parent process (where available) when having followed a thread
and hiding these (H)
Closes: #560
|
|
|
|
|
|
|
| |
Do not stop following a process when switching the visibility of
userland or kernel threads.
Related: #557
|
| |
|
|
|
|
|
|
|
| |
(and PID 2 if kernel threads are shown)
Based on hishamhm/htop#510 by Krishna Chaitanya, B
Closes #68
|
|
|
|
| |
Bug found by BenBE via IRC
|
|
|
|
|
|
|
|
| |
The State struct holds a pointer to the main process panel.
Use the distinct MainPanel type, to improve maintainability regrading
its usage.
This avoids usages of down-casts from Panel to MainPanel, only up-casts
from MainPanel to Panel are now required.
|
|
|
|
| |
The surrounding code has nothing to do with colors
|
|
|
|
|
|
|
| |
According to the Linux kernel documentation, "SwapCached" tracks "memory
that once was swapped out, is swapped back in but still also is
in the swapfile (if memory is needed it doesn't need to be swapped out
AGAIN because it is already in the swapfile. This saves I/O)."
|
| |
|
| |
|
|
|
|
| |
Reorder owner and type so they match the order of Panel_init
|
|
|
|
|
|
|
|
|
|
| |
Support three settings:
- Always show Function Bar
- Always hide the Function Bar, except in Infoscreens (Env/Locks...)
and when editing the search and filter mode
- Hide the Function Bar on ESC until the next user input
Closes: #439
|
|
|
|
| |
The supervising ScreenManager will resize all Panels
|
| |
|
| |
|
| |
|
| |
|
|\
| |
| |
| | |
cgzones-resize_bar
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Draw the FunctionBar within Panel_draw instead of manually throughout
the code.
Add an optional PanelClass function drawFunctionBar, to allow specific
panels to override the default FunctionBar_draw call.
Rework the code on color change, to really change all colors (selection
markers and panel headers).
Closes: #402
|
| | |
|
|/
|
|
| |
Avoid accidental duplicate usage.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Implements the suggestion from https://github.com/htop-dev/htop/issues/399#issuecomment-747861013
Thanks to the refactors from 0bd5c8fb5da and 6393baa74e5, this was really easy
and clean to do.
It maintains the "Tree view always by PID" option in the Settings, which
results in some specific behaviors such as "clicking on the column header to
exit tree view" and "picking a new sort order to exit tree view", for the sake
of the muscle memory of long time htop users. :)
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Do not highlight the current process line after pressing ESC in the main
screen.
Restore after pressing any key.
|
|
|
|
|
|
|
|
|
|
| |
All calls to ScreenManager_new always pass the same first
five values, the orientation is always HORIZONTAL and the
y1 parameter is always the height of the passed-in header
struct pointer. I think its safe to assert at this point
that no VERTICAL orientation will arrive (if it does, its
no harm in re-adding this then) - so we can remove unused
conditionals (and TODOs) based on orientation too.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
- use consistent type for key by introducing a new typedef
- use unsigned types for sizes
- name parameters in foreach function typedef
|
|
|
|
|
| |
It is only used to read process directories on RedHat beginning with a dot.
Unconditionally accept directories with a starting dot.
|
|\ |
|