Re: get_fs_excl/put_fs_excl/has_fs_excl

Jens Axboe
2009-04-23T19:21:37Z

On Thu, Apr 23 2009, Christoph Hellwig wrote:
> Stumbled over these gems recently when investigating the
> lock_super/unlock_super removal.
>
> These were added in commit 22e2c507c301c3dbbcf91b4948b88f78842ee6c9
>
> [PATCH] Update cfq io scheduler to time sliced design
>
> which unfortunately doesn't contain any comments about it. It seems to
> be used to allow boosting priority for some sort of central fs metadata
> updates, at least what the usage in the reiserfs journal code
> looks like that.
>
> Do you happen to have some notes/anecdotes about it so that we can
> document it, give it saner naming and use it directly in the
> spots that need it (including inside xfs, btrfs, etc) instead of lock_super?

The intent was to add some sort of notification mechanism from the file
system to inform the IO scheduler (and others?) that this process is how
holding a file system wide resource. So if you have a low priority
process getting access to such a resource, you want to boost its
priority to avoid higher priority apps getting stuck beind it. Sort of a
poor mans priority inheritance.

It would be wonderful if you could kick this process more into gear on
the fs side...

--
Jens Axboe