Re: Kubuntu's udev broken with 2.6.18-rc2-mm1

Andrew James Wade
2006-08-01T03:01:22Z

On Sunday 30 July 2006 23:37, Greg KH wrote:
> On Sun, Jul 30, 2006 at 10:27:06PM -0400, Andrew James Wade wrote:
> > On Sunday 30 July 2006 20:03, Greg KH wrote:
> > > Something's really broken with that version of udev then, because the
> > > 094 version I have running here works just fine with these symlinks.
> >
> > Maybe, but some really odd things were happening in /sys with the
> > patch. I could still follow the bogus symlinks. More than that
> >
> > /sys/class/mem/mem$ cd ../../class
> > and
> > /sys/class/mem/mem$ cd ../..
> >
> > _both_ ended up with a $PWD of /sys/class.

Sorry for the false alarm: I didn't note the previous level of symlinks
in /sys/class/mem, and the subsystem symlinks were actually correct.
The strange behaviour of cd was the result of my shell being to clever
for my own good.

...
>
> If you want to verify this, please apply the patch at:
> http://www.kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/patches/device-virtual.patch
> and let me know if it solves your issue (note that the reference
> counting is not completly correct in that patch, that's why I haven't
> unleashed it on -mm yet.)

Unfortunately not. I hand-applied the one reject like so:

diff -rupN 2.6.18-rc2-mm1/drivers/base/core.c linux/drivers/base/core.c
--- 2.6.18-rc2-mm1/drivers/base/core.c 2006-07-31 22:07:24.000000000 -0400
+++ linux/drivers/base/core.c 2006-07-31 15:57:59.000000000 -0400
@@ -368,7 +368,7 @@ static int device_add_class_symlinks(str
dev->bus_id);
if (error)
goto out_subsys;
- if (dev->parent) {
+ if ((dev->parent) && (!dev->virtual)) {
error = sysfs_create_link(&dev->kobj, &dev->parent->kobj,
"device");
if (error)

but udev (79-0ubuntu34) did not work with the patch applied.

thanks,
Andrew Wade