From: Peter Zijlstra <a.p.zijlstra@chello.nl>
To: Christoph Hellwig <hch@infradead.org>
Cc: Andrew Morton <akpm@osdl.org>,
linux-kernel@vger.kernel.org, Ingo Molnar <mingo@elte.hu>
Subject: Re: [PATCH 0/7] breaking the global file_list_lock
Date: Sun, 28 Jan 2007 16:29:04 +0100 [thread overview]
Message-ID: <1169998144.10987.28.camel@lappy> (raw)
In-Reply-To: <20070128151122.GA21159@infradead.org>
On Sun, 2007-01-28 at 15:11 +0000, Christoph Hellwig wrote:
> > Even if this is becoming a real problem there must be simpler ways to fix
> > this than introducing various new locking primitives and all kinds of
> > complexity.
>
> One good way to fix scalability without all this braindamage is
> to get rid of sb->s_files. Current uses are:
>
> - fs/dquot.c:add_dquot_ref()
>
> This performs it's actual operation on inodes. We should
> be able to check inode->i_writecount to see which inodes
> need quota initialization.
>
> - fs/file_table.c:fs_may_remount_ro()
>
> This one is gone in Dave Hansens per-mountpoint r/o patchkit
>
> - fs/proc/generic.c:proc_kill_inodes()
>
> This can be done with a list inside procfs.
>
> - fs/super.c:mark_files_ro()
>
> This one is only used for do_emergency_remount(), which is
> and utter hack. It might be much better to just deny any
> kind of write access through a superblock flag here.
>
> - fs/selinuxfs.c:sel_remove_bools()
>
> Utter madness. I have no idea how this ever got merged.
> Maybe the selinux folks can explain what crack they were
> on when writing this. The problem would go away with
> a generic rewoke infrastructure.
>
> Once sb->s_files is gone we can also kill of fu_list entirely and
> replace it by a list head entirely in the tty code and make the lock
> for it per-tty.
I shall pursue this direction. Thanks for the information.
next prev parent reply other threads:[~2007-01-28 15:29 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-01-28 11:51 [PATCH 0/7] breaking the global file_list_lock Peter Zijlstra
2007-01-28 11:51 ` [PATCH 1/7] lockdep: lock_set_subclass - reset a held locks subclass Peter Zijlstra
2007-01-28 11:51 ` [PATCH 3/7] barrier: a scalable synchonisation barrier Peter Zijlstra
2007-01-28 14:39 ` Christoph Hellwig
2007-01-28 15:24 ` Ingo Molnar
2007-01-28 15:34 ` Christoph Hellwig
2007-01-31 19:12 ` Paul E. McKenney
2007-01-31 21:13 ` Oleg Nesterov
2007-01-31 21:30 ` Oleg Nesterov
2007-01-31 21:48 ` Peter Zijlstra
2007-01-31 23:32 ` Paul E. McKenney
2007-02-01 0:03 ` Peter Zijlstra
2007-02-01 0:48 ` Paul E. McKenney
2007-02-01 16:00 ` Oleg Nesterov
2007-02-01 21:38 ` Paul E. McKenney
2007-02-02 11:56 ` Oleg Nesterov
2007-02-02 12:01 ` Peter Zijlstra
2007-02-02 17:13 ` Paul E. McKenney
2007-02-03 16:38 ` Oleg Nesterov
2007-02-04 0:23 ` Paul E. McKenney
2007-02-04 3:24 ` Alan Stern
2007-02-04 5:46 ` Paul E. McKenney
2007-01-28 11:51 ` [PATCH 4/7] fs: break the file_list_lock for sb->s_files Peter Zijlstra
2007-01-28 14:43 ` Christoph Hellwig
2007-01-28 15:21 ` Ingo Molnar
2007-01-28 15:30 ` Christoph Hellwig
2007-01-28 15:32 ` Peter Zijlstra
2007-01-28 15:36 ` Christoph Hellwig
2007-01-28 15:44 ` Ingo Molnar
2007-01-28 16:25 ` Bill Huey
2007-01-28 11:51 ` [PATCH 5/7] fs: restore previous sb->s_files iteration semantics Peter Zijlstra
2007-01-28 11:51 ` [PATCH 6/7] schedule_on_each_cpu_wq() Peter Zijlstra
2007-01-28 11:51 ` [PATCH 7/7] fs: fixup filevec_add_drain_all Peter Zijlstra
2007-01-28 12:16 ` [PATCH 8/7] fs: free_write_pipe() fix Peter Zijlstra
2007-01-28 14:43 ` [PATCH 0/7] breaking the global file_list_lock Christoph Hellwig
2007-01-28 15:11 ` Christoph Hellwig
2007-01-28 15:29 ` Peter Zijlstra [this message]
2007-01-28 15:33 ` Christoph Hellwig
2007-01-29 13:32 ` Stephen Smalley
2007-01-29 18:02 ` Christoph Hellwig
2007-01-28 15:24 ` Ingo Molnar
2007-01-28 16:52 ` Martin J. Bligh
2007-01-28 17:04 ` lockmeter Christoph Hellwig
2007-01-28 17:38 ` lockmeter Martin J. Bligh
2007-01-28 18:01 ` lockmeter Bill Huey
2007-01-28 19:26 ` lockmeter Ingo Molnar
2007-01-28 21:17 ` lockmeter Ingo Molnar
2007-01-29 5:27 ` lockmeter Bill Huey
2007-01-29 10:26 ` lockmeter Bill Huey
2007-01-29 1:08 ` lockmeter Arjan van de Ven
2007-01-29 1:12 ` lockmeter Martin J. Bligh
2007-01-28 18:41 ` [PATCH 0/7] breaking the global file_list_lock Ingo Molnar
2007-01-28 20:38 ` Christoph Hellwig
2007-01-28 21:05 ` Ingo Molnar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1169998144.10987.28.camel@lappy \
--to=a.p.zijlstra@chello.nl \
--cc=akpm@osdl.org \
--cc=hch@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).