Re: linux-next: build failure after merge of the vfs-brauner tree

From: Kent Overstreet
Date: Tue Oct 03 2023 - 09:27:35 EST


On Mon, Oct 02, 2023 at 01:21:42PM +0200, Jan Kara wrote:
> Hi!
>
> On Thu 28-09-23 10:54:43, Stephen Rothwell wrote:
> > After merging the vfs-brauner tree, today's linux-next build (x86_64
> > allmodconfig) failed like this:
> >
> > fs/bcachefs/super-io.c: In function 'bch2_free_super':
> > fs/bcachefs/super-io.c:166:17: error: implicit declaration of function 'blkdev_put'; did you mean 'bdi_put'? [-Werror=implicit-function-declaration]
> > 166 | blkdev_put(sb->bdev, sb->holder);
> > | ^~~~~~~~~~
> > | bdi_put
> > fs/bcachefs/super-io.c: In function 'bch2_read_super':
> > fs/bcachefs/super-io.c:687:20: error: implicit declaration of function 'blkdev_get_by_path'; did you mean 'bdev_open_by_path'? [-Werror=implicit-function-declaration]
> > 687 | sb->bdev = blkdev_get_by_path(path, sb->mode, sb->holder, &bch2_sb_handle_bdev_ops);
> > | ^~~~~~~~~~~~~~~~~~
> > | bdev_open_by_path
> > fs/bcachefs/super-io.c:687:18: error: assignment to 'struct block_device *' from 'int' makes pointer from integer without a cast [-Werror=int-conversion]
> > 687 | sb->bdev = blkdev_get_by_path(path, sb->mode, sb->holder, &bch2_sb_handle_bdev_ops);
> > | ^
> > fs/bcachefs/super-io.c:693:26: error: assignment to 'struct block_device *' from 'int' makes pointer from integer without a cast [-Werror=int-conversion]
> > 693 | sb->bdev = blkdev_get_by_path(path, sb->mode, sb->holder, &bch2_sb_handle_bdev_ops);
> > | ^
> > cc1: all warnings being treated as errors
> >
> > Caused by commit
> >
> > 953863a5a2ff ("block: Remove blkdev_get_by_*() functions")
> >
> > interacting with commit(s) from the bcachefs tree.
> >
> > I would have reverted that commit for today, except I used the old
> > vfs-brauner tree due to another build failure. Can we just delay this
> > one commit until after bcachefs has been converted (and any other
> > references that may be added are fixed)?
>
> Yeah, I guess removing the final commit is the easiest solution at this
> point. It complicates a bit the series to disallow writing to mounted block
> devices which bases on this - either I have to pospone that to the next
> cycle after we convert bcachefs or I have to find a way for the old
> blkdev_get_by_path() API and the new functionality to coexist. I'll think
> about that.

Jan, Christain - what do you need from me for the conversion?