On Sun, Mar 26, 2006 at 04:31:03PM +0200, Ralf Hildebrandt wrote:
* Justin Piszcz <jpiszcz@xxxxxxxxxxxxxxx>:
What does this mean?
Mar 26 08:32:30 p34 fsr[14207]: could not allocate buf: /d3/.fsr/ag14/tmp14207
Mar 26 08:32:30 p34 fsr[14207]: could not allocate buf: /d3/.fsr/ag15/tmp14207
Mar 26 08:32:30 p34 fsr[14207]: could not allocate buf: /d3/.fsr/ag0/tmp14207
Mar 26 08:32:30 p34 fsr[14207]: could not allocate buf: /d3/.fsr/ag1/tmp14207
The FS is 373GB, with 221GB used and 153GB available.
Same thing happened to me just today when I ran xfs_fsr on /home!
Could you guys try this xfs_fsr patch for me and see if it helps
plug your leaks?
thanks.
--
Nathan
Index: xfsdump/fsr/xfs_fsr.c
===================================================================
--- xfsdump.orig/fsr/xfs_fsr.c
+++ xfsdump/fsr/xfs_fsr.c
@@ -1062,6 +1062,8 @@ packfile(char *fname, char *tname, int f
if ((ffd = open(ffname, openopts, 0666)) < 0) {
fsrprintf(_("could not open fragfile: %s : %s\n"),
ffname, strerror(errno));
+ close(tfd);
+ free(fbuf);
return -1;
}
unlink(ffname);
@@ -1114,6 +1116,7 @@ packfile(char *fname, char *tname, int f
if (cur_nextents <= new_nextents) {
if (vflag)
fsrprintf(_("No improvement will be made (skipping):
%s\n"), fname);
+ free(fbuf);
close(tfd);
return 1; /* no change/no error */
}
@@ -1187,6 +1190,7 @@ packfile(char *fname, char *tname, int f
}
}
free(fbuf);
+ close(tfd);
return -1;
}
if (nfrags) {