linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* VFS: file-max limit reached when running on a virtual machine
@ 2006-01-19  4:19 Ed Swierk
  2006-01-21  8:24 ` Dipankar Sarma
  0 siblings, 1 reply; 2+ messages in thread
From: Ed Swierk @ 2006-01-19  4:19 UTC (permalink / raw)
  To: linux-kernel

I'm getting the error "VFS: file-max limit 50905 reached" on kernels 2.6.14 and
2.6.15, running on a qemu virtual machine configured with 512 MB of memory.  The
error occurs when I build a relatively large C++ program (the Boost library) on
the VM (which is otherwise idle).  It does not occur on kernels 2.6.11 or 2.6.13.

I understand that changes have been made recently to the way the kernel manages
file descriptors in order to improve real-time performance.

A thread back in October discussing these changes (subject: "VFS: file-max limit
50044 reached") seems to indicate that bad things can happen if certain
callbacks don't get called at regular intervals.  This situation seems quite
likely in a virtual machine environment where the frequency of timer interrupts
might vary by orders of magnitude depending on the workload of the host machine.

I have attempted a few workarounds, to no avail:

* increasing file-max (echo 100000 >/proc/sys/fs/file-max)
* setting clock=pit kernel parameter
* setting rcupdate.maxbatch=1000000 kernel parameter

Is there some other way to make the kernel less sensitive to ill-behaved
hardware timers, as it was pre-2.6.14, assuming that I am willing to sacrifice
real-time performance?

Any help would be appreciated.



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: VFS: file-max limit reached when running on a virtual machine
  2006-01-19  4:19 VFS: file-max limit reached when running on a virtual machine Ed Swierk
@ 2006-01-21  8:24 ` Dipankar Sarma
  0 siblings, 0 replies; 2+ messages in thread
From: Dipankar Sarma @ 2006-01-21  8:24 UTC (permalink / raw)
  To: Ed Swierk; +Cc: linux-kernel

On Thu, Jan 19, 2006 at 04:19:24AM +0000, Ed Swierk wrote:
> I'm getting the error "VFS: file-max limit 50905 reached" on kernels 2.6.14 and
> 2.6.15, running on a qemu virtual machine configured with 512 MB of memory.  The
> I understand that changes have been made recently to the way the kernel manages
> file descriptors in order to improve real-time performance.

The file descriptor changes were done to make lookup in the fd table
lock-free there by improving thread scalability.

> Is there some other way to make the kernel less sensitive to ill-behaved
> hardware timers, as it was pre-2.6.14, assuming that I am willing to sacrifice
> real-time performance?
> 
> Any help would be appreciated.

Can you try this patch I posted a while ago -

http://marc.theaimsgroup.com/?l=linux-kernel&m=113657112726596&w=2

Thanks
Dipankar

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2006-01-21  8:25 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-01-19  4:19 VFS: file-max limit reached when running on a virtual machine Ed Swierk
2006-01-21  8:24 ` Dipankar Sarma

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).