[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

RE: Hurd test



Thanks very much for your reports.  I was able to reproduce this problem
without crashing my system by trying a similar test case in a filesystem
that was not my root filesystem.  This way, you can diddle that filesystem
server and kill it before it gets out of hand if necessary, without taking
down anything else.  In general, I recommend doing this for any filesystem
problem you find.

Thanks to your test case I was able to track down this leak and fix it.
The problem also occurred in ufs, and I fixed it there too.  The bug
appeared whenever a `readdir' call hit the end of a directory whose total
size was greater than a page, at which time the filesystem would leak a
chunk of untouched memory as large as the page-rounded total size of the
directory (/bin is about 3 pages, for example).

I've checked the fix to both ext2fs and ufs into cvs, and the log
entry looks like this:

   2000-03-03  Roland McGrath  <roland@baalperazim.frob.com>

	   * dir.c (diskfs_get_directs): Don't allocate buffer for *DATA until
	   after scanning for ENTRY and possibly returning EOF.


Enjoy,
Roland


Reply to: