linux-2.6-microblaze.git
18 years ago[TCP]: continued: reno sacked_out count fix
Aki M Nyrhinen [Mon, 12 Jun 2006 04:18:56 +0000 (21:18 -0700)]
[TCP]: continued: reno sacked_out count fix

From: Aki M Nyrhinen <anyrhine@cs.helsinki.fi>

IMHO the current fix to the problem (in_flight underflow in reno)
is incorrect.  it treats the symptons but ignores the problem. the
problem is timing out packets other than the head packet when we
don't have sack. i try to explain (sorry if explaining the obvious).

with sack, scanning the retransmit queue for timed out packets is
fine because we know which packets in our retransmit queue have been
acked by the receiver.

without sack, we know only how many packets in our retransmit queue the
receiver has acknowledged, but no idea which packets.

think of a "typical" slow-start overshoot case, where for example
every third packet in a window get lost because a router buffer gets
full.

with sack, we check for timeouts on those every third packet (as the
rest have been sacked). the packet counting works out and if there
is no reordering, we'll retransmit exactly the packets that were
lost.

without sack, however, we check for timeout on every packet and end up
retransmitting consecutive packets in the retransmit queue. in our
slow-start example, 2/3 of those retransmissions are unnecessary. these
unnecessary retransmissions eat the congestion window and evetually
prevent fast recovery from continuing, if enough packets were lost.

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[DCCP] Ackvec: fix soft lockup in ackvec handling code
Andrea Bittau [Mon, 12 Jun 2006 03:58:33 +0000 (20:58 -0700)]
[DCCP] Ackvec: fix soft lockup in ackvec handling code

A soft lockup existed in the handling of ack vector records.
Specifically, when a tail of the list of ack vector records was
removed, it was possible to end up iterating infinitely on an element
of the tail.

Signed-off-by: Andrea Bittau <a.bittau@cs.ucl.ac.uk>
Signed-off-by: Ian McDonald <ian.mcdonald@jandi.co.nz>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[PATCH] Fix for the PPTP hangs that have been reported
Paul Mackerras [Mon, 12 Jun 2006 02:16:26 +0000 (12:16 +1000)]
[PATCH] Fix for the PPTP hangs that have been reported

People have been reporting that PPP connections over ptys, such as
used with PPTP, will hang randomly when transferring large amounts of
data, for instance in http://bugzilla.kernel.org/show_bug.cgi?id=6530.
I have managed to reproduce the problem, and the patch below fixes the
actual cause.

The problem is not in fact in ppp_async.c but in n_tty.c.  What
happens is that when pptp reads from the pty, we call read_chan() in
drivers/char/n_tty.c on the master side of the pty.  That copies all
the characters out of its buffer to userspace and then calls
check_unthrottle(), which calls the pty unthrottle routine, which
calls tty_wakeup on the slave side, which calls ppp_asynctty_wakeup,
which calls tasklet_schedule.  So far so good.  Since we are in
process context, the tasklet runs immediately and calls
ppp_async_process(), which calls ppp_async_push, which calls the
tty->driver->write function to send some more output.

However, tty->driver->write() returns zero, because the master
tty->receive_room is still zero.  We haven't returned from
check_unthrottle() yet, and read_chan() only updates tty->receive_room
_after_ calling check_unthrottle.  That means that the driver->write
call in ppp_async_process() returns 0.  That would be fine if we were
going to get a subsequent wakeup call, but we aren't (we just had it,
and the buffer is now empty).

The solution is for n_tty.c to update tty->receive_room _before_
calling the driver unthrottle routine.  The patch below does this.
With this patch I was able to transfer a 900MB file over a PPTP
connection (taking about 25 minutes), whereas without the patch the
connection would always stall in under a minute.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6
Linus Torvalds [Sun, 11 Jun 2006 22:28:04 +0000 (15:28 -0700)]
Merge /pub/scm/linux/kernel/git/gregkh/pci-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6:
  [PATCH] PCI: reverse pci config space restore order
  [PATCH] PCI: Improve PCI config space writeback
  [PATCH] PCI: Error handling on PCI device resume
  [PATCH] PCI: fix pciehp compile issue when CONFIG_ACPI is not enabled

18 years ago[PATCH] typo in vmscan.c
Christoph Lameter [Sun, 11 Jun 2006 22:22:26 +0000 (15:22 -0700)]
[PATCH] typo in vmscan.c

From: Christoph Lameter <clameter@sgi.com>

Looks like a comma was left from the conversion from a struct to an
assignment.

Signed-off-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] PCI: reverse pci config space restore order
Yu, Luming [Tue, 25 Apr 2006 07:00:34 +0000 (00:00 -0700)]
[PATCH] PCI: reverse pci config space restore order

According to Intel ICH spec, there are several rules that Base Address
should be programmed before IOSE  (PCICMD register ) enabled.

For example ICH7:

12.1.3  SATA : the base address register for the bus master register
               should be programmed before this bit is set.

11.1.3:  PCICMD (USB): The base address register for USB should be
                       programmed before this bit is set.
....

To make sure kernel code follow this rule , and prevent unnecessary
confusion. I proposal this patch.

Signed-off-by: Luming Yu <luming.yu@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI: Improve PCI config space writeback
Dave Jones [Wed, 19 Apr 2006 04:06:51 +0000 (21:06 -0700)]
[PATCH] PCI: Improve PCI config space writeback

At least one laptop blew up on resume from suspend with a black screen due
to a lack of this patch.  By only writing back config space that is
different, we minimise the possibility of accidents like this.

Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI: Error handling on PCI device resume
Jean Delvare [Tue, 18 Apr 2006 12:49:56 +0000 (14:49 +0200)]
[PATCH] PCI: Error handling on PCI device resume

We currently don't handle errors properly when resuming a PCI device:
* In pci_default_resume() we capture the error code returned by
  pci_enable_device() but don't pass it up to the caller.
  Introduced by commit 95a629657dbe28e44a312c47815b3dc3f1ce0970
* In pci_resume_device(), the errors possibly returned by the driver's
  .resume method or by the generic pci_default_resume() function are
  ignored.

This patch fixes both issues.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] PCI: fix pciehp compile issue when CONFIG_ACPI is not enabled
akpm@osdl.org [Sat, 13 May 2006 15:30:52 +0000 (08:30 -0700)]
[PATCH] PCI: fix pciehp compile issue when CONFIG_ACPI is not enabled

Fix build error when CONFIG_ACPI not defined

Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[SPARC]: Migration cost tune up in sparc smp.
Krzysztof Helt [Sun, 11 Jun 2006 05:03:43 +0000 (22:03 -0700)]
[SPARC]: Migration cost tune up in sparc smp.

This patch sets the max_cache_size value required to tune up
scheduler in SMP systems. Otherwise, the calculated
migration_cost is too high and task scheduling may lock up.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC64]: Set appropriate max_cache_size.
David S. Miller [Sun, 11 Jun 2006 05:02:17 +0000 (22:02 -0700)]
[SPARC64]: Set appropriate max_cache_size.

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Sat, 10 Jun 2006 18:03:51 +0000 (11:03 -0700)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SPARC64]: Avoid JBUS errors on some Niagara systems.
  [FUSION]: Fix mptspi.c build with CONFIG_PM not set.
  [TG3]: Handle Sun onboard tg3 chips more correctly.
  [SPARC64]: Dump local cpu registers in sun4v_log_error()

18 years ago[PATCH] powerpc: console_initcall ordering issues
Milton Miller [Sat, 10 Jun 2006 16:54:16 +0000 (09:54 -0700)]
[PATCH] powerpc: console_initcall ordering issues

From: Milton Miller <miltonm@bga.com>

The add_preferred_console call in rtas_console.c was not causing the
console to be selected.  It turns out that the add_preferred_console was
being called after the hvc_console driver was registered.  It only works
when it is called before the console driver is registered.

Reorder hvc_console.o after the hvc_console drivers to allow the selection
during console_initcall processing.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Anton Blanchard <anton@samba.org>
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] I2O: Bugfixes to get I2O working again
Markus Lidel [Sat, 10 Jun 2006 16:54:14 +0000 (09:54 -0700)]
[PATCH] I2O: Bugfixes to get I2O working again

From: Markus Lidel <Markus.Lidel@shadowconnect.com>

- Fixed locking of struct i2o_exec_wait in Executive-OSM

- Removed LCT Notify in i2o_exec_probe() which caused freeing memory and
  accessing freed memory during first enumeration of I2O devices

- Added missing locking in i2o_exec_lct_notify()

- removed put_device() of I2O controller in i2o_iop_remove() which caused
  the controller structure get freed to early

- Fixed size of mempool in i2o_iop_alloc()

- Fixed access to freed memory in i2o_msg_get()

See http://bugzilla.kernel.org/show_bug.cgi?id=6561

Signed-off-by: Markus Lidel <Markus.Lidel@shadowconnect.com>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] powernow-k8 crash workaround
Andrew Morton [Sat, 10 Jun 2006 16:54:13 +0000 (09:54 -0700)]
[PATCH] powernow-k8 crash workaround

From: Andrew Morton <akpm@osdl.org>

Work around the oops reported in
http://bugzilla.kernel.org/show_bug.cgi?id=6478.

Thanks to Ralf Hildebrandt <ralf.hildebrandt@charite.de> for testing and
reporting.

Acked-by: Dave Jones <davej@codemonkey.org.uk>
Cc: "Brown, Len" <len.brown@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Further alterations for memory barrier document
David Howells [Sat, 10 Jun 2006 16:54:12 +0000 (09:54 -0700)]
[PATCH] Further alterations for memory barrier document

From: David Howells <dhowells@redhat.com>

Apply some alterations to the memory barrier document that I worked out
with Paul McKenney of IBM, plus some of the alterations suggested by Alan
Stern.

The following changes were made:

 (*) One of the examples given for what can happen with overlapping memory
     barriers was wrong.

 (*) The description of general memory barriers said that a general barrier is
     a combination of a read barrier and a write barrier.  This isn't entirely
     true: it implies both, but is more than a combination of both.

 (*) The first example in the "SMP Barrier Pairing" section was wrong: the
     loads around the read barrier need to touch the memory locations in the
     opposite order to the stores around the write barrier.

 (*) Added a note to make explicit that the loads should be in reverse order to
     the stores.

 (*) Adjusted the diagrams in the "Examples Of Memory Barrier Sequences"
     section to make them clearer.  Added a couple of diagrams to make it more
     clear as to how it could go wrong without the barrier.

 (*) Added a section on memory speculation.

 (*) Dropped any references to memory allocation routines doing memory
     barriers.  They may do sometimes, but it can't be relied on.  This may be
     worthy of further documentation later.

 (*) Made the fact that a LOCK followed by an UNLOCK should not be considered a
     full memory barrier more explicit and gave an example.

Signed-off-by: David Howells <dhowells@redhat.com>
Acked-by: Paul E. McKenney <paulmck@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoMerge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
Linus Torvalds [Sat, 10 Jun 2006 17:59:39 +0000 (10:59 -0700)]
Merge branch 'merge' of git://git./linux/kernel/git/paulus/powerpc

* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
  [PATCH] powerpc: Fix cell blade detection
  [PATCH] powerpc: Fix call to ibm,client-architecture-support
  powerpc: Fix machine check problem on 32-bit kernels

18 years ago[SPARC64]: Avoid JBUS errors on some Niagara systems.
David S. Miller [Sat, 10 Jun 2006 08:06:25 +0000 (01:06 -0700)]
[SPARC64]: Avoid JBUS errors on some Niagara systems.

Doing PCI config space accesses to non-present PCI slots
can result in fatal JBUS errors if the PCI config access
hypervisor call is performed on cpus other than the boot
cpu.

PCI config space accesses to present PCI slots works just
fine.

Recursively traverse the OBP device tree under the PCI
controller node and record all present device IDs into
a small hash table.

Avoid the hypervisor call for any PCI config space access
attempt for a device not recorded in the hash table.

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[FUSION]: Fix mptspi.c build with CONFIG_PM not set.
Tom "spot" Callaway [Sat, 10 Jun 2006 00:01:48 +0000 (17:01 -0700)]
[FUSION]: Fix mptspi.c build with CONFIG_PM not set.

Signed-off-by: Tom "spot" Callaway <tcallawa@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[TG3]: Handle Sun onboard tg3 chips more correctly.
David S. Miller [Fri, 9 Jun 2006 18:58:36 +0000 (11:58 -0700)]
[TG3]: Handle Sun onboard tg3 chips more correctly.

Get rid of all the SUN_570X logic and instead:

1) Make sure MEMARB_ENABLE is set when we probe the SRAM
   for config information.  If that is off we will get
   timeouts.

2) Always try to sync with the firmware, if there is no
   firmware running do not treat it as an error and instead
   just report it the first time we notice this condition.

3) If there is no valid SRAM signature, assume the device
   is onboard by setting TG3_FLAG_EEPROM_WRITE_PROT.

Update driver version and release date.

