On Wed, May 17, 2023 at 09:30:31AM +0200, Christoph Hellwig wrote: > On Tue, May 16, 2023 at 06:00:05PM +0200, Christian Brauner wrote: > > Looking at this code reminds me that we'll need a block dev lookup > > function that takes a diskseq argument so we can lookup a block device > > and check it against the diskseq number we provided so we can detect > > "media" changes (images on a loop device etc). Idea being to pass > > diskseq numbers via fsconfig(). > > You can already do this by checking right after opening but before > using it. In theory we could pass the seq down, and handle it further > down, but I'm not sure this really solves anything. BTW, why is there no code to lookup a bdev by O_PATH fd? It seems weird that a lot of ioctls pass the device path to the kernel (btrfs comes to mind). I can see certain things that would make this potentially a bit tricky e.g., you'd not have access to the path/name of the device if you want to show it somewhere such as in mountinfo but nothing that makes it impossible afaict. > > The main work here really is in the mount code. Yeah, I'll get to this soon. Josef has mentioned that he'll convert btrfs to the new mount api this cycle and we have that recorded on video. And I think that otherwise all block device based filesystems might have already been converted.