]> git.karo-electronics.de Git - linux-beck.git/log
linux-beck.git
18 years ago[PATCH] powerpc/cell spidernet low watermark patch.
Linas Vepstas [Tue, 10 Oct 2006 21:11:33 +0000 (16:11 -0500)]
[PATCH] powerpc/cell spidernet low watermark patch.

Implement basic low-watermark support for the transmit queue.
Hardware low-watermarks allow a properly configured kernel
to continously stream data to a device and not have to handle
any interrupts at all in doing so. Correct zero-interrupt
operation can be actually observed for this driver, when the
socket buffer is made large enough.

The basic idea of a low-watermark interrupt is as follows.
The device driver queues up a bunch of packets for the hardware
to transmit, and then kicks the hardware to get it started.
As the hardware drains the queue of pending, untransmitted
packets, the device driver will want to know when the queue
is almost empty, so that it can queue some more packets.

If the queue drains down to the low waterark, then an interrupt
will be generated. However, if the kernel/driver continues
to add enough packets to keep the queue partially filled,
no interrupt will actually be generated, and the hardware
can continue streaming packets indefinitely in this mode.

The impelmentation is done by setting the DESCR_TXDESFLG flag
in one of the packets. When the hardware sees this flag, it will
interrupt the device driver. Because this flag is on a fixed
packet, rather than at  fixed location in the queue, the
code below needs to move the flag as more packets are
queued up. This implementation attempts to keep the flag
at about 1/4 from "empty".

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: James K Lewis <jklewis@us.ibm.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] powerpc/cell spidernet incorrect offset
Linas Vepstas [Tue, 10 Oct 2006 21:09:40 +0000 (16:09 -0500)]
[PATCH] powerpc/cell spidernet incorrect offset

Bugfix -- the rx chain is in memory after the tx chain --
the offset being used was wrong, resulting in memory corruption
when the size of the rx and tx rings weren't exactly the same.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: James K Lewis <jklewis@us.ibm.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] powerpc/cell spidernet stop error printing patch.
Linas Vepstas [Tue, 10 Oct 2006 21:08:42 +0000 (16:08 -0500)]
[PATCH] powerpc/cell spidernet stop error printing patch.

Turn off mis-interpretation of the queue-empty interrupt
status bit as an error.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: James K Lewis <jklewis@us.ibm.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] powerpc/cell spidernet fix error interrupt print
Linas Vepstas [Tue, 10 Oct 2006 21:06:53 +0000 (16:06 -0500)]
[PATCH] powerpc/cell spidernet fix error interrupt print

The print message associated with the descriptor chain end interrupt
prints a bogs value. Fix that.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: James K Lewis <jklewis@us.ibm.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] powerpc/cell spidernet bogus rx interrupt bit
Linas Vepstas [Tue, 10 Oct 2006 21:05:00 +0000 (16:05 -0500)]
[PATCH] powerpc/cell spidernet bogus rx interrupt bit

The current receive interrupt mask sets a bogus bit that doesn't even
belong to the definition of this register. Remove it.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: James K Lewis <jklewis@us.ibm.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] Spidernet stop queue when queue is full.
Linas Vepstas [Tue, 10 Oct 2006 21:04:00 +0000 (16:04 -0500)]
[PATCH] Spidernet stop queue when queue is full.

This patch adds a call to netif_stop_queue() when there is
no more room for more packets on the transmit queue.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: James K Lewis <jklewis@us.ibm.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] Spidernet fix register field definitions
Linas Vepstas [Tue, 10 Oct 2006 21:02:54 +0000 (16:02 -0500)]
[PATCH] Spidernet fix register field definitions

This patch fixes the names of a few fields in the DMA control
register. There is no functional change.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: James K Lewis <jklewis@us.ibm.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] powerpc/cell spidernet add missing netdev watchdog
Linas Vepstas [Tue, 10 Oct 2006 21:01:51 +0000 (16:01 -0500)]
[PATCH] powerpc/cell spidernet add missing netdev watchdog

Set the netdev watchdog timer.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: James K Lewis <jklewis@us.ibm.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] powerpc/cell spidernet zlen min packet length
Linas Vepstas [Tue, 10 Oct 2006 21:01:00 +0000 (16:01 -0500)]
[PATCH] powerpc/cell spidernet zlen min packet length