With help from Michael Chan and Fabio Massimo Di Nitto.

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC64]: Dump local cpu registers in sun4v_log_error()
David S. Miller [Wed, 7 Jun 2006 00:37:41 +0000 (17:37 -0700)]
[SPARC64]: Dump local cpu registers in sun4v_log_error()

This makes the debugging information more usable.

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[PATCH] powerpc: Fix cell blade detection
Arnd Bergmann [Wed, 7 Jun 2006 02:04:18 +0000 (12:04 +1000)]
[PATCH] powerpc: Fix cell blade detection

The IBM Cell blade firmware might confuse the kernel to think it's a
pSeries machine. This fixes it for now. With a bit of luck, the firmware
will be updated to avoid that in the future but currently that patch is
needed.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Fix call to ibm,client-architecture-support
Benjamin Herrenschmidt [Wed, 7 Jun 2006 02:01:32 +0000 (12:01 +1000)]
[PATCH] powerpc: Fix call to ibm,client-architecture-support

The code in prom_init.c calling the firmware
ibm,client-architecture-support method on pSeries has a bug where it
fails to properly pass the instance handle of the firmware object when
trying to call a method. Result ranges from the call doing nothing to
the firmware crashing. (Found by Segher, thanks !)

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Segher Boessenkool <segher@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agopowerpc: Fix machine check problem on 32-bit kernels
Paul Mackerras [Fri, 9 Jun 2006 03:02:59 +0000 (13:02 +1000)]
powerpc: Fix machine check problem on 32-bit kernels

This fixes a bug found by Dave Jones that means that it is possible
for userspace to provoke a machine check on 32-bit kernels.  This
also fixes a couple of other places where I found similar problems
by inspection.

Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agoMerge branch 'upstream-fixes' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Thu, 8 Jun 2006 22:16:35 +0000 (15:16 -0700)]
Merge branch 'upstream-fixes' of /linux/kernel/git/jgarzik/netdev-2.6

* 'upstream-fixes' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6:
  e1000: remove risky prefetch on next_skb->data
  e1000: fix ethtool test irq alloc as "probe"
  [PATCH] bcm43xx: add DMA rx poll workaround to DMA4

18 years ago[PATCH] s390: fix in-user atomic futex operation.
Martin Schwidefsky [Thu, 8 Jun 2006 08:36:20 +0000 (01:36 -0700)]
[PATCH] s390: fix in-user atomic futex operation.

From: Martin Schwidefsky <schwidefsky@de.ibm.com>

__futex_atomic_op needs to do an atomic operation in the user address space,
not the kernel address space.  Add the missing sacf 256/sacf 0 to switch to
the secondary mode before doing the compare-and-swap.  In addition add
another fixup for catch specification exceptions if the compare-and-swap
address is not aligned.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] debugfs inode leak
Jens Axboe [Thu, 8 Jun 2006 08:26:39 +0000 (10:26 +0200)]
[PATCH] debugfs inode leak

Looking at the reiser4 crash, I found a leak in debugfs. In
debugfs_mknod(), we create the inode before checking if the dentry
already has one attached. We don't free it if that is the case.

These bugs happen quite often, I'm starting to think we should disallow
such coding in CodingStyle.

Signed-off-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] elevator switching race
Jens Axboe [Thu, 8 Jun 2006 06:49:06 +0000 (08:49 +0200)]
[PATCH] elevator switching race

There's a race between shutting down one io scheduler and firing up the
next, in which a new io could enter and cause the io scheduler to be
invoked with bad or NULL data.

To fix this, we need to maintain the queue lock for a bit longer.
Unfortunately we cannot do that, since the elevator init requires to be
run without the lock held.  This isn't easily fixable, without also
changing the mempool API.  So split the initialization into two parts,
and alloc-init operation and an attach operation.  Then we can
preallocate the io scheduler and related structures, and run the attach
inside the lock after we detach the old one.

This patch has survived 30 minutes of 1 second io scheduler switching
with a very busy io load.

Signed-off-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] fbcon: fix limited scroll in SCROLL_PAN_REDRAW mode
Malcom Parsons [Thu, 8 Jun 2006 07:43:42 +0000 (00:43 -0700)]
[PATCH] fbcon: fix limited scroll in SCROLL_PAN_REDRAW mode

From: Malcom Parsons <malcolm.parsons@gmail.com>

When scrolling up in SCROLL_PAN_REDRAW mode with a large limited scroll
region, the bottom few lines have to be redrawn.  Without this patch, the
wrong text is drawn into these lines, corrupting the display.

Observed in 2.6.14 when running an IRC client in the Nintendo DS linux
port.

I haven't tested if scrolling down has the same problem.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Fix mempolicy.h build error
Ralf Baechle [Thu, 8 Jun 2006 07:43:41 +0000 (00:43 -0700)]
[PATCH] Fix mempolicy.h build error

From: Ralf Baechle <ralf@linux-mips.org>

<linux/mempolicy.h> uses struct mm_struct and relies on a definition or
declaration somehow magically being dragged in which may result in a
build:

[...]
  CC      mm/mempolicy.o
In file included from mm/mempolicy.c:69:
include/linux/mempolicy.h:150: warning: Ã¢\80\98struct mm_structâ\80\99 declared inside parameter list
include/linux/mempolicy.h:150: warning: its scope is only this definition or declaration, which is probably not what you want
include/linux/mempolicy.h:175: warning: Ã¢\80\98struct mm_structâ\80\99 declared inside parameter list
mm/mempolicy.c:622: error: conflicting types for Ã¢\80\98do_migrate_pagesâ\80\99
include/linux/mempolicy.h:175: error: previous declaration of Ã¢\80\98do_migrate_pagesâ\80\99 was here
mm/mempolicy.c:1661: error: conflicting types for Ã¢\80\98mpol_rebind_mmâ\80\99
include/linux/mempolicy.h:150: error: previous declaration of Ã¢\80\98mpol_rebind_mmâ\80\99 was here
make[1]: *** [mm/mempolicy.o] Error 1
make: *** [mm] Error 2
[ralf@denk linux-ip35]$

Including <linux/sched.h> is a step into direction of include hell so
fixed by adding a forward declaration of struct mm_struct instead.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ep93xx build fix
Lennert Buytenhek [Thu, 8 Jun 2006 07:43:40 +0000 (00:43 -0700)]
[PATCH] ep93xx build fix

From: Lennert Buytenhek <buytenh@wantstofly.org>

