GitHub/mt8127/android_kernel_alcatel_ttab.git
17 years agoSpidernet RX Refill
Linas Vepstas [Wed, 13 Dec 2006 21:18:52 +0000 (15:18 -0600)]
Spidernet RX Refill

The invocation of the rx ring refill routine is haphazard,
it can be called from a central location.

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>
17 years agoSpidernet Cleanup return codes
Linas Vepstas [Wed, 13 Dec 2006 21:17:39 +0000 (15:17 -0600)]
Spidernet Cleanup return codes

Simplify the somewhat convoluted use of return codes
in the rx buffer handling.

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>
17 years agoSpidernet another skb mem leak
Linas Vepstas [Wed, 13 Dec 2006 21:16:18 +0000 (15:16 -0600)]
Spidernet another skb mem leak

Another skb leak in an error branch. Fix this by adding
call to dev_kfree_skb_irq() after moving to a more
appropriate spot.

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>
17 years agoSpidernet RX skb mem leak
Linas Vepstas [Wed, 13 Dec 2006 21:15:15 +0000 (15:15 -0600)]
Spidernet RX skb mem leak

One of the unlikely error branches has an skb memory leak.
Fix this by handling the error conditions consistently.

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>
17 years agoSpidernet cleanup un-needed API
Linas Vepstas [Wed, 13 Dec 2006 21:12:26 +0000 (15:12 -0600)]
Spidernet cleanup un-needed API

There is no need to pass a flag into spider_net_decode_one_descr()
so remove this, and perform some othre minor cleanup.

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>
17 years agoSpidernet remove rxramfull tasklet
Linas Vepstas [Wed, 13 Dec 2006 21:10:06 +0000 (15:10 -0600)]
Spidernet remove rxramfull tasklet

Get rid of the rxramfull tasklet, and let the NAPI poll routine
deal with this situation. (The rxramfull interrupt is simply
stating that the h/w has run out of room for incoming 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>
17 years agoSpidernet add net_ratelimit to suppress long output
Linas Vepstas [Wed, 13 Dec 2006 21:08:25 +0000 (15:08 -0600)]
Spidernet add net_ratelimit to suppress long output

This patch adds net_ratelimit to many of the printks in order to
limit extraneous warning messages (created in response to Bug 28554).
This patch supercedes all previous ratelimit patches.
This has been tested, please apply.

From: James K Lewis <jklewis@us.ibm.com>
Signed-off-by: James K Lewis <jklewis@us.ibm.com>
Signed-off-by: Linas Vepstas <jlinas@austin.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoSpidernet DMA coalescing
Linas Vepstas [Wed, 13 Dec 2006 21:06:59 +0000 (15:06 -0600)]
Spidernet DMA coalescing

The current driver code performs 512 DMA mappings of a bunch of
32-byte ring descriptor structures. This is silly, as they are
all in contiguous memory. This patch changes the code to
dma_map_coherent() each rx/tx ring as a whole.

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>
17 years agochelsio: tabulate the update of the statistic counters
Francois Romieu [Mon, 11 Dec 2006 23:13:48 +0000 (00:13 +0100)]
chelsio: tabulate the update of the statistic counters

Let's try to avoid some code duplication.

- cxgb2
  The data are contiguous. Use plain memcpy.

- ixf1010/pm3393/vsc7326
  The cast of &mac->stats to (u64 *) is not wonderful but it is not clear
  if it is worth to add an ad-hoc union under the struct cmac_statistics.

vsc7326_reg.h suggests that more statistics could be available.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
17 years agochelsio: misc cleanups in sge
Francois Romieu [Tue, 5 Dec 2006 22:57:41 +0000 (23:57 +0100)]
chelsio: misc cleanups in sge

- duplicated code in sge::free_cmdQ_buffers ;
- NET_IP_ALIGN is already defined in (included) <linux/skbuff.h> ;
- pci_alloc_consistent() returns void * ;
- pci_alloc_consistent() returns a zeroed chunk of memory ;
- early return in restart_tx_queues.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
17 years agochelsio: useless test in cxgb2::remove_one
Francois Romieu [Tue, 5 Dec 2006 22:19:06 +0000 (23:19 +0100)]
chelsio: useless test in cxgb2::remove_one

pci_get_drvadata() is necessarily distinct from NULL if
cxgb2::init_one succeeded. cxgb2::remove_one is solely
issued through the PCI device callback.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
17 years agochelsio: useless curly braces
Francois Romieu [Mon, 11 Dec 2006 22:49:13 +0000 (23:49 +0100)]
chelsio: useless curly braces

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
17 years agochelsio: spaces, tabs and friends
Francois Romieu [Mon, 11 Dec 2006 22:47:00 +0000 (23:47 +0100)]
chelsio: spaces, tabs and friends

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
17 years agochelsio: the return statement is not a function
Francois Romieu [Mon, 11 Dec 2006 22:41:36 +0000 (23:41 +0100)]
chelsio: the return statement is not a function

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
17 years agochelsio: move return, break and continue statements on their own line
Francois Romieu [Tue, 5 Dec 2006 21:38:00 +0000 (22:38 +0100)]
chelsio: move return, break and continue statements on their own line

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
17 years ago[PATCH] ipw2200: add iwconfig rts/frag auto support
Zhu Yi [Thu, 11 Jan 2007 09:32:54 +0000 (17:32 +0800)]
[PATCH] ipw2200: add iwconfig rts/frag auto support

This patch add ipw2200 support for iwconfig rts/frag auto.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years ago[PATCH] zd1211rw: Add ID for ZyXEL ZyAIR G-220 v2
Daniel Drake [Thu, 4 Jan 2007 03:33:54 +0000 (03:33 +0000)]
[PATCH] zd1211rw: Add ID for ZyXEL ZyAIR G-220 v2

Tested by Marijn Schouten
zd1211b chip 0586:340f v4810 high 00-13-49 AL2230_RF pa0 g---
FCC ID: I88G220V2

Signed-off-by: Daniel Drake <dsd@gentoo.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years ago[PATCH] softmac: avoid assert in ieee80211softmac_wx_get_rate
John W. Linville [Wed, 3 Jan 2007 02:22:05 +0000 (21:22 -0500)]
[PATCH] softmac: avoid assert in ieee80211softmac_wx_get_rate

Unconfigured bcm43xx device can hit an assert() during wx_get_rate
queries.  This is because bcm43xx calls ieee80211softmac_start late
(i.e. during open instead of probe).

   bcm43xx_net_open ->
      bcm43xx_init_board ->
         bcm43xx_select_wireless_core ->
            ieee80211softmac_start

Fix is to check that device is running before completing
ieee80211softmac_wx_get_rate.

Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years ago[PATCH] prism54: add ethtool -i interface
Kai Engert [Tue, 12 Dec 2006 20:09:41 +0000 (21:09 +0100)]
[PATCH] prism54: add ethtool -i interface

Add support for "ethtool -i" to prism54 driver.

ethtool -i queries the specified device for
associated driver information.

This helps tools like Fedora's system-config-network to
provide GUI management of network devices.
I learned how to write this patch by reading the ipw2100
driver code.

Signed-off-by: Kai Engert <kengert@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years ago[PATCH] bcm43xx: Interrogate hardware-enable switch and update LEDs
Larry Finger [Sun, 31 Dec 2006 05:30:32 +0000 (23:30 -0600)]
[PATCH] bcm43xx: Interrogate hardware-enable switch and update LEDs

The current bcm43xx driver ignores any wireless-enable switches on mini-PCI
and mini-PCI-E cards. This patch implements a new routine to interrogate the
radio hardware enabled bit in the interface, logs the initial state and any
changes in the switch (if debugging enabled), activates the LED to show the
state, and changes the periodic work handler to provide 1 second response
to switch changes and to account for changes in the periodic work specs.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years ago[PATCH] zd1211rw: Add ID for Linksys WUSBF54G
Daniel Drake [Sat, 30 Dec 2006 22:38:23 +0000 (22:38 +0000)]
[PATCH] zd1211rw: Add ID for Linksys WUSBF54G

Tested by Henrik Hjelte
zd1211b chip 13b1:0024 v4802 high 00-14-bf AL2230_RF pa0 ----

Signed-off-by: Daniel Drake <dsd@gentoo.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years ago[PATCH] Update Prism54 MAINTAINERS entry
Michael Buesch [Fri, 15 Dec 2006 20:32:44 +0000 (21:32 +0100)]
[PATCH] Update Prism54 MAINTAINERS entry

prism54-private@prism54.org bounces with

    SMTP error from remote mailer after RCPT TO:<prism54-private@prism54.org>:
    host mx1.tuxfamily.net [212.85.158.8]: 550 unknown user

developers@islsm.org seems to be the new mailing list.

Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years ago[PATCH] zd1211rw: Remove addressing abstraction
Daniel Drake [Tue, 12 Dec 2006 01:26:11 +0000 (01:26 +0000)]
[PATCH] zd1211rw: Remove addressing abstraction

Instead of passing our own custom 32-bit addresses around and
translating them, this patch makes all our register address constants
absolute and removes the translation.

There are two ugly parts:
 - fw_reg_addr() is needed to compute addresses of firmware registers, as this
   is dynamic based upon firmware
 - inc_addr() needs a small hack to handle byte vs word addressing

However, both of those are only small, and we don't use fw_regs a whole
lot anyway.

The bonuses here include simplicity and improved driver readability. Also, the
fact that registers are now referenced by 16-bit absolute addresses (as
opposed to 32-bit pseudo addresses) means that over 2kb compiled code size has
been shaved off.

Includes some touchups and sparse fixes from Ulrich Kunitz.

Signed-off-by: Daniel Drake <dsd@gentoo.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years ago[PATCH] zd1211rw: Consistency for address space constants
Daniel Drake [Tue, 12 Dec 2006 01:25:52 +0000 (01:25 +0000)]
[PATCH] zd1211rw: Consistency for address space constants

The zd1211rw address space has confused me once too many times. This
patch introduces the following naming notation:

Memory space is split into segments (cr, fw, eeprom) and segments may
contain components (e.g. boot code inside eeprom). These names are
arbitrary and only for the description below:

x_START: Absolute address of segment start
(previously these were named such as CR_BASE_OFFSET, but they weren't
really offsets unless you were considering them as an offset to 0)

x_LEN: Segment length

x_y_LEN: Length of component y of segment x

x_y_OFFSET: Relative address of component y into segment x. The absolute
address for this component is (x_START + x_y_OFFSET)

I also renamed EEPROM registers to EEPROM data. These 'registers' can't
be written to using standard I/O and really represent predefined data
from the vendor.

Signed-off-by: Daniel Drake <dsd@gentoo.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years ago[PATCH] zd1211rw: 2 new ZD1211B device ID's
Daniel Drake [Tue, 12 Dec 2006 01:25:37 +0000 (01:25 +0000)]
[PATCH] zd1211rw: 2 new ZD1211B device ID's

Philips SNU5600, tested by unibrow
zd1211b chip 0471:1236 v4810 high 00-12-bf AL2230_RF pa0 g--

SMC Ez Connect 802.11g (SMCWUSB-G), tested by Victorino Sanz Prat
zd1211b chip 083a:4505 v4810 full 00-13-f7 AL2230_RF pa0 g--N

Signed-off-by: Daniel Drake <dsd@gentoo.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years ago[PATCH] zd1211rw: Generic HMAC initialization
Daniel Drake [Tue, 12 Dec 2006 01:25:13 +0000 (01:25 +0000)]
[PATCH] zd1211rw: Generic HMAC initialization

Many of the registers written during ZD1211 HMAC initialization are
duplicated exactly for ZD1211B. Move the identical ones into a generic
part, and write the hardware-specific ones separately.

Signed-off-by: Daniel Drake <dsd@gentoo.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoe1000: update version to 7.3.20-k2
Auke Kok [Thu, 18 Jan 2007 17:25:33 +0000 (09:25 -0800)]
e1000: update version to 7.3.20-k2

Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
17 years agoe1000: tune our dynamic itr transmit packet accounting
Jesse Brandeburg [Thu, 18 Jan 2007 17:25:31 +0000 (09:25 -0800)]
e1000: tune our dynamic itr transmit packet accounting

The driver was still mis-calculating the number of bytes sent during
transmit, now the driver computes what appears to be exactly 100%
correct byte counts (not including CRC) when figuring out how many
bytes and frames were sent during the current transmit packet.

17 years agoe1000: clear ip csum info from context descriptor
Bruce Allan [Thu, 18 Jan 2007 17:25:28 +0000 (09:25 -0800)]
e1000: clear ip csum info from context descriptor

Since the driver sets the IP checksum insertion bit (IXSM in Status
field) in transmit context descriptors, it should clear the IP checksum
bits of any garbage so as not to confuse the hardware.

Signed-off-by: Bruce Allan <bruce.w.allan@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
17 years agoe1000: display flow control of link status at link up
Auke Kok [Thu, 18 Jan 2007 17:25:26 +0000 (09:25 -0800)]
e1000: display flow control of link status at link up

Print RX/TX flow control setting at link up time to display the
actual link FC properties instead of the advertised values.

Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
17 years agoe1000: fix NAPI performance on 4-port adapters
Jesse Brandeburg [Thu, 18 Jan 2007 17:25:23 +0000 (09:25 -0800)]
e1000: fix NAPI performance on 4-port adapters

This fix attempts to solve a customer (IBM) reported issue with NAPI
enabled e1000 having bad performance when transmitting simultaneously
on four ports.  The issue comes down to an interaction between NAPI,
hardware interrupt balancing, and the driver rescheduling poll on
the same processor.  Try to fix by allowing the driver to re-enable
interrupts sooner instead of polling one more time, when there was
recently all the work completed in cleanup.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
17 years agoe1000: Fix MSI only interrupt handler routine
Jesse Brandeburg [Thu, 18 Jan 2007 17:25:21 +0000 (09:25 -0800)]
e1000: Fix MSI only interrupt handler routine

Unfortunately the read-free MSI interrupt handler needs to flush write
the icr register and thus we can't be read-free. Our MSI irq routine
thus becomes a lot more simpler since we don't need to track link state
anymore.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
17 years agoe1000: clean up debug output defines
Auke Kok [Thu, 18 Jan 2007 17:25:18 +0000 (09:25 -0800)]
e1000: clean up debug output defines

Remove unused MSGOUT macro and add "\n" to function debug output.

Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
17 years agoe1000: simplify case handling gigabit at half duplex
Jesse Brandeburg [Thu, 18 Jan 2007 17:25:15 +0000 (09:25 -0800)]
e1000: simplify case handling gigabit at half duplex

Remvoe duplicate code handling erraneous user supplied wrong case
of gigabit speed with half duplex.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
17 years agoLinux 2.6.20
Linus Torvalds [Sun, 4 Feb 2007 18:44:54 +0000 (10:44 -0800)]
Linux 2.6.20

17 years ago[PATCH] EFI x86: pass firmware call parameters on the stack
Frédéric Riss [Tue, 30 Jan 2007 20:41:17 +0000 (21:41 +0100)]
[PATCH] EFI x86: pass firmware call parameters on the stack

When calling into the EFI firmware, the parameters need to be passed on
the stack. The recent change to use -mregparm=3 breaks x86 EFI support.
This patch is needed to allow the new Intel-based Macs to suspend to ram
(efi.get_time is called during the suspend phase).

Signed-off-by: Frederic Riss <frederic.riss@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] fix rtl8150
Al Viro [Sun, 4 Feb 2007 03:02:17 +0000 (03:02 +0000)]
[PATCH] fix rtl8150

That code doesn't do what its author apparently thought it would do...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6
Linus Torvalds [Sat, 3 Feb 2007 19:26:39 +0000 (11:26 -0800)]
Merge /linux/kernel/git/jejb/scsi-rc-fixes-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6:
  [SCSI] sd: udev accessing an uninitialized scsi_disk field results in a crash
  [SCSI] st: A MTIOCTOP/MTWEOF within the early warning will cause the file number to be incorrect
  [SCSI] qla4xxx: bug fixes
  [SCSI] Fix scsi_add_device() for async scanning

17 years ago[PATCH] x86-64: define dma noncoherent API functions
Jeff Garzik [Sat, 3 Feb 2007 09:14:03 +0000 (01:14 -0800)]
[PATCH] x86-64: define dma noncoherent API functions

x86-64 is missing these:

Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] Altix: more ACPI PRT support
John Keller [Sat, 3 Feb 2007 09:14:02 +0000 (01:14 -0800)]
[PATCH] Altix: more ACPI PRT support

The SN Altix platform does not conform to the IOSAPIC IRQ routing model.
Add code in acpi_unregister_gsi() to check if (acpi_irq_model ==
ACPI_IRQ_MODEL_PLATFORM) and return.

Due to an oversight, this code was not added previously when
similar code was added to acpi_register_gsi().

http://marc.theaimsgroup.com/?l=linux-acpi&m=116680983430121&w=2

Signed-off-by: John Keller <jpk@sgi.com>
Acked-by: Len Brown <lenb@kernel.org>
Cc: "Luck, Tony" <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] revert blockdev direct io back to 2.6.19 version
Andrew Morton [Sat, 3 Feb 2007 09:14:01 +0000 (01:14 -0800)]
[PATCH] revert blockdev direct io back to 2.6.19 version

Andrew Vasquez is reporting as-iosched oopses and a 65% throughput
slowdown due to the recent special-casing of direct-io against
blockdevs.  We don't know why either of these things are occurring.

The patch minimally reverts us back to the 2.6.19 code for a 2.6.20
release.

Cc: Andrew Vasquez <andrew.vasquez@qlogic.com>
Cc: Ken Chen <kenchen@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] alpha: fix epoll syscall enumerations
Mike Frysinger [Sat, 3 Feb 2007 09:13:55 +0000 (01:13 -0800)]
[PATCH] alpha: fix epoll syscall enumerations

We went and named them __NR_sys_foo instead of __NR_foo.

It may be too late to change this, but we can at least add the proper names
now.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] net/smc911x: match up spin lock/unlock
Peter Korsgaard [Sat, 3 Feb 2007 09:13:50 +0000 (01:13 -0800)]
[PATCH] net/smc911x: match up spin lock/unlock

smc911x_phy_configure's error handling unconditionally unlocks the
spinlock even if it wasn't locked. Patch fixes it.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Cc: Jeff Garzik <jeff@garzik.org>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] kexec: Avoid migration of already disabled irqs (ia64)
Magnus Damm [Sat, 3 Feb 2007 09:13:48 +0000 (01:13 -0800)]
[PATCH] kexec: Avoid migration of already disabled irqs (ia64)

This patch fixes up ia64 kexec support for HP rx2620 hardware.  It does
this by skipping migration of already disabled irqs.  This is most likely a
problem on other ia64 platforms as well, but I've only been able to
reproduce it on one machine so far.

The full story is that handle_bad_irq() gets invoked before starting the
new kernel without this patch.  This seems to happen when fixup_irqs()
calls generic_handle_irq() on already migrated (and disabled) irqs.  So by
avoiding migration of disabled irqs we stay away of handle_bad_irq().

The code has been tested on three different ia64 machines, all with good
results.  It is possible to trigger the same bug by offlining a processor
using echo 0 > /sys/devices/system/cpu/cpuX/online.

More detailed information is available in the following mail thread:
http://lists.osdl.org/pipermail/fastboot/2007-January/thread.html#5774

Signed-off-by: Magnus Damm <magnus@valinux.co.jp>
Acked-by: Simon Horman <horms@verge.net.au>
Acked-by: Zou, Nanhai <nanhai.zou@intel.com>
Acked-by: Jay Lan <jlan@sgi.com>
Acked-by: "Luck, Tony" <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] aio: fix buggy put_ioctx call in aio_complete - v2
Ken Chen [Sat, 3 Feb 2007 09:13:45 +0000 (01:13 -0800)]
[PATCH] aio: fix buggy put_ioctx call in aio_complete - v2

An AIO bug was reported that sleeping function is being called in softirq
context:

BUG: warning at kernel/mutex.c:132/__mutex_lock_common()
Call Trace:
     [<a000000100577b00>] __mutex_lock_slowpath+0x640/0x6c0
     [<a000000100577ba0>] mutex_lock+0x20/0x40
     [<a0000001000a25b0>] flush_workqueue+0xb0/0x1a0
     [<a00000010018c0c0>] __put_ioctx+0xc0/0x240
     [<a00000010018d470>] aio_complete+0x2f0/0x420
     [<a00000010019cc80>] finished_one_bio+0x200/0x2a0
     [<a00000010019d1c0>] dio_bio_complete+0x1c0/0x200
     [<a00000010019d260>] dio_bio_end_aio+0x60/0x80
     [<a00000010014acd0>] bio_endio+0x110/0x1c0
     [<a0000001002770e0>] __end_that_request_first+0x180/0xba0
     [<a000000100277b90>] end_that_request_chunk+0x30/0x60
     [<a0000002073c0c70>] scsi_end_request+0x50/0x300 [scsi_mod]
     [<a0000002073c1240>] scsi_io_completion+0x200/0x8a0 [scsi_mod]
     [<a0000002074729b0>] sd_rw_intr+0x330/0x860 [sd_mod]
     [<a0000002073b3ac0>] scsi_finish_command+0x100/0x1c0 [scsi_mod]
     [<a0000002073c2910>] scsi_softirq_done+0x230/0x300 [scsi_mod]
     [<a000000100277d20>] blk_done_softirq+0x160/0x1c0
     [<a000000100083e00>] __do_softirq+0x200/0x240
     [<a000000100083eb0>] do_softirq+0x70/0xc0

See report: http://marc.theaimsgroup.com/?l=linux-kernel&m=116599593200888&w=2

flush_workqueue() is not allowed to be called in the softirq context.
However, aio_complete() called from I/O interrupt can potentially call
put_ioctx with last ref count on ioctx and triggers bug.  It is simply
incorrect to perform ioctx freeing from aio_complete.

The bug is trigger-able from a race between io_destroy() and aio_complete().
A possible scenario:

cpu0                               cpu1
io_destroy                         aio_complete
  wait_for_all_aios {                __aio_put_req
     ...                                 ctx->reqs_active--;
     if (!ctx->reqs_active)
        return;
  }
  ...
  put_ioctx(ioctx)

                                     put_ioctx(ctx);
                                        __put_ioctx
                                          bam! Bug trigger!

The real problem is that the condition check of ctx->reqs_active in
wait_for_all_aios() is incorrect that access to reqs_active is not
being properly protected by spin lock.

This patch adds that protective spin lock, and at the same time removes
all duplicate ref counting for each kiocb as reqs_active is already used
as a ref count for each active ioctx.  This also ensures that buggy call
to flush_workqueue() in softirq context is eliminated.

Signed-off-by: "Ken Chen" <kenchen@google.com>
Cc: Zach Brown <zach.brown@oracle.com>
Cc: Suparna Bhattacharya <suparna@in.ibm.com>
Cc: Benjamin LaHaise <bcrl@kvack.org>
Cc: Badari Pulavarty <pbadari@us.ibm.com>
Cc: <stable@kernel.org>
Acked-by: Jeff Moyer <jmoyer@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[NETFILTER]: nf_conntrack_h323: fix compile error with CONFIG_IPV6=m, CONFIG_NF_CONNT...
Adrian Bunk [Sat, 3 Feb 2007 03:33:52 +0000 (19:33 -0800)]
[NETFILTER]: nf_conntrack_h323: fix compile error with CONFIG_IPV6=m, CONFIG_NF_CONNTRACK_H323=y

Fix this by letting NF_CONNTRACK_H323 depend on (IPV6 || IPV6=n).

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NETFILTER]: ctnetlink: fix compile failure with NF_CONNTRACK_MARK=n
Patrick McHardy [Sat, 3 Feb 2007 03:33:11 +0000 (19:33 -0800)]
[NETFILTER]: ctnetlink: fix compile failure with NF_CONNTRACK_MARK=n

  CC      net/netfilter/nf_conntrack_netlink.o
net/netfilter/nf_conntrack_netlink.c: In function 'ctnetlink_conntrack_event':
net/netfilter/nf_conntrack_netlink.c:392: error: 'struct nf_conn' has no member named 'mark'
make[3]: *** [net/netfilter/nf_conntrack_netlink.o] Error 1

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SCSI] sd: udev accessing an uninitialized scsi_disk field results in a crash
Nagendra Singh Tomar [Fri, 2 Feb 2007 12:04:56 +0000 (17:34 +0530)]
[SCSI] sd: udev accessing an uninitialized scsi_disk field results in a crash

sd_probe() calls class_device_add() even before initializing the
sdkp->device variable. class_device_add() eventually results in the user mode
udev program to be called. udev program can read the the allow_restart
attribute of the newly created scsi device. This is resulting in a crash as
the show function for allow_restart (i.e sd_show_allow_restart) returns the
attribute value by reading the sdkp->device->allow_restart variable. As the
sdkp->device is not initialized before calling the user mode hotplug helper,
this results in a crash.
The patch below solves it by calling class_device_add() only after the
necessary fields in the scsi_disk structure are initialized properly.

Signed-off-by: Nagendra Singh Tomar <nagendra_tomar@adaptec.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
17 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Fri, 2 Feb 2007 17:14:48 +0000 (09:14 -0800)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/libata-dev

* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:
  libata: Initialize nbytes for internal sg commands
  libata: Fix ata_busy_wait() kernel docs
  pata_via: Correct missing comments
  pata_atiixp: propogate cable detection hack from drivers/ide to the new driver
  ahci/pata_jmicron: fix JMicron quirk

17 years agolibata: Initialize nbytes for internal sg commands
Brian King [Tue, 30 Jan 2007 17:32:26 +0000 (11:32 -0600)]
libata: Initialize nbytes for internal sg commands

Some LLDDs, like ipr, use nbytes and pad_len to determine
the total data transfer length of a command. Make sure
nbytes gets initialized for internally generated commands.

Signed-off-by: Brian King <brking@linux.vnet.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agolibata: Fix ata_busy_wait() kernel docs
Alan [Wed, 31 Jan 2007 17:47:24 +0000 (17:47 +0000)]
libata: Fix ata_busy_wait() kernel docs

> Looks like you should use ata_busy_wait() here, rather than reproducing
> the same code again.

It waits in 10uS chunks while 1uS chunks were used in the workaround.
Could indeed do that once I know the fix is right. While I'm at it the
ata_busy_wait kerneldoc is borked so here's a fix

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agopata_via: Correct missing comments
Alan [Wed, 31 Jan 2007 17:14:38 +0000 (17:14 +0000)]
pata_via: Correct missing comments

The 8237S was added to the chipsets but not to the comments. Fix this

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agopata_atiixp: propogate cable detection hack from drivers/ide to the new driver
Alan [Wed, 31 Jan 2007 17:10:46 +0000 (17:10 +0000)]
pata_atiixp: propogate cable detection hack from drivers/ide to the new driver

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoahci/pata_jmicron: fix JMicron quirk
Tejun Heo [Fri, 2 Feb 2007 05:51:09 +0000 (14:51 +0900)]
ahci/pata_jmicron: fix JMicron quirk

For all JMicrons except for 361 and 368, AHCI mode enable bits in the
Control(1) should be set.  This used to be done in both ahci and
pata_jmicron but while moving programming to PCI quirk, it was removed
from ahci part while still left in pata_jmicron.

The implemented JMicron PCI quirk was incorrect in that it didn't
program AHCI mode enable bits.  If pata_jmicron is loaded first and
programs those bits, the ahci ports work; otherwise, ahci device
detection fails miserably.

This patch makes JMicron PCI quirk clear SATA IDE mode bits and set
AHCI mode bits and remove the respective part from pata_jmicron.
Tested on JMB361, 363 and 368.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Fri, 2 Feb 2007 16:13:23 +0000 (08:13 -0800)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/netdev-2.6

* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6:
  spidernet : fix memory leak in spider_net_stop
  e100: fix napi ifdefs removing needed code
  netxen patches

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/bnx2-2.6
Linus Torvalds [Fri, 2 Feb 2007 16:10:58 +0000 (08:10 -0800)]
Merge /pub/scm/linux/kernel/git/davem/bnx2-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/bnx2-2.6:
  [BNX2]: PHY workaround for 5709 A0.

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Fri, 2 Feb 2007 16:10:30 +0000 (08:10 -0800)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
  [NET_SCHED]: act_ipt: fix regression in ipt action

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Fri, 2 Feb 2007 16:10:17 +0000 (08:10 -0800)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SPARC32]: Fix over-optimization by GCC near ip_fast_csum.

17 years ago[PATCH] MAINTAINERS: ufs entry
Evgeniy Dushistov [Fri, 2 Feb 2007 08:36:34 +0000 (11:36 +0300)]
[PATCH] MAINTAINERS: ufs entry

Mark ufs file system as maintainable, and add me as maintainer,
to help people find appropriate person to assign bugs.

Signed-off-by: Evgeniy Dushistov <dushistov@mail.ru>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoRevert "[PATCH] fix typo in geode_configre()@cyrix.c"
Linus Torvalds [Fri, 2 Feb 2007 16:07:42 +0000 (08:07 -0800)]
Revert "[PATCH] fix typo in geode_configre()@cyrix.c"

This reverts commit e4f0ae0ea63caceff37a13f281a72652b7ea71ba.

It's not wrong, but it's not right either, and everybody seems to agree
that the right fix is probably to do the ccr3 write after the ccr4 one
(and that we also should clean it up a bit).  And after that we need to
really validate that all the bits that we write to ccr4 actually do
work.

The old 2.6.19 code was insane, and basically didn't change ccr4 at all
(even though it certainly looks like it was the *intent* to do so).  So
let's revert the change that may fix things, just because it's not what
was actually ever tested when the code was written, even if it _was_ the
intent.

There's a discussion on http://lkml.org/lkml/2007/1/9/63 that was
started by the patch that now gets reverted, and that discussion may
well contain the proper long-term fix.

Suggested-by: Adrian Bunk <bunk@stusta.de>
Acked-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agospidernet : fix memory leak in spider_net_stop
Jens Osterkamp [Thu, 1 Feb 2007 11:07:47 +0000 (12:07 +0100)]
spidernet : fix memory leak in spider_net_stop

We forget to call spider_net_free_rx_chain_contents which does the
actual dev_kfree_skb. New skbs are allocated from skbuff_head_cache
on each "ifconfig up" letting the cache grow infinitely.

This patch fixes it.

Signed-off-by: Jens Osterkamp <jens@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoe100: fix napi ifdefs removing needed code
Auke Kok [Wed, 31 Jan 2007 19:02:46 +0000 (11:02 -0800)]
e100: fix napi ifdefs removing needed code

e100: fix napi ifdefs removing needed code

From: Auke Kok <auke-jan.h.kok@intel.com>

The e100 driver is NAPI mode only. We need to netif_poll_disable
during suspend and shutdown. The non-NAPI driver code was removed
and is only avaiable in the out-of-tree e100 kernel driver.

Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoMerge ../linux-2.6
Jeff Garzik [Fri, 2 Feb 2007 13:31:55 +0000 (08:31 -0500)]
Merge ../linux-2.6

