Re: 2.6.18-rc7-mm1

2006-09-21 Thread Andi Kleen
On Wednesday 20 September 2006 16:23, Mike Galbraith wrote:
 On Tue, 2006-09-19 at 13:36 -0700, Andrew Morton wrote:
  On Tue, 19 Sep 2006 22:25:21 +0200
  Rafael J. Wysocki [EMAIL PROTECTED] wrote:
  
- It took maybe ten hours solid work to get this dogpile vaguely
  compiling and limping to a login prompt on x86, x86_64 and powerpc. 
  I guess it's worth briefly testing if you're keen.
   
   It's not that bad, but unfortunately the networking doesn't work on my 
   system
   (HPC nx6325 + SUSE 10.1 w/ updates, 64-bit).  Apparently, the interfaces 
   don't
   get configured (both tg3 and bcm43xx are affected).
  
  Is there anything interesting in the dmesg output?
  
  Perhaps an `strace -f ifup' or whatever would tell us what's failing.
 
 FYI, it`s SuSE`s /sbin/getcfg binary that doesn't like the changes.  It
 sees /sys/class/net/eth0 as a symlink, and reels off into sys/block (?)
 looking for a directory.

It's a known problem. It's actually libsysfs' fault which somehow manages
to not support symlinks properly. Unfortunately getcfg made the mistake of 
using libsysfs
instead of accessing /sys directly

-Andi
-
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: 2.6.18-rc7-mm1

2006-09-20 Thread Mike Galbraith
On Tue, 2006-09-19 at 13:36 -0700, Andrew Morton wrote:
 On Tue, 19 Sep 2006 22:25:21 +0200
 Rafael J. Wysocki [EMAIL PROTECTED] wrote:
 
   - It took maybe ten hours solid work to get this dogpile vaguely
 compiling and limping to a login prompt on x86, x86_64 and powerpc. 
 I guess it's worth briefly testing if you're keen.
  
  It's not that bad, but unfortunately the networking doesn't work on my 
  system
  (HPC nx6325 + SUSE 10.1 w/ updates, 64-bit).  Apparently, the interfaces 
  don't
  get configured (both tg3 and bcm43xx are affected).
 
 Is there anything interesting in the dmesg output?
 
 Perhaps an `strace -f ifup' or whatever would tell us what's failing.

FYI, it`s SuSE`s /sbin/getcfg binary that doesn't like the changes.  It
sees /sys/class/net/eth0 as a symlink, and reels off into sys/block (?)
looking for a directory.

