]> err.no Git - linux-2.6/log
linux-2.6
17 years ago[PATCH] md: restart a (raid5) reshape that has been aborted due to a read/write error
NeilBrown [Thu, 1 Mar 2007 04:11:48 +0000 (20:11 -0800)]
[PATCH] md: restart a (raid5) reshape that has been aborted due to a read/write error

An error always aborts any resync/recovery/reshape on the understanding that
it will immediately be restarted if that still makes sense.  However a reshape
currently doesn't get restarted.  With this patch it does.

To avoid restarting when it is not possible to do work, we call into the
personality to check that a reshape is ok, and strengthen raid5_check_reshape
to fail if there are too many failed devices.

We also break some code out into a separate function: remove_and_add_spares as
the indent level for that code was getting crazy.

Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] md: clean out unplug and other queue function on md shutdown
NeilBrown [Thu, 1 Mar 2007 04:11:42 +0000 (20:11 -0800)]
[PATCH] md: clean out unplug and other queue function on md shutdown

The mddev and queue might be used for another array which does not set these,
so they need to be cleared.

Signed-off-by: NeilBrown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] md: move warning about creating a raid array on partitions of the one device
NeilBrown [Thu, 1 Mar 2007 04:11:35 +0000 (20:11 -0800)]
[PATCH] md: move warning about creating a raid array on partitions of the one device

md tries to warn the user if they e.g.  create a raid1 using two partitions of
the same device, as this does not provide true redundancy.

However it also warns if a raid0 is created like this, and there is nothing
wrong with that.

At the place where the warning is currently printer, we don't necessarily know
what level the array will be, so move the warning from the point where the
device is added to the point where the array is started.

Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] md: RAID6: clean up CPUID and FPU enter/exit code
H. Peter Anvin [Thu, 1 Mar 2007 04:11:25 +0000 (20:11 -0800)]
[PATCH] md: RAID6: clean up CPUID and FPU enter/exit code

- Use kernel_fpu_begin() and kernel_fpu_end()
- Use boot_cpu_has() for feature testing even in userspace

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] md: fix raid10 recovery problem.
NeilBrown [Thu, 1 Mar 2007 04:11:18 +0000 (20:11 -0800)]
[PATCH] md: fix raid10 recovery problem.

There are two errors that can lead to recovery problems with raid10
when used in 'far' more (not the default).

Due to a '>' instead of '>=' the wrong block is located which would result in
garbage being written to some random location, quite possible outside the
range of the device, causing the newly reconstructed device to fail.

The device size calculation had some rounding errors (it didn't round when it
should) and so recovery would go a few blocks too far which would again cause
a write to a random block address and probably a device error.

The code for working with device sizes was fairly confused and spread out, so
this has been tided up a bit.

Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] Fix failure paths in modules init in umem.c
NeilBrown [Thu, 1 Mar 2007 04:11:12 +0000 (20:11 -0800)]
[PATCH] Fix failure paths in modules init in umem.c

If register_blkdev() or alloc-disk fail in mm_init() after
pci_register_driver() succeeds, then mm_pci_driver is not unregistered
properly:

Cc: Philip Guo <pg@cs.stanford.edu>
Signed-off-by: Neil Brown <neilb@suse.de>
Cc: Jens Axboe <jens.axboe@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] drivers/video/sm501fb.c: make 4 functions static
Adrian Bunk [Thu, 1 Mar 2007 04:11:06 +0000 (20:11 -0800)]
[PATCH] drivers/video/sm501fb.c: make 4 functions static

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Cc: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] mm/{,tiny-}shmem.c cleanups
Adrian Bunk [Thu, 1 Mar 2007 04:11:03 +0000 (20:11 -0800)]
[PATCH] mm/{,tiny-}shmem.c cleanups

shmem_{nopage,mmap} are no longer used in ipc/shm.c

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] make ipc/shm.c:shm_nopage() static
Adrian Bunk [Thu, 1 Mar 2007 04:11:01 +0000 (20:11 -0800)]
[PATCH] make ipc/shm.c:shm_nopage() static

shm_nopage() can become static.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Acked-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] arch/arm26/kernel/entry.S: remove dead code
Adrian Bunk [Thu, 1 Mar 2007 04:10:58 +0000 (20:10 -0800)]
[PATCH] arch/arm26/kernel/entry.S: remove dead code

CONFIG_ALIGNMENT_TRAP is never set on arm26.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Acked-by: Ian Molton <spyro@f2s.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoV4L/DVB (5305): Mark VIDIOC_DBG_S/G_REGISTER as experimental
Hans Verkuil [Sat, 24 Feb 2007 00:16:01 +0000 (21:16 -0300)]
V4L/DVB (5305): Mark VIDIOC_DBG_S/G_REGISTER as experimental

Move VIDIOC_DBG_S/G_REGISTER from the internal ioctl list to the
public ioctls, but mark it as experimental for now.

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5271): Add VIDIOC_TRY_ENCODER_CMD and VIDIOC_ENCODER_CMD ioctls.
Hans Verkuil [Sun, 18 Feb 2007 17:56:22 +0000 (14:56 -0300)]
V4L/DVB (5271): Add VIDIOC_TRY_ENCODER_CMD and VIDIOC_ENCODER_CMD ioctls.

Add support for starting, stopping, pausing and resuming an MPEG (or similar
compressed stream) encoder.

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5270): Add VIDIOC_G_ENC_INDEX ioctl
Hans Verkuil [Sun, 18 Feb 2007 17:05:02 +0000 (14:05 -0300)]
V4L/DVB (5270): Add VIDIOC_G_ENC_INDEX ioctl

The VIDIOC_G_ENC_INDEX ioctl can obtain the MPEG index from an MPEG
encoder.

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5276): Cxusb: fix firmware patch for big endian systems
Jin-Bong lee [Wed, 21 Feb 2007 02:10:34 +0000 (23:10 -0300)]
V4L/DVB (5276): Cxusb: fix firmware patch for big endian systems