17 years ago[BNX2]: PHY workaround for 5709 A0.
Michael Chan [Fri, 2 Feb 2007 08:46:35 +0000 (00:46 -0800)]
[BNX2]: PHY workaround for 5709 A0.

5709 A0 copper devices will not link up with some link partners
without this workaround.

Update driver to 1.5.5.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NET_SCHED]: act_ipt: fix regression in ipt action
Patrick McHardy [Fri, 2 Feb 2007 08:40:36 +0000 (00:40 -0800)]
[NET_SCHED]: act_ipt: fix regression in ipt action

The x_tables patch broke target module autoloading in the ipt action
by replacing the ipt_find_target call (which does autoloading) by
xt_find_target (which doesn't do autoloading). Additionally xt_find_target
may return ERR_PTR values in case of an error, which are not handled.

Use xt_request_find_target, which does both autoloading and ERR_PTR
handling properly. Also don't forget to drop the target module reference
again when xt_check_target fails.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC32]: Fix over-optimization by GCC near ip_fast_csum.
Bob Breuer [Fri, 2 Feb 2007 04:24:35 +0000 (20:24 -0800)]
[SPARC32]: Fix over-optimization by GCC near ip_fast_csum.

In some cases such as:
iph->check = 0;
iph->check = ip_fast_csum((unsigned char *)iph, iph->ihl);
GCC may optimize out the previous store.

Observed as a failure of NFS over udp (bad checksums on ip fragments)
when compiled with GCC 3.4.2.

Signed-off-by: Bob Breuer <breuerr@mc.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[PATCH] Remove avr32@atmel.com from MAINTAINERS
Haavard Skinnemoen [Thu, 1 Feb 2007 15:49:31 +0000 (16:49 +0100)]
[PATCH] Remove avr32@atmel.com from MAINTAINERS

avr32@atmel.com is a technical support address and is not really
appropriate for sending patches. Lots of annoying automatics getting
in the way.

I'm still the maintainer of all the entries touched by this patch, so
nothing changes with regard to the "Supported" status of the AVR32
architecture or the macb driver.

Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] via82cxxx: fix typo ("cx7000" should be corrected to "cx700")
Bartlomiej Zolnierkiewicz [Thu, 1 Feb 2007 13:12:27 +0000 (14:12 +0100)]
[PATCH] via82cxxx: fix typo ("cx7000" should be corrected to "cx700")

Noticed by JosephChan@via.com.tw.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] sysrq: showBlockedTasks is sysrq-W
Randy Dunlap [Thu, 1 Feb 2007 07:48:17 +0000 (23:48 -0800)]
[PATCH] sysrq: showBlockedTasks is sysrq-W

Change SysRq showBlockedTasks from sysrq-X to sysrq-W and show that in the
Help message.

It was previously done via X, but X is already used for Xmon on ppc & powerpc
platforms and this collision needs to be avoided.

All callers of register_sysrq_key() are now marked in the sysrq op/key table.
I didn't mark 'h' as Help because Help is just printed for any unknown key,
such as '?'.

Added some omitted sysrq key entries in the sysrq.txt file.

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] procfs: Fix listing of /proc/NOT_A_TGID/task
Guillaume Chazarain [Thu, 1 Feb 2007 07:48:14 +0000 (23:48 -0800)]
[PATCH] procfs: Fix listing of /proc/NOT_A_TGID/task

Listing /proc/PID/task were PID is not a TGID should not result in
duplicated entries.

[g ~]$ pidof thunderbird-bin
2751
[g ~]$ ls /proc/2751/task
2751  2770  2771  2824  2826  2834  2835  2851  2853
[g ~]$ ls /proc/2770/task
2751  2770  2771  2824  2826  2834  2835  2851  2853
2770  2771  2824  2826  2834  2835  2851  2853
[g ~]$

Signed-off-by: Guillaume Chazarain <guichaz@yahoo.fr>
Acked-by: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] KVM: fix lockup on 32-bit intel hosts with nx disabled in the bios
Avi Kivity [Thu, 1 Feb 2007 07:48:13 +0000 (23:48 -0800)]
[PATCH] KVM: fix lockup on 32-bit intel hosts with nx disabled in the bios

Intel hosts, without long mode, and with nx support disabled in the bios
have an efer that is readable but not writable.  This causes a lockup on
switch to guest mode (even though it should exit with reason 34 according
to the documentation).

Signed-off-by: Avi Kivity <avi@qumranet.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] pci: remove warning messages
Andrew Morton [Thu, 1 Feb 2007 07:48:13 +0000 (23:48 -0800)]
[PATCH] pci: remove warning messages

Remove these recently-added warnings.  They don't tell us anythng very
interesting and Kumar says "On an embedded PPC reference system I see this
message 6 times when I've got no cards in the PCI slots."

Acked-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] via quirk update
Jean Delvare [Thu, 1 Feb 2007 07:48:12 +0000 (23:48 -0800)]
[PATCH] via quirk update

Add special handling for the VT82C686.

Signed-off-by: Jean Delvare <jdelvare@suse.de>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] uml-i386: fix build breakage with CONFIG_HIGHMEM
Al Viro [Thu, 1 Feb 2007 13:53:04 +0000 (13:53 +0000)]
[PATCH] uml-i386: fix build breakage with CONFIG_HIGHMEM

missing helper used by arch/i386/mm/highmem.c, which is pulled
into build on that configuration.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] radio modems sitting on serial port are not for s390
Al Viro [Thu, 1 Feb 2007 13:52:59 +0000 (13:52 +0000)]
[PATCH] radio modems sitting on serial port are not for s390

Won't build (request_irq()/free_irq()), even if you manage to find an
s390 box with 8250-compatible UART they are expecting.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] sanitize sections for sparc32 smp
Al Viro [Thu, 1 Feb 2007 13:52:33 +0000 (13:52 +0000)]
[PATCH] sanitize sections for sparc32 smp

a) sun4d_boot_one_cpu() should be __cpuinit (called only from
   __cpuinit __cpu_up(), for one thing, leads to calls of __cpuinit
   functions for another).
b) got externs in arch/sparc/kernel/smp.c to match reality.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] efi_set_rtc_mmss() is not __init
Al Viro [Thu, 1 Feb 2007 13:52:54 +0000 (13:52 +0000)]
[PATCH] efi_set_rtc_mmss() is not __init

fix the extern in efi.h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] __crc_... is intended to be absolute
Al Viro [Thu, 1 Feb 2007 13:52:23 +0000 (13:52 +0000)]
[PATCH] __crc_... is intended to be absolute

i386 boot/compressed/relocs checks for absolute symbols and warns about
unexpected ones.  If you build with modversions, you get ~2500 warnings
about __crc_<symbol>.  These suckers are really absolute symbols - we
do _not_ want to modify them on relocation.

They are generated by genksyms - EXPORT_... generates a weak alias, then
genksyms produces an ld script with __crc_<symbol> = <checksum> and it's
fed to ld to produce the final object file.  Their only use is to match
kernel and module at modprobe time; they _must_ be absolute.

boot/compressed/relocs has a whitelist of known absolute symbols, but
it doesn't know about __crc_... stuff.  As the result, we get shitloads
of false positives on any ld(1) version.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] fork_idle() should be __cpuinit, not __devinit
Al Viro [Thu, 1 Feb 2007 13:52:48 +0000 (13:52 +0000)]
[PATCH] fork_idle() should be __cpuinit, not __devinit

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] endianness bug: ntohl() misspelled as >> 24 in fh_verify().
Al Viro [Thu, 1 Feb 2007 13:52:43 +0000 (13:52 +0000)]
[PATCH] endianness bug: ntohl() misspelled as >> 24 in fh_verify().

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] ide section fixes
Al Viro [Thu, 1 Feb 2007 13:52:38 +0000 (13:52 +0000)]
[PATCH] ide section fixes

a) cleanup_module() should be __exit
b) externs should match reality

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] mca_nmi_hook() can be called at any point
Al Viro [Thu, 1 Feb 2007 13:52:28 +0000 (13:52 +0000)]
[PATCH] mca_nmi_hook() can be called at any point

... and having it __init is a bad idea.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] fix frv headers_check
Al Viro [Thu, 1 Feb 2007 13:08:45 +0000 (13:08 +0000)]
[PATCH] fix frv headers_check

a) registers.h is really needed there
b) include of asm-generic/termios should be under __KERNEL__
c) includes of asm-generic/{memory_model,page} should be under
   __KERNEL (nothing in there that would work in userland)
d) a lot of stuff in ptrace.h should be under __KERNEL__.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Thu, 1 Feb 2007 00:58:12 +0000 (16:58 -0800)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
  [NETFILTER]: xt_hashlimit: fix ip6tables dependency
  [SCTP]: Force update of the rto when processing HB-ACK
  [IPV6]: fix BUG of ndisc_send_redirect()
  [IPV6]: Fix up some CONFIG typos
  [NETFILTER]: SIP conntrack: fix out of bounds memory access
  [NETFILTER]: SIP conntrack: fix skipping over user info in SIP headers
  [NETFILTER]: xt_connbytes: fix division by zero
  [MAINTAINERS]: netfilter@ is subscribers-only

17 years agoRevert "[PATCH] mm: micro optimise zone_watermark_ok"
Linus Torvalds [Thu, 1 Feb 2007 00:43:36 +0000 (16:43 -0800)]
Revert "[PATCH] mm: micro optimise zone_watermark_ok"

This reverts commit e80ee884ae0e3794ef2b65a18a767d502ad712ee.

Pawel Sikora had a boot-time oops due to it - because the sign change
invalidates the following comparisons, since 'free_pages' can be
negative.

The micro-optimization just isn't worth it.

Bisected-by: Pawel Sikora <pluto@agmk.net>
Acked-by: Andrew Morton <akpm@osdl.org>
Cc: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agonetxen patches
Al Viro [Tue, 2 Jan 2007 10:39:10 +0000 (10:39 +0000)]
netxen patches

Have fun.

>From 24f4a1a77431575a9cdfaae25adda85842099f70 Mon Sep 17 00:00:00 2001
From: Al Viro <viro@zeniv.linux.org.uk>
Date: Mon, 1 Jan 2007 15:22:56 -0500
Subject: [PATCH] netxen trivial annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[NETFILTER]: xt_hashlimit: fix ip6tables dependency
Patrick McHardy [Wed, 31 Jan 2007 05:36:09 +0000 (21:36 -0800)]
[NETFILTER]: xt_hashlimit: fix ip6tables dependency

IP6_NF_IPTABLES=m, CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=y results in a
linker error since ipv6_find_hdr is defined in ip6_tables.c. Fix similar
to Adrian Bunk's H.323 conntrack patch: selecting ip6_tables to be build
as module requires hashlimit to be built as module as well.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoLinux 2.6.20-rc7
Linus Torvalds [Wed, 31 Jan 2007 03:42:57 +0000 (19:42 -0800)]
Linux 2.6.20-rc7

Ok, so I said there wouldn't be another -rc.

I lied.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jikos/hid
Linus Torvalds [Wed, 31 Jan 2007 01:02:08 +0000 (17:02 -0800)]
Merge branch 'for-linus' of /linux/kernel/git/jikos/hid

* 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jikos/hid:
  HID: fix pb_fnmode and move it to generic HID
  HID: fix hid-input mapping for Firefly Mini Remote Control
  USB HID: fix hid_blacklist clash for 0x08ca/0x0010
  HID: fix memleaking of collection

17 years ago[PATCH] IPMI: fix timeout list handling
David Barksdale [Tue, 30 Jan 2007 22:36:25 +0000 (14:36 -0800)]
[PATCH] IPMI: fix timeout list handling

Fix a dangling pointer bug in ipmi_timeout_handler.  A list of timedout
messages is not re-initialized before reuse, causing the head of the list
to point to freed memory.

Signed-off-by: David Barksdale <amatus@ocgnet.org>
Signed-off-by: Corey Minyard <minyard@acm.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] ntfs: kmap_atomic() atomicity fix
Andrew Morton [Tue, 30 Jan 2007 22:36:24 +0000 (14:36 -0800)]
[PATCH] ntfs: kmap_atomic() atomicity fix

The KM_BIO_SRC_IRQ kmap slot requires local irq protection.

Acked-by: Anton Altaparmakov <aia21@cantab.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] uml: fix signal frame alignment
Jeff Dike [Tue, 30 Jan 2007 22:36:17 +0000 (14:36 -0800)]
[PATCH] uml: fix signal frame alignment

Use the same signal frame alignment calculations as the underlying
architecture.  x86_64 appeared to do this, but the "- 8" was really
subtracting 8 * sizeof(struct rt_sigframe) rather than 8 bytes.

UML/i386 might have been OK, but I changed the calculation to match
i386 just to be sure.

Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: <stable@kernel.org>
Cc: Adrian Bunk <bunk@stusta.de>
Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Acked-by: Antoine Martin <antoine@nagafix.co.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] jmicron: 40/80pin primary detection
ethanhsiao@jmicron.com [Tue, 30 Jan 2007 22:36:13 +0000 (14:36 -0800)]
[PATCH] jmicron: 40/80pin primary detection

jmicron module detects all JMB36x as JMB361 and PATA0 has wrong pin status
of XICBLID.

Cc: Jeff Garzik <jeff@garzik.org>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] Fix VIA quirks
Jean Delvare [Tue, 30 Jan 2007 22:36:09 +0000 (14:36 -0800)]
[PATCH] Fix VIA quirks

Fix VIA quirks that were recently broken by Alan Cox in the upstream
kernel (commit 1597cacbe39802d86656d1f2e6329895bd2ef531).

My understanding is that pci_find_present() doesn't work yet at the time
the quirks are run.  So I used a two-step quirk as is done for some other
quirks already.  First we detect the VIA south bridges and set the right
low and high device limits, then we are ready to actually run the quirks on
the affected devices.

Signed-off-by: Jean Delvare <jdelvare@suse.de>
Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk>
Acked-by: Nick Piggin <nickpiggin@yahoo.com.au>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] kprobes: replace magic numbers with enum
Masami Hiramatsu [Tue, 30 Jan 2007 22:36:06 +0000 (14:36 -0800)]
[PATCH] kprobes: replace magic numbers with enum

Replace the magic numbers with an enum, and gets rid of a warning on the
specific architectures (ex.  powerpc) on which the compiler considers
'char' as 'unsigned char'.

Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Cc: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] Remove warning: VFS is out of sync with lock manager
Neil Brown [Tue, 30 Jan 2007 22:36:01 +0000 (14:36 -0800)]
[PATCH] Remove warning: VFS is out of sync with lock manager

But keep it as a dprintk

The message can be generated in a quite normal situation:
 If a 'lock' request is interrupted, then the lock client needs to
  record that the server has the lock, incase it does.
 When we come the unlock, the server might say it doesn't, even
  though we think it does (or might) and this generates the message.

Signed-off-by: Neil Brown <neilb@suse.de>
Acked-by: Trond Myklebust <trond.myklebust@fys.uio.no>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] translate dashes in filenames for headers install
Mike Frysinger [Tue, 30 Jan 2007 22:35:55 +0000 (14:35 -0800)]
[PATCH] translate dashes in filenames for headers install

The current filename->define translation does not scrub dashes so when
creating stub defines for like asm-x86_64/ptrace-abi.h, we get: #define
__ASM_STUB_PTRACE-ABI_H

gcc just hates that sort of thing :)

trivial attached patch adds - to the tr list to scrub it to _

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Cc: David Woodhouse <dwmw2@infradead.org>
Cc: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] Don't allow the stack to grow into hugetlb reserved regions
Adam Litke [Tue, 30 Jan 2007 22:35:39 +0000 (14:35 -0800)]
[PATCH] Don't allow the stack to grow into hugetlb reserved regions

When expanding the stack, we don't currently check if the VMA will cross
into an area of the address space that is reserved for hugetlb pages.
Subsequent faults on the expanded portion of such a VMA will confuse the
low-level MMU code, resulting in an OOPS.  Check for this.

Signed-off-by: Adam Litke <agl@us.ibm.com>
Cc: David Gibson <david@gibson.dropbear.id.au>
Cc: William Lee Irwin III <wli@holomorphy.com>
Cc: Hugh Dickins <hugh@veritas.com>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[SCTP]: Force update of the rto when processing HB-ACK
Vlad Yasevich [Tue, 30 Jan 2007 22:36:14 +0000 (14:36 -0800)]
[SCTP]: Force update of the rto when processing HB-ACK

When processing a HEARTBEAT-ACK it's possible that the transport rto
timers will not be updated because a prior T3-RTX processing would
have cleared the rto_pending flag on the transport.  However, if
we received a valid HEARTBEAT-ACK, we want to force update the
rto variables, so re-set the rto_pending flag before calling
sctp_transport_update_rto().

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPV6]: fix BUG of ndisc_send_redirect()
Li Yewang [Tue, 30 Jan 2007 22:33:20 +0000 (14:33 -0800)]
[IPV6]: fix BUG of ndisc_send_redirect()

  When I tested IPv6 redirect function about kernel 2.6.19.1, and found
that the kernel can send redirect packets whose target address is global
address, and the target is not the actual endpoint of communication.

  But the criteria conform to RFC2461, the target address defines as
following:

  Target Address An IP address that is a better first hop to use for
                 he ICMP Destination Address.  When the target is
                 the actual endpoint of communication, i.e., the
                 destination is a neighbor, the Target Address field
                 MUST contain the same value as the ICMP Destination
                 Address field.  Otherwise the target is a better
                 first-hop router and the Target Address MUST be the
                 router's link-local address so that hosts can
                 uniquely identify routers.

According to this definition, when a router redirect to a host, the
target address either the better first-hop router's link-local address
or the same as the ICMP destination address field. But the function of
ndisc_send_redirect() in net/ipv6/ndisc.c, does not check the target
address correctly.

There is another definition about receive Redirect message in RFC2461:

8.1.  Validation of Redirect Messages

   A host MUST silently discard any received Redirect message that does
   not satisfy all of the following validity checks:
   ......
   - The ICMP Target Address is either a link-local address (when
     redirected to a router) or the same as the ICMP Destination
     Address (when redirected to the on-link destination).
   ......

And the receive redirect function of ndisc_redirect_rcv() implemented
this definition, checks the target address correctly.
    if (ipv6_addr_equal(dest, target)) {
        on_link = 1;
    } else if (!(ipv6_addr_type(target) & IPV6_ADDR_LINKLOCAL)) {
        ND_PRINTK2(KERN_WARNING
               "ICMPv6 Redirect: target address is not link-local.\n");
        return;
    }

So, I think the send redirect function must check the target address
also.

Signed-off-by: Li Yewang <lyw@nanjing-fnst.com>
Acked-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>