kern/97326: [linux] file descriptor leakage in linux emulation

Bakul Shah bakul at bitblocks.com
Fri Jun 1 01:50:07 UTC 2007


The following reply was made to PR kern/97326; it has been noted by GNATS.

From: Bakul Shah <bakul at bitblocks.com>
To: Gavin Atkinson <gavin.atkinson at ury.york.ac.uk>
Cc: bug-followup at FreeBSD.org
Subject: Re: kern/97326: [linux] file descriptor leakage in linux emulation 
Date: Thu, 31 May 2007 18:23:55 -0700

 > 
 > The original behaviour was believed to have been fixed in
 > src/sys/compat/linux/linux_stats.c version 1.83
 > http://lists.freebsd.org/pipermail/freebsd-emulation/2006-May/002122.html
 > http://lists.freebsd.org/pipermail/freebsd-emulation/2006-May/002127.html
 > 
 > After the request for feedback (after the above messages), the following
 > response was sent but seemingly never made it to PR trail
 > http://lists.freebsd.org/pipermail/freebsd-bugs/2006-September/020014.html
 > 
 > "I do not see the original behavoir but I do see a slow leak
 > in skype.  Every time a call is made (for example to the
 > skype testing service) it leaks 10 to 15 descriptors to
 > /dev/mixer0 + some more.  About 75% opens are to /dev/mixer0.
 > Still think this is an emulation problem not skype's.
 > 
 > firefox etc. also seem to keep far too many files open.  For
 > example firefox has 500+ open descriptors) with 4 tabbed
 > windows open.  But in my limited testing can't tell if there
 > is a leak.
 > 
 > I am running linux_base-fc-4_7 on a one month old
 > freebsd-current."
 
 Sorry, somehow I missed your email originally and found it
 today by chance.
 
 I tested it with skype and there is still a leak of 10
 descriptors each time the skype testing service is called.
 All of the additional open file descriptors are opens to
 /dev/mixer0.  Now I am running linux_base-fc-4_9.  I suspect
 the bug is in the emulation layer.
 
 To test you will need a skype account.  Then fire it up, call
 skype testing service and the the whole transaction finish.
 Wait for another 3 minutes or so as some descriptors take a
 while to close.  Then do
 
 lsof |grep skype > file1
 
 now call it again.  Wait for another 3 minutes or so and do
 
 lsof |grep skype > file2
 
 file2 will have 10 more lines than file1.  If you grep for
 mixer0, you will see 10 more lines in file2 than in file1.


More information about the freebsd-bugs mailing list