The recent renaming of m48t86's ->readb() and ->writeb() platform driver
methods (2d7b20c1884777e66009be1a533641c19c4705f6) to ->readbyte() and
->writebyte() to fix the ia64 build broke the build of the cirrus ep93xx
ARM platform.  This patch fixes it up.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Cc: Russell King <rmk@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Fix HPET operation on 64-bit NVIDIA platforms
Andy Currid [Thu, 8 Jun 2006 07:43:39 +0000 (00:43 -0700)]
[PATCH] Fix HPET operation on 64-bit NVIDIA platforms

From: "Andy Currid" <ACurrid@nvidia.com>

This patch fixes a kernel panic during boot that occurs on NVIDIA platforms
that have HPET enabled.

When HPET is enabled, the standard timer IRQ is routed to IOAPIC pin 2 and is
advertised as such in the ACPI APIC table - but an earlier workaround in the
kernel was ignoring this override.  The fix is to honor timer IRQ overrides
from ACPI when HPET is detected on an NVIDIA platform.

Signed-off-by: Andy Currid <acurrid@nvidia.com>
Cc: "Brown, Len" <len.brown@intel.com>
Cc: "Yu, Luming" <luming.yu@intel.com>
Cc: Andi Kleen <ak@muc.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Fix HPET operation on 32-bit NVIDIA platforms
Andy Currid [Thu, 8 Jun 2006 07:43:38 +0000 (00:43 -0700)]
[PATCH] Fix HPET operation on 32-bit NVIDIA platforms

From: "Andy Currid" <ACurrid@nvidia.com>

This patch fixes a kernel panic during boot that occurs on NVIDIA platforms
that have HPET enabled.

When HPET is enabled, the standard timer IRQ is routed to IOAPIC pin 2 and is
advertised as such in the ACPI APIC table - but an earlier workaround in the
kernel was ignoring this override.  The fix is to honor timer IRQ overrides
from ACPI when HPET is detected on an NVIDIA platform.

Signed-off-by: Andy Currid <acurrid@nvidia.com>
Cc: "Brown, Len" <len.brown@intel.com>
Cc: "Yu, Luming" <luming.yu@intel.com>
Cc: Andi Kleen <ak@muc.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoMerge branch 'upstream-fixes' of git://lost.foo-projects.org/~ahkok/git/netdev-2...
Jeff Garzik [Thu, 8 Jun 2006 19:49:36 +0000 (15:49 -0400)]
Merge branch 'upstream-fixes' of git://lost.foo-projects.org/~ahkok/git/netdev-2.6 into upstream-fixes

18 years agoMerge branch 'upstream-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/linvil...
Jeff Garzik [Thu, 8 Jun 2006 19:46:27 +0000 (15:46 -0400)]
Merge branch 'upstream-fixes' of git://git./linux/kernel/git/linville/wireless-2.6 into upstream-fixes

18 years agoe1000: remove risky prefetch on next_skb->data
Auke Kok [Thu, 8 Jun 2006 16:28:47 +0000 (09:28 -0700)]
e1000: remove risky prefetch on next_skb->data

It was brought to our attention that the prefetches break e1000 traffic
on xscale/arm architectures.  Remove them for now.  We'll let them
stay in mm for a while, or find a better solution to enable.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
18 years agoe1000: fix ethtool test irq alloc as "probe"
Auke Kok [Thu, 8 Jun 2006 16:28:38 +0000 (09:28 -0700)]
e1000: fix ethtool test irq alloc as "probe"

New code added in 2.6.17 caused setup_irq to print a warning when
running ethtool -t eth0 offline.

This test marks the request_irq call made by this test as a "probe"
to see if the interrupt is shared or not.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
18 years agoLinux 2.6.17-rc6
Linus Torvalds [Tue, 6 Jun 2006 00:57:02 +0000 (17:57 -0700)]
Linux 2.6.17-rc6

18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Mon, 5 Jun 2006 23:59:46 +0000 (16:59 -0700)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
  [BRIDGE]: fix locking and memory leak in br_add_bridge
  [IRDA]: Missing allocation result check in irlap_change_speed().
  [PPPOE]: Missing result check in __pppoe_xmit().
  [NET]: Eliminate unused /proc/sys/net/ethernet
  [NETCONSOLE]: Clean up initcall warning.
  [TCP]: Avoid skb_pull if possible when trimming head

18 years ago[BRIDGE]: fix locking and memory leak in br_add_bridge
Jiri Benc [Mon, 5 Jun 2006 23:39:34 +0000 (16:39 -0700)]
[BRIDGE]: fix locking and memory leak in br_add_bridge

There are several bugs in error handling in br_add_bridge:
- when dev_alloc_name fails, allocated net_device is not freed
- unregister_netdev is called when rtnl lock is held
- free_netdev is called before netdev_run_todo has a chance to be run after
  unregistering net_device

Signed-off-by: Jiri Benc <jbenc@suse.cz>
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years agoMerge master.kernel.org:/home/rmk/linux-2.6-serial
Linus Torvalds [Mon, 5 Jun 2006 23:23:02 +0000 (16:23 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-serial

* master.kernel.org:/home/rmk/linux-2.6-serial:
  [SERIAL] typo: buad -> baud

18 years agoMerge master.kernel.org:/home/rmk/linux-2.6-mmc
Linus Torvalds [Mon, 5 Jun 2006 23:22:43 +0000 (16:22 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-mmc

* master.kernel.org:/home/rmk/linux-2.6-mmc:
  [MMC] Prevent au1xmmc.c breakage on non-Au1200 Alchemy
  [MMC] Add maintainers entry for MMC subsystem

18 years agoMerge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Mon, 5 Jun 2006 23:22:26 +0000 (16:22 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm

* master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] 3543/1: [Fwd: PXA270 bootparams address not set]
  [ARM] Trivial typo fixes

18 years ago[MIPS] Fix sparsemem support.
Chad Reese [Wed, 31 May 2006 00:16:49 +0000 (17:16 -0700)]
[MIPS] Fix sparsemem support.

Move memory_present() in arch/mips/kernel/setup.c. When using sparsemem
extreme, this function does an allocate for bootmem. This would always
fail since init_bootmem hasn't been called yet.

Move memory_present after free_bootmem. This only marks actual memory
ranges as present instead of the entire address space.

Signed-off-by: Chad Reese <creese@caviumnetworks.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] Fix compiler warnings (field width, unused variable)
Atsushi Nemoto [Wed, 31 May 2006 16:00:03 +0000 (01:00 +0900)]
[MIPS] Fix compiler warnings (field width, unused variable)

Fix following warnings:
linux/arch/mips/kernel/setup.c:432: warning: field width is not type int (arg 2)
linux/arch/mips/kernel/setup.c:432: warning: field width is not type int (arg 4)
linux/arch/mips/kernel/syscall.c:279: warning: unused variable `len'
linux/arch/mips/kernel/syscall.c:280: warning: unused variable `name'
linux/arch/mips/math-emu/dp_fint.c:32: warning: unused variable `xc'
linux/arch/mips/math-emu/dp_flong.c:32: warning: unused variable `xc'
linux/arch/mips/math-emu/sp_fint.c:32: warning: unused variable `xc'
linux/arch/mips/math-emu/sp_flong.c:32: warning: unused variable `xc'

(original patch by Atsushi, slight changes to the setup.c part by me.)

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] Fix sparse warnings about too big constants.
Atsushi Nemoto [Wed, 31 May 2006 16:00:39 +0000 (01:00 +0900)]
[MIPS] Fix sparse warnings about too big constants.

Fix following warnings:
linux/arch/mips/kernel/setup.c:249:12: warning: constant 0xffffffff00000000 is so big it is unsigned long
linux/arch/mips/kernel/cpu-bugs64.c:209:10: warning: constant 0xffffffffffffdb9a is so big it is unsigned long
linux/arch/mips/kernel/cpu-bugs64.c:227:10: warning: constant 0xffffffffffffdb9a is so big it is unsigned long
linux/arch/mips/kernel/cpu-bugs64.c:283:10: warning: constant 0xffffffffffffdb9a is so big it is unsigned long
linux/arch/mips/kernel/cpu-bugs64.c:299:10: warning: constant 0xffffffffffffdb9a is so big it is unsigned long

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] Fix 64-bit build for RM7000.
Ralf Baechle [Tue, 30 May 2006 14:55:05 +0000 (15:55 +0100)]
[MIPS] Fix 64-bit build for RM7000.

RM7000 has 40-bit virtual / 36-bit physical address space.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] IP32: Fix warnings.
Ralf Baechle [Tue, 30 May 2006 01:13:16 +0000 (02:13 +0100)]
[MIPS] IP32: Fix warnings.

