linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* udevd is killing file write performance.
@ 2006-02-22 13:42 Robin Holt
  2006-02-22 13:55 ` Andrew Morton
  2006-02-22 16:48 ` John McCutchan
  0 siblings, 2 replies; 27+ messages in thread
From: Robin Holt @ 2006-02-22 13:42 UTC (permalink / raw)
  To: linux-kernel; +Cc: rml, arnd, ttb, hch, akpm


I have a customer application which sees a significant performance
degradation when run with udevd running.  This appears to be due to:


void inotify_dentry_parent_queue_event(struct dentry *dentry, u32 mask,
                                       u32 cookie, const char *name)
{
...
        if (!atomic_read (&inotify_watches))
                return;

        spin_lock(&dentry->d_lock);

The particular application is a 512 thread application.  When run with
udevd turned off the application finishes in about 6 seconds.  With it
turned on, the appliction takes minutes (I think we timed it to around
22 minutes, but we have not been patient enough to wait it through to
the end in some time).  This is being run on a 512cpu system, but there
is a noticable performance hit on smaller systems as well.

As far as I can tell, the application has multiple threads writing
different portions of the same file, but the customer is still working
on providing a simplified test case.

I know _VERY_ little about filesystems.  udevd appears to be looking
at /etc/udev/rules.d.  This bumps inotify_watches to 1.  The file
being written is on an xfs filesystem mounted at a different mountpoint.
Could the inotify flag be moved from a global to a sb (or something
finer) point and therefore avoid taking the dentry->d_lock when there
is no possibility of a watch event being queued.

Thanks,
Robin Holt

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

end of thread, other threads:[~2006-02-28  0:58 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-02-22 13:42 udevd is killing file write performance Robin Holt
2006-02-22 13:55 ` Andrew Morton
2006-02-22 16:48 ` John McCutchan
2006-02-22 17:50   ` Robin Holt
2006-02-22 20:05     ` Andrew Morton
2006-02-22 21:50       ` Jeff V. Merkey
2006-02-23 12:56       ` Robin Holt
2006-02-23 13:42         ` David Chinner
2006-02-22 22:52     ` John McCutchan
2006-02-22 23:12       ` Andrew Morton
2006-02-22 23:41         ` John McCutchan
2006-02-24  0:14           ` Andrew Morton
2006-02-24  0:14           ` Andrew Morton
2006-02-24  5:47             ` John McCutchan
2006-02-24  6:00               ` Andrew Morton
2006-02-24  7:07                 ` Nick Piggin
2006-02-24  7:16                   ` Andrew Morton
2006-02-24  7:19                     ` Nick Piggin
2006-02-26 16:58                       ` John McCutchan
2006-02-24 18:56                   ` Robin Holt
2006-02-25  2:44                     ` Nick Piggin
2006-02-25 15:53                     ` [patch] inotify: lock avoidance with parent watch status in dentry Nick Piggin
2006-02-28  0:48                       ` Andrew Morton
2006-02-26 16:55                   ` udevd is killing file write performance John McCutchan
2006-02-27 10:11                     ` Nick Piggin
2006-02-27 20:17                       ` John McCutchan
2006-02-23 20:38         ` Benjamin LaHaise

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).