This is the mail archive of the
cygwin-patches
mailing list for the Cygwin project.
[PATCH] Cygwin: /proc/[PID]/stat to pull process priority correctly
- From: "Anton Lavrentiev via cygwin-patches" <cygwin-patches at cygwin dot com>
- To: cygwin-patches at cygwin dot com
- Cc: Anton Lavrentiev <lavr at ncbi dot nlm dot nih dot gov>
- Date: Sat, 30 Nov 2019 22:58:14 -0500
- Subject: [PATCH] Cygwin: /proc/[PID]/stat to pull process priority correctly
- Ironport-sdr: UfoSx2yAH+KdUnyj9QDKjjw1kY8GxtL/gpHg1vrehLgHZLvu5jKis598jqR+ot0i8n7lX+oLnl DMEJQQ4Y3H6+Tlt7HMi7ncckyZsU8ATUs0fohrKFOuOhTZCwGTz3hgvaJbOUay3k6+w16lmJCb RXVBUvyqUVqbA5787qZNFj0TzTIFBQIysQPX3JrRG83E/EY1keR/suF/Yu/XuRReDvB6hj3YqP RUB0XMkrxcvCJkvQU/4fY0KiI3Rf0EVxgDrPAQ2QoYdwL2GKJoIVssMu/V1sXueh2IYQPaQhzU o/I=
- Reply-to: Anton Lavrentiev <lavr at ncbi dot nlm dot nih dot gov>
Fix to prior commit 5fa9a0e7 to address https://cygwin.com/ml/cygwin/2019-08/msg00082.html
---
winsup/cygwin/fhandler_process.cc | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/winsup/cygwin/fhandler_process.cc b/winsup/cygwin/fhandler_process.cc
index 9527fea7d..6fc3476b2 100644
--- a/winsup/cygwin/fhandler_process.cc
+++ b/winsup/cygwin/fhandler_process.cc
@@ -1076,6 +1076,7 @@ format_process_stat (void *data, char *&destbuf)
unsigned long fault_count = 0UL,
vmsize = 0UL, vmrss = 0UL, vmmaxrss = 0UL;
uint64_t utime = 0ULL, stime = 0ULL, start_time = 0ULL;
+ int nice = 0;
if (p->process_state & PID_EXITED)
strcpy (cmd, "<defunct>");
@@ -1138,6 +1139,7 @@ format_process_stat (void *data, char *&destbuf)
if (!NT_SUCCESS (status))
debug_printf ("NtQueryInformationProcess(ProcessQuotaLimits): "
"status %y", status);
+ nice = winprio_to_nice (GetPriorityClass (hProcess));
CloseHandle (hProcess);
}
status = NtQuerySystemInformation (SystemTimeOfDayInformation,
@@ -1157,7 +1159,6 @@ format_process_stat (void *data, char *&destbuf)
vmsize = vmc.PagefileUsage;
vmrss = vmc.WorkingSetSize / page_size;
vmmaxrss = ql.MaximumWorkingSetSize / page_size;
- int nice = winprio_to_nice(GetPriorityClass(hProcess));
destbuf = (char *) crealloc_abort (destbuf, strlen (cmd) + 320);
return __small_sprintf (destbuf, "%d (%s) %c "
@@ -1169,7 +1170,7 @@ format_process_stat (void *data, char *&destbuf)
p->pid, cmd, state,
p->ppid, p->pgid, p->sid, p->ctty, -1,
0, fault_count, fault_count, 0, 0, utime, stime,
- utime, stime, NZERO + nice, nice, 0, 0,
+ utime, stime, NZERO + nice, nice, 0, 0,
start_time, vmsize,
vmrss, vmmaxrss
);
--
2.21.0