Re: [PATCH] to drivers/input/evdev.c to add mixer device "/dev/input/events"

From: Vojtech Pavlik
Date: Mon Aug 15 2005 - 13:57:02 EST


On Mon, Aug 15, 2005 at 12:00:37PM -0600, Joe Peterson wrote:

> I am using evtouch, but I had read that X itself has an issue with
> devices that are not "always there" and that X does not [yet] seem to be
> designed to handle hotplugging well (for example, device names need to
> be hard-coded in xorg.conf, so a changing device name on plugging will
> not work).

You just need to list all the possible names, as far as I know, which
isn't too bad. And udev takes care of it anyway.

> Perhaps this could be fixed, but it might be a lot more
> involved. Why was /dev/input/mice created?

To make 2.6 work with existing applications. It's scheduled to be
removed. I definitely don't want to add more workarounds for X
limitations to the kernel - that only defers fixing X.

> It does correct the issue of unplugging and plugging mice (as well as
> its obvious feature of allowing multiple mice, of course)? It keeps X
> happy by shielding it from the plugging/unplugging.

Yes. But X really needs to start caring about hotplug. I've heard that
latest builds are moving into that direction (though I didn't try myself
yet).

> If the mixing of event devices is problematic, what about simply the
> idea of a persistent event device that always "exists" to the user of
> the events but will reattach if the HW is plugged/unplugged (the device
> name assigned could be made constant using a udev symlink)? This could
> solve the problem without mixing all events. In my case, I have one
> touch screen only (as most people would), so the mixing works in my
> case, of course.

The event device always exists until it's closed. It'll return -ENODEV on
any operation, but is discarded only after the last application closes
it.

What exact change of behavior do you need? If you want the kernel to
match the newly plugged-in device to the existing, open, unattached,
evdev node, well, that's near impossible to do solely in the kernel.

--
Vojtech Pavlik
SuSE Labs, SuSE CR
-
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/