Polite device drivers pad short packets to 60 bytes,
so that mean-spirited users don't accidentally DOS
some other OS that can't handle short packets.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: James K Lewis <jklewis@us.ibm.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] powerpc/cell spidernet force-end fix
Linas Vepstas [Tue, 10 Oct 2006 21:00:04 +0000 (16:00 -0500)]
[PATCH] powerpc/cell spidernet force-end fix

Bugfix: when cleaning up the transmit queue upon device close,
be sure to walk the entire queue.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: James K Lewis <jklewis@us.ibm.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] Spidernet module parm permissions
Linas Vepstas [Tue, 10 Oct 2006 20:59:02 +0000 (15:59 -0500)]
[PATCH] Spidernet module parm permissions

The module param permsissions should bw read-only, not writable.

From: James K Lewis <jklewis@us.ibm.com>
Signed-off-by: James K Lewis <jklewis@us.ibm.com>
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] powerpc/cell spidernet burst alignment patch.
Linas Vepstas [Tue, 10 Oct 2006 20:57:26 +0000 (15:57 -0500)]
[PATCH] powerpc/cell spidernet burst alignment patch.

This patch increases the Burst Address alignment from 64 to 1024 in the
Spidernet driver. This improves transmit performance for large packets.

From: James K Lewis <jklewis@us.ibm.com>
Signed-off-by: James K Lewis <jklewis@us.ibm.com>
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] powerpc/cell spidernet ethtool -i version number info.
Linas Vepstas [Tue, 10 Oct 2006 20:56:04 +0000 (15:56 -0500)]
[PATCH] powerpc/cell spidernet ethtool -i version number info.

This patch adds version information as reported by
ethtool -i to the Spidernet driver.

From: James K Lewis <jklewis@us.ibm.com>
Signed-off-by: James K Lewis <jklewis@us.ibm.com>
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] ehea: fix port state notification, default queue sizes
Jan-Bernd Themann [Thu, 5 Oct 2006 14:53:14 +0000 (16:53 +0200)]
[PATCH] ehea: fix port state notification, default queue sizes

This patch includes a bug fix for the port state notification
and fixes the default queue sizes.

Signed-off-by: Jan-Bernd Themann <themann@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] ehea: firmware (hvcall) interface changes
Jan-Bernd Themann [Thu, 5 Oct 2006 14:53:12 +0000 (16:53 +0200)]
[PATCH] ehea: firmware (hvcall) interface changes

This eHEA patch covers required changes related to Anton Blanchard's new hvcall interface.

Signed-off-by: Jan-Bernd Themann <themann@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] ibmveth irq fix
Andrew Morton [Tue, 10 Oct 2006 21:33:30 +0000 (14:33 -0700)]
[PATCH] ibmveth irq fix