The expressions are volatile; no need for temporary variables.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] Fix non-linear memory mapping on MIPS
Sergei Shtylyov [Sat, 27 May 2006 18:39:39 +0000 (22:39 +0400)]
[MIPS] Fix non-linear memory mapping on MIPS

Fix the non-linear memory mapping done via remap_file_pages() -- it
didn't work on any MIPS CPU because the page offset clashing with
_PAGE_FILE and some other page protection bits which should have been left
zeros for this kind of pages.

Signed-off-by: Konstantin Baydarov <kbaidarov@ru.mvista.com>
Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] SB1: Only pass1 FPUs are broken beyond recovery.
Ralf Baechle [Sun, 28 May 2006 23:02:12 +0000 (00:02 +0100)]
[MIPS] SB1: Only pass1 FPUs are broken beyond recovery.

The wrong revision number in the check was forcing a fallback to FPU
emulation for all SB1 cores in 2.6.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] open() forces O_LARGEFILE for o32 on 64bit kernels
Thiemo Seufer [Sun, 28 May 2006 14:02:53 +0000 (15:02 +0100)]
[MIPS] open() forces O_LARGEFILE for o32 on 64bit kernels

open() always sets the O_LARGEFILE flag for the o32 ABI implementation
of a 64bit kernel. The appended patch fixes it.

Signed-off-by: Thiemo Seufer <ths@networkno.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] Au1xx0: fix prom_getenv() to handle YAMON style environment
Sergei Shtylyov [Sat, 27 May 2006 19:36:41 +0000 (23:36 +0400)]
[MIPS] Au1xx0: fix prom_getenv() to handle YAMON style environment

Alchemy boards use YAMON which passes the environment variables as the
tuples of strings (the name followed by the value) unlike PMON which
passes "name=<val>" strings.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] Fix swap entry for MIPS32 36-bit physical address
Sergei Shtylyov [Sat, 27 May 2006 16:43:04 +0000 (20:43 +0400)]
[MIPS] Fix swap entry for MIPS32 36-bit physical address

With 64-bit physical address enabled, 'swapon' was causing kernel oops on
Alchemy CPUs (MIPS32) because of the swap entry type field corrupting the
_PAGE_FILE bit in 'pte_low' field. So, switch to storing the swap entry in
'pte_high' field using all its bits except _PAGE_GLOBAL and _PAGE_VALID which
gives 25 bits for the swap entry offset.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] Fix mprotect() syscall for MIPS32 w/36-bit physical address support
Sergei Shtylyov [Wed, 3 May 2006 18:56:43 +0000 (22:56 +0400)]
[MIPS] Fix mprotect() syscall for MIPS32 w/36-bit physical address support

Fix mprotect() syscall for MIPS32 CPUs with 36-bit physical address
support: pte_modify() macro didn't clear the hardware page protection bits
before modifying...

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] Save write-only Config.OD from being clobbered
Sergei Shtylyov [Fri, 26 May 2006 15:44:54 +0000 (19:44 +0400)]
[MIPS] Save write-only Config.OD from being clobbered

Save the Config.OD bit from being clobbered by coherency_setup(). This
bit, when set, fixes various errata in the early steppings of Au1x00
SOCs.  Unfortunately, the bit was write-only on the most early of them.
In addition, also restore the bit after a wakeup from sleep.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] Print more information if we're struck by a machine check exception.
Ralf Baechle [Wed, 24 May 2006 15:51:02 +0000 (16:51 +0100)]
[MIPS] Print more information if we're struck by a machine check exception.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] Fix declaration of smp_prepare_cpus() platform hook.
Ralf Baechle [Wed, 24 May 2006 02:04:18 +0000 (03:04 +0100)]
[MIPS] Fix declaration of smp_prepare_cpus() platform hook.

A while ago prom_prepare_cpus was replaced by plat_prepare_cpus but
the declaration has stayed unchanged.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] Fix modpost warning: Rename op_model_xxx to op_model_xxx_ops.
Atsushi Nemoto [Tue, 23 May 2006 07:42:38 +0000 (16:42 +0900)]
[MIPS] Fix modpost warning: Rename op_model_xxx to op_model_xxx_ops.

The modpost uses a whitelist for commonly used suffix on checking the
section mismatch.  Adding "_ops" suffix to op_modex_xxx get rid of
this modpost warning.

WARNING: arch/mips/oprofile/oprofile.o - Section mismatch: reference to .init.text: from .data after 'op_model_mipsxx' (at offset 0x528)

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] Fix instable BogoMIPS on multi-issue processors.
Ralf Baechle [Tue, 23 May 2006 15:37:32 +0000 (16:37 +0100)]
[MIPS] Fix instable BogoMIPS on multi-issue processors.

