Re: [PATCHSET] FUSE: extend FUSE to support more operations

From: Miklos Szeredi
Date: Wed Nov 12 2008 - 04:36:53 EST


On Wed, 12 Nov 2008, Tejun Heo wrote:
> Christoph Hellwig wrote:
> > On Wed, Nov 12, 2008 at 05:41:18PM +0900, Tejun Heo wrote:
> >>> emulated char devices to be char devices? What I mean is, what would
> >>> happen if instead of a char device /dev/dsp would be a regular file
> >>> mounted on /dev/dsp (which implements all the necessary interfaces:
> >>> ioctls, poll, etc)?
> >> For most it would work, I suppose, but there are all sorts of wonky
> >> users out in the wild (and quite a few that we don't have source access
> >> to) and different configurations, so I think it's better to appear as
> >> proper character device if it is a character device. It will also help
> >> udev and other desktop thingies deal with devices implemented in userland.
> >
> > Note that mounting a char device on /dev/dsp is exactly the same as
> > mounting a regular file on /dev/dsp - the only difference is what you
> > set i_mode to.
>
> A difference is how the device is located. With proper character device
> emulation, any char device node on any filesystem would work. Not sure
> how relevant that would be tho.

Yeah, I think it would be a bit hacky to lie about being a device with
a specific major/minor number, when in fact we just set those in the
stat fields, and the real char device would return ENODEV or implement
something else.

So I'd prefer the CUSE approach if we want the file to actually look
like a device.

Miklos
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/