drivers/net/ibmveth.c:939: error: too many arguments to function `ibmveth_interrupt'

Cc: Jeff Garzik <jeff@garzik.org>
Cc: Anton Blanchard <anton@samba.org>
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] b44: fix eeprom endianess issue
Michael Buesch [Tue, 10 Oct 2006 21:33:26 +0000 (14:33 -0700)]
[PATCH] b44: fix eeprom endianess issue

This fixes eeprom read on big-endian architectures.

readw returns the data in CPU order.  With cpu_to_le16 we convert it to little
endian, because "ptr" is a pointer to a _byte_ arrray.  See the cast above.  A
byte array is little endian.

The bug is:

Reading u16 values with readw, casting them into an u8 array and accessing
this u8 array as an u8 (byte) array.  The correct fix is to swap the
CPU-ordering value returned by readw into little endian, as the u8 array is
little endian.

This compiles to nothing on little endian hardware (so it does not change b44
code on LE hardware), but _fixes_ code on BE hardware.

Signed-off-by: Michael Buesch <mb@bu3sch.de>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] Update smc91x driver with ARM Versatile board info
Deepak Saxena [Tue, 10 Oct 2006 21:33:22 +0000 (14:33 -0700)]
[PATCH] Update smc91x driver with ARM Versatile board info

We need to specify a Versatile-specific SMC_IRQ_FLAGS value or the new
generic IRQ layer will complain thusly:

No IRQF_TRIGGER set_type function for IRQ 25 (<NULL>)

Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
Cc: Jeff Garzik <jeff@garzik.org>
Cc: Russell King <rmk@arm.linux.org.uk>
Cc: Nicolas Pitre <nico@cam.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years agoMerge branch 'master' into upstream-fixes
Jeff Garzik [Wed, 11 Oct 2006 07:56:12 +0000 (03:56 -0400)]
Merge branch 'master' into upstream-fixes

18 years agoACPI: Allow setting SCI_EN bit in PM1_CONTROL register
Linus Torvalds [Wed, 11 Oct 2006 00:14:44 +0000 (17:14 -0700)]
ACPI: Allow setting SCI_EN bit in PM1_CONTROL register

This is needed by at least the Mac Mini's, which (incorrectly) come back
from suspend with SCI_EN clear.

Thanks to Frédéric Riss for hunting this down.

Acked-by: Frédéric Riss <frederic.riss@gmail.com>
Cc: Pavel Machek <pavel@ucw.cz>
Cc: Len Brown <len.brown@intel.com>
Cc: Arjan van de Ven <arjan@infradead.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] firmware/dcdbas: fix bug in error cleanup
Jeff Garzik [Tue, 10 Oct 2006 06:58:14 +0000 (02:58 -0400)]
[PATCH] firmware/dcdbas: fix bug in error cleanup

The error path path mistakenly called sysfs_create_group() rather than
sysfs_remove_group().  They take the same arguments, so it's easy to
cut-n-paste such a bug.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] irda: donauboe fixes, cleanups
Jeff Garzik [Tue, 10 Oct 2006 05:40:55 +0000 (01:40 -0400)]
[PATCH] irda: donauboe fixes, cleanups

- fix: toshoboe_invalid_dev() was recently removed, but not all callers
  were updated, causing the obvious linker error.  Remove caller,
  because the check (like the one removed) isn't used.

- fix: propagate request_irq() return value

- cleanup: remove void* casts

- cleanup: remove impossible ASSERTs

Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoMerge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
Linus Torvalds [Tue, 10 Oct 2006 23:16:33 +0000 (16:16 -0700)]
Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc

* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
  [POWERPC] Fix windfarm platform device usage
  [POWERPC] Fix i2c-powermac platform device usage
  [POWERPC] Fix secondary CPU startup on old "powersurge" SMP powermacs
  [POWERPC] ARCH=ppc pt_regs fixes
  [POWERPC] Update maple defconfig
  [POWERPC] Fix Maple secondary IDE interrupt
  [POWERPC] Make U4 PCIe work on maple
  [POWERPC] cell: fix default zImage build target
  [POWERPC] Fix boot wrapper invocation if CROSS_COMPILE contains spaces
  [POWERPC] Fix xmon IRQ handler for pt_regs removal

18 years ago[PATCH] endianness annotations in s2io
Al Viro [Sun, 13 Aug 2006 19:38:04 +0000 (15:38 -0400)]
[PATCH] endianness annotations in s2io

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ufs endianness annotations
Al Viro [Sun, 13 Aug 2006 05:54:30 +0000 (01:54 -0400)]
[PATCH] ufs endianness annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] fs/partitions endianness annotations
Al Viro [Sat, 24 Dec 2005 19:39:13 +0000 (14:39 -0500)]
[PATCH] fs/partitions endianness annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Finish annotations of struct vlan_ethhdr
Alexey Dobriyan [Wed, 28 Dec 2005 19:27:10 +0000 (22:27 +0300)]
[PATCH] Finish annotations of struct vlan_ethhdr

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] isofs endianness annotations
Al Viro [Sat, 24 Dec 2005 19:33:09 +0000 (14:33 -0500)]
[PATCH] isofs endianness annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] smbfs endianness annotations
Al Viro [Sat, 24 Dec 2005 19:32:38 +0000 (14:32 -0500)]
[PATCH] smbfs endianness annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] hpfs endianness annotations
Al Viro [Sat, 24 Dec 2005 19:31:53 +0000 (14:31 -0500)]
[PATCH] hpfs endianness annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] fs/fat endianness annotations
Al Viro [Sat, 24 Dec 2005 19:31:04 +0000 (14:31 -0500)]
[PATCH] fs/fat endianness annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] befs: endianness annotations
Al Viro [Sat, 24 Dec 2005 19:28:55 +0000 (14:28 -0500)]
[PATCH] befs: endianness annotations

split the data structures that exist in host- and disk-endian variants,
annotate the fields of disk-endian ones, propagate changes.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] befs: missing fs32_to_cpu() in debug.c
Al Viro [Sat, 24 Dec 2005 08:09:03 +0000 (03:09 -0500)]
[PATCH] befs: missing fs32_to_cpu() in debug.c

inode->mode is disk-endian

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] befs: introduce on-disk endian types
Al Viro [Sat, 24 Dec 2005 06:32:03 +0000 (01:32 -0500)]
[PATCH] befs: introduce on-disk endian types

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] befs: prepare to sanitizing headers
Al Viro [Sat, 24 Dec 2005 06:13:13 +0000 (01:13 -0500)]
[PATCH] befs: prepare to sanitizing headers

pulled includes of endian.h from fs/befs/*.c to befs.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] befs: remove bogus typedef
Al Viro [Sat, 24 Dec 2005 01:56:46 +0000 (20:56 -0500)]
[PATCH] befs: remove bogus typedef

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] chelsio: add endian annotations
Alexey Dobriyan [Thu, 22 Dec 2005 22:18:25 +0000 (01:18 +0300)]
[PATCH] chelsio: add endian annotations

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] serpent: fix endian warnings
Alexey Dobriyan [Thu, 22 Dec 2005 22:12:25 +0000 (01:12 +0300)]
[PATCH] serpent: fix endian warnings

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] cdrom: add endianness annotations
Alexey Dobriyan [Thu, 1 Dec 2005 22:10:40 +0000 (17:10 -0500)]
[PATCH] cdrom: add endianness annotations

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] use %p for pointers
Al Viro [Tue, 10 Oct 2006 21:49:57 +0000 (22:49 +0100)]
[PATCH] use %p for pointers

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] use %zu for size_t
Al Viro [Tue, 10 Oct 2006 21:49:47 +0000 (22:49 +0100)]
[PATCH] use %zu for size_t

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] missed const in prototype
Al Viro [Tue, 10 Oct 2006 21:49:37 +0000 (22:49 +0100)]
[PATCH] missed const in prototype

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] net/sunrpc/auth_gss/svcauth_gss.c endianness regression
Al Viro [Tue, 10 Oct 2006 21:49:27 +0000 (22:49 +0100)]
[PATCH] net/sunrpc/auth_gss/svcauth_gss.c endianness regression

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] strndup() would better take size_t, not int
Al Viro [Tue, 10 Oct 2006 21:49:17 +0000 (22:49 +0100)]
[PATCH] strndup() would better take size_t, not int

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ptrdiff_t is %t, not %z
Al Viro [Tue, 10 Oct 2006 21:49:07 +0000 (22:49 +0100)]
[PATCH] ptrdiff_t is %t, not %z

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] cpuset ANSI prototype
Al Viro [Tue, 10 Oct 2006 21:48:57 +0000 (22:48 +0100)]
[PATCH] cpuset ANSI prototype

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] fs/inode.c NULL noise removal
Al Viro [Tue, 10 Oct 2006 21:48:47 +0000 (22:48 +0100)]
[PATCH] fs/inode.c NULL noise removal

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] em28xx NULL noise removal
Al Viro [Tue, 10 Oct 2006 21:48:37 +0000 (22:48 +0100)]
[PATCH] em28xx NULL noise removal

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] __user annotations: loop.c
Al Viro [Tue, 10 Oct 2006 21:48:27 +0000 (22:48 +0100)]
[PATCH] __user annotations: loop.c

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] openprom NULL noise removal
Al Viro [Tue, 10 Oct 2006 21:48:17 +0000 (22:48 +0100)]
[PATCH] openprom NULL noise removal

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] trivial iomem annotations: sata_promise
Al Viro [Tue, 10 Oct 2006 21:48:07 +0000 (22:48 +0100)]
[PATCH] trivial iomem annotations: sata_promise

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] gfp annotations: radix_tree_root
Al Viro [Tue, 10 Oct 2006 21:47:57 +0000 (22:47 +0100)]
[PATCH] gfp annotations: radix_tree_root

struct radix_tree_root has unused upper bits of ->gfp_mask reused for
tags bitmap.  Annotated.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] gfp annotations: scsi_error
Al Viro [Tue, 10 Oct 2006 21:47:47 +0000 (22:47 +0100)]
[PATCH] gfp annotations: scsi_error

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ptrace32 trivial __user annotations
Al Viro [Tue, 10 Oct 2006 21:47:37 +0000 (22:47 +0100)]
[PATCH] ptrace32 trivial __user annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] trivial iomem annotations: istallion
Al Viro [Tue, 10 Oct 2006 21:47:27 +0000 (22:47 +0100)]
[PATCH] trivial iomem annotations: istallion

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] acpi NULL noise removal
Al Viro [Tue, 10 Oct 2006 21:47:17 +0000 (22:47 +0100)]
[PATCH] acpi NULL noise removal

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] passing pointer to setup_timer() should be via unsigned long
Al Viro [Tue, 10 Oct 2006 21:47:07 +0000 (22:47 +0100)]
[PATCH] passing pointer to setup_timer() should be via unsigned long

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] make kernel/relay.c __user-clean
Al Viro [Tue, 10 Oct 2006 21:46:57 +0000 (22:46 +0100)]
[PATCH] make kernel/relay.c __user-clean

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] fix misannotation in ioc4.h
Al Viro [Tue, 10 Oct 2006 21:46:47 +0000 (22:46 +0100)]
[PATCH] fix misannotation in ioc4.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] mtd: remove several bogus casts to void * in iounmap() argument
Al Viro [Tue, 10 Oct 2006 21:46:37 +0000 (22:46 +0100)]
[PATCH] mtd: remove several bogus casts to void * in iounmap() argument

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ia64/sn __iomem annotations
Al Viro [Tue, 10 Oct 2006 21:46:27 +0000 (22:46 +0100)]
[PATCH] ia64/sn __iomem annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ia64/hp NULL noise removal
Al Viro [Tue, 10 Oct 2006 21:46:17 +0000 (22:46 +0100)]
[PATCH] ia64/hp NULL noise removal

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] __user annotations: futex
Al Viro [Tue, 10 Oct 2006 21:46:07 +0000 (22:46 +0100)]
[PATCH] __user annotations: futex

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] tipc __user annotations
Al Viro [Tue, 10 Oct 2006 21:45:57 +0000 (22:45 +0100)]
[PATCH] tipc __user annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] drivers/dma trivial annotations
Al Viro [Tue, 10 Oct 2006 21:45:47 +0000 (22:45 +0100)]
[PATCH] drivers/dma trivial annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] devio __user annotations
Al Viro [Tue, 10 Oct 2006 21:45:37 +0000 (22:45 +0100)]
[PATCH] devio __user annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] hwdep_compat missed __user annotations
Al Viro [Tue, 10 Oct 2006 21:45:27 +0000 (22:45 +0100)]
[PATCH] hwdep_compat missed __user annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] misc sata __iomem annotations
Al Viro [Tue, 10 Oct 2006 21:45:17 +0000 (22:45 +0100)]
[PATCH] misc sata __iomem annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] fix misannotations in loop.c
Al Viro [Tue, 10 Oct 2006 21:45:07 +0000 (22:45 +0100)]
[PATCH] fix misannotations in loop.c

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] NULL noise removal: advansys
Al Viro [Tue, 10 Oct 2006 21:44:57 +0000 (22:44 +0100)]
[PATCH] NULL noise removal: advansys

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] __iomem annotations in sunzilog
Al Viro [Tue, 10 Oct 2006 21:44:47 +0000 (22:44 +0100)]
[PATCH] __iomem annotations in sunzilog

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] dccp __user annotations
Al Viro [Tue, 10 Oct 2006 21:44:37 +0000 (22:44 +0100)]
[PATCH] dccp __user annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] drivers/s390 misc sparse annotations
Al Viro [Tue, 10 Oct 2006 21:44:27 +0000 (22:44 +0100)]
[PATCH] drivers/s390 misc sparse annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] more fs/compat.c __user annotations
Al Viro [Tue, 10 Oct 2006 21:44:17 +0000 (22:44 +0100)]
[PATCH] more fs/compat.c __user annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] advansys __iomem annotations
Al Viro [Tue, 10 Oct 2006 21:44:07 +0000 (22:44 +0100)]
[PATCH] advansys __iomem annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoIB/mthca: Fix off-by-one in mthca SRQ creation
Michael S. Tsirkin [Mon, 9 Oct 2006 16:06:32 +0000 (18:06 +0200)]
IB/mthca: Fix off-by-one in mthca SRQ creation

All HCAs (not just mem-free) need a spare SRQ entry, so bump srq->max
by 1 in all cases.

Noted by Jack Morgenstein <jackm@mellanox.co.il>

Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoIPoIB: Check for DMA mapping error for TX packets
Roland Dreier [Tue, 10 Oct 2006 19:50:38 +0000 (12:50 -0700)]
IPoIB: Check for DMA mapping error for TX packets

Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoRDMA/amso1100: Fix build with debugging off
Roland Dreier [Tue, 10 Oct 2006 19:50:38 +0000 (12:50 -0700)]
RDMA/amso1100: Fix build with debugging off

Since pr_debug() has changed from a macro to an inline function when
DEBUG is not defined, its arguments now need to be defined even when
debugging is off.  Therefore to_event_str() and to_qp_state_str() need
to be moved out of #ifdef DEBUG.  The compiler will throw the
definitions away if DEBUG is not defined, but it needs to be able to
see that the functions exist.

Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoIB/cm: Send DREP in response to unmatched DREQ
Sean Hefty [Wed, 4 Oct 2006 18:37:25 +0000 (11:37 -0700)]
IB/cm: Send DREP in response to unmatched DREQ

Currently a DREP is only sent in response to a DREQ if a connection
has been found matching the DREQ, and it is in the proper state.  Once
a DREP is sent, the local connection moves into timewait.  Duplicate
DREQs received while in this state result in re-sending the DREP.

However, it's likely that the local connection will enter and exit
timewait before the remote side times out a lost DREP and resends a DREQ.
To handle this, we send a DREP in response to a DREQ, even if a local
connection is not found.  This avoids maintaining disconnected
id's in timewait states for excessively long times, just to handle a
lost DREP.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoIB/cm: Fix timewait crash after module unload
Sean Hefty [Wed, 4 Oct 2006 18:29:59 +0000 (11:29 -0700)]
IB/cm: Fix timewait crash after module unload

If the ib_cm module is unloaded while id's are still in timewait, the
CM will destroy the work queue used to process timewait.  Once the
id's exit timewait, their timers will fire, leading to a crash trying
to access the destroyed work queue.

We need to track id's that are in timewait, and cancel their deferred
work on module unload.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoIB/mthca: Query port fix
Jack Morgenstein [Wed, 4 Oct 2006 11:56:34 +0000 (13:56 +0200)]
IB/mthca: Query port fix

Fill in "max_vl_num" (encoded according to VLCap field in the PortInfo MAD)
and "init_type_reply" values in the ib_query_port() verb.

Signed-off-by: Jack Morgenstein <jackm@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoIB/srp: Enable multiple connections to the same target
Ishai Rabinovitz [Wed, 4 Oct 2006 13:28:56 +0000 (15:28 +0200)]
IB/srp: Enable multiple connections to the same target

Enable multiple concurrent connections to the same SRP target:

1) Use port GUID instead of node GUID in the initiator port
   identifier.  This allows connections to be made from multiple HCA
   ports at the same time.
2) Let the user specify the identifier extention when adding the
   device.  This allows userspace to make multiple connections even
   from the same port, if it wants too.

Without this, only one connection can be made from any given HCA, even
if it has multiple ports, because we don't use multi-channel mode, so
targets will only allow one connection from a given initiator port ID.

Signed-off-by: Ishai Rabinovitz <ishai@mellanox.co.il>
Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoIB/srp: Remove redundant memset()
Ishai Rabinovitz [Tue, 10 Oct 2006 16:51:14 +0000 (09:51 -0700)]
IB/srp: Remove redundant memset()

scsi_host_alloc() already allocates with kzalloc(), so the struct Scsi_Host
is zeroed out, including the private data portion.  Remove the redundant
memset that zeros this out again in the SRP initiator.

Signed-off-by: Ishai Rabinovitz <ishai@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoRDMA/amso1100: Add spinlocks to serialize ib_post_send/ib_post_recv
Tom Tucker [Tue, 3 Oct 2006 14:46:41 +0000 (09:46 -0500)]
RDMA/amso1100: Add spinlocks to serialize ib_post_send/ib_post_recv

The AMSO driver was not thread-safe in the post WR code and had
code that would sleep if the WR post FIFO was full. Since these
functions can be called on interrupt level I changed the sleep to a
udelay.

Signed-off-by: Tom Tucker <tom@opengridcomputing.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years ago[POWERPC] Fix windfarm platform device usage
Benjamin Herrenschmidt [Tue, 10 Oct 2006 01:47:31 +0000 (11:47 +1000)]
[POWERPC] Fix windfarm platform device usage

The windfarm code uses a struct device_driver instead of
platform_driver, which can cause crashes if any of the callbacks are
called (like on module removal). This fixes it.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Fix i2c-powermac platform device usage
Benjamin Herrenschmidt [Tue, 10 Oct 2006 01:45:45 +0000 (11:45 +1000)]
[POWERPC] Fix i2c-powermac platform device usage

i2c-powermac was written & merged right after Russell King's changes
adding platform_driver... which I missed. Thus it still used struct
device, causing crashes when hitting sleep/wakeup callbacks (it happened
to work by luck so far, until early/late callbacks got added). This
causes crashes on sleep/wakeup on PowerBooks with 2.6.19. The patch
fixes it by using a proper platform_driver.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Fix secondary CPU startup on old "powersurge" SMP powermacs
Paul Mackerras [Tue, 10 Oct 2006 03:51:00 +0000 (13:51 +1000)]
[POWERPC] Fix secondary CPU startup on old "powersurge" SMP powermacs

On the old "powersurge" SMP powermacs, the second CPU is started up
by sending it an IPI, which has the side effect of stopping the
timebase clock (so the secondary CPU's timebase can be synchronized
with the primary's).  The routine that did this used udelay, which
will hang forever when the timebase is stopped, since udelay now spins
until the timebase reaches a certain value.

The end result is that the kernel would hang when bringing up the
second CPU.  This fixes it by using a simple loop which just does a
fixed number of iterations to generate the delay.  These old systems
were all clocked at around 200 MHz or so, so a fixed number of
iterations is acceptable.

Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] mm: bug in set_page_dirty_buffers
Nick Piggin [Tue, 10 Oct 2006 02:36:54 +0000 (04:36 +0200)]
[PATCH] mm: bug in set_page_dirty_buffers

This was triggered, but not the fault of, the dirty page accounting
patches. Suitable for -stable as well, after it goes upstream.

  Unable to handle kernel NULL pointer dereference at virtual address 0000004c
  EIP is at _spin_lock+0x12/0x66
  Call Trace:
   [<401766e7>] __set_page_dirty_buffers+0x15/0xc0
   [<401401e7>] set_page_dirty+0x2c/0x51
   [<40140db2>] set_page_dirty_balance+0xb/0x3b
   [<40145d29>] __do_fault+0x1d8/0x279
   [<40147059>] __handle_mm_fault+0x125/0x951
   [<401133f1>] do_page_fault+0x440/0x59f
   [<4034d0c1>] error_code+0x39/0x40
   [<08048a33>] 0x8048a33

Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Tue, 10 Oct 2006 02:35:20 +0000 (19:35 -0700)]
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SPARC32]: Fix prom.c build warning
  [SPARC64]: Update defconfig.
  [SPARC64]: Fix of_device bus_id settings.
  [SPARC64]: Update MAINTAINERS entry.

18 years ago[POWERPC] ARCH=ppc pt_regs fixes
Al Viro [Mon, 9 Oct 2006 11:48:42 +0000 (12:48 +0100)]
[POWERPC] ARCH=ppc pt_regs fixes

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davej/configh
Linus Torvalds [Tue, 10 Oct 2006 01:55:00 +0000 (18:55 -0700)]
Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/configh

* master.kernel.org:/pub/scm/linux/kernel/git/davej/configh:
  [HEADERS] Put linux/config.h out of its misery.

18 years ago[POWERPC] Update maple defconfig
Benjamin Herrenschmidt [Mon, 9 Oct 2006 03:28:59 +0000 (13:28 +1000)]
[POWERPC] Update maple defconfig

This updates the Maple defconfig to 4 CPUs (along with current defaults)
to support the "tigerwood" 970MP evaluation board.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Fix Maple secondary IDE interrupt
Benjamin Herrenschmidt [Mon, 9 Oct 2006 03:27:28 +0000 (13:27 +1000)]
[POWERPC] Fix Maple secondary IDE interrupt

The IDE driver will pick up the PCI IRQ for both channels on Maple
despite the fact that it's in legacy mode. This works around it by
"hiding" the PCI IRQ of the AMD8111 IDE controller when it's configured
in legacy mode on the Maple platform, thus causing the driver to call
pci_get_legacy_ide_irq() which will return the correct interrupts for
both channels.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Make U4 PCIe work on maple
Benjamin Herrenschmidt [Mon, 9 Oct 2006 03:25:15 +0000 (13:25 +1000)]
[POWERPC] Make U4 PCIe work on maple

The Maple support code was missing code for U4/CPC945 PCIe. This adds
it, enabling it to work on tigerwood boards, and possibly also js21
using SLOF. Also disable an obsolete firmware workaround.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] cell: fix default zImage build target
Geoff Levand [Sat, 7 Oct 2006 22:33:53 +0000 (15:33 -0700)]
[POWERPC] cell: fix default zImage build target

Change CONFIG_PPC_CELL to CONFIG_PPC_IBM_CELL_BLADE in the powerpc boot
makefile.

CONFIG_PPC_CELL is used to build the generic cell processor support, and
is not an indication of platform.

Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Fix boot wrapper invocation if CROSS_COMPILE contains spaces
Michael Ellerman [Sat, 30 Sep 2006 01:54:09 +0000 (11:54 +1000)]
[POWERPC] Fix boot wrapper invocation if CROSS_COMPILE contains spaces

My CROSS_COMPILE is "ccache /opt/compilers/blah", which confuses
the boot wrapper script. Quote CROSS_COMPILE and CROSS32_COMPILE
so they can safely contain spaces.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[POWERPC] Fix xmon IRQ handler for pt_regs removal
Paul Mackerras [Tue, 10 Oct 2006 01:47:07 +0000 (11:47 +1000)]
[POWERPC] Fix xmon IRQ handler for pt_regs removal

Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[SPARC32]: Fix prom.c build warning
Martin Habets [Tue, 10 Oct 2006 01:10:16 +0000 (18:10 -0700)]
[SPARC32]: Fix prom.c build warning

Fix these 2.6.19-rc1 build warnings:

  CC      arch/sparc/kernel/prom.o
arch/sparc/kernel/prom.c: In function `of_set_property':
arch/sparc/kernel/prom.c:246: warning: passing arg 2 of `prom_setprop' discards qualifiers from pointer target type
arch/sparc/kernel/prom.c: In function `build_one_prop':
arch/sparc/kernel/prom.c:446: warning: unused variable `len'
arch/sparc/kernel/prom.c:480: warning: ignoring return value of `prom_getproperty', declared with attribute warn_unused_result

Signed-off-by: Martin Habets <errandir_news@mph.eclipse.co.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC64]: Update defconfig.
David S. Miller [Thu, 5 Oct 2006 09:08:59 +0000 (02:08 -0700)]
[SPARC64]: Update defconfig.

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC64]: Fix of_device bus_id settings.
David S. Miller [Thu, 5 Oct 2006 09:07:32 +0000 (02:07 -0700)]
[SPARC64]: Fix of_device bus_id settings.

They have to be unique system-wide, so use
"NAME@NODE" as the string pattern of the non-root
nodes.

Thanks to Andrew Morton for fixing the error value
checking in bus_add_device() which made this problem
finally noticable.

Signed-off-by: David S. Miller <davem@davemloft.net>