[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 01/32] block: Provide blkdev_get_handle_* functions
- To: Matthew Wilcox <willy@xxxxxxxxxxxxx>
- From: Jan Kara <jack@xxxxxxx>
- Date: Tue, 4 Jul 2023 15:03:56 +0200
- Cc: Jan Kara <jack@xxxxxxx>, linux-block@xxxxxxxxxxxxxxx, linux-fsdevel@xxxxxxxxxxxxxxx, Jens Axboe <axboe@xxxxxxxxx>, Christoph Hellwig <hch@xxxxxxxxxxxxx>, Alasdair Kergon <agk@xxxxxxxxxx>, Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>, Anna Schumaker <anna@xxxxxxxxxx>, Chao Yu <chao@xxxxxxxxxx>, Christian Borntraeger <borntraeger@xxxxxxxxxxxxx>, "Darrick J. Wong" <djwong@xxxxxxxxxx>, Dave Kleikamp <shaggy@xxxxxxxxxx>, David Sterba <dsterba@xxxxxxxx>, dm-devel@xxxxxxxxxx, drbd-dev@xxxxxxxxxxxxxxxx, Gao Xiang <xiang@xxxxxxxxxx>, Jack Wang <jinpu.wang@xxxxxxxxx>, Jaegeuk Kim <jaegeuk@xxxxxxxxxx>, jfs-discussion@xxxxxxxxxxxxxxxxxxxxx, Joern Engel <joern@xxxxxxxxxxxxxxx>, Joseph Qi <joseph.qi@xxxxxxxxxxxxxxxxx>, Kent Overstreet <kent.overstreet@xxxxxxxxx>, linux-bcache@xxxxxxxxxxxxxxx, linux-btrfs@xxxxxxxxxxxxxxx, linux-erofs@xxxxxxxxxxxxxxxx, linux-ext4@xxxxxxxxxxxxxxx, linux-f2fs-devel@xxxxxxxxxxxxxxxxxxxxx, linux-mm@xxxxxxxxx, linux-mtd@xxxxxxxxxxxxxxxxxxx, linux-nfs@xxxxxxxxxxxxxxx, linux-nilfs@xxxxxxxxxxxxxxx, linux-nvme@xxxxxxxxxxxxxxxxxxx, linux-pm@xxxxxxxxxxxxxxx, linux-raid@xxxxxxxxxxxxxxx, linux-s390@xxxxxxxxxxxxxxx, linux-scsi@xxxxxxxxxxxxxxx, linux-xfs@xxxxxxxxxxxxxxx, "Md. Haris Iqbal" <haris.iqbal@xxxxxxxxx>, Mike Snitzer <snitzer@xxxxxxxxxx>, Minchan Kim <minchan@xxxxxxxxxx>, ocfs2-devel@xxxxxxxxxxxxxx, reiserfs-devel@xxxxxxxxxxxxxxx, Sergey Senozhatsky <senozhatsky@xxxxxxxxxxxx>, Song Liu <song@xxxxxxxxxx>, Sven Schnelle <svens@xxxxxxxxxxxxx>, target-devel@xxxxxxxxxxxxxxx, Ted Tso <tytso@xxxxxxx>, Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx
- Delivery-date: Tue, 04 Jul 2023 13:04:11 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
On Tue 04-07-23 13:43:51, Matthew Wilcox wrote:
> On Tue, Jul 04, 2023 at 02:21:28PM +0200, Jan Kara wrote:
> > +struct bdev_handle *blkdev_get_handle_by_dev(dev_t dev, blk_mode_t mode,
> > + void *holder, const struct blk_holder_ops *hops)
> > +{
> > + struct bdev_handle *handle = kmalloc(sizeof(struct bdev_handle),
> > + GFP_KERNEL);
> > + struct block_device *bdev;
> > +
> > + if (!handle)
> > + return ERR_PTR(-ENOMEM);
> > + bdev = blkdev_get_by_dev(dev, mode, holder, hops);
> > + if (IS_ERR(bdev))
> > + return ERR_CAST(bdev);
>
> Would we be better off with a handle->error (and a NULL return from this
> function means "we couldn't allocate a handle")? I have no objection
> to what you've done here, just wondering if it might end up nicer for
> the users.
Hum, I've checked a couple of users and it seems it would be more
complicated for the users to handle this convention than the one I've
chosen. And that one is also pretty standard so I think by the principle of
least surprise it is also better.
Honza
>
--
Jan Kara <jack@xxxxxxxx>
SUSE Labs, CR
|