Re: Linux 6.2-rc1

From: Jens Axboe
Date: Thu Jan 05 2023 - 14:42:09 EST


On 1/5/23 12:06 PM, Linus Torvalds wrote:
> On Thu, Jan 5, 2023 at 9:45 AM Jens Axboe <axboe@xxxxxxxxx> wrote:
>>
>> Not quite sure what that refers to, as I'm pretty sure I did all of that
>> work. But maybe Linus can refresh my memory here :-)
>
> I was definitely there, part of making it actually work for *every*
> block device.
>
> Long long ago, it used to be limited to the sg_io() interface, and
> only worked for SCSI devices.
>
> So you couldn't actually burn CD's with the regular IDE/ATA CD ROM
> drivers directly, but had to use a shim driver, kind of like pktcdvd.
> Except I think it was just /dev/cdrom.
>
> See
>
> https://git.kernel.org/pub/scm/linux/kernel/git/tglx/history.git/commit/?id=90df68e70b
>
> for some of it (exposing SG_IO to all the block ioctls), and the "make
> it more usable" parts that made it do sane permission checking in
>
> https://git.kernel.org/pub/scm/linux/kernel/git/tglx/history.git/commit/?id=a75aaa84276
>
> and the commits preceding it for that part of the work.
>
> But yes, you were very much involved too.

I knew that'd get you digging into the archives ;-)

Fair point, I was mostly thinking of the block infrastructure for doing
non-fs commands.

>> As mentioned, I don't think this kind of code belongs in the kernel. sr
>> or cdrom could easily be modified to support the necessary bits to
>> handle a writeable open, but the grunt of the pktcdvd code deals with
>> retrieving and writing out bigger chunks of data. And that part really
>> does belong in userspace imho.
>
> Well, it's the UDF write support that is the issue.. I didn't even
> realize people did that.
>
> You'd presumably have to re-do it as a FUSE thing.

Or even implement it in UDF itself somehow. But yes, ideally we'd punt all
of this data gathering to userspace and just leave the trivial init/stop
atapi/scsi commands to cdrom/sr.

--
Jens Axboe