Re: sysfs change of input/event devices in 2.6.23rc breaks udev

From: Andrew Morton
Date: Sat Sep 15 2007 - 04:05:50 EST


On Mon, 10 Sep 2007 09:24:04 -0400 "Dmitry Torokhov" <dmitry.torokhov@xxxxxxxxx> wrote:

> On 9/10/07, Greg KH <gregkh@xxxxxxx> wrote:
> > On Mon, Sep 10, 2007 at 01:28:47AM -0400, Dmitry Torokhov wrote:
> > > On Sunday 09 September 2007 19:03, Kay Sievers wrote:
> > > > On 9/8/07, Anssi Hannula <anssi.hannula@xxxxxxxxx> wrote:
> > > > >
> > > > > However, the change that broke id_path of udev is that
> > > > > /sys/class/input/event5/device is now a symlink to the inputX directory
> > > > > instead of being the same as the device symlink in inputX directory,
> > > > > i.e. to ../../../devices/platform/pcspkr in this case.
> > > > >
> > > > > Udev id_path uses that directory to construct the ID_PATH variable.
> > > > > Should the sysfs structure be reverted or should udev be adapted to
> > > > > handle traversing /device symlink twice? I think the former, as there
> > > > > should be considerably more time to adapt udev for coming changes in sysfs.
> > > >
> > > > Udev's path_id script is too dumb to follow the "device" link of
> > > > stacked class devices in the CONFIG_SYSFS_DEPRECATED=y layout. Does
> > > > this change fix it for you?
> > > > http://git.kernel.org/?p=linux/hotplug/udev.git;a=commitdiff_plain;h=b1ac36ff5e3756cefc79967a26280056da31bf6f
> > > >
> > >
> > > Hmm, fixing udev is good but users will not get the change in time. I think we
> > > need to adjust SYSFS_DEPRECATED code to produce old results. Something like the
> > > patch below. I wonder what Greg would think...
> >
> > Hm, I don't understand. Didn't the original conversion of the input
> > layer by Kay not have this kind of problem? What did your changes do
> > differently to cause this driver core change to be needed?
> >
>
> If I understand it correctly Kay's convesion had the same issue. With
> class devices "device" link points to class_dev->device instead of
> class_dev->parent. If you want to keep compatibility with old sysfs
> layout when moving from class devices to regular devices then you need
> to "skip" couple of parents till you get to "real" device. This only
> matters for input because this was the only subsystem with class
> devices stacked.
>

<wonders where the rest of this thread went to>

Did this userspace-visible post-2.6.22 regression get fixed?

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