Increase alignment of BogoMIPS loop to 8 bytes.  Having the delay loop
overlap cache line boundaries may cause instable delays.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] Ignore unresolved weak symbols in modules.
Atsushi Nemoto [Mon, 22 May 2006 15:45:07 +0000 (00:45 +0900)]
[MIPS] Ignore unresolved weak symbols in modules.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] Fix SMP now that fixup_cpu_present_map is gone.
Ralf Baechle [Mon, 22 May 2006 13:24:04 +0000 (14:24 +0100)]
[MIPS] Fix SMP now that fixup_cpu_present_map is gone.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[MIPS] Remove duplicate declaration of cpu_online_map.
Ralf Baechle [Wed, 17 May 2006 23:16:10 +0000 (01:16 +0200)]
[MIPS] Remove duplicate declaration of cpu_online_map.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
18 years ago[IRDA]: Missing allocation result check in irlap_change_speed().
Florin Malita [Mon, 5 Jun 2006 22:34:52 +0000 (15:34 -0700)]
[IRDA]: Missing allocation result check in irlap_change_speed().

The skb allocation may fail, which can result in a NULL pointer dereference
in irlap_queue_xmit().

Coverity CID: 434.

Signed-off-by: Florin Malita <fmalita@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[PPPOE]: Missing result check in __pppoe_xmit().
Florin Malita [Mon, 5 Jun 2006 22:34:33 +0000 (15:34 -0700)]
[PPPOE]: Missing result check in __pppoe_xmit().

skb_clone() may fail, we should check the result.

Coverity CID: 1215.

Signed-off-by: Florin Malita <fmalita@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[NET]: Eliminate unused /proc/sys/net/ethernet
Jes Sorensen [Mon, 5 Jun 2006 22:34:11 +0000 (15:34 -0700)]
[NET]: Eliminate unused /proc/sys/net/ethernet

The /proc/sys/net/ethernet directory has been sitting empty for more than
10 years!  Time to eliminate it!

Signed-off-by: Jes Sorensen <jes@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[NETCONSOLE]: Clean up initcall warning.
Matt Mackall [Mon, 5 Jun 2006 22:04:37 +0000 (15:04 -0700)]
[NETCONSOLE]: Clean up initcall warning.

From: Matt Mackall <mpm@selenic.com>

netconsole is being wrong here.  If it wasn't enabled there's no error.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[TCP]: Avoid skb_pull if possible when trimming head
Herbert Xu ~{PmVHI~} [Mon, 5 Jun 2006 22:03:37 +0000 (15:03 -0700)]
[TCP]: Avoid skb_pull if possible when trimming head

Trimming the head of an skb by calling skb_pull can cause the packet
to become unaligned if the length pulled is odd.  Since the length is
entirely arbitrary for a FIN packet carrying data, this is actually
quite common.

Unaligned data is not the end of the world, but we should avoid it if
it's easily done.  In this case it is trivial.  Since we're discarding
all of the head data it doesn't matter whether we move skb->data forward
or back.

However, it is still possible to have unaligned skb->data in general.
So network drivers should be prepared to handle it instead of crashing.

This patch also adds an unlikely marking on len < headlen since partial
ACKs on head data are extremely rare in the wild.  As the return value
of __pskb_trim_head is no longer ever NULL that has been removed.

Signed-off-by: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/brodo/pcmcia-fixes-2.6
Linus Torvalds [Mon, 5 Jun 2006 19:30:28 +0000 (12:30 -0700)]
Merge /linux/kernel/git/brodo/pcmcia-fixes-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/brodo/pcmcia-fixes-2.6:
  [PATCH] pcmcia: fix zeroing of cm4000_cs.c data
  [PATCH] pcmcia: missing pcmcia_get_socket() result check

18 years ago[PATCH] uml: add -ffreestanding to CFLAGS
Jeff Dike [Sun, 4 Jun 2006 09:51:49 +0000 (02:51 -0700)]
[PATCH] uml: add -ffreestanding to CFLAGS

From: Jeff Dike <jdike@addtoit.com>

This fixes the undefined reference to strcpy seen when building modules on
i386.  Tracked down by Al Viro.

Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] uml: more __user annotations
Al Viro [Sun, 4 Jun 2006 09:51:48 +0000 (02:51 -0700)]
[PATCH] uml: more __user annotations

From: Al Viro <viro@zeniv.linux.org.uk>

uml __user annotations

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] uml: __user annotation in arch_prctl
Al Viro [Sun, 4 Jun 2006 09:51:47 +0000 (02:51 -0700)]
[PATCH] uml: __user annotation in arch_prctl

From: Al Viro <viro@zeniv.linux.org.uk>

fix uml/amd64 prctl()

put_user() there should go to (long __user *)addr, not &addr

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] uml: fix a typo in do_uml_initcalls
Jeff Dike [Sun, 4 Jun 2006 09:51:47 +0000 (02:51 -0700)]
[PATCH] uml: fix a typo in do_uml_initcalls

From: Jeff Dike <jdike@addtoit.com>

We had a spurious semicolon somehow.

Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] uml: fix wall_to_monotonic initialization
Jeff Dike [Sun, 4 Jun 2006 09:51:46 +0000 (02:51 -0700)]
[PATCH] uml: fix wall_to_monotonic initialization

From: Jeff Dike <jdike@addtoit.com>

Initialize wall_to_monotonic correctly.  This fixes a problem where sleeps
lasted about one secone less than they should.  This also called for a bit of
code restructuring, following a patch which Blaisorblade had been keeping.

Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] uml: add asm/irqflags.h
Jeff Dike [Sun, 4 Jun 2006 09:51:43 +0000 (02:51 -0700)]
[PATCH] uml: add asm/irqflags.h

From: Jeff Dike <jdike@addtoit.com>

Add an empty asm/irqflags.h, which seems to satisfy the lock validator enough
that UML builds.

Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] m48t86: ia64 build fix
Andrew Morton [Sun, 4 Jun 2006 09:51:42 +0000 (02:51 -0700)]
[PATCH] m48t86: ia64 build fix

From: Andrew Morton <akpm@osdl.org>

drivers/rtc/rtc-m48t86.c: In function `m48t86_rtc_read_time':
drivers/rtc/rtc-m48t86.c:51: error: structure has no member named `ia64_mv'
drivers/rtc/rtc-m48t86.c:55: error: structure has no member named `ia64_mv'
drivers/rtc/rtc-m48t86.c:56: error: structure has no member named `ia64_mv'
drivers/rtc/rtc-m48t86.c:57: error: structure has no member named `ia64_mv'
drivers/rtc/rtc-m48t86.c:58: error: structure has no member named `ia64_mv'
drivers/rtc/rtc-m48t86.c:60: error: structure has no member named `ia64_mv'

readb() and writeb() are macros on ia64.

Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] sata_sil24: SII3124 sata driver endian problem
Rune Torgersen [Sun, 4 Jun 2006 09:51:41 +0000 (02:51 -0700)]
[PATCH] sata_sil24: SII3124 sata driver endian problem

From: "Rune Torgersen" <runet@innovsys.com>

Fix an endian issue in the sil24 driver.

Signed-off-by: Rune Torgersen <runet@innovsys.com>
Acked-by: Jeff Garzik <jeff@garzik.org>
Cc: Tejun Heo <htejun@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] sbp2: fix check of return value of hpsb_allocate_and_register_addrspace()
Stefan Richter [Sun, 4 Jun 2006 09:51:40 +0000 (02:51 -0700)]
[PATCH] sbp2: fix check of return value of hpsb_allocate_and_register_addrspace()

From: Stefan Richter <stefanr@s5r6.in-berlin.de>

I added a failure check in patch "sbp2: variable status FIFO address (fix
login timeout)" --- alas for a wrong error value.  This is a bug since
Linux 2.6.16.  Leads to NULL pointer dereference if the call failed, and
bogus failure handling if call succeeded.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Cc: <stable@kernel.org>
Cc: Ben Collins <bcollins@debian.org>
Cc: Jody McIntyre <scjody@modernduck.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] MAINTAINERS: Add entries for BNX2 and TG3
Michael Chan [Sun, 4 Jun 2006 09:51:39 +0000 (02:51 -0700)]
[PATCH] MAINTAINERS: Add entries for BNX2 and TG3

From: "Michael Chan" <mchan@broadcom.com>

Add maintainer entries for Broadcom BNX2 and TG3 drivers.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Cc: "David S. Miller" <davem@davemloft.net>
Acked-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Implement get / set tso for forcedeth driver
Zachary Amsden [Sun, 4 Jun 2006 09:51:38 +0000 (02:51 -0700)]
[PATCH] Implement get / set tso for forcedeth driver

From: Zachary Amsden <zach@vmware.com>

Signed-off-by: Zachary Amsden <zach@vmware.com>
Cc: Ayaz Abdulla <aabdulla@nvidia.com>
Cc: Manfred Spraul <manfred@colorfullife.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] pmf_register_irq_client() gives sleep with locks held warning
Benjamin Herrenschmidt [Sun, 4 Jun 2006 09:51:38 +0000 (02:51 -0700)]
[PATCH] pmf_register_irq_client() gives sleep with locks held warning

From: Benjamin Herrenschmidt <benh@kernel.crashing.org>

This fixes request_irq() potentially called from atomic context.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] fs/namei.c: Call to file_permission() under a spinlock in do_lookup_path()
Trond Myklebust [Sun, 4 Jun 2006 09:51:37 +0000 (02:51 -0700)]
[PATCH] fs/namei.c: Call to file_permission() under a spinlock in do_lookup_path()

From: Trond Myklebust <Trond.Myklebust@netapp.com>

We're presently running lock_kernel() under fs_lock via nfs's ->permission
handler.  That's a ranking bug and sometimes a sleep-in-spinlock bug.  This
problem was introduced in the openat() patchset.

We should not need to hold the current->fs->lock for a codepath that doesn't
use current->fs.

[vsu@altlinux.ru: fix error path]
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Cc: Al Viro <viro@ftp.linux.org.uk>
Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] alpha: SMP IRQ routing fix
Ivan Kokshaysky [Sun, 4 Jun 2006 09:51:34 +0000 (02:51 -0700)]
[PATCH] alpha: SMP IRQ routing fix

From: Ivan Kokshaysky <ink@jurassic.park.msu.ru>

After removal of fixup_cpu_present_map() function Alpha ended up with an empty
cpu_present_map, so secondary CPUs on SMP systems are not being started.

Worse, on some platforms we route interrupts to secondary CPUs using
cpu_possible_map which is still populated properly.  As a result, these
interrupts go nowhere so the machines like DP264 aren't able to boot even with
a primary CPU.

Fixed basically by s/cpu_present_mask/cpu_present_map/.

Thanks to Ernst Herzberg for reporting the bug and testing the fix.

Cc: Ernst Herzberg <list-lkml@net4u.de>
Cc: Richard Henderson <rth@twiddle.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] selinux: fix sb_lock/sb_security_lock nesting
Stephen Smalley [Sun, 4 Jun 2006 09:51:30 +0000 (02:51 -0700)]
[PATCH] selinux: fix sb_lock/sb_security_lock nesting

From: Stephen Smalley <sds@tycho.nsa.gov>

Fix unsafe nesting of sb_lock inside sb_security_lock in
selinux_complete_init.  Detected by the kernel locking validator.

Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Acked-by: James Morris <jmorris@namei.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Sparsemem build fix
Ralf Baechle [Sun, 4 Jun 2006 09:51:29 +0000 (02:51 -0700)]
[PATCH] Sparsemem build fix

From: Ralf Baechle <ralf@linux-mips.org>

<linux/mmzone.h> uses PAGE_SIZE, PAGE_SHIFT from <asm/page.h> without
including that header itself.  For some sparsemem configurations this may
result in build errors like:

  CC      init/initramfs.o
In file included from include/linux/gfp.h:4,
                 from include/linux/slab.h:15,
                 from include/linux/percpu.h:4,
                 from include/linux/rcupdate.h:41,
                 from include/linux/dcache.h:10,
                 from include/linux/fs.h:226,
                 from init/initramfs.c:2:
include/linux/mmzone.h:498:22: warning: "PAGE_SHIFT" is not defined
In file included from include/linux/gfp.h:4,
                 from include/linux/slab.h:15,
                 from include/linux/percpu.h:4,
                 from include/linux/rcupdate.h:41,
                 from include/linux/dcache.h:10,
                 from include/linux/fs.h:226,
                 from init/initramfs.c:2:
include/linux/mmzone.h:526: error: `PAGE_SIZE' undeclared here (not in a function)
include/linux/mmzone.h: In function `__pfn_to_section':
include/linux/mmzone.h:573: error: `PAGE_SHIFT' undeclared (first use in this function)
include/linux/mmzone.h:573: error: (Each undeclared identifier is reported only once
include/linux/mmzone.h:573: error: for each function it appears in.)
include/linux/mmzone.h: In function `pfn_valid':
include/linux/mmzone.h:578: error: `PAGE_SHIFT' undeclared (first use in this function)
make[1]: *** [init/initramfs.o] Error 1
make: *** [init] Error 2

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Seems-reasonable-to: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] s390: cio non-unique path group ids
Peter Oberparleiter [Sun, 4 Jun 2006 09:51:28 +0000 (02:51 -0700)]
[PATCH] s390: cio non-unique path group ids

From: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>

The path grouping can fail due to non-unique pathgroup-IDs.  The source for
the CPU-ID part of the ID was incorrectly specified on 64 bit systems.
Additionally, the length of the ID was too large due to incorrect data packing
declaration.  Fix CPU-ID lowcore address and add missing packing declaration.

Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] s390: irb memcpy argument swap
Cornelia Huck [Sun, 4 Jun 2006 09:51:27 +0000 (02:51 -0700)]
[PATCH] s390: irb memcpy argument swap

From: Cornelia Huck <cornelia.huck@de.ibm.com>

Swapped memcpy arguments in ccw_device_irq() when doing basic sense after
unsolicited interrupt.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] nmclan_cs: dereferencing skb after netif_rx()
Florin Malita [Sun, 4 Jun 2006 09:51:26 +0000 (02:51 -0700)]
[PATCH] nmclan_cs: dereferencing skb after netif_rx()

From: Florin Malita <fmalita@gmail.com>

The skb may be gone after netif_rx(), we can't use 'skb->len' to update the
stats.  'pkt_len' should work instead.

Coverity CID: 911.

Signed-off-by: Florin Malita <fmalita@gmail.com>
Cc: Dominik Brodowski <linux@dominikbrodowski.net>
Acked-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] bcm43xx: add DMA rx poll workaround to DMA4
Michael Buesch [Sun, 4 Jun 2006 00:20:42 +0000 (02:20 +0200)]
[PATCH] bcm43xx: add DMA rx poll workaround to DMA4

Also add the Poll RX DMA Memory workaround to the DMA4
(xmitstatus) path.

Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Mon, 5 Jun 2006 19:24:28 +0000 (12:24 -0700)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SPARC64]: Fix missing fold at end of checksums.

18 years ago[ARM] 3543/1: [Fwd: PXA270 bootparams address not set]
Steve Yang [Mon, 5 Jun 2006 18:47:17 +0000 (19:47 +0100)]
[ARM] 3543/1: [Fwd: PXA270 bootparams address not set]

Patch from Steve Yang

MACHINE_START struct doesn't have any bootargs location for the
mainstone. Result is no kernel command args get passed; no serial driver
is selected for console and results in a silent boot failure.

Signed-off-by: Steve Yang <steve.yang@windriver.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years agoIPoIB: Fix AH leak at interface down
Eli Cohen [Mon, 5 Jun 2006 16:51:36 +0000 (09:51 -0700)]
IPoIB: Fix AH leak at interface down

When ipoib_stop() is called it first calls netif_stop_queue() to stop
the kernel from passing more packets to the network driver. However,
the completion handler may call netif_wake_queue() re-enabling packet
transfer.

This might result in leaks (we see AH leaks which we think can be
attributed to this bug) as new packets get posted while the interface
is going down.

Signed-off-by: Eli Cohen <eli@mellanox.co.il>
Signed-off-by: Michael Tsirkin <mst@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years ago[SERIAL] typo: buad -> baud
Horst Schirmeier [Mon, 5 Jun 2006 09:45:30 +0000 (10:45 +0100)]
[SERIAL] typo: buad -> baud

Replacing mistyped "buad" with "baud" where applicable.

Signed-off-by: Horst Schirmeier <horst@schirmeier.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[SPARC64]: Fix missing fold at end of checksums.
David S. Miller [Mon, 5 Jun 2006 04:32:01 +0000 (21:32 -0700)]
[SPARC64]: Fix missing fold at end of checksums.

Both csum_partial() and the csum_partial_copy*() family of routines
forget to do a final fold on the computed checksum value on sparc64.
So do the standard Sparc "add + set condition codes, add carry"
sequence, then make sure the high 32-bits of the return value are
clear.

Based upon some excellent detective work and debugging done by
Richard Braun and Samuel Thibault.

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[ARM] Trivial typo fixes
Egry Gabor [Sun, 4 Jun 2006 20:22:11 +0000 (21:22 +0100)]
[ARM] Trivial typo fixes

Trivial typo fixes in Kconfig files (ARM).

Signed-off-by: Egry Gabor <gaboregry@t-online.hu>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[MMC] Prevent au1xmmc.c breakage on non-Au1200 Alchemy
Ralf Baechle [Sun, 4 Jun 2006 16:40:58 +0000 (17:40 +0100)]
[MMC] Prevent au1xmmc.c breakage on non-Au1200 Alchemy

The driver is selectable on other than Au1200 Alchemy systems but won't
build nor work - there is no MMC hw.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[MMC] Add maintainers entry for MMC subsystem
Russell King [Sun, 4 Jun 2006 16:36:31 +0000 (17:36 +0100)]
[MMC] Add maintainers entry for MMC subsystem

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6
Linus Torvalds [Sat, 3 Jun 2006 16:12:50 +0000 (09:12 -0700)]
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] scsi_lib.c: properly count the number of pages in scsi_req_map_sg()
  [SCSI] scsi_transport_sas: make write attrs writeable
  [SCSI] scsi_transport_sas; fix user_scan
  [SCSI] ppa: fix for machines with highmem
  [SCSI] mptspi: reset handler shouldn't be called for other bus protocols
  [SCSI] Blacklist entry for HP dat changer

18 years ago[TCP] tcp_highspeed: Fix problem observed by Xiaoliang (David) Wei
Stephen Hemminger [Sat, 3 Jun 2006 00:51:08 +0000 (17:51 -0700)]
[TCP] tcp_highspeed: Fix problem observed by Xiaoliang (David) Wei

When snd_cwnd is smaller than 38 and the connection is in
congestion avoidance phase (snd_cwnd > snd_ssthresh), the snd_cwnd
seems to stop growing.

The additive increase was confused because C array's are 0 based.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years agoMerge master.kernel.org:/home/rmk/linux-2.6-serial
Linus Torvalds [Fri, 2 Jun 2006 23:03:22 +0000 (16:03 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-serial

* master.kernel.org:/home/rmk/linux-2.6-serial:
  [SERIAL] Update parity handling documentation

18 years agoMerge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Fri, 2 Jun 2006 23:02:41 +0000 (16:02 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm

* master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] 3540/1: ixp23xx: deal with gap in interrupt bitmasks
  [ARM] 3539/1: ixp23xx: fix __arch_ixp23xx_is_coherent() for A1 stepping