Without this patch, the device will not be detected after firmware download
on big endian systems.

Signed-off-by: Jin-Bong lee <jinbong.lee@samsung.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5258): Cafe_ccic: fix compiler warning
Jean Delvare [Tue, 13 Feb 2007 22:31:45 +0000 (19:31 -0300)]
V4L/DVB (5258): Cafe_ccic: fix compiler warning

Fix the following warning:
drivers/media/video/cafe_ccic.c: In function `cafe_vidioc_reqbufs':
drivers/media/video/cafe_ccic.c:1197: warning: 'ret' might be used uninitialized in this function
Probably not a real bug, but the warning can be avoided easily.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5295): Digitv: open nxt6000 i2c_gate for TDED4 tuner handling
Michael Krufky [Thu, 22 Feb 2007 00:47:15 +0000 (21:47 -0300)]
V4L/DVB (5295): Digitv: open nxt6000 i2c_gate for TDED4 tuner handling

dvb-pll normally opens the i2c gate before attempting to communicate with
the pll, but the code for this device is not using dvb-pll.  This should
be cleaned up in the future, but for now, just open the i2c gate at the
appropriate place in order to fix this driver bug.

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5304): Improve chip matching in v4l2_register
Hans Verkuil [Fri, 23 Feb 2007 23:55:14 +0000 (20:55 -0300)]
V4L/DVB (5304): Improve chip matching in v4l2_register

The chip matching in struct v4l2_register for VIDIOC_DBG_G/S_REGISTER
was rather primitive. It could not be extended to other busses besides
i2c and it lacked a way to.

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5255): Fix cx25840 firmware loading.
Hans Verkuil [Thu, 15 Feb 2007 06:40:34 +0000 (03:40 -0300)]
V4L/DVB (5255): Fix cx25840 firmware loading.

Due to changes in the i2c handling in 2.6.20 this cx25840 bug surfaced,
causing the firmware load to fail for the ivtv driver. The correct
sequence is to first attach the i2c client, then use the client's
device to load the firmware.
Acked-by: Mike Isely <isely@pobox.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoHID: fix Logitech DiNovo Edge touchwheel and Logic3 /SpectraVideo middle button
Jiri Kosina [Thu, 1 Mar 2007 08:54:44 +0000 (09:54 +0100)]
HID: fix Logitech DiNovo Edge touchwheel and Logic3 /SpectraVideo middle button

Dongle shipped with Logitech DiNovo Edge (0x046d/0xc714) behaves in a weird
non-standard way - it contains multiple reports with the same usage, which
results in remapping of GenericDesktop.X and GenericDesktop.Y usages to
GenericDesktop.Z and GenericDesktop.RX respectively, thus rendering the
touchwheel unusable.

The commit 35068976916fdef82d6e69ef1f8c9a1c47732759 solved this
in a way that it didn't remap certain usages. This however breaks
(at least) middle button of Logic3 / SpectraVideo (0x1267/0x0210),
which in contrary requires the remapping.

To make both of the harware work, allow remapping of these usages again,
and introduce a quirk for Logitech DiNovo Edge "touchwheel" instead - we
disable remapping for key, abs and rel events only for this hardware.

Signed-off-by: Jiri Kosina <jkosina@suse.cz>
17 years agoHID: add git tree information to MAINTAINERS
Jiri Kosina [Tue, 27 Feb 2007 16:40:09 +0000 (17:40 +0100)]
HID: add git tree information to MAINTAINERS

Update MAITAINERS entry for HID and USB HID, adding
location of HID git tree.

Signed-off-by: Jiri Kosina <jkosina@suse.cz>
17 years agoHID: fix broken Logitech S510 keyboard report descriptor; make extra keys work
Jiri Kosina [Wed, 21 Feb 2007 18:27:49 +0000 (19:27 +0100)]
HID: fix broken Logitech S510 keyboard report descriptor; make extra keys work

This patch makes extra keys (F1-F12 in special mode, zooming, rotate, shuffle)
on Logitech S510 keyboard work.

Logitech S510 keyboard sends in report no. 3 keys which are far above the
logical maximum described in descriptor for given report.

This patch introduces a HID quirk for this wireless USB receiver/keyboard
in order to fix the report descriptor before it's being parsed - the logical
maximum and the number of usages is bumped up to 0x104d). The values are in the
"Reserved" area of consumer HUT, so HID_MAX_USAGE had to be changed too.

In addition to proper extracting of  the values from report descriptor, proper
HID-input mapping is introduced for them.

Signed-off-by: Jiri Kosina <jkosina@suse.cz>
17 years agoHID: fix possible double-free on error path in hid parser
Jiri Kosina [Wed, 21 Feb 2007 16:18:03 +0000 (17:18 +0100)]
HID: fix possible double-free on error path in hid parser

Freeing of device->collection is properly done in hid_free_device() (as
this function is supposed to free all the device resources and could be
called from transport specific code, e.g. usb_hid_configure()).

Remove all kfree() calls preceeding the hid_free_device() call.

Signed-off-by: Jiri Kosina <jkosina@suse.cz>
17 years agoHID: hid-debug.c should #include <linux/hid-debug.h>
Adrian Bunk [Wed, 21 Feb 2007 11:57:30 +0000 (12:57 +0100)]
HID: hid-debug.c should #include <linux/hid-debug.h>

Every file should include the headers containing the prototypes for
it's global functions.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
17 years agoHID: fix bug in zeroing the last field byte in output reports
Jiri Kosina [Tue, 20 Feb 2007 00:33:39 +0000 (01:33 +0100)]
HID: fix bug in zeroing the last field byte in output reports

d4ae650a904612ffb7edd3f28b69b022988d2466 introduced zeroing of the
last field byte in output reports in order to make sure the unused
bits are set to 0. This is done in a wrong way, resulting in a
wrong bits being zeroed out (not properly shifted by the field offset
in the report). Fix this.

Signed-off-by: Jiri Kosina <jkosina@suse.cz>
17 years agoUSB HID: use CONFIG_HID_DEBUG for outputting report descriptor
Jiri Kosina [Mon, 19 Feb 2007 13:15:59 +0000 (14:15 +0100)]
USB HID: use CONFIG_HID_DEBUG for outputting report descriptor

Report descriptor should be output when CONFIG_HID_DEBUG is defined.

This also mitigates the need for DEBUG and DEBUG_DATA defines, so let's
remove them.

Signed-off-by: Jiri Kosina <jkosina@suse.cz>
17 years agoUSB HID: Fix USB vendor and product IDs endianness for USB HID devices
Julien BLACHE [Sun, 11 Feb 2007 17:20:25 +0000 (18:20 +0100)]
USB HID: Fix USB vendor and product IDs endianness for USB HID devices

The USB vendor and product IDs are not byteswapped appropriately, and
thus come out in the wrong endianness when fetched through the evdev
using ioctl() on big endian platforms.

Signed-off-by: Julien BLACHE <jb@jblache.org>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
17 years ago[SPARC64]: Fix parport_pc build.
David S. Miller [Wed, 28 Feb 2007 21:09:34 +0000 (13:09 -0800)]
[SPARC64]: Fix parport_pc build.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[TCP]: Fix minisock tcp_create_openreq_child() typo.
Arnaldo Carvalho de Melo [Wed, 28 Feb 2007 19:05:56 +0000 (11:05 -0800)]
[TCP]: Fix minisock tcp_create_openreq_child() typo.

On 2/28/07, KOVACS Krisztian <hidden@balabit.hu> wrote:
>
>   Hi,
>
>   While reading TCP minisock code I've found this suspiciously looking
> code fragment:
>
> - 8< -
> struct sock *tcp_create_openreq_child(struct sock *sk, struct request_sock *req, struct sk_buff *skb)
> {
>         struct sock *newsk = inet_csk_clone(sk, req, GFP_ATOMIC);
>
>         if (newsk != NULL) {
>                 const struct inet_request_sock *ireq = inet_rsk(req);
>                 struct tcp_request_sock *treq = tcp_rsk(req);
>                 struct inet_connection_sock *newicsk = inet_csk(sk);
>                 struct tcp_sock *newtp;
> - 8< -
>
>   The above code initializes newicsk to inet_csk(sk), isn't that supposed
> to be inet_csk(newsk)?  As far as I can tell this might leave
> icsk_ack.last_seg_size zero even if we do have received data.

Good catch!

David, please apply the attached patch.

Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC64]: Update defconfig.
David S. Miller [Wed, 28 Feb 2007 17:51:15 +0000 (09:51 -0800)]
[SPARC64]: Update defconfig.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[TCP]: Document several sysctls.
John Heffner [Tue, 27 Feb 2007 18:03:56 +0000 (10:03 -0800)]
[TCP]: Document several sysctls.

This adds documentation for tcp_moderate_rcvbuf, tcp_no_metrics_save,
tcp_base_mss, and tcp_mtu_probing.

Signed-off-by: John Heffner <jheffner@psc.edu>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NET]: Fix kfree(skb)
Patrick McHardy [Tue, 27 Feb 2007 17:57:37 +0000 (09:57 -0800)]
[NET]: Fix kfree(skb)

Signed-off-by: Patrick McHardy <kaber@trash.net>
Acked-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NET]: Handle disabled preemption in gfp_any()
Patrick McHardy [Tue, 27 Feb 2007 17:56:42 +0000 (09:56 -0800)]
[NET]: Handle disabled preemption in gfp_any()

ctnetlink uses netlink_unicast from an atomic_notifier_chain
(which is called within a RCU read side critical section)
without holding further locks. netlink_unicast calls netlink_trim
with the result of gfp_any() for the gfp flags, which are passed
down to pskb_expand_header. gfp_any() only checks for softirq
context and returns GFP_KERNEL, resulting in this warning:

BUG: sleeping function called from invalid context at mm/slab.c:3032
in_atomic():1, irqs_disabled():0
no locks held by rmmod/7010.

Call Trace:
 [<ffffffff8109467f>] debug_show_held_locks+0x9/0xb
 [<ffffffff8100b0b4>] __might_sleep+0xd9/0xdb
 [<ffffffff810b5082>] __kmalloc+0x68/0x110
 [<ffffffff811ba8f2>] pskb_expand_head+0x4d/0x13b
 [<ffffffff81053147>] netlink_broadcast+0xa5/0x2e0
 [<ffffffff881cd1d7>] :nfnetlink:nfnetlink_send+0x83/0x8a
 [<ffffffff8834f6a6>] :nf_conntrack_netlink:ctnetlink_conntrack_event+0x94c/0x96a
 [<ffffffff810624d6>] notifier_call_chain+0x29/0x3e
 [<ffffffff8106251d>] atomic_notifier_call_chain+0x32/0x60
 [<ffffffff881d266d>] :nf_conntrack:destroy_conntrack+0xa5/0x1d3
 [<ffffffff881d194e>] :nf_conntrack:nf_ct_cleanup+0x8c/0x12c
 [<ffffffff881d4614>] :nf_conntrack:kill_l3proto+0x0/0x13
 [<ffffffff881d482a>] :nf_conntrack:nf_conntrack_l3proto_unregister+0x90/0x94
 [<ffffffff883551b3>] :nf_conntrack_ipv4:nf_conntrack_l3proto_ipv4_fini+0x2b/0x5d
 [<ffffffff8109d44f>] sys_delete_module+0x1b5/0x1e6
 [<ffffffff8105f245>] trace_hardirqs_on_thunk+0x35/0x37
 [<ffffffff8105911e>] system_call+0x7e/0x83

Since netlink_unicast is supposed to be callable from within RCU
read side critical sections, make gfp_any() check for in_atomic()
instead of in_softirq().

Additionally nfnetlink_send needs to use gfp_any() as well for the
call to netlink_broadcast).

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[BRIDGE]: Fix locking of set path cost.
Stephen Hemminger [Tue, 27 Feb 2007 17:55:07 +0000 (09:55 -0800)]
[BRIDGE]: Fix locking of set path cost.

This change goes with earlier change to get rid of
work queue for path cost. Now stp_set_path_cost does its own
locking. This is to allow it to call br_path_cost() which calls
ethtool interfaces (might sleep).

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPV6]: /proc/net/anycast6 unbalanced inet6_dev refcnt
David Stevens [Tue, 27 Feb 2007 00:28:56 +0000 (16:28 -0800)]
[IPV6]: /proc/net/anycast6 unbalanced inet6_dev refcnt

Reading /proc/net/anycast6 when there is no anycast address
on an interface results in an ever-increasing inet6_dev reference
count, as well as a reference to the netdevice you can't get rid of.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPX]: Remove ancient changelog
Rolf Eike Beer [Mon, 26 Feb 2007 23:48:03 +0000 (15:48 -0800)]
[IPX]: Remove ancient changelog

Signed-off-by: Rolf Eike Beer <eike-kernel@sf-tec.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPX]: Remove outdated information from Kconfig
Rolf Eike Beer [Mon, 26 Feb 2007 23:47:16 +0000 (15:47 -0800)]
[IPX]: Remove outdated information from Kconfig

SPX was removed in early 2.5. How to connect to a Mac or the other OS isn't
hard to find out these days.

Signed-off-by: Rolf Eike Beer <eike-kernel@sf-tec.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NET]: Revert socket.h/stat.h ifdef hacks.
David S. Miller [Mon, 26 Feb 2007 23:45:15 +0000 (15:45 -0800)]
[NET]: Revert socket.h/stat.h ifdef hacks.

This reverts 57a87bb0720a5cf7a9ece49a8c8ed288398fd1bb.

As H. Peter Anvin states, this change broke klibc and it's
not very easy to fix things up without duplicating everything
into userspace.

In the longer term we should have a better solution to this
problem, but for now let's unbreak things.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPV6]: anycast refcnt fix
Michal Wrobel [Mon, 26 Feb 2007 23:36:10 +0000 (15:36 -0800)]
[IPV6]: anycast refcnt fix

This patch fixes a bug in Linux IPv6 stack which caused anycast address
to be added to a device prior DAD has been completed. This led to
incorrect reference count which resulted in infinite wait for
unregister_netdevice completion on interface removal.

Signed-off-by: Michal Wrobel <xmxwx@asn.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[XFRM] xfrm_user: Fix return values of xfrm_add_sa_expire.
David S. Miller [Mon, 26 Feb 2007 22:52:21 +0000 (14:52 -0800)]
[XFRM] xfrm_user: Fix return values of xfrm_add_sa_expire.

As noted by Kent Yoder, this function will always return an
error.  Make sure it returns zero on success.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[PATCH] x86_64/i386 irq: Fix !CONFIG_SMP compilation
Eric W. Biederman [Tue, 27 Feb 2007 07:27:41 +0000 (00:27 -0700)]
[PATCH] x86_64/i386 irq: Fix !CONFIG_SMP compilation

When removing set_native_irq I missed the fact that it was
called in a couple of places that were compiled even when
SMP support is disabled.  And since the irq_desc[].affinity
field only exists in SMP things broke.

Thanks to Simon Arlott <simon@arlott.org> for spotting this.

There are a couple of ways to fix this but the simplest one
is to just remove the assignments.  The affinity field is only
used to display a value to the user, and nothing on either i386
or x86_64 reads it or depends on it being any particlua value,
so skipping the assignment is safe.  The assignment that
is being removed is just for the initial affinity value before
the user explicitly sets it.  The irq_desc array initializes
this field to CPU_MASK_ALL so the field is initialized to
a reasonable value in the SMP case without being set.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoLinux 2.6.21-rc2 v2.6.21-rc2
Linus Torvalds [Wed, 28 Feb 2007 04:59:12 +0000 (20:59 -0800)]
Linux 2.6.21-rc2

Too many changes for comfort since -rc1.  Some missed merges, and some
just annoyingly big fixes since.  This is not how an -rc2 should look.
Need to really calm things down!

17 years ago[SPARC64]: Fix PCI interrupts on E450 et al.
David S. Miller [Mon, 26 Feb 2007 22:55:06 +0000 (14:55 -0800)]
[SPARC64]: Fix PCI interrupts on E450 et al.

When the PCI controller OBP node lacks an interrupt-map
and interrupt-map-mask property, we need to form the
INO by hand.  The PCI swizzle logic was not doing that
properly.

This was a regression added by the of_device code.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[PATCH] bcm43xx: fix for 4309
Stefano Brivio [Sat, 17 Feb 2007 17:24:44 +0000 (18:24 +0100)]
[PATCH] bcm43xx: fix for 4309

BCM4309 devices aren't working properly as A PHYs aren't supported
yet, but we probe 802.11a cores anyway. This fixes it, while still
allowing for A PHY code to be developed in the future.

Signed-off-by: Stefano Brivio <stefano.brivio@polimi.it>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart
Linus Torvalds [Tue, 27 Feb 2007 15:45:09 +0000 (07:45 -0800)]
Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart

* master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart:
  [AGPGART] fix compile errors

17 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Tue, 27 Feb 2007 15:39:04 +0000 (07:39 -0800)]
Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6

* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: (52 commits)
  netxen: do_rom_fast_write error handling
  natsemi: Fix detection of vanilla natsemi cards
  net: remove a collection of unneeded #undef REALLY_SLOW_IO stuff
  chelsio: Fix non-NAPI compile
  cxgb3 - Feed Rx free list with pages
  cxgb3 - Recovery from HW starvation of response queue entries.
  cxgb3 - Unmap offload packets when they are freed
  cxgb3 - FW version update
  cxgb3 - private ioctl cleanup
  cxgb3 - manage sysfs attributes per port
  S2IO: Restoring the mac address in s2io_reset
  S2IO: Avoid printing the Enhanced statistics for Xframe I card.
  S2IO: Making LED off during LINK_DOWN notification.
  S2IO: Added a loadable parameter to enable or disable vlan stripping in frame.
  S2IO: Optimized the delay to wait for command completion
  S2IO: Fixes for MSI and MSIX
  qla3xxx: Bumping driver version number
  qla3xxx: Kernic Panic on pSeries under stress conditions
  qla3xxx: bugfix tx reset after stress conditions.
  qla3xxx: Check return code from pci_map_single() in ql_release_to_lrg_buf_free_list(), ql_populate_free_queue(), ql_alloc_large_buffers(), and ql3xxx_send()
  ...

17 years agoMerge branch 'jffs-maint' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Tue, 27 Feb 2007 15:38:40 +0000 (07:38 -0800)]
Merge branch 'jffs-maint' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/misc-2.6

* 'jffs-maint' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/misc-2.6:
  remove the jffs MAINTAINERS entry

17 years agonetxen: do_rom_fast_write error handling
Stephen Hemminger [Mon, 26 Feb 2007 22:51:56 +0000 (14:51 -0800)]
netxen: do_rom_fast_write error handling

Compiler warning spots real error!

The function do_rom_fast_read called in do_rom_fast_write can fail
and leave data1 unset. This causes a compile warning.
The correct thing is to propagate the error out.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoremove the jffs MAINTAINERS entry
Adrian Bunk [Sun, 25 Feb 2007 00:08:47 +0000 (01:08 +0100)]
remove the jffs MAINTAINERS entry

This patch removes the MAINTAINERS entry for the removed jffs
filesystem.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agonatsemi: Fix detection of vanilla natsemi cards
Mark Brown [Sun, 25 Feb 2007 15:37:27 +0000 (15:37 +0000)]
natsemi: Fix detection of vanilla natsemi cards

Bob Tracy <rct@gherkin.frus.com> reported that the addition of support
for Aculab E1/T1 cPCI carrier cards broke detection of vanilla natsemi
cards.  This patch fixes that: the problem is that the driver-specific
ta in the PCI device table is an index into a second table and this
had not been updated for the vanilla cards.

This patch fixes the problem minimally.

Signed-Off-By: Mark Brown <broonie@sirena.org.uk>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agonet: remove a collection of unneeded #undef REALLY_SLOW_IO stuff
Alan [Tue, 20 Feb 2007 18:08:57 +0000 (18:08 +0000)]
net: remove a collection of unneeded #undef REALLY_SLOW_IO stuff

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agochelsio: Fix non-NAPI compile
Roland Dreier [Mon, 26 Feb 2007 22:58:49 +0000 (14:58 -0800)]
chelsio: Fix non-NAPI compile

Chelsio without NAPI enabled has been broken (won't compile) since
3de00b89 ("chelsio: NAPI speed improvement"):

    drivers/net/chelsio/sge.c: In function `t1_interrupt`:
    drivers/net/chelsio/sge.c:1716: error: `Q` undeclared (first use in this function)

The change below seems to add back in the declaration and
initialization of `Q` that was removed by mistake, and at least makes
the driver compile for me, although I have no hardware and hence no
way to test whether this actually works.

Signed-off-by: Roland Dreier <rolandd@cisco.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agocxgb3 - Feed Rx free list with pages
Divy Le Ray [Sun, 25 Feb 2007 00:44:17 +0000 (16:44 -0800)]
cxgb3 - Feed Rx free list with pages

Populate Rx free list with pages.

Signed-off-by: Divy Le Ray <divy@chelsio.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agocxgb3 - Recovery from HW starvation of response queue entries.
Divy Le Ray [Sun, 25 Feb 2007 00:44:12 +0000 (16:44 -0800)]
cxgb3 - Recovery from HW starvation of response queue entries.

Improve the traffic recovery after the HW ran out of response queue entries.

Signed-off-by: Divy Le Ray <divy@chelsio.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agocxgb3 - Unmap offload packets when they are freed
Divy Le Ray [Sun, 25 Feb 2007 00:44:06 +0000 (16:44 -0800)]
cxgb3 - Unmap offload packets when they are freed

Offload packets may be DMAed long after their SGE Tx descriptors are done
so they must remain mapped until they are freed rather than until their
descriptors are freed.  Unmap such packets through an skb destructor.

Signed-off-by: Divy Le Ray <divy@chelsio.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agocxgb3 - FW version update
Divy Le Ray [Mon, 26 Feb 2007 00:32:37 +0000 (16:32 -0800)]
cxgb3 - FW version update

Update FW version to 3.2

Signed-off-by: Divy Le Ray <divy@chelsio.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agocxgb3 - private ioctl cleanup
Divy Le Ray [Sun, 25 Feb 2007 00:43:56 +0000 (16:43 -0800)]
cxgb3 - private ioctl cleanup

Clean up some private ioctls.

Signed-off-by: Divy Le Ray <divy@chelsio.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agocxgb3 - manage sysfs attributes per port
Divy Le Ray [Sun, 25 Feb 2007 00:43:50 +0000 (16:43 -0800)]
cxgb3 - manage sysfs attributes per port

sysfs attributes are now managed per port, no longer per adapter.

Signed-off-by: Divy Le Ray <divy@chelsio.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoS2IO: Restoring the mac address in s2io_reset
Sivakumar Subramani [Sat, 24 Feb 2007 07:04:24 +0000 (02:04 -0500)]
S2IO: Restoring the mac address in s2io_reset

- Restore in s2io_reset, the mac address assigned during s2io_open.
  Earlier, it was getting overwritten to the factory default (read from the
  eeprom) and subsequently dropping received frames.

- Fixed the typo in calling rtnl_unlock in s2io_set_link function.

Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoS2IO: Avoid printing the Enhanced statistics for Xframe I card.
Sivakumar Subramani [Sat, 24 Feb 2007 07:03:22 +0000 (02:03 -0500)]
S2IO: Avoid printing the Enhanced statistics for Xframe I card.

- Enhanced Statistics are supported only for Xframe II (Herculas) card. Add
  condition check such Enhanced statistics will included only in the case of
  Xframe II card.

Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoS2IO: Making LED off during LINK_DOWN notification.
Sivakumar Subramani [Sat, 24 Feb 2007 07:01:31 +0000 (02:01 -0500)]
S2IO: Making LED off during LINK_DOWN notification.

- Turning off LED for LINK_DOWN notification
- Return from rxd_owner_bit_reset function if call to set_rxd_buffer_pointer
  fails with ENOMEM

Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoS2IO: Added a loadable parameter to enable or disable vlan stripping in frame.
Sivakumar Subramani [Sat, 24 Feb 2007 06:59:39 +0000 (01:59 -0500)]
S2IO: Added a loadable parameter to enable or disable vlan stripping in frame.

- Added code to not to strip vlan tag when driver is in promiscuous mode
- Added module loadable parameter 'vlan_tag_strip" through which user can
  enable or disable vlan stripping irrespective of mode
  ( promiscuous or non-promiscuous ).

Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoS2IO: Optimized the delay to wait for command completion
Sivakumar Subramani [Sat, 24 Feb 2007 06:57:32 +0000 (01:57 -0500)]
S2IO: Optimized the delay to wait for command completion

- Optimized delay to wait for command completion so as to reduce the
  initialization wait time.
- Disable differentiated services steering. By default RMAC is configured to
  steer traffic with certain DS codes to other queues. Driver must initialize
  the DS memory to 0 to make sure that DS steering will not be used by default.

Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoS2IO: Fixes for MSI and MSIX
Sivakumar Subramani [Sat, 24 Feb 2007 06:51:50 +0000 (01:51 -0500)]
S2IO: Fixes for MSI and MSIX

- Added debug statements to print a debug message if the MSI/MSI-X vector (or)
  data is zero.

- This patch removes the code that will enable NAPI for the case of single
  ring and MSI-X / MSI case. There are some issue in the enabling NAPI with
  MSI/MSI-X.  So we are turning off NAPI in the case of MSI/MSI-X.

Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoqla3xxx: Bumping driver version number
Benjamin Li [Mon, 26 Feb 2007 19:06:43 +0000 (11:06 -0800)]
qla3xxx: Bumping driver version number

Signed-off-by: Benjamin Li <benjamin.li@qlogic.com>
Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoqla3xxx: Kernic Panic on pSeries under stress conditions
Benjamin Li [Mon, 26 Feb 2007 19:06:42 +0000 (11:06 -0800)]
qla3xxx: Kernic Panic on pSeries under stress conditions

To reproduce this panic consistently, we run an intensive network
application like 'netperf'. After waiting for a couple of seconds,
you will see a stack trace and a kernel panic where we are calling
pci_unmap_single() in ql_poll().

Changes:
1)  Check the flags on the Response MAC IO Control block to check for
errors
2)  Ensure that if we are on the 4022 we only use one segment
3)  Before, we were reading the memory mapped producer index register
everytime we iterated in the loop when clearing the queue.  We should
only be iterating to a known point, not as the producer index
is being updated.

Signed-off-by: Benjamin Li <benjamin.li@qlogic.com>
Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoqla3xxx: bugfix tx reset after stress conditions.
Ron Mercer [Mon, 26 Feb 2007 19:06:41 +0000 (11:06 -0800)]
qla3xxx: bugfix tx reset after stress conditions.

To Reproduce the Problem:
To reproduce this panic consistently, we run an intensive network
application like 'netperf' and then switch to a different console.
After waiting for a couple of seconds, you will see a tx reset has occured.

Reason:
We enable interrupts even if we were not running.

Solution:
Now we will enable interrupts only after we are ready to give up the poll
routine.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoqla3xxx: Check return code from pci_map_single() in ql_release_to_lrg_buf_free_list...
Benjamin Li [Mon, 26 Feb 2007 19:06:40 +0000 (11:06 -0800)]
qla3xxx: Check return code from pci_map_single() in ql_release_to_lrg_buf_free_list(), ql_populate_free_queue(), ql_alloc_large_buffers(), and ql3xxx_send()

pci_map_single() could fail.  We need to properly check the return
code from pci_map_single().  If we can not properly map this address,
then we should cleanup and return the proper return code.

Signed-off-by: Benjamin Li <benjamin.li@qlogic.com>
Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoqla3xxx: bugfix: Fixed jumbo frame handling for 3032 chip.
Ron Mercer [Mon, 26 Feb 2007 19:06:39 +0000 (11:06 -0800)]
qla3xxx: bugfix: Fixed jumbo frame handling for 3032 chip.

The scatter/gather lists were not being build correctly.  When
large frames spanned several buffers the chip would panic.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoqla3xxx: Clean up receive process.
Ron Mercer [Mon, 26 Feb 2007 19:06:38 +0000 (11:06 -0800)]
qla3xxx: Clean up receive process.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoqla3xxx: Dynamically size the rx buffer queue based on the MTU.
Ron Mercer [Mon, 26 Feb 2007 19:06:37 +0000 (11:06 -0800)]
qla3xxx: Dynamically size the rx buffer queue based on the MTU.

This change removes use of constants for rx buffer queue size
and instead calculates the queue length based on what he MTU
is set to.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoqla3xxx: Remove API to change MTU.
Ron Mercer [Mon, 26 Feb 2007 19:06:36 +0000 (11:06 -0800)]
qla3xxx: Remove API to change MTU.

This network device driver shares the same hardware as the qla4xxx
iSCSI driver. Changing the MTU via the device interface will
cause qla4xxx to crash as there is no way to make notification.
Users wishing to change the MTU must do so using an iSCSI
utility such as Qlogic SanSurfer. This forces the user to
unload/reload this network device driver after the MTU
value has been changed in flash.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoqla3xxx: Fix deadlock issue on error paths
Benjamin Li [Mon, 26 Feb 2007 19:06:35 +0000 (11:06 -0800)]
qla3xxx: Fix deadlock issue on error paths

1) Fix deadlock issue when in QL_RESET_ACTIVE state and traversing
   through the Link State Machine
2) Fix deadlock issue when ethtool would call ql_get_settings()
3) Fix deadlock issue when adaptor is ifup'ed but adaptor fails to initialize

Signed-off-by: Benjamin Li <benjamin.li@qlogic.com>
Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoqla3xxx: Changed to use netdev_alloc_skb() from dev_alloc_skb
Benjamin Li [Mon, 26 Feb 2007 19:06:33 +0000 (11:06 -0800)]
qla3xxx: Changed to use netdev_alloc_skb() from dev_alloc_skb

Signed-off-by: Benjamin Li <benjamin.li@qlogic.com>
Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoqla3xxx: Remove unnecessary memset() in qla3xxx_send()
Benjamin Li [Mon, 26 Feb 2007 19:06:32 +0000 (11:06 -0800)]
qla3xxx: Remove unnecessary memset() in qla3xxx_send()

We do not need to zero out the 64 byte MAC request I/O control block.
  By zeroing out the control block and setting it to proper fields is
redundant work.  This is because in the qla3xxx_send() function we will
already set the proper fields in this structure.  The unused fields are
not looked at by the hardware and do not need to be zeroed out.

Signed-off-by: Benjamin Li <benjamin.li@qlogic.com>
Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoqla3xxx: Return proper error codes when the 4022/4032 is being probed
Benjamin Li [Mon, 26 Feb 2007 19:06:31 +0000 (11:06 -0800)]
qla3xxx: Return proper error codes when the 4022/4032 is being probed

The return code was not properly set when when allocating memory or mapping
memory failed.  Depending on the stack, the return code would sometimes
return 0, which indicates everything was ok, when in fact there was an error.
  This would cause trouble when the module was removed.  Now, we will pass
back the proper return code when an error occurs during the PCI probe.

Signed-off-by: Benjamin Li <benjamin.li@qlogic.com>
Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoAlignment in mv643xx_eth
Ralf Baechle [Mon, 26 Feb 2007 19:52:06 +0000 (19:52 +0000)]
Alignment in mv643xx_eth

The driver contains this little piece of candy:

#if defined(CONFIG_DMA_NONCOHERENT) || defined(CONFIG_NOT_COHERENT_CACHE)
#define ETH_DMA_ALIGN           L1_CACHE_BYTES
#else
#define ETH_DMA_ALIGN           8
#endif

Any reason why we're not using dma_get_cache_alignment() instead?

  Ralf

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agosgiseeq: Don't include unnecessary headerfiles.
Ralf Baechle [Mon, 26 Feb 2007 01:50:34 +0000 (01:50 +0000)]
sgiseeq: Don't include unnecessary headerfiles.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoucc_geth: use of_get_mac_address()
Timur Tabi [Wed, 21 Feb 2007 20:40:12 +0000 (14:40 -0600)]
ucc_geth: use of_get_mac_address()

Update ucc_geth_probe() to use function of_get_mac_address() to obtain the MAC
address.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoskge: comma consistency
Stephen Hemminger [Fri, 23 Feb 2007 22:04:54 +0000 (14:04 -0800)]
skge: comma consistency

Use comma's consistently.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoskge: fix transmitter flow control
Stephen Hemminger [Fri, 23 Feb 2007 22:03:00 +0000 (14:03 -0800)]
skge: fix transmitter flow control

It looks like the skge driver inherited another bug from the sk98lin code.
If I send from 1000mbit port to a machine on 100mbit port, the switch should
be doing hardware flow control, but no pause frames show up in the statistics.

This is the analog of the recent sky2 fixes. The device needs to listen
for multicast pause frames and then not discard them.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agomyri10ge: workaround buggy adopted firmwares
Brice Goglin [Wed, 21 Feb 2007 17:05:17 +0000 (18:05 +0100)]
myri10ge: workaround buggy adopted firmwares

Work around a bug which occurs when adopting firmware versions
1.4.4 though 1.4.11 where broadcasts are filtered as if they
were multicasts.

Signed-off-by: Brice Goglin <brice@myri.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoNetXen: Driver ifconfig fix
Amit S. Kale [Wed, 21 Feb 2007 14:54:06 +0000 (06:54 -0800)]
NetXen: Driver ifconfig fix

Signed-off-by: Amit S. Kale <amitkale@netxen.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoNetXen: Driver unload fixes
Amit S. Kale [Wed, 21 Feb 2007 14:37:06 +0000 (06:37 -0800)]
NetXen: Driver unload fixes

Signed-off-by: Amit S. Kale <amitkale@netxen.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agospidernet: maintainership
Linas Vepstas [Tue, 20 Feb 2007 22:45:27 +0000 (16:45 -0600)]
spidernet: maintainership

Update driver support contact info.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
Cc: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agospidernet: janitorial, typos
Linas Vepstas [Tue, 20 Feb 2007 22:42:59 +0000 (16:42 -0600)]
spidernet: janitorial, typos

Janitorial patch. Undo long lines, fix typo in err msg.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
Cc: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agospidernet: transmit race
Linas Vepstas [Tue, 20 Feb 2007 22:41:59 +0000 (16:41 -0600)]
spidernet: transmit race

Multiple threads performing a transmit can race into
the spidernet tx ring cleanup code. This puts the
relevant check under a lock.

Signed-off-by: Linas Vepstas <lins@austin.ibm.com>
Cc: Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
Cc: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agospidernet: fix racy double-free of skb
Linas Vepstas [Tue, 20 Feb 2007 22:41:03 +0000 (16:41 -0600)]
spidernet: fix racy double-free of skb

It appears that under certain circumstances, a race will result
in a double-free of an skb. This patch null's out the skb pointer
upon the skb free, avoiding the inadvertent deref of bogus data.
The next patch fixes the actual race.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
Cc: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agospidernet: separate hardware state from driver state.
Linas Vepstas [Tue, 20 Feb 2007 22:40:06 +0000 (16:40 -0600)]
spidernet: separate hardware state from driver state.

This patch separates the hardware descriptor state from the
driver descriptor state, per (old) suggestion from Ben Herrenschmidt.
This compiles and boots and seems to work.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
Cc: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agospidernet: move medium variable into card struct
Jens Osterkamp [Tue, 20 Feb 2007 22:39:13 +0000 (16:39 -0600)]
spidernet: move medium variable into card struct

This moves the medium variable into the spidernet card structure.
It renames the GMII_ variables to BCM54XX specific ones.

Signed-off-by: Jens Osterkamp <jens@de.ibm.com>
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agospidernet: remove txram full logging
Ishizaki Kou [Tue, 20 Feb 2007 22:37:42 +0000 (16:37 -0600)]
spidernet: remove txram full logging

This patches removes logging for SPIDER_NET_GTMFLLINT interrupts.
Since the interrupts are not irregular, and they happen frequently
when using 100Mbps network switches.

Signed-off-by: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agospidernet: spidernet: add support for Celleb
Kou Ishizaki [Tue, 20 Feb 2007 22:36:14 +0000 (16:36 -0600)]
spidernet: spidernet: add support for Celleb

This patch adds or changes some HW specific settings for spider_net on
Celleb.

Signed-off-by: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agospidernet: load firmware when open
Kou Ishizaki [Tue, 20 Feb 2007 22:34:50 +0000 (16:34 -0600)]
spidernet: load firmware when open

This patch moves calling init_firmware() from spider_net_probe() to
spider_net_open() so as to use the driver by built-in.

Signed-off-by: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agospidernet: autoneg support for Celleb
Kou Ishizaki [Tue, 20 Feb 2007 22:33:41 +0000 (16:33 -0600)]
spidernet: autoneg support for Celleb

Add auto negotiation support for Celleb.

Signed-off-by: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agospidernet: compile break.
Linas Vepstas [Tue, 20 Feb 2007 22:32:00 +0000 (16:32 -0600)]
spidernet: compile break.

As of 2.6.20-git4, the spider_net driver does not compile.
This appears to be due to some archaic usage involving kobjects.

It also fixes a nasty double-free during ifdown of the interface.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Cc: Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
Cc: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agosungem_phy: support bcm5461 phy, autoneg.
Jens Osterkamp [Tue, 20 Feb 2007 22:30:50 +0000 (16:30 -0600)]
sungem_phy: support bcm5461 phy, autoneg.

This version moves the medium variable to the card specific structure and
changes the GMII_* to BCM54XX_* #defines.

This patch adds improved version of enable_fiber for both the 5421 and
the 5461 phy. It is now possible to specify with these wether you want
autonegotiation or not. This is needed for bladecenter switches where
some expect autonegotiation and some dont seem to like this at all.
Depending on this flag it sets phy->autoneg accordingly for the fiber mode.

More importantly it implements proper read_link and poll_link functions
for both phys which can handle both copper and fiber mode by determining
the medium first and then branching to the required functions. For fiber
they all work fine, for copper they are not tested but return the result
of the genmii_* function anyway which is supposed to work.

The patch moves the genmii_* functions around to avoid foreward declarations.

Signed-off-by: Jens Osterkamp <jens@de.ibm.com>
Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoforcedeth: fix checksum feature in mcp65
Ayaz Abdulla [Tue, 20 Feb 2007 08:34:44 +0000 (03:34 -0500)]
forcedeth: fix checksum feature in mcp65

This patch removes checksum offload feature in mcp65 chipsets as they
are not supported in hw.

Signed-Off-By: Ayaz Abdulla <aabdulla@nvidia.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoforcedeth: disable msix
Ayaz Abdulla [Tue, 20 Feb 2007 08:34:40 +0000 (03:34 -0500)]
forcedeth: disable msix

There seems to be an issue when both MSI-X is enabled and NAPI is
configured. This patch disables MSI-X until the issue is root caused.

Signed-Off-By: Ayaz Abdulla <aabdulla@nvidia.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoforcedeth: fixed missing call in napi poll
Ayaz Abdulla [Tue, 20 Feb 2007 08:34:30 +0000 (03:34 -0500)]
forcedeth: fixed missing call in napi poll

The napi poll routine was missing the call to the optimized rx process
routine. This patch adds the missing call for the optimized path.

Signed-Off-By: Ayaz Abdulla <aabdulla@nvidia.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[netdrvr] tc35815: fix obvious bugs
Jeff Garzik [Sat, 24 Feb 2007 22:02:16 +0000 (17:02 -0500)]
[netdrvr] tc35815: fix obvious bugs

* clear_page() use is wrong.  We might have multiple pages.
  Use memset() instead.
* Call pci_unregister_driver() in module exit.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[AGPGART] fix compile errors
Ryusuke Konishi [Tue, 27 Feb 2007 05:13:02 +0000 (14:13 +0900)]
[AGPGART] fix compile errors

This fixes the following compile failures of agpgart drivers.
These errors were inserted by the recent AGPGART constification patch.

drivers/char/agp/uninorth-agp.c:492: error: expected '{' before 'const'
drivers/char/agp/uninorth-agp.c:517: error: expected '{' before 'const'
drivers/char/agp/uninorth-agp.c: In function 'agp_uninorth_probe':
drivers/char/agp/uninorth-agp.c:634: error: 'u3_agp_driver' undeclared (first use in this function)
drivers/char/agp/uninorth-agp.c:634: error: (Each undeclared identifier is reported only once
drivers/char/agp/uninorth-agp.c:634: error: for each function it appears in.)
drivers/char/agp/uninorth-agp.c:636: error: 'uninorth_agp_driver' undeclared (first use in this function)

Signed-off-by: Ryusuke Konishi <ryusuke@osrg.net>
Signed-off-by: Dave Jones <davej@redhat.com>