diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2011-05-11 09:07:20 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2011-05-11 09:07:20 +0000 |
commit | 34a6eeabfffd0ba2f1db43bae5f7239a49e080bb (patch) | |
tree | 9a02033c02e292c6f62724143d4ecd0014c2e72d | |
parent | 933d2af50db22d4b79eb5f9849df11d3956cac6c (diff) | |
download | cygnal-34a6eeabfffd0ba2f1db43bae5f7239a49e080bb.tar.gz cygnal-34a6eeabfffd0ba2f1db43bae5f7239a49e080bb.tar.bz2 cygnal-34a6eeabfffd0ba2f1db43bae5f7239a49e080bb.zip |
* autoload.cc (GetProcessMemoryInfo): Remove.
* resource.cc (fill_rusage): Call NtQueryInformationProcess rather than
GetProcessMemoryInfo to drop a psapi dependency.
-rw-r--r-- | winsup/cygwin/ChangeLog | 6 | ||||
-rw-r--r-- | winsup/cygwin/autoload.cc | 1 | ||||
-rw-r--r-- | winsup/cygwin/resource.cc | 15 |
3 files changed, 14 insertions, 8 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 419d3f3c2..017987f7d 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,5 +1,11 @@ 2011-05-11 Corinna Vinschen <corinna@vinschen.de> + * autoload.cc (GetProcessMemoryInfo): Remove. + * resource.cc (fill_rusage): Call NtQueryInformationProcess rather than + GetProcessMemoryInfo to drop a psapi dependency. + +2011-05-11 Corinna Vinschen <corinna@vinschen.de> + * fhandler_socket.cc (get_inet_addr): Rearrange for better readability. Make waiting loop interruptible and cancelable. Check for SYSTEM DOS flag before reading the file. Change return value to return 0 on diff --git a/winsup/cygwin/autoload.cc b/winsup/cygwin/autoload.cc index 269918e82..bd9fc836a 100644 --- a/winsup/cygwin/autoload.cc +++ b/winsup/cygwin/autoload.cc @@ -417,7 +417,6 @@ LoadDLLfunc (CoTaskMemFree, 4, ole32) LoadDLLfunc (EnumProcessModules, 16, psapi) LoadDLLfunc (GetModuleFileNameExW, 16, psapi) LoadDLLfunc (GetModuleInformation, 16, psapi) -LoadDLLfunc (GetProcessMemoryInfo, 12, psapi) LoadDLLfunc (QueryWorkingSet, 12, psapi) LoadDLLfunc (LsaDeregisterLogonProcess, 4, secur32) diff --git a/winsup/cygwin/resource.cc b/winsup/cygwin/resource.cc index fed61e8ee..43feec02b 100644 --- a/winsup/cygwin/resource.cc +++ b/winsup/cygwin/resource.cc @@ -1,6 +1,6 @@ /* resource.cc: getrusage () and friends. - Copyright 1996, 1997, 1998, 2000, 2001, 2002, 2009, 2010 Red Hat, Inc. + Copyright 1996, 1997, 1998, 2000, 2001, 2002, 2009, 2010, 2011 Red Hat, Inc. Written by Steve Chamberlain (sac@cygnus.com), Doug Evans (dje@cygnus.com), Geoffrey Noer (noer@cygnus.com) of Cygnus Support. @@ -22,6 +22,7 @@ details. */ #include "pinfo.h" #include "dtable.h" #include "cygheap.h" +#include "ntdll.h" /* add timeval values */ static void @@ -76,13 +77,13 @@ fill_rusage (struct rusage *r, HANDLE h) totimeval (&tv, &user_time, 0, 0); add_timeval (&r->ru_utime, &tv); - PROCESS_MEMORY_COUNTERS pmc; - - memset (&pmc, 0, sizeof (pmc)); - if (GetProcessMemoryInfo (h, &pmc, sizeof (pmc))) + VM_COUNTERS vmc; + NTSTATUS status = NtQueryInformationProcess (h, ProcessVmCounters, &vmc, + sizeof vmc, NULL); + if (NT_SUCCESS (status)) { - r->ru_maxrss += (long) (pmc.WorkingSetSize /1024); - r->ru_majflt += pmc.PageFaultCount; + r->ru_maxrss += (long) (vmc.WorkingSetSize / 1024); + r->ru_majflt += vmc.PageFaultCount; } } |