[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20101103150658.GA5627@quack.suse.cz>
Date: Wed, 3 Nov 2010 16:06:58 +0100
From: Jan Kara <jack@...e.cz>
To: Tejun Heo <tj@...nel.org>
Cc: axboe@...nel.dk, hch@...radead.org, linux-kernel@...r.kernel.org,
petero2@...ia.com, schwidefsky@...ibm.com,
heiko.carstens@...ibm.com, jack@...e.cz, akpm@...ux-foundation.org,
adilger.kernel@...ger.ca, tytso@....edu, mfasheh@...e.com,
joel.becker@...cle.com, aelder@....com, dm-devel@...hat.com,
drbd-dev@...ts.linbit.com, neilb@...e.de, leochen@...adcom.com,
sbranden@...adcom.com, chris.mason@...cle.com, swhiteho@...hat.com,
shaggy@...ux.vnet.ibm.com, joern@...fs.org,
konishi.ryusuke@....ntt.co.jp, reiserfs-devel@...r.kernel.org,
viro@...iv.linux.org.uk
Subject: Re: [PATCH 4/5] block: make blkdev_get/put() handle exclusive
access
On Mon 01-11-10 17:15:28, Tejun Heo wrote:
> Over time, block layer has accumulated a set of APIs dealing with bdev
> open, close, claim and release.
>
> * blkdev_get/put() are the primary open and close functions.
>
> * bd_claim/release() deal with exclusive open.
>
> * open/close_bdev_exclusive() are combination of open and claim and
> the other way around, respectively.
>
> * bd_link/unlink_disk_holder() to create and remove holder/slave
> symlinks.
>
> * open_by_devnum() wraps bdget() + blkdev_get().
>
> The interface is a bit confusing and the decoupling of open and claim
> makes it impossible to properly guarantee exclusive access as
> in-kernel open + claim sequence can disturb the existing exclusive
> open even before the block layer knows the current open if for another
> exclusive access. Reorganize the interface such that,
...
The patch looks OK to me as far as ext3, ext4, and reiserfs are
concerned. One thing I wondered about when I looked at it - does someone
use the 'mode' argument of the blkdev_put() function (well, apart from the
exclusive flag)? Because I've looked at a few random disk ->release()
functions and none of them used it...
Honza
--
Jan Kara <jack@...e.cz>
SUSE Labs, CR
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists