diff --git a/procps-3.2.8-fdleak.dif b/procps-3.2.8-fdleak.dif new file mode 100644 index 0000000..794fc40 --- /dev/null +++ b/procps-3.2.8-fdleak.dif @@ -0,0 +1,18 @@ +--- vmstat.c ++++ vmstat.c 2009-09-10 10:10:17.509902189 +0200 +@@ -413,13 +413,12 @@ static void slabheader(void){ + //////////////////////////////////////////////////////////////////////////// + + static void slabformat (void){ +- FILE *fSlab; ++ struct stat fSlab; + struct slab_cache *slabs; + unsigned long nSlab,i,j,k; + const char format[]="%-24s %6u %6u %6u %6u\n"; + +- fSlab=fopen("/proc/slabinfo", "rb"); +- if(!fSlab){ ++ if(stat("/proc/slabinfo", &fSlab) < 0){ + fprintf(stderr, "Your kernel doesn't support slabinfo.\n"); + return; + } diff --git a/procps.changes b/procps.changes index 7fcd38e..1ebb36c 100644 --- a/procps.changes +++ b/procps.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Thu Sep 10 10:13:00 CEST 2009 - werner@suse.de + +- Yet an other fd leak found by David Binderman (bnc#536207) + ------------------------------------------------------------------- Wed Aug 19 14:45:52 CEST 2009 - werner@suse.de diff --git a/procps.spec b/procps.spec index 8b72bd7..19e9e8a 100644 --- a/procps.spec +++ b/procps.spec @@ -27,7 +27,7 @@ Group: System/Monitoring PreReq: %fillup_prereq %insserv_prereq AutoReqProv: on Version: 3.2.8 -Release: 4 +Release: 5 Summary: ps utilities for /proc Provides: ps Obsoletes: ps @@ -62,6 +62,7 @@ Patch25: procps-3.2.7-cgroups_flag.diff Patch26: procps-3.2.8-pgrep_coption.dif Patch27: procps-3.2.7-terabyte.dif Patch28: procps-3.2.6-xen.dif +Patch29: procps-3.2.8-fdleak.dif BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -118,6 +119,7 @@ Authors: %patch26 %patch27 %patch28 +%patch29 %build make CFLAGS="-Wall -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 $RPM_OPT_FLAGS -pipe" \