Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
adam.huang
htop
Commits
d145a3bf
Commit
d145a3bf
authored
Jan 28, 2018
by
Hisham Muhammad
Browse files
Use screen's flags when reading process data
parent
b63d0d04
Changes
5
Show whitespace changes
Inline
Side-by-side
Settings.c
View file @
d145a3bf
...
@@ -48,7 +48,6 @@ typedef struct Settings_ {
...
@@ -48,7 +48,6 @@ typedef struct Settings_ {
unsigned int ssIndex;
unsigned int ssIndex;
ScreenSettings* ss;
ScreenSettings* ss;
int flags;
int colorScheme;
int colorScheme;
int delay;
int delay;
...
...
Settings.h
View file @
d145a3bf
...
@@ -39,7 +39,6 @@ typedef struct Settings_ {
...
@@ -39,7 +39,6 @@ typedef struct Settings_ {
unsigned
int
ssIndex
;
unsigned
int
ssIndex
;
ScreenSettings
*
ss
;
ScreenSettings
*
ss
;
int
flags
;
int
colorScheme
;
int
colorScheme
;
int
delay
;
int
delay
;
...
...
linux/LinuxProcess.c
View file @
d145a3bf
...
@@ -475,4 +475,3 @@ long LinuxProcess_compare(const void* v1, const void* v2) {
...
@@ -475,4 +475,3 @@ long LinuxProcess_compare(const void* v1, const void* v2) {
bool
Process_isThread
(
Process
*
this
)
{
bool
Process_isThread
(
Process
*
this
)
{
return
(
Process_isUserlandThread
(
this
)
||
Process_isKernelThread
(
this
));
return
(
Process_isUserlandThread
(
this
)
||
Process_isKernelThread
(
this
));
}
}
linux/LinuxProcess.h
View file @
d145a3bf
...
@@ -176,5 +176,4 @@ long LinuxProcess_compare(const void* v1, const void* v2);
...
@@ -176,5 +176,4 @@ long LinuxProcess_compare(const void* v1, const void* v2);
bool
Process_isThread
(
Process
*
this
);
bool
Process_isThread
(
Process
*
this
);
#endif
#endif
linux/LinuxProcessList.c
View file @
d145a3bf
...
@@ -755,6 +755,7 @@ static bool LinuxProcessList_recurseProcTree(LinuxProcessList* this, const char*
...
@@ -755,6 +755,7 @@ static bool LinuxProcessList_recurseProcTree(LinuxProcessList* this, const char*
DIR
*
dir
;
DIR
*
dir
;
struct
dirent
*
entry
;
struct
dirent
*
entry
;
Settings
*
settings
=
pl
->
settings
;
Settings
*
settings
=
pl
->
settings
;
ScreenSettings
*
ss
=
settings
->
ss
;
time_t
curTime
=
tv
.
tv_sec
;
time_t
curTime
=
tv
.
tv_sec
;
#ifdef HAVE_TASKSTATS
#ifdef HAVE_TASKSTATS
...
@@ -800,7 +801,7 @@ static bool LinuxProcessList_recurseProcTree(LinuxProcessList* this, const char*
...
@@ -800,7 +801,7 @@ static bool LinuxProcessList_recurseProcTree(LinuxProcessList* this, const char*
LinuxProcessList_recurseProcTree
(
this
,
subdirname
,
proc
,
period
,
tv
);
LinuxProcessList_recurseProcTree
(
this
,
subdirname
,
proc
,
period
,
tv
);
#ifdef HAVE_TASKSTATS
#ifdef HAVE_TASKSTATS
if
(
s
etting
s
->
flags
&
PROCESS_FLAG_IO
)
if
(
ss
->
flags
&
PROCESS_FLAG_IO
)
LinuxProcessList_readIoFile
(
lp
,
dirname
,
name
,
now
);
LinuxProcessList_readIoFile
(
lp
,
dirname
,
name
,
now
);
#endif
#endif
...
@@ -819,7 +820,7 @@ static bool LinuxProcessList_recurseProcTree(LinuxProcessList* this, const char*
...
@@ -819,7 +820,7 @@ static bool LinuxProcessList_recurseProcTree(LinuxProcessList* this, const char*
free
(
lp
->
ttyDevice
);
free
(
lp
->
ttyDevice
);
lp
->
ttyDevice
=
LinuxProcessList_updateTtyDevice
(
this
->
ttyDrivers
,
proc
->
tty_nr
);
lp
->
ttyDevice
=
LinuxProcessList_updateTtyDevice
(
this
->
ttyDrivers
,
proc
->
tty_nr
);
}
}
if
(
s
etting
s
->
flags
&
PROCESS_FLAG_LINUX_IOPRIO
)
if
(
ss
->
flags
&
PROCESS_FLAG_LINUX_IOPRIO
)
LinuxProcess_updateIOPriority
(
lp
);
LinuxProcess_updateIOPriority
(
lp
);
float
percent_cpu
=
(
lp
->
utime
+
lp
->
stime
-
lasttimes
)
/
period
*
100
.
0
;
float
percent_cpu
=
(
lp
->
utime
+
lp
->
stime
-
lasttimes
)
/
period
*
100
.
0
;
proc
->
percent_cpu
=
CLAMP
(
percent_cpu
,
0
.
0
,
cpus
*
100
.
0
);
proc
->
percent_cpu
=
CLAMP
(
percent_cpu
,
0
.
0
,
cpus
*
100
.
0
);
...
@@ -834,13 +835,13 @@ static bool LinuxProcessList_recurseProcTree(LinuxProcessList* this, const char*
...
@@ -834,13 +835,13 @@ static bool LinuxProcessList_recurseProcTree(LinuxProcessList* this, const char*
proc
->
user
=
UsersTable_getRef
(
pl
->
usersTable
,
proc
->
st_uid
);
proc
->
user
=
UsersTable_getRef
(
pl
->
usersTable
,
proc
->
st_uid
);
#ifdef HAVE_OPENVZ
#ifdef HAVE_OPENVZ
if
(
s
etting
s
->
flags
&
PROCESS_FLAG_LINUX_OPENVZ
)
{
if
(
ss
->
flags
&
PROCESS_FLAG_LINUX_OPENVZ
)
{
LinuxProcessList_readOpenVZData
(
lp
,
dirname
,
name
);
LinuxProcessList_readOpenVZData
(
lp
,
dirname
,
name
);
}
}
#endif
#endif
#ifdef HAVE_VSERVER
#ifdef HAVE_VSERVER
if
(
s
etting
s
->
flags
&
PROCESS_FLAG_LINUX_VSERVER
)
{
if
(
ss
->
flags
&
PROCESS_FLAG_LINUX_VSERVER
)
{
LinuxProcessList_readVServerData
(
lp
,
dirname
,
name
);
LinuxProcessList_readVServerData
(
lp
,
dirname
,
name
);
}
}
#endif
#endif
...
@@ -863,11 +864,11 @@ static bool LinuxProcessList_recurseProcTree(LinuxProcessList* this, const char*
...
@@ -863,11 +864,11 @@ static bool LinuxProcessList_recurseProcTree(LinuxProcessList* this, const char*
#endif
#endif
#ifdef HAVE_CGROUP
#ifdef HAVE_CGROUP
if
(
s
etting
s
->
flags
&
PROCESS_FLAG_LINUX_CGROUP
)
if
(
ss
->
flags
&
PROCESS_FLAG_LINUX_CGROUP
)
LinuxProcessList_readCGroupFile
(
lp
,
dirname
,
name
);
LinuxProcessList_readCGroupFile
(
lp
,
dirname
,
name
);
#endif
#endif
if
(
s
etting
s
->
flags
&
PROCESS_FLAG_LINUX_OOM
)
if
(
ss
->
flags
&
PROCESS_FLAG_LINUX_OOM
)
LinuxProcessList_readOomData
(
lp
,
dirname
,
name
);
LinuxProcessList_readOomData
(
lp
,
dirname
,
name
);
if
(
proc
->
state
==
'Z'
&&
(
proc
->
basenameOffset
==
0
))
{
if
(
proc
->
state
==
'Z'
&&
(
proc
->
basenameOffset
==
0
))
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment