Re: [patch 08/28] Input: prepare to sysfs integration

From: Vojtech Pavlik
Date: Thu Oct 06 2005 - 18:06:26 EST


On Thu, Oct 06, 2005 at 12:46:59PM -0500, Dmitry Torokhov wrote:
> On 10/5/05, Greg KH <gregkh@xxxxxxx> wrote:
> > On Wed, Oct 05, 2005 at 05:17:00PM -0500, Dmitry Torokhov wrote:
> >
> > > The reason is that I want to change input_allocate_device to take
> > > bitmap of supported events. This way I could allocate ABS tables
> > > dynamically at the same time I allocate input_dev itself and it will
> > > simplify error handling logic in drivers and it will save I think 1260
> > > bytes per input_dev structure which is nice. And I don't want to go
> > > through all subsystems yet again soI want to fold into my input
> > > dynalloc patch...
> >
> > That sounds good.
> >
>
> Well, I tried implementing the proposal above and interface came out
> pretty awkward to use. My next option is to move abs table into
> "->private" structure, much like keytable was moved, or (for HID-like
> devices) allocate it when actually needed and adjust individual
> drivers. So I guess the patches that you have right now are good after
> all.

The problem is that the ->abs tables are accessed in the input core and
in the handlers, too, which means they have to share the lifetime rules
with the input_dev struct itself.

That means we probably have a problem with the drivers deallocating the
keytable, while the device still exists, because there is a reference to
it from say sysfs, and keyboard.c tries to access the keytable because
of an ioctl.

--
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/