[PATCH -next RFC 00/14] block: don't access bd_inode directly from other modules

Yu Kuai posted 14 patches 4 months, 3 weeks ago
Failed in applying to current master (apply log)
There is a newer version of this series
block/bdev.c                       | 116 +++++++++++++++++++++++++++++
block/bio.c                        |   1 +
block/blk.h                        |   2 -
drivers/block/xen-blkback/xenbus.c |   3 +-
drivers/md/bcache/super.c          |  11 ++-
drivers/mtd/devices/block2mtd.c    |  80 +++++++++-----------
drivers/s390/block/dasd_ioctl.c    |   5 +-
drivers/scsi/scsicam.c             |   3 +-
fs/bcachefs/util.h                 |   5 --
fs/btrfs/disk-io.c                 |  68 ++++++++---------
fs/btrfs/volumes.c                 |  17 ++---
fs/btrfs/zoned.c                   |  12 ++-
fs/cramfs/inode.c                  |  35 +++------
fs/erofs/data.c                    |  17 +++--
fs/erofs/internal.h                |   1 +
fs/ext4/dir.c                      |   6 +-
fs/ext4/ext4_jbd2.c                |   6 +-
fs/ext4/super.c                    |  27 +------
fs/gfs2/glock.c                    |   2 +-
fs/gfs2/ops_fstype.c               |   2 +-
fs/jbd2/journal.c                  |   3 +-
fs/jbd2/recovery.c                 |   6 +-
fs/nilfs2/segment.c                |   2 +-
include/linux/blkdev.h             |  27 +++++++
include/linux/buffer_head.h        |   5 +-
25 files changed, 273 insertions(+), 189 deletions(-)
[PATCH -next RFC 00/14] block: don't access bd_inode directly from other modules
Posted by Yu Kuai 4 months, 3 weeks ago
From: Yu Kuai <yukuai3@huawei.com>

Patch 1 add some bdev apis, then follow up patches will use these apis
to avoid access bd_inode directly, and hopefully the field bd_inode can
be removed eventually(after figure out a way for fs/buffer.c).

Yu Kuai (14):
  block: add some bdev apis
  xen/blkback: use bdev api in xen_update_blkif_status()
  bcache: use bdev api in read_super()
  mtd: block2mtd: use bdev apis
  s390/dasd: use bdev api in dasd_format()
  scsicam: use bdev api in scsi_bios_ptable()
  bcachefs: remove dead function bdev_sectors()
  btrfs: use bdev apis
  cramfs: use bdev apis in cramfs_blkdev_read()
  erofs: use bdev api
  ext4: use bdev apis
  jbd2: use bdev apis
  gfs2: use bdev api
  nilfs2: use bdev api in nilfs_attach_log_writer()

 block/bdev.c                       | 116 +++++++++++++++++++++++++++++
 block/bio.c                        |   1 +
 block/blk.h                        |   2 -
 drivers/block/xen-blkback/xenbus.c |   3 +-
 drivers/md/bcache/super.c          |  11 ++-
 drivers/mtd/devices/block2mtd.c    |  80 +++++++++-----------
 drivers/s390/block/dasd_ioctl.c    |   5 +-
 drivers/scsi/scsicam.c             |   3 +-
 fs/bcachefs/util.h                 |   5 --
 fs/btrfs/disk-io.c                 |  68 ++++++++---------
 fs/btrfs/volumes.c                 |  17 ++---
 fs/btrfs/zoned.c                   |  12 ++-
 fs/cramfs/inode.c                  |  35 +++------
 fs/erofs/data.c                    |  17 +++--
 fs/erofs/internal.h                |   1 +
 fs/ext4/dir.c                      |   6 +-
 fs/ext4/ext4_jbd2.c                |   6 +-
 fs/ext4/super.c                    |  27 +------
 fs/gfs2/glock.c                    |   2 +-
 fs/gfs2/ops_fstype.c               |   2 +-
 fs/jbd2/journal.c                  |   3 +-
 fs/jbd2/recovery.c                 |   6 +-
 fs/nilfs2/segment.c                |   2 +-
 include/linux/blkdev.h             |  27 +++++++
 include/linux/buffer_head.h        |   5 +-
 25 files changed, 273 insertions(+), 189 deletions(-)

-- 
2.39.2
Re: [PATCH -next RFC 00/14] block: don't access bd_inode directly from other modules
Posted by Christoph Hellwig 4 months, 3 weeks ago
On Tue, Dec 05, 2023 at 08:37:14PM +0800, Yu Kuai wrote:
> From: Yu Kuai <yukuai3@huawei.com>
> 
> Patch 1 add some bdev apis, then follow up patches will use these apis
> to avoid access bd_inode directly, and hopefully the field bd_inode can
> be removed eventually(after figure out a way for fs/buffer.c).

What tree is this against?  It fails to apply to either Jens'
for-6.8/block or Linus tree in the very first patch.
Re: [PATCH -next RFC 00/14] block: don't access bd_inode directly from other modules
Posted by Yu Kuai 4 months, 3 weeks ago
Hi,

在 2023/12/06 13:54, Christoph Hellwig 写道:
> On Tue, Dec 05, 2023 at 08:37:14PM +0800, Yu Kuai wrote:
>> From: Yu Kuai <yukuai3@huawei.com>
>>
>> Patch 1 add some bdev apis, then follow up patches will use these apis
>> to avoid access bd_inode directly, and hopefully the field bd_inode can
>> be removed eventually(after figure out a way for fs/buffer.c).
> 
> What tree is this against?  It fails to apply to either Jens'
> for-6.8/block or Linus tree in the very first patch.

It was against linux-next branch, for the tag next-20231201, because I'm
not sure yet if this patchset should be applied to Jans' tree. Please
let me know if I should swith wo Jens' tree for v2.

Thanks,
Kuai
> 
> .
>