Re: [PATCH] loop: Add LOOP_SET_FD_WITH_OFFSET ioctl.

From: Christoph Hellwig
Date: Tue Mar 31 2020 - 03:48:34 EST


On Mon, Mar 30, 2020 at 10:06:41AM +0200, Martijn Coenen wrote:
> Hi Ming,
>
> On Mon, Mar 30, 2020 at 3:00 AM Ming Lei <ming.lei@xxxxxxxxxx> wrote:
> > The new ioctl LOOP_SET_FD_WITH_OFFSET looks not generic enough, could
> > you consider to add one ioctl LOOP_SET_FD_AND_STATUS to cover both
> > SET_FD and SET_STATUS so that using two ioctl() to setup loop can become
> > deprecated finally?
>
> I originally started out doing that. However, it is a significantly
> larger refactoring of the loop driver, and it makes things like error
> handling more complex. I thought configuring loop with an offset is
> the most common case. But if there's a preference to do an ioctl that
> takes the full status, I can work on that.

I think the full blown set fd an status would seem a lot more useful,
or even better a LOOP_CTL_ADD variant that sets up everything important
on the character device so that we avoid the half set up block devices
entirely.