lstat64(/sys/class/net/eth0, {st_dev=makedev(0, 0), st_ino=5968, 
st_mode=S_IFLNK|0777, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, 
st_blocks=0, st_size=0, st_atime=2006/09/20-13:59:13, 
st_mtime=2006/09/20-13:58:57, st_ctime=2006/09/20-13:58:57}) = 0
lstat64(/sys/block/eth0, 0xbf9e432c)  = -1 ENOENT (No such file or directory)
open(/proc/mounts, O_RDONLY)  = 3
fstat64(3, {st_dev=makedev(0, 3), st_ino=22711, st_mode=S_IFREG|0444, 
st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=0, st_size=0, 
st_atime=2006/09/20-14:00:35, st_mtime=2006/09/20-14:00:35, 
st_ctime=2006/09/20-14:00:35}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7f59000
read(3, rootfs / rootfs rw 0 0\nudev /dev..., 4096) = 601
close(3)= 0
munmap(0xb7f59000, 4096)= 0
lstat64(/sys/block, {st_dev=makedev(0, 0), st_ino=256, st_mode=S_IFDIR|0755, 
st_nlink=18, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=0, st_size=0, 
st_atime=2006/09/20-14:00:17, st_mtime=2006/09/20-13:58:59, 
st_ctime=2006/09/20-13:58:59}) = 0
lstat64(/sys/block, {st_dev=makedev(0, 0), st_ino=256, st_mode=S_IFDIR|0755, 
st_nlink=18, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=0, st_size=0, 
st_atime=2006/09/20-14:00:17, st_mtime=2006/09/20-13:58:59, 
st_ctime=2006/09/20-13:58:59}) = 0
open(/dev/null, O_RDONLY|O_NONBLOCK|O_DIRECTORY) = -1 ENOTDIR (Not a 
directory)
open(/sys/block, O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 3
fstat64(3, {st_dev=makedev(0, 0), st_ino=256, st_mode=S_IFDIR|0755, 
st_nlink=18, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=0, st_size=0, 
st_atime=2006/09/20-14:00:17, st_mtime=2006/09/20-13:58:59, 
st_ctime=2006/09/20-13:58:59}) = 0
fcntl64(3, F_SETFD, FD_CLOEXEC) = 0
getdents64(3, {{d_ino=256, d_off=1, d_type=DT_DIR, d_reclen=24, d_name=.} 
{d_ino=1, d_off=2, d_type=DT_DIR, d_reclen=24, d_name=..} {d_ino=11521, 
d_off=3, d_type=DT_DIR, d_reclen=24, d_name=sde} {d_ino=11455, d_off=4, 
d_type=DT_DIR, d_reclen=24, d_name=sdd} {d_ino=11416, d_off=5, d_type=DT_DIR, 
d_reclen=24, d_name=sdc} {d_ino=11358, d_off=6, d_type=DT_DIR, d_reclen=24, 
d_name=sdb} {d_ino=11311, d_off=7, d_type=DT_DIR, d_reclen=24, d_name=sda} 
{d_ino=1784, d_off=8, d_type=DT_DIR, d_reclen=24, d_name=hdd} {d_ino=1770, 
d_off=9, d_type=DT_DIR, d_reclen=24, d_name=hdc} {d_ino=1757, d_off=10, 
d_type=DT_DIR, d_reclen=24, d_name=hda} {d_ino=1725, d_off=11, d_type=DT_DIR, 
d_reclen=32, d_name=loop7} {d_ino=1722, d_off=12, d_type=DT_DIR, d_reclen=32, 
d_name=loop6} {d_ino=1719, d_off=13, d_type=DT_DIR, d_reclen=32, 
d_name=loop5} {d_ino=1716, d_off=14, d_type=DT_DIR, d_reclen=32, 
d_name=loop4} {d_ino=1713, d_off=15, d_type=DT_DIR, d_reclen=32, 
d_name=loop3} {d_ino=1710, d_off=16, d_type=DT_DIR, d_reclen=32, 
d_name=loop2} {d_ino=1707, d_off=17, d_type=DT_DIR, d_reclen=32, 
d_name=loop1} {d_ino=1704, d_off=18, d_type=DT_DIR, d_reclen=32, 
d_name=loop0}}, 4096) = 496
lstat64(/sys/block/sde, {st_dev=makedev(0, 0), st_ino=11521, 
st_mode=S_IFDIR|0755, st_nlink=5, st_uid=0, st_gid=0, st_blksize=4096, 
st_blocks=0, st_size=0, st_atime=2006/09/20-13:59:14, 
st_mtime=2006/09/20-13:58:59, st_ctime=2006/09/20-13:58:59}) = 0
lstat64(/sys/block/sde, {st_dev=makedev(0, 0), st_ino=11521, 
st_mode=S_IFDIR|0755, st_nlink=5, st_uid=0, st_gid=0, st_blksize=4096, 
st_blocks=0, st_size=0, st_atime=2006/09/20-13:59:14, 
st_mtime=2006/09/20-13:58:59, st_ctime=2006/09/20-13:58:59}) = 0
lstat64(/sys/block/sdd, {st_dev=makedev(0, 0), st_ino=11455, 
st_mode=S_IFDIR|0755, st_nlink=5, st_uid=0, st_gid=0, st_blksize=4096, 
st_blocks=0, st_size=0, st_atime=2006/09/20-13:59:14, 
st_mtime=2006/09/20-13:58:59, st_ctime=2006/09/20-13:58:59}) = 0
lstat64(/sys/block/sdd, {st_dev=makedev(0, 0), st_ino=11455, 
st_mode=S_IFDIR|0755, st_nlink=5, st_uid=0, st_gid=0, st_blksize=4096, 
st_blocks=0, st_size=0, st_atime=2006/09/20-13:59:14, 
st_mtime=2006/09/20-13:58:59, st_ctime=2006/09/20-13:58:59}) = 0
lstat64(/sys/block/sdc, {st_dev=makedev(0, 0), st_ino=11416, 
st_mode=S_IFDIR|0755, st_nlink=5, st_uid=0, st_gid=0, st_blksize=4096, 
st_blocks=0, 

Re: 2.6.18-rc7-mm1

2006-09-20 Thread Rafael J. Wysocki
On Wednesday, 20 September 2006 16:23, Mike Galbraith wrote:
 On Tue, 2006-09-19 at 13:36 -0700, Andrew Morton wrote:
  On Tue, 19 Sep 2006 22:25:21 +0200
  Rafael J. Wysocki [EMAIL PROTECTED] wrote:
  
- It took maybe ten hours solid work to get this dogpile vaguely
  compiling and limping to a login prompt on x86, x86_64 and powerpc. 
  I guess it's worth briefly testing if you're keen.
   
   It's not that bad, but unfortunately the networking doesn't work on my 
   system
   (HPC nx6325 + SUSE 10.1 w/ updates, 64-bit).  Apparently, the interfaces 
   don't
   get configured (both tg3 and bcm43xx are affected).
  
  Is there anything interesting in the dmesg output?
  
  Perhaps an `strace -f ifup' or whatever would tell us what's failing.
 
 FYI, it`s SuSE`s /sbin/getcfg binary that doesn't like the changes.  It
 sees /sys/class/net/eth0 as a symlink, and reels off into sys/block (?)
 looking for a directory.

I have filed a report in the SUSE bugzilla.  Let's see what happens.

Greetings,
Rafael


-- 
You never change things by fighting the existing reality.
R. Buckminster Fuller
-
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: 2.6.18-rc7-mm1

2006-09-19 Thread Andrew Morton
On Tue, 19 Sep 2006 22:25:21 +0200
Rafael J. Wysocki [EMAIL PROTECTED] wrote:

  - It took maybe ten hours solid work to get this dogpile vaguely
compiling and limping to a login prompt on x86, x86_64 and powerpc. 
I guess it's worth briefly testing if you're keen.
 
 It's not that bad, but unfortunately the networking doesn't work on my system
 (HPC nx6325 + SUSE 10.1 w/ updates, 64-bit).  Apparently, the interfaces don't
 get configured (both tg3 and bcm43xx are affected).

Is there anything interesting in the dmesg output?

Perhaps an `strace -f ifup' or whatever would tell us what's failing.
-
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: 2.6.18-rc7-mm1: networking breakage on HPC nx6325 + SUSE 10.1

2006-09-19 Thread Rafael J. Wysocki
On Tuesday, 19 September 2006 22:36, Andrew Morton wrote:
 On Tue, 19 Sep 2006 22:25:21 +0200
 Rafael J. Wysocki [EMAIL PROTECTED] wrote:
 
   - It took maybe ten hours solid work to get this dogpile vaguely
 compiling and limping to a login prompt on x86, x86_64 and powerpc. 
 I guess it's worth briefly testing if you're keen.
  
  It's not that bad, but unfortunately the networking doesn't work on my 
  system
  (HPC nx6325 + SUSE 10.1 w/ updates, 64-bit).  Apparently, the interfaces 
  don't
  get configured (both tg3 and bcm43xx are affected).
 
 Is there anything interesting in the dmesg output?

Not to me. :-)
 
 Perhaps an `strace -f ifup' or whatever would tell us what's failing.

Well, I can configure the interfaces manually, with ifconfig, but the SUSE's
configuration tools don't work.  For example, ifup eth0 tells me that
No configuration found for eth0 and that's all.

Also, powersaved segfaults at startup so I think the problem is with hal
vs sysfs (again).

The output of dmesg after a fresh boot and the strace ifup eth0 output
are attached.

Greetings,
Rafael


-- 
You never change things by fighting the existing reality.
R. Buckminster Fuller


dmesg.log.gz
Description: GNU Zip compressed data


strace.log.gz
Description: GNU Zip compressed data


Re: 2.6.18-rc7-mm1: networking breakage on HPC nx6325 + SUSE 10.1

2006-09-19 Thread David Miller
From: Rafael J. Wysocki [EMAIL PROTECTED]
Date: Wed, 20 Sep 2006 00:06:52 +0200

 I _guess_ the problem is caused by
 gregkh-driver-network-class_device-to-device.patch, but I can't verify this,
 because the kernel (obviously) doesn't compile if I revert it.

Indeed.

I thought we threw this patch out because we knew it would cause
problems for existing systems?  I do remember Greg making an argument
as to why we needed the change, but that doesn't make breaking people's
systems legitimate in any way.

-
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: 2.6.18-rc7-mm1: networking breakage on HPC nx6325 + SUSE 10.1

2006-09-19 Thread Rafael J. Wysocki
On Tuesday, 19 September 2006 23:30, Rafael J. Wysocki wrote:
 On Tuesday, 19 September 2006 22:36, Andrew Morton wrote:
  On Tue, 19 Sep 2006 22:25:21 +0200
  Rafael J. Wysocki [EMAIL PROTECTED] wrote:
  
- It took maybe ten hours solid work to get this dogpile vaguely
  compiling and limping to a login prompt on x86, x86_64 and powerpc. 
  I guess it's worth briefly testing if you're keen.
   
   It's not that bad, but unfortunately the networking doesn't work on my 
   system
   (HPC nx6325 + SUSE 10.1 w/ updates, 64-bit).  Apparently, the interfaces 
   don't
   get configured (both tg3 and bcm43xx are affected).
  
  Is there anything interesting in the dmesg output?
 
 Not to me. :-)
  
  Perhaps an `strace -f ifup' or whatever would tell us what's failing.
 
 Well, I can configure the interfaces manually, with ifconfig, but the SUSE's
 configuration tools don't work.  For example, ifup eth0 tells me that
 No configuration found for eth0 and that's all.
 
 Also, powersaved segfaults at startup so I think the problem is with hal
 vs sysfs (again).
 
 The output of dmesg after a fresh boot and the strace ifup eth0 output
 are attached.

I _guess_ the problem is caused by
gregkh-driver-network-class_device-to-device.patch, but I can't verify this,
because the kernel (obviously) doesn't compile if I revert it.

Greetings,
Rafael


-- 
You never change things by fighting the existing reality.
R. Buckminster Fuller
-
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: 2.6.18-rc7-mm1: networking breakage on HPC nx6325 + SUSE 10.1

2006-09-19 Thread Greg KH
On Tue, Sep 19, 2006 at 03:06:29PM -0700, David Miller wrote:
 From: Rafael J. Wysocki [EMAIL PROTECTED]
 Date: Wed, 20 Sep 2006 00:06:52 +0200
 
  I _guess_ the problem is caused by
  gregkh-driver-network-class_device-to-device.patch, but I can't verify this,
  because the kernel (obviously) doesn't compile if I revert it.
 
 Indeed.
 
 I thought we threw this patch out because we knew it would cause
 problems for existing systems?  I do remember Greg making an argument
 as to why we needed the change, but that doesn't make breaking people's
 systems legitimate in any way.

It's now thrown out, and I think Andrew already had a patch in his tree
that reverted this.

I'll be bringing it back eventually, but first we are going to work out
all the kinks by probably putting these changes in the next few SuSE
alpha releases to see what shakes out in userspace that we need to go
fix.

It's not 2.6.19 material at all, so don't worry :)

thanks,

greg k-h
-
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: 2.6.18-rc7-mm1: networking breakage on HPC nx6325 + SUSE 10.1

2006-09-19 Thread Rafael J. Wysocki
On Wednesday, 20 September 2006 00:30, Greg KH wrote:
 On Tue, Sep 19, 2006 at 03:06:29PM -0700, David Miller wrote:
  From: Rafael J. Wysocki [EMAIL PROTECTED]
  Date: Wed, 20 Sep 2006 00:06:52 +0200
  
   I _guess_ the problem is caused by
   gregkh-driver-network-class_device-to-device.patch, but I can't verify 
   this,
   because the kernel (obviously) doesn't compile if I revert it.
  
  Indeed.
  
  I thought we threw this patch out because we knew it would cause
  problems for existing systems?  I do remember Greg making an argument
  as to why we needed the change, but that doesn't make breaking people's
  systems legitimate in any way.
 
 It's now thrown out, and I think Andrew already had a patch in his tree
 that reverted this.
 
 I'll be bringing it back eventually, but first we are going to work out
 all the kinks by probably putting these changes in the next few SuSE
 alpha releases to see what shakes out in userspace that we need to go
 fix.
 
 It's not 2.6.19 material at all, so don't worry :)

Please note, however, that by including such changes in -mm we make _other_
things be not tested.

For example, if I can't install a new kernel and use it on my system without
replacing some other pieces of software, I just won't be using it, because I
have no time for playing with udev, hal, powersaved, acpid, ...
Then, if there are any bugs in it that would have shown up on my system,
we won't know about them unless they show up on someone else's system,
which may not happen.

The more changes that break existing setups are there in -mm, the less
people will acutally try to use -mm kernels and that will result in buggier
-rc kernels and more bugs propagating to the stable ones.  Do we really
want that to happen?

Rafael


-- 
You never change things by fighting the existing reality.
R. Buckminster Fuller
-
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: 2.6.18-rc7-mm1: networking breakage on HPC nx6325 + SUSE 10.1

2006-09-19 Thread Valdis . Kletnieks
On Tue, 19 Sep 2006 23:30:34 +0200, Rafael J. Wysocki said:

 Well, I can configure the interfaces manually, with ifconfig, but the SUSE's
 configuration tools don't work.  For example, ifup eth0 tells me that
 No configuration found for eth0 and that's all.

I'm seeing issues on a Dell Latitude C840 as well, but I'm not positive
it's the same bug(s).  The problem I'm seeing is that device renaming is
failing (I have up to 5 different ethernet-ish interfaces that can be
connected, so I abuse /sbin/nameif extensively. There seem to be some
other issues with pcmcia, but it's not clear what the problem is - it
manages to find the (normally down) ethernet on my Xircom card, but the
orinoco driver seems unable to find my wireless card

For instance, under 2.6.18-rc6-mm2, I see:

pccard: CardBus card inserted into slot 0
PCI: Enabling device :03:00.0 ( - 0003)
ACPI: PCI Interrupt :03:00.0[A] - Link [LNKD] - GSI 11 (level, low) - 
IRQ 11
PCI: Setting latency timer of device :03:00.0 to 64
eth2: Xircom cardbus revision 3 at irq 11
PCI: Enabling device :03:00.1 ( - 0003)
ACPI: PCI Interrupt :03:00.1[A] - Link [LNKD] - GSI 11 (level, low) - 
IRQ 11
:03:00.1: ttyS1 at I/O 0xe080 (irq = 11) is a 16550A
pccard: PCMCIA card inserted into slot 2
[rename_device:851]: Changing netdevice name from [eth1] to [eth3]
ohci1394: fw-host0: AT dma reset ctx=0, aborting transmission
ieee1394: Current remote IRM is not 1394a-2000 compliant, resetting...
ieee1394: Host added: ID:BUS[0-00:1023]  GUID[374fc0002a71c021]
[rename_device:1237]: Changing netdevice name from [eth2] to [eth1]
cs: memory probe 0xf400-0xfbff: excluding 0xf400-0xf8ff 
0xfa00-0xfbff
pcmcia: registering new device pcmcia2.0
orinoco 0.15 (David Gibson [EMAIL PROTECTED], Pavel Roskin [EMAIL 
PROTECTED], et al)
orinoco_cs 0.15 (David Gibson [EMAIL PROTECTED], Pavel Roskin [EMAIL 
PROTECTED], et al)
pcmcia: request for exclusive IRQ could not be fulfilled.
pcmcia: the driver needs updating to supported shared IRQ lines.
cs: IO port probe 0x100-0x3af: excluding 0x370-0x37f
cs: IO port probe 0x3e0-0x4ff: clean.
cs: IO port probe 0x820-0x8ff: clean.
cs: IO port probe 0xc00-0xcf7: clean.
cs: IO port probe 0xa00-0xaff: clean.
cs: IO port probe 0x100-0x3af: excluding 0x370-0x37f
cs: IO port probe 0x3e0-0x4ff: clean.
cs: IO port probe 0x820-0x8ff: clean.
cs: IO port probe 0xc00-0xcf7: clean.
cs: IO port probe 0xa00-0xaff: clean.
cs: IO port probe 0x100-0x3af: excluding 0x370-0x37f
cs: IO port probe 0x3e0-0x4ff: clean.
cs: IO port probe 0x820-0x8ff: clean.
cs: IO port probe 0xc00-0xcf7: clean.
cs: IO port probe 0xa00-0xaff: clean.
eth2: Hardware identity 0005:0004:0005:
eth2: Station identity  001f:0001:0008:000a
eth2: Firmware determined as Lucent/Agere 8.10
eth2: Ad-hoc demo mode supported
eth2: IEEE standard IBSS ad-hoc mode supported
eth2: WEP supported, 104-bit key
eth2: MAC address 00:02:2D:5C:11:48
eth2: Station name HERMES I
eth2: ready
eth2: orinoco_cs at 2.0, irq 11, io 0xe100-0xe13f
[rename_device:1295]: Changing netdevice name from [eth2] to [eth5]
Non-volatile memory driver v1.2

and under -rc7-mm1, I see:

pccard: CardBus card inserted into slot 0
PCI: Enabling device :03:00.0 ( - 0003)
ACPI: PCI Interrupt :03:00.0[A] - Link [LNKD] - GSI 11 (level, low) - 
IRQ 11
PCI: Setting latency timer of device :03:00.0 to 64
eth1: Xircom cardbus revision 3 at irq 11 
PCI: Enabling device :03:00.1 ( - 0003)
ACPI: PCI Interrupt :03:00.1[A] - Link [LNKD] - GSI 11 (level, low) - 
IRQ 11
:03:00.1: ttyS1 at I/O 0xe080 (irq = 11) is a 16550A
pccard: PCMCIA card inserted into slot 2
ohci1394: fw-host0: AT dma reset ctx=0, aborting transmission
ieee1394: Current remote IRM is not 1394a-2000 compliant, resetting...
ieee1394: Host added: ID:BUS[0-00:1023]  GUID[374fc0002a71c021]
Non-volatile memory driver v1.2

Amazingly less chatty.  Much later, when /etc/rc5.d/S10network runs, we finally
see:

orinoco 0.15 (David Gibson [EMAIL PROTECTED], Pavel Roskin [EMAIL 
PROTECTED], et al)
orinoco_cs 0.15 (David Gibson [EMAIL PROTECTED], Pavel Roskin [EMAIL 
PROTECTED], et al)

but no output for the wireless configuring.

Unless somebody has a better idea overnight, I'll start a bisect of -rc7-mm1
in the morning...



pgpbWRrp6DrOR.pgp
Description: PGP signature


Re: 2.6.18-rc7-mm1: networking breakage on HPC nx6325 + SUSE 10.1

2006-09-19 Thread Dmitry Torokhov
On Tuesday 19 September 2006 18:30, Greg KH wrote:
 On Tue, Sep 19, 2006 at 03:06:29PM -0700, David Miller wrote:
  From: Rafael J. Wysocki [EMAIL PROTECTED]
  Date: Wed, 20 Sep 2006 00:06:52 +0200
  
   I _guess_ the problem is caused by
   gregkh-driver-network-class_device-to-device.patch, but I can't verify 
   this,
   because the kernel (obviously) doesn't compile if I revert it.
  
  Indeed.
  
  I thought we threw this patch out because we knew it would cause
  problems for existing systems?  I do remember Greg making an argument
  as to why we needed the change, but that doesn't make breaking people's
  systems legitimate in any way.
 
 It's now thrown out, and I think Andrew already had a patch in his tree
 that reverted this.
 
 I'll be bringing it back eventually, but first we are going to work out
 all the kinks by probably putting these changes in the next few SuSE
 alpha releases to see what shakes out in userspace that we need to go
 fix.
 

Greg,

Could you please comment on the patch below which is I believe achieves
the desired result - produces unified sysfs representation of kernel
device tree - without major reshuffle of every kernel subsystem.

-- 
Dmitry


Driver core: move class_device to /sys/device/... part of the tree

Move sysfs representation of class_device structure from /sys/class/...
to /sys/device/... to provide unified device tree; create symlinks
in /sys/class pointing to /sys/device/... to preserve existing
classification of devices.

Create /sys/device/virtual device which is parent for all class_devices
that do not have real parent device.

Signed-off-by: Dmitry Torokhov [EMAIL PROTECTED]
---

 drivers/base/class.c |  154 ---
 1 files changed, 73 insertions(+), 81 deletions(-)

Index: work/drivers/base/class.c
===
--- work.orig/drivers/base/class.c
+++ work/drivers/base/class.c
@@ -521,60 +521,73 @@ char *make_class_name(const char *name, 
return class_name;
 }
 
+static struct device virtual_device = {
+   .bus_id = virtual,
+};
+
 int class_device_add(struct class_device *class_dev)
 {
-   struct class *parent_class = NULL;
+   struct class *parent_class;
struct class_device *parent_class_dev = NULL;
+   struct device *parent_dev = NULL;
struct class_interface *class_intf;
-   char *class_name = NULL;
int error = -EINVAL;
 
-   class_dev = class_device_get(class_dev);
-   if (!class_dev)
-   return -EINVAL;
-
if (!strlen(class_dev-class_id))
-   goto out1;
+   return -EINVAL;
 
parent_class = class_get(class_dev-class);
if (!parent_class)
-   goto out1;
-
-   parent_class_dev = class_device_get(class_dev-parent);
+   return -EINVAL;
 
pr_debug(CLASS: registering class device: ID = '%s'\n,
 class_dev-class_id);
 
+   parent_class_dev = class_device_get(class_dev-parent);
+
+   if (!class_dev-dev)
+   class_dev-dev = virtual_device;
+   parent_dev = get_device(class_dev-dev);
+
/* first, register with generic layer. */
error = kobject_set_name(class_dev-kobj, %s, class_dev-class_id);
if (error)
-   goto out2;
+   goto err_put_parents;
 
-   if (parent_class_dev)
-   class_dev-kobj.parent = parent_class_dev-kobj;
-   else
-   class_dev-kobj.parent = parent_class-subsys.kset.kobj;
+   class_dev-kobj.parent = parent_class_dev ?
+   parent_class_dev-kobj : parent_dev-kobj;
 
error = kobject_add(class_dev-kobj);
if (error)
-   goto out2;
+   goto err_put_parents;
 
/* add the needed attributes to this device */
-   sysfs_create_link(class_dev-kobj, parent_class-subsys.kset.kobj, 
subsystem);
+   error = sysfs_create_link(class_dev-kobj,
+ parent_class-subsys.kset.kobj,
+ subsystem);
+   if (error)
+   goto err_del_kobject;
+
+   error = sysfs_create_link(parent_class-subsys.kset.kobj,
+ class_dev-kobj,
+ class_dev-class_id);
+   if (error)
+   goto err_del_subsys_link;
+
class_dev-uevent_attr.attr.name = uevent;
class_dev-uevent_attr.attr.mode = S_IWUSR;
class_dev-uevent_attr.attr.owner = parent_class-owner;
class_dev-uevent_attr.store = store_uevent;
error = class_device_create_file(class_dev, class_dev-uevent_attr);
if (error)
-   goto out3;
+   goto err_del_class_link;
 
if (MAJOR(class_dev-devt)) {
struct class_device_attribute *attr;
attr = kzalloc(sizeof(*attr), GFP_KERNEL);
if (!attr) {
error = 

Re: 2.6.18-rc7-mm1: networking breakage on HPC nx6325 + SUSE 10.1

2006-09-19 Thread Greg KH
On Wed, Sep 20, 2006 at 12:56:57AM +0200, Rafael J. Wysocki wrote:
 On Wednesday, 20 September 2006 00:30, Greg KH wrote:
  On Tue, Sep 19, 2006 at 03:06:29PM -0700, David Miller wrote:
   From: Rafael J. Wysocki [EMAIL PROTECTED]
   Date: Wed, 20 Sep 2006 00:06:52 +0200
   
I _guess_ the problem is caused by
gregkh-driver-network-class_device-to-device.patch, but I can't verify 
this,
because the kernel (obviously) doesn't compile if I revert it.
   
   Indeed.
   
   I thought we threw this patch out because we knew it would cause
   problems for existing systems?  I do remember Greg making an argument
   as to why we needed the change, but that doesn't make breaking people's
   systems legitimate in any way.
  
  It's now thrown out, and I think Andrew already had a patch in his tree
  that reverted this.
  
  I'll be bringing it back eventually, but first we are going to work out
  all the kinks by probably putting these changes in the next few SuSE
  alpha releases to see what shakes out in userspace that we need to go
  fix.
  
  It's not 2.6.19 material at all, so don't worry :)
 
 Please note, however, that by including such changes in -mm we make _other_
 things be not tested.
 
 For example, if I can't install a new kernel and use it on my system without
 replacing some other pieces of software, I just won't be using it, because I
 have no time for playing with udev, hal, powersaved, acpid, ...
 Then, if there are any bugs in it that would have shown up on my system,
 we won't know about them unless they show up on someone else's system,
 which may not happen.
 
 The more changes that break existing setups are there in -mm, the less
 people will acutally try to use -mm kernels and that will result in buggier
 -rc kernels and more bugs propagating to the stable ones.  Do we really
 want that to happen?

When it comes back, I will have updates for all versions of broken udev
packages so that it will not break older distros.  Then it will be able
to be tested.

thanks,

greg k-h
-
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html