GitHub/LineageOS/G12/android_kernel_amlogic_linux-4.9.git
18 years agoMerge branch 'upstream-fixes' into upstream
Jeff Garzik [Sat, 20 May 2006 04:26:26 +0000 (00:26 -0400)]
Merge branch 'upstream-fixes' into upstream

18 years ago[PATCH] winbond-840-remove-badness-in-pci_map_single
Erling A. Jacobsen [Sun, 30 Apr 2006 19:46:56 +0000 (21:46 +0200)]
[PATCH] winbond-840-remove-badness-in-pci_map_single

Call pci_map_single() with the actual size of the receive
buffers, not 0 (which skb->len is initialized to by dev_alloc_skb()).

Signed-off-by: Erling A. Jacobsen <linuxcub@email.dk>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] network: axnet_cs: bug fix multicast code (support older ax88190 chipset)
Komuro [Sun, 30 Apr 2006 00:54:13 +0000 (09:54 +0900)]
[PATCH] network: axnet_cs: bug fix multicast code (support older ax88190 chipset)

Dear Jeff

axnet_cs: bug fix multicast code (support older ax88190 chipset)

Signed-off-by: komurojun-mbn@nifty.com
Best Regards
Komuro
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] skge: don't allow transmit ring to be too small
Stephen Hemminger [Mon, 15 May 2006 23:32:39 +0000 (16:32 -0700)]
[PATCH] skge: don't allow transmit ring to be too small

The driver will get stuck (permanent transmit timeout), if the transmit
ring size is set too small.  It needs to have enough ring elements to
hold one maximum size transmit.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] skge: bad checksums on big-endian platforms
Stephen Hemminger [Mon, 15 May 2006 23:30:25 +0000 (16:30 -0700)]
[PATCH] skge: bad checksums on big-endian platforms

Skge driver always causes  bad checksums on big-endian.
The checksum in the receive control block was being swapped
when it doesn't need to be.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years agoMerge branch 'upstream-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/linvil...
Jeff Garzik [Sat, 20 May 2006 04:16:17 +0000 (00:16 -0400)]
Merge branch 'upstream-fixes' of git://git./linux/kernel/git/linville/wireless-2.6 into upstream-fixes

18 years ago[PATCH] sky2 version 1.4
Stephen Hemminger [Wed, 17 May 2006 21:37:07 +0000 (14:37 -0700)]
[PATCH] sky2 version 1.4

Need to track impact of this group of changes.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] sky2: force NAPI repoll if busy
Stephen Hemminger [Wed, 17 May 2006 21:37:06 +0000 (14:37 -0700)]
[PATCH] sky2: force NAPI repoll if busy

If the status ring processing can't keep up with the incoming frames,
it is more efficient to have NAPI keep scheduling the poll routine
rather than causing another interrupt.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] sky2: more fixes for Yukon Ultra
Stephen Hemminger [Wed, 17 May 2006 21:37:05 +0000 (14:37 -0700)]
[PATCH] sky2: more fixes for Yukon Ultra

Logic error in the phy initialization code. Also, turn on wake on lan
bit in status control.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] Subjec: sky2, skge: correct PCI id for DGE-560T
Stephen Hemminger [Wed, 17 May 2006 21:37:04 +0000 (14:37 -0700)]
[PATCH] Subjec: sky2, skge: correct PCI id for DGE-560T

The Dlink DGE-560T uses Yukon2 chipset so it needs sky2 driver; and
the DGE-530T uses Yukon1 so it uses skge driver.

Bug: http://bugzilla.kernel.org/show_bug.cgi?id=6544

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] sky2: allow dual port usage
Stephen Hemminger [Thu, 18 May 2006 18:16:21 +0000 (11:16 -0700)]
[PATCH] sky2: allow dual port usage

If both ports are receiving on the SysKonnect dual port cards,
then it appears the bus interface unit can give an interrupt status
for frame before DMA has completed.  This leads to bogus frames
and general confusion. This is why receive checksumming is also
messed up on dual port cards.

A workaround for the out of order receive problem is to eliminating
split transactions on PCI-X.

This version is based of the current linux-2.6.git including earlier
patch to disable dual ports.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] via-rhine: revert "change mdelay to msleep and remove from ISR path"
John W. Linville [Fri, 19 May 2006 14:51:21 +0000 (10:51 -0400)]
[PATCH] via-rhine: revert "change mdelay to msleep and remove from ISR path"

Revert previous patch with subject "change mdelay to msleep and remove
from ISR path".  This patch seems to have caused bigger problems than
it solved, and it didn't solve much of a problem to begin with...

Discussion about backing-out this patch can be found here:

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

The git commit associated w/ the original patch is:

6ba98d311d0a4ff7dc36d8f435ce60174f4c30ec

Signed-off-by: John W. Linville <linville@tuxdriver.com
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years ago[PATCH] revert "forcedeth: fix multi irq issues"
Andrew Morton [Fri, 19 May 2006 09:13:21 +0000 (02:13 -0700)]
[PATCH] revert "forcedeth: fix multi irq issues"

Revert ebf34c9b6fcd22338ef764b039b3ac55ed0e297b.  Maybe.  Due to crashes
at shutdown - see http://bugzilla.kernel.org/show_bug.cgi?id=6568.

Cc: Ayaz Abdulla <aabdulla@nvidia.com>
Cc: Manfred Spraul <manfred@colorfullife.com>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
18 years agoMerge branch 'master' into upstream
Jeff Garzik [Sat, 20 May 2006 04:03:38 +0000 (00:03 -0400)]
Merge branch 'master' into upstream

18 years agoMerge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband
Linus Torvalds [Sat, 20 May 2006 01:52:59 +0000 (18:52 -0700)]
Merge branch 'for-linus' of /linux/kernel/git/roland/infiniband

* 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband:
  IB/mthca: Fix posting lists of 256 receive requests for Tavor
  IB/uverbs: Don't leak ref to mm on error path
  IB/srp: Complete correct SCSI commands on device reset
  IB/srp: Get rid of extra scsi_host_put()s if reconnection fails
  IB/srp: Don't wait for disconnection if sending DREQ fails
  IB/mthca: Make fw_cmd_doorbell default to 0

18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Fri, 19 May 2006 23:48:54 +0000 (16:48 -0700)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
  [SCTP]: Allow linger to abort 1-N style sockets.
  [SCTP]: Validate the parameter length in HB-ACK chunk.
  [SCTP]: Respect the real chunk length when walking parameters.
  [SCTP]: A better solution to fix the race between sctp_peeloff() and
  [SCTP]: Set sk_err so that poll wakes up after a non-blocking connect failure.

18 years agoMerge master.kernel.org:/home/rmk/linux-2.6-mmc
Linus Torvalds [Fri, 19 May 2006 23:42:25 +0000 (16:42 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-mmc

* master.kernel.org:/home/rmk/linux-2.6-mmc:
  [ARM] 3531/1: i.MX/MX1 SD/MMC ensure, that clock are stopped before new command and cleanups

18 years agoMerge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Fri, 19 May 2006 23:42:11 +0000 (16:42 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm

* master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] 3533/1: Implement the __raw_(read|write)_can_lock functions on ARM
  [ARM] 3530/1: PXA Mainstone: prevent double enable_irq() in pcmcia
  [ARM] 3529/1: s3c24xx: fix restoring control register with undefined instruction

18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog
Linus Torvalds [Fri, 19 May 2006 23:41:59 +0000 (16:41 -0700)]
Merge /linux/kernel/git/wim/linux-2.6-watchdog

* master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:
  [WATCHDOG] s3c2410_wdt.c stop watchdog after boot
  [WATCHDOG] i8xx_tco.c - remove support for ICH6 + ICH7
  [WATCHDOG] Documentation/watchdog/watchdog-api.txt - fix watchdog daemon
  [WATCHDOG] sc1200wdt.c printk fix

18 years ago[SCTP]: Allow linger to abort 1-N style sockets.
Vladislav Yasevich [Fri, 19 May 2006 21:32:06 +0000 (14:32 -0700)]
[SCTP]: Allow linger to abort 1-N style sockets.

Enable SO_LINGER functionality for 1-N style sockets. The socket API
draft will be clarfied to allow for this functionality. The linger
settings will apply to all associations on a given socket.

Signed-off-by: Vladislav Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
18 years ago[SCTP]: Validate the parameter length in HB-ACK chunk.
Vladislav Yasevich [Fri, 19 May 2006 21:25:53 +0000 (14:25 -0700)]
[SCTP]: Validate the parameter length in HB-ACK chunk.

If SCTP receives a badly formatted HB-ACK chunk, it is possible
that we may access invalid memory and potentially have a buffer
overflow.  We should really make sure that the chunk format is
what we expect, before attempting to touch the data.

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
18 years ago[ARM] 3533/1: Implement the __raw_(read|write)_can_lock functions on ARM
Catalin Marinas [Fri, 19 May 2006 20:55:35 +0000 (21:55 +0100)]
[ARM] 3533/1: Implement the __raw_(read|write)_can_lock functions on ARM

Patch from Catalin Marinas

Recent patches introduced the write_can_lock() call in the kernel/ptrace.c
file. Implement the __raw_* variants on ARM (SMP) as well.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3531/1: i.MX/MX1 SD/MMC ensure, that clock are stopped before new command and...
Pavel Pisa [Fri, 19 May 2006 20:48:03 +0000 (21:48 +0100)]
[ARM] 3531/1: i.MX/MX1 SD/MMC ensure, that clock are stopped before new command and cleanups

Patch from Pavel Pisa

There has been problems that for some paths that clock are not stopped
during new command programming and initiation. Result is issuing
of incorrect command to the card. Some other problems are cleaned too.
Noisy report of known ERRATUM #4 has been suppressed.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[SCTP]: Respect the real chunk length when walking parameters.
Vladislav Yasevich [Fri, 19 May 2006 18:52:20 +0000 (11:52 -0700)]
[SCTP]: Respect the real chunk length when walking parameters.

When performing bound checks during the parameter processing, we
want to use the real chunk and paramter lengths for bounds instead
of the rounded ones.  This prevents us from potentially walking of
the end if the chunk length was miscalculated.  We still use rounded
lengths when advancing the pointer. This was found during a
conformance test that changed the chunk length without modifying
parameters.

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
18 years ago[SCTP]: A better solution to fix the race between sctp_peeloff() and
Vladislav Yasevich [Fri, 19 May 2006 18:01:18 +0000 (11:01 -0700)]
[SCTP]: A better solution to fix the race between sctp_peeloff() and
sctp_rcv().

The goal is to hold the ref on the association/endpoint throughout the
state-machine process.  We accomplish like this:

  /* ref on the assoc/ep is taken during lookup */

  if owned_by_user(sk)
  sctp_add_backlog(skb, sk);
  else
  inqueue_push(skb, sk);

  /* drop the ref on the assoc/ep */

However, in sctp_add_backlog() we take the ref on assoc/ep and hold it
while the skb is on the backlog queue.  This allows us to get rid of the
sock_hold/sock_put in the lookup routines.

Now sctp_backlog_rcv() needs to account for potential association move.
In the unlikely event that association moved, we need to retest if the
new socket is locked by user.  If we don't this, we may have two packets
racing up the stack toward the same socket and we can't deal with it.
If the new socket is still locked, we'll just add the skb to its backlog
continuing to hold the ref on the association.  This get's rid of the
need to move packets from one backlog to another and it also safe in
case new packets arrive on the same backlog queue.

The last step, is to lock the new socket when we are moving the
association to it.  This is needed in case any new packets arrive on
the association when it moved.  We want these to go to the backlog since
we would like to avoid the race between this new packet and a packet
that may be sitting on the backlog queue of the old socket toward the
same association.

Signed-off-by: Vladislav Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
18 years ago[SCTP]: Set sk_err so that poll wakes up after a non-blocking connect failure.
Sridhar Samudrala [Fri, 19 May 2006 17:58:12 +0000 (10:58 -0700)]
[SCTP]: Set sk_err so that poll wakes up after a non-blocking connect failure.

Also fix some other cases where sk_err is not set for 1-1 style sockets.

Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
18 years ago[NETFILTER]: nfnetlink_log: fix byteorder confusion
Patrick McHardy [Fri, 19 May 2006 09:17:18 +0000 (02:17 -0700)]
[NETFILTER]: nfnetlink_log: fix byteorder confusion

flags is a u16, so use htons instead of htonl. Also avoid double
conversion.

Noticed by Alexey Dobriyan <adobriyan@gmail.com>

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[NETFILTER]: Fix do_add_counters race, possible oops or info leak (CVE-2006-0039)
Solar Designer [Fri, 19 May 2006 09:16:52 +0000 (02:16 -0700)]
[NETFILTER]: Fix do_add_counters race, possible oops or info leak (CVE-2006-0039)

Solar Designer found a race condition in do_add_counters(). The beginning
of paddc is supposed to be the same as tmp which was sanity-checked
above, but it might not be the same in reality. In case the integer
overflow and/or the race condition are triggered, paddc->num_counters
might not match the allocation size for paddc. If the check below
(t->private->number != paddc->num_counters) nevertheless passes (perhaps
this requires the race condition to be triggered), IPT_ENTRY_ITERATE()
would read kernel memory beyond the allocation size, potentially causing
an oops or leaking sensitive data (e.g., passwords from host system or
from another VPS) via counter increments. This requires CAP_NET_ADMIN.

Signed-off-by: Solar Designer <solar@openwall.com>
Signed-off-by: Kirill Korotaev <dev@openvz.org>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[NETFILTER]: GRE conntrack: fix htons/htonl confusion
Alexey Dobriyan [Fri, 19 May 2006 09:16:29 +0000 (02:16 -0700)]
[NETFILTER]: GRE conntrack: fix htons/htonl confusion

GRE keys are 16 bit.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[NETFILTER]: fix format specifier for netfilter log targets
Philip Craig [Fri, 19 May 2006 09:15:47 +0000 (02:15 -0700)]
[NETFILTER]: fix format specifier for netfilter log targets

The prefix argument for nf_log_packet is a format specifier,
so don't pass the user defined string directly to it.

Signed-off-by: Philip Craig <philipc@snapgear.com>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[NETFILTER]: Fix memory leak in ipt_recent
Jesper Juhl [Fri, 19 May 2006 09:15:13 +0000 (02:15 -0700)]
[NETFILTER]: Fix memory leak in ipt_recent

The Coverity checker spotted that we may leak 'hold' in
net/ipv4/netfilter/ipt_recent.c::checkentry() when the following
is true:
  if (!curr_table->status_proc) {
    ...
    if(!curr_table) {
    ...
      return 0;  <-- here we leak.
Simply moving an existing vfree(hold); up a bit avoids the possible leak.

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years agoIB/mthca: Fix posting lists of 256 receive requests for Tavor
Michael S. Tsirkin [Thu, 18 May 2006 15:32:54 +0000 (18:32 +0300)]
IB/mthca: Fix posting lists of 256 receive requests for Tavor

If we post a list of length 256 exactly, nreq in doorbell gets set to
256 which is wrong: it should be encoded by 0.  This is because we
only zero it out on the next WR, which may not be there.  The solution
is to ring the doorbell after posting a WQE, not before posting the
next one.

Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoIB/uverbs: Don't leak ref to mm on error path
Roland Dreier [Thu, 18 May 2006 05:20:50 +0000 (22:20 -0700)]
IB/uverbs: Don't leak ref to mm on error path

In ib_umem_release_on_close(), if the kmalloc() fails, then a
reference to current->mm will be leaked.  Fix this by adding a mmput()
instead of just returning on kmalloc() failure.

Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years ago[PATCH] ohci1394, sbp2: fix "scsi_add_device failed" with PL-3507 based devices
Stefan Richter [Mon, 15 May 2006 20:09:46 +0000 (22:09 +0200)]
[PATCH] ohci1394, sbp2: fix "scsi_add_device failed" with PL-3507 based devices

Re-enable posted writes for status FIFO.

Besides bringing back a very minor bandwidth tweak from Linux 2.6.15.x
and older, this also fixes an interoperability regression since 2.6.16:

   http://bugzilla.kernel.org/show_bug.cgi?id=6356
   (sbp2: scsi_add_device failed. IEEE1394 HD is not working anymore.)

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Tested-by: Vanei Heidemann <linux@javanei.com.br>
Tested-by: Martin Putzlocher <mputzi@gmx.de> (chip type unconfirmed)
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] sbp2: add ability to override hardwired blacklist
Stefan Richter [Mon, 15 May 2006 20:08:09 +0000 (22:08 +0200)]
[PATCH] sbp2: add ability to override hardwired blacklist

In case the blacklist with workarounds for device bugs yields a false
positive, the module load parameter can now also be used as an override
instead of an addition to the blacklist.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] sbp2: add read_capacity workaround for iPod
Stefan Richter [Mon, 15 May 2006 20:06:37 +0000 (22:06 +0200)]
[PATCH] sbp2: add read_capacity workaround for iPod

Apple decided to copy some USB stupidity over to FireWire.

The sector number returned by iPods from read_capacity is one too many.
This may cause I/O errors, especially if the kernel is configured for EFI
partition support. We use the same workaround as usb-storage but have to
check for different model IDs.

http://marc.theaimsgroup.com/?t=114233262300001
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=187409

Acknowledgements:
  Diagnosis and therapy by Mathieu Chouquet-Stringer <ml2news@free.fr>,
  additional data about affected and unaffected Apple hardware from
  Vladimir Kotal, Sander De Graaf, Bryan Olmstead and Hugh Dixon.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] sbp2: consolidate workarounds
Stefan Richter [Mon, 15 May 2006 20:04:59 +0000 (22:04 +0200)]
[PATCH] sbp2: consolidate workarounds

Grand unification of the three types of workarounds we have so far.

The "skip mode page 8" workaround is now limited to devices which
pretend to be of TYPE_DISK instead of TYPE_RBC. This workaround is no
longer enabled for Initio bridges.

Patch update in anticipation of more workarounds:
 - Add module parameter "workarounds".
 - Deprecate parameter "force_inquiry_hack".
 - Compose the blacklist of a compound type for better readability and
   extensibility.
 - Remove a now unused #define.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Wed, 17 May 2006 23:30:31 +0000 (16:30 -0700)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
  [TCP]: reno sacked_out count fix
  [IPV6]: Endian fix in net/ipv6/netfilter/ip6t_eui64.c:match().
  [TR]: Remove an unused export.
  [IPX]: Correct return type of ipx_map_frame_type().
  [IPX]: Correct argument type of ipxrtr_delete().
  [PKT_SCHED]: Potential jiffy wrap bug in dev_watchdog().

18 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/netdev-2.6
Linus Torvalds [Wed, 17 May 2006 23:13:25 +0000 (16:13 -0700)]
Merge git://git./linux/kernel/git/shemminger/netdev-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/netdev-2.6:
  sky2: prevent dual port receiver problems
  x86_64: Check for bad dma address in b44 1GB DMA workaround
  The ixp2000 driver for the enp2611 was developed on a board with

18 years agoMerge branch 'upstream-linus' of git://oss.oracle.com/home/sourcebo/git/ocfs2
Linus Torvalds [Wed, 17 May 2006 23:11:41 +0000 (16:11 -0700)]
Merge branch 'upstream-linus' of git://oss.oracle.com/home/sourcebo/git/ocfs2

* 'upstream-linus' of git://oss.oracle.com/home/sourcebo/git/ocfs2:
  configfs: Make sure configfs_init() is called before consumers.
  configfs: configfs_mkdir() failed to cleanup linkage.
  configfs: Fix a reference leak in configfs_mkdir().
  ocfs2: fix gfp mask in some file system paths
  ocfs2: Don't populate uptodate cache in ocfs2_force_read_journal()
  ocfs2: take meta data lock in ocfs2_file_aio_read()
  ocfs2: take data locks around extend

18 years agoconfigfs: Make sure configfs_init() is called before consumers.
Joel Becker [Wed, 3 May 2006 18:38:53 +0000 (11:38 -0700)]
configfs: Make sure configfs_init() is called before consumers.

configfs_init() needs to be called first to register configfs before anyconsumers try to access it.  Move up configfs in fs/Makefile to make
sure it is initialized early.

Signed-off-by: Joel Becker <joel.becker@oracle.com>
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
18 years agoconfigfs: configfs_mkdir() failed to cleanup linkage.
Joel Becker [Wed, 12 Apr 2006 04:37:20 +0000 (21:37 -0700)]
configfs: configfs_mkdir() failed to cleanup linkage.

If configfs_mkdir() errored in certain ways after the parent<->child
linkage was already created, it would not undo the linkage.  Also,
comment the reference counting for clarity.

Signed-off-by: Joel Becker <joel.becker@oracle.com>
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
18 years agoconfigfs: Fix a reference leak in configfs_mkdir().
Joel Becker [Tue, 28 Mar 2006 02:46:09 +0000 (18:46 -0800)]
configfs: Fix a reference leak in configfs_mkdir().

configfs_mkdir() failed to release the working parent reference in most
exit paths.  Also changed the exit path for readability.

Signed-off-by: Joel Becker <joel.becker@oracle.com>
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
18 years agoocfs2: fix gfp mask in some file system paths
Sunil Mushran [Wed, 12 Apr 2006 21:37:00 +0000 (14:37 -0700)]
ocfs2: fix gfp mask in some file system paths

We were using GFP_KERNEL in a handful of places which really wanted
GFP_NOFS. Fix this.

Signed-off-by: Sunil Mushran <sunil.mushran@oracle.com>
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
18 years agoocfs2: Don't populate uptodate cache in ocfs2_force_read_journal()
Mark Fasheh [Wed, 12 Apr 2006 21:24:05 +0000 (14:24 -0700)]
ocfs2: Don't populate uptodate cache in ocfs2_force_read_journal()

This greatly reduces the amount of memory useded during recovery.

Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
18 years agoocfs2: take meta data lock in ocfs2_file_aio_read()
Mark Fasheh [Sat, 6 May 2006 02:04:35 +0000 (19:04 -0700)]
ocfs2: take meta data lock in ocfs2_file_aio_read()

Temporarily take the meta data lock in ocfs2_file_aio_read() to allow us to
update our inode fields.

Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
18 years agoocfs2: take data locks around extend
Mark Fasheh [Sat, 6 May 2006 02:04:03 +0000 (19:04 -0700)]
ocfs2: take data locks around extend

We need to take a data lock around extends to protect the pages that
ocfs2_zero_extend is going to be pulling into the page cache. Otherwise an
extend on one node might populate the page cache with data pages that have
no lock coverage.

Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
18 years agoMerge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
Linus Torvalds [Wed, 17 May 2006 21:28:57 +0000 (14:28 -0700)]
Merge branch 'release' of git://git./linux/kernel/git/aegl/linux-2.6

* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
  [IA64] one-line cleanup on set_irq_affinity_info
  [IA64] fix broken irq affinity
  [IA64] sn2 defconfig

18 years ago[ARM] 3530/1: PXA Mainstone: prevent double enable_irq() in pcmcia
Thomas Gleixner [Wed, 17 May 2006 19:14:29 +0000 (20:14 +0100)]
[ARM] 3530/1: PXA Mainstone: prevent double enable_irq() in pcmcia

Patch from Thomas Gleixner

The mainstone board pcmcia interrupt have been enabled via setup_irq()
and the following socket check calls enable_irq again. Set the NOAUTOEN flag so the interrupt is not automatically enabled in setup_irq()

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[PATCH] bcm43xx: associate on 'ifconfig up'
David Woodhouse [Fri, 5 May 2006 16:38:27 +0000 (17:38 +0100)]
[PATCH] bcm43xx: associate on 'ifconfig up'

I still need this hack to work around the fact that softmac doesn't
attempt to associate when we bring the device up...

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
18 years agoIB/srp: Complete correct SCSI commands on device reset
Ishai Rabinovitz [Wed, 17 May 2006 16:20:48 +0000 (09:20 -0700)]
IB/srp: Complete correct SCSI commands on device reset

When flushing out queued commands after a successful device reset,
make sure that SRP completes the right commands, instead of calling
scsi_done on the command passed into the device reset handler over and
over.

Signed-off-by: Ishai Rabinovitz <ishai@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoIB/srp: Get rid of extra scsi_host_put()s if reconnection fails
Roland Dreier [Wed, 17 May 2006 16:16:03 +0000 (09:16 -0700)]
IB/srp: Get rid of extra scsi_host_put()s if reconnection fails

If a reconnection attempt fails, then SRP does two scsi_host_put()s.
This is a historical relic from an earlier version of the driver that
took a reference on the scsi_host before trying to reconnect, so get
rid of the extra scsi_host_put().

Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoIB/srp: Don't wait for disconnection if sending DREQ fails
Roland Dreier [Wed, 17 May 2006 16:13:21 +0000 (09:13 -0700)]
IB/srp: Don't wait for disconnection if sending DREQ fails

Sending a DREQ may fail, for example because the remote target has
already broken the connection.  If so, then SRP should not wait for
the disconnection to complete, because it never will.

Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years ago[ARM] 3529/1: s3c24xx: fix restoring control register with undefined instruction
Dimitry Andric [Wed, 17 May 2006 15:31:11 +0000 (16:31 +0100)]
[ARM] 3529/1: s3c24xx: fix restoring control register with undefined instruction

Patch from Dimitry Andric

In arch/arm/mach-s3c2410/sleep.S, the coprocessor registers are saved at
suspend time, and restored at resume time. However, an undefined
instruction is used when attempting to restore a non-existent "auxiliary
control register".  This leads to a crash on S3C2412, which has an ARM926
core instead of an ARM920.

At suspend time, the following fragment runs:

mrc p15, 0, r7, c2, c0, 0 @ translation table base address
mrc p15, 0, r8, c2, c0, 0 @ auxiliary control register
mrc p15, 0, r9, c1, c0, 0 @ control register

and at resume time, the following fragment runs:

mcr p15, 0, r7, c2, c0, 0 @ translation table base
mcr p15, 0, r8, c1, c1, 0 @ auxilliary control
...
mcr p15, 0, r9, c1, c0, 0 @ turn on MMU, etc

There are several problems with these fragments:
1. The ARM920 and ARM926 cores don't have any "auxiliary control
   register", at least not according to the ARM920 and ARM926 TRM's.
2. The 2nd line of suspend erroneously saves the c2 register again.
3. This saved c2 value is restored using an undefined instruction.  For
   some reason this does not crash on ARM920, but does crash on ARM926.

The following patch fixes all these problems.

Signed-off-by: Dimitry Andric <dimitry@andric.com>
Yes, this looks sensible

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years agoIB/mthca: Make fw_cmd_doorbell default to 0
Roland Dreier [Wed, 17 May 2006 14:48:07 +0000 (07:48 -0700)]
IB/mthca: Make fw_cmd_doorbell default to 0

Setting fw_cmd_doorbell allows FW command to be queued using posted
writes instead of requiring polling on a "go" bit, so it should be a
performance boost.  However, the option causes problems with at least
some device/firmware combinations, so set the default to 0 until we
understand what's going on better.

Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years ago[IA64] one-line cleanup on set_irq_affinity_info
Chen, Kenneth W [Tue, 16 May 2006 23:34:57 +0000 (16:34 -0700)]
[IA64] one-line cleanup on set_irq_affinity_info

Calls to set_irq_info in set_irq_affinity_info() is redundant because
irq_affinity mask was set just one line immediately above it.  Remove
that duplicate call.

Signed-off-by: Ken Chen <kenneth.w.chen@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[IA64] fix broken irq affinity
Chen, Kenneth W [Tue, 16 May 2006 23:29:00 +0000 (16:29 -0700)]
[IA64] fix broken irq affinity

When CONFIG_PCI_MSI is set, move_irq() is an empty function, causing
grief when sys admin tries to bind interrupt to CPU.

Signed-off-by: Ken Chen <kenneth.w.chen@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[IA64] sn2 defconfig
Jes Sorensen [Mon, 15 May 2006 09:07:54 +0000 (05:07 -0400)]
[IA64] sn2 defconfig

Set node shift to 10 on SN2 and disable mutex debugging.

Signed-off-by: Jes Sorensen <jes@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[TCP]: reno sacked_out count fix
Angelo P. Castellani [Wed, 17 May 2006 04:42:11 +0000 (21:42 -0700)]
[TCP]: reno sacked_out count fix

From: "Angelo P. Castellani" <angelo.castellani+lkml@gmail.com>

Using NewReno, if a sk_buff is timed out and is accounted as lost_out,
it should also be removed from the sacked_out.

This is necessary because recovery using NewReno fast retransmit could
take up to a lot RTTs and the sk_buff RTO can expire without actually
being really lost.

left_out = sacked_out + lost_out
in_flight = packets_out - left_out + retrans_out

Using NewReno without this patch, on very large network losses,
left_out becames bigger than packets_out + retrans_out (!!).

For this reason unsigned integer in_flight overflows to 2^32 - something.

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[IPV6]: Endian fix in net/ipv6/netfilter/ip6t_eui64.c:match().
Alexey Dobriyan [Tue, 16 May 2006 22:24:41 +0000 (15:24 -0700)]
[IPV6]: Endian fix in net/ipv6/netfilter/ip6t_eui64.c:match().

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[TR]: Remove an unused export.
Adrian Bunk [Tue, 16 May 2006 22:23:40 +0000 (15:23 -0700)]
[TR]: Remove an unused export.

This patch removes the unused EXPORT_SYMBOL(tr_source_route).

(Note, the usage in net/llc/llc_output.c can't be modular.)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/spi-2.6
Linus Torvalds [Tue, 16 May 2006 22:18:26 +0000 (15:18 -0700)]
Merge /pub/scm/linux/kernel/git/gregkh/spi-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/spi-2.6:
  [PATCH] SPI: spi_bitbang: clocking fixes
  [PATCH] spi: Update to PXA2xx SPI Driver
  [PATCH] SPI: busnum == 0 needs to work
  [PATCH] SPI: devices can require LSB-first encodings
  [PATCH] SPI: Renamed bitbang_transfer_setup to spi_bitbang_setup_transfer and export it
  [PATCH] SPI: Add David as the SPI subsystem maintainer
  [PATCH] SPI: spi bounce buffer has a minimum length
  [PATCH] SPI: spi whitespace fixes
  [PATCH] SPI: add PXA2xx SSP SPI Driver
  [PATCH] SPI: per-transfer overrides for wordsize and clocking

18 years ago[IPX]: Correct return type of ipx_map_frame_type().
Alexey Dobriyan [Tue, 16 May 2006 22:17:49 +0000 (15:17 -0700)]
[IPX]: Correct return type of ipx_map_frame_type().

Casting BE16 to int and back may or may not work. Correct, to be sure.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years agoMerge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Tue, 16 May 2006 22:16:14 +0000 (15:16 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm

* master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] arch/arm/kernel/dma-isa.c: named initializers
  [ARM] 3527/1: MPCore Boot Lockup Fix
  [ARM] arch/arm/kernel/process.c: Fix warning
  [ARM] 3526/1: ioremap should use vunmap instead of vfree on ARM
  [ARM] 3524/1: ARM EABI: more 64-bit aligned stack fixes
  [ARM] 3517/1: move definition of PROC_INFO_SZ from procinfo.h to asm-offsets.h

18 years agoMerge master.kernel.org:/home/rmk/linux-2.6-serial
Linus Torvalds [Tue, 16 May 2006 22:15:59 +0000 (15:15 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-serial

* master.kernel.org:/home/rmk/linux-2.6-serial:
  [ARM] 3523/1: Serial core pm_state

18 years ago[IPX]: Correct argument type of ipxrtr_delete().
Alexey Dobriyan [Tue, 16 May 2006 22:07:28 +0000 (15:07 -0700)]
[IPX]: Correct argument type of ipxrtr_delete().

A single caller passes __u32. Inside function "net" is compared with
__u32 (__be32 really, just wasn't annotated).

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[PKT_SCHED]: Potential jiffy wrap bug in dev_watchdog().
Stephen Hemminger [Tue, 16 May 2006 22:02:12 +0000 (15:02 -0700)]
[PKT_SCHED]: Potential jiffy wrap bug in dev_watchdog().

There is a potential jiffy wraparound bug in the transmit watchdog
that is easily avoided by using time_after().

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[PATCH] SPI: spi_bitbang: clocking fixes
David Brownell [Fri, 7 Apr 2006 05:25:56 +0000 (22:25 -0700)]
[PATCH] SPI: spi_bitbang: clocking fixes

This fixes two problems triggered by the MMC stack updating clocks:

 - SPI masters driver should accept a max clock speed of zero; that's one
   convention for marking idle devices.  (Presumably that helps controllers
   that don't autogate clocks to "off" when not in use.)

 - There are more than 1000 nanoseconds per millisecond; setting the clock
   down to 125 KHz now works properly.

Showing once again that Zero (http://en.wikipedia.org/wiki/Zero) is still
an inexhaustible number of bugs.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: Update to PXA2xx SPI Driver
Stephen Street [Tue, 28 Mar 2006 22:05:23 +0000 (14:05 -0800)]
[PATCH] spi: Update to PXA2xx SPI Driver

Fix two outstanding issues with the pxa2xx_spi driver:

1) Bad cast in the function u32_writer. Thanks to Henrik Bechmann
2) Adds support for per transfer changes to speed and bits per word

Signed-off-by: Stephen Street <stephen@streetfiresound.com>
Cc: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] SPI: busnum == 0 needs to work
David Brownell [Mon, 3 Apr 2006 22:49:04 +0000 (15:49 -0700)]
[PATCH] SPI: busnum == 0 needs to work

We need to be able to have a "SPI bus 0" matching chip numbering; but
that number was wrongly used to flag dynamic allocation of a bus number.

This patch resolves that issue; now negative numbers trigger dynamic alloc.

It also updates the how-to-write-a-controller-driver overview to mention
this stuff.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] SPI: devices can require LSB-first encodings
David Brownell [Mon, 3 Apr 2006 22:46:22 +0000 (15:46 -0700)]
[PATCH] SPI: devices can require LSB-first encodings

Add spi_device hook for LSB-first word encoding, and update all the
(in-tree) controller drivers to reject such devices.  Eventually,
some controller drivers will be updated to support lsb-first encodings
on the wire; no current drivers need this.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] SPI: Renamed bitbang_transfer_setup to spi_bitbang_setup_transfer and export it
Kumar Gala [Sun, 2 Apr 2006 21:06:35 +0000 (16:06 -0500)]
[PATCH] SPI: Renamed bitbang_transfer_setup to spi_bitbang_setup_transfer and export it

Renamed bitbang_transfer_setup to follow convention of other exported symbols
from spi-bitbang.  Exported spi_bitbang_setup_transfer to allow users of
spi-bitbang to use the function in their own setup_transfer.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Cc: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] SPI: Add David as the SPI subsystem maintainer
Kumar Gala [Sun, 2 Apr 2006 21:05:54 +0000 (16:05 -0500)]
[PATCH] SPI: Add David as the SPI subsystem maintainer

Add David as the SPI subsystem maintainer

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] SPI: spi bounce buffer has a minimum length
David Brownell [Sun, 2 Apr 2006 18:37:40 +0000 (10:37 -0800)]
[PATCH] SPI: spi bounce buffer has a minimum length

Make sure that spi_write_then_read() can always handle at least 32 bytes
of transfer (total, both directions), minimizing one portability issue.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] SPI: spi whitespace fixes
David Brownell [Sun, 2 Apr 2006 18:33:37 +0000 (10:33 -0800)]
[PATCH] SPI: spi whitespace fixes

This removes superfluous whitespace in the <linux/spi/spi.h> header.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] SPI: add PXA2xx SSP SPI Driver
Stephen Street [Wed, 8 Mar 2006 07:53:24 +0000 (23:53 -0800)]
[PATCH] SPI: add PXA2xx SSP SPI Driver

This driver turns a PXA2xx synchronous serial port (SSP) into a SPI master
controller (see Documentation/spi/spi_summary).  The driver has the following
features:

- Support for any PXA2xx SSP
- SSP PIO and SSP DMA data transfers.
- External and Internal (SSPFRM) chip selects.
- Per slave device (chip) configuration.
- Full suspend, freeze, resume support.

Signed-off-by: Stephen Street <stephen@streetfiresound.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Cc: David Brownell <david-b@pacbell.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] SPI: per-transfer overrides for wordsize and clocking
Imre Deak [Fri, 17 Feb 2006 18:02:18 +0000 (10:02 -0800)]
[PATCH] SPI: per-transfer overrides for wordsize and clocking

Some protocols (like one for some bitmap displays) require different clock
speed or word size settings for each transfer in an SPI message. This adds
those parameters to struct spi_transfer.  They are to be used when they are
nonzero; otherwise the defaults from spi_device are to be used.

The patch also adds a setup_transfer callback to spi_bitbang, uses it for
messages that use those overrides, and implements it so that the pure
bitbanging code can help resolve any questions about how it should work.

Signed-off-by: Imre Deak <imre.deak@nokia.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[ARM] arch/arm/kernel/dma-isa.c: named initializers
Adrian Bunk [Tue, 16 May 2006 21:09:46 +0000 (22:09 +0100)]
[ARM] arch/arm/kernel/dma-isa.c: named initializers

This patch converts struct dma_resources to named initializers.

Besides fixing a compile error in -mm, it didn't sound like a bad idea.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Acked-by: Alexander Schulz <alex@shark-linux.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3527/1: MPCore Boot Lockup Fix
Harry Fearnhamm [Tue, 16 May 2006 15:50:21 +0000 (16:50 +0100)]
[ARM] 3527/1: MPCore Boot Lockup Fix

Patch from Harry Fearnhamm

This patch fixes the occasional lockup seen in early boot stage
on RealView MPCore system.

Signed-off-by: Harry Fearnhamm <Harry.Fearnhamm@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years agoMerge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
Linus Torvalds [Tue, 16 May 2006 15:46:10 +0000 (08:46 -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] Fix pSeries identification in prom_init.c
  [PATCH] powerpc: fix kernel version display on pseries boxes

18 years ago[PATCH] slab: Fix kmem_cache_destroy() on NUMA
Roland Dreier [Mon, 15 May 2006 18:41:00 +0000 (11:41 -0700)]
[PATCH] slab: Fix kmem_cache_destroy() on NUMA

With CONFIG_NUMA set, kmem_cache_destroy() may fail and say "Can't
free all objects."  The problem is caused by sequences such as the
following (suppose we are on a NUMA machine with two nodes, 0 and 1):

 * Allocate an object from cache on node 0.
 * Free the object on node 1.  The object is put into node 1's alien
   array_cache for node 0.
 * Call kmem_cache_destroy(), which ultimately ends up in __cache_shrink().
 * __cache_shrink() does drain_cpu_caches(), which loops through all nodes.
   For each node it drains the shared array_cache and then handles the
   alien array_cache for the other node.

However this means that node 0's shared array_cache will be drained,
and then node 1 will move the contents of its alien[0] array_cache
into that same shared array_cache.  node 0's shared array_cache is
never looked at again, so the objects left there will appear to be in
use when __cache_shrink() calls __node_shrink() for node 0.  So
__node_shrink() will return 1 and kmem_cache_destroy() will fail.

This patch fixes this by having drain_cpu_caches() do
drain_alien_cache() on every node before it does drain_array() on the
nodes' shared array_caches.

The problem was originally reported by Or Gerlitz <ogerlitz@voltaire.com>.

Signed-off-by: Roland Dreier <rolandd@cisco.com>
Acked-by: Christoph Lameter <clameter@sgi.com>
Acked-by: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] x86_64: Don't schedule on exception stack on preemptive kernels
Andi Kleen [Mon, 15 May 2006 16:19:47 +0000 (18:19 +0200)]
[PATCH] x86_64: Don't schedule on exception stack on preemptive kernels

Extends an earlier patch from John Blackwood to more exception handlers
that also run on the exception stacks.

Expand the use of preempt_conditional_{sti,cli} to all cases where
interrupts are to be re-enabled during exception handling while running
on an IST stack.

Based on original patch from Jan Beulich.

Cc: John Blackwood <john.blackwood@ccur.com>
Cc: jbeulich@novell.com
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] x86_64: Fix memory hotadd heuristics
Andi Kleen [Mon, 15 May 2006 16:19:44 +0000 (18:19 +0200)]
[PATCH] x86_64: Fix memory hotadd heuristics

This fixes some boot failures on Dell and Unisys systems with memory
hotadd added.

 - Set hotadd_percent to 0 by default.  This means anybody using hotadd
   memory needs to specify the value on the command line.  That's
   because there are lots of Intel boxes which have a bogus hotplug area
   in their SRAT and they would waste a lot of memory before.
 - Fix calculation of how much memory to use when the hotplug area
   exceeds hotadd_percent
 - Fix fallback when the
 - Fix fallback if memory hotadd is not compiled in.

Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] i386/x86_64: Force pci=noacpi on HP XW9300
Andi Kleen [Mon, 15 May 2006 16:19:41 +0000 (18:19 +0200)]
[PATCH] i386/x86_64: Force pci=noacpi on HP XW9300

This is needed to see all devices.

The system has multiple PCI segments and we don't handle that properly
yet in PCI and ACPI. Short term before this is fixed blacklist it to
pci=noacpi.

Acked-by: len.brown@intel.com
Cc: gregkh@suse.de
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] x86_64: Don't warn for overflow in nommu case when dma_mask is < 32bit
Andi Kleen [Mon, 15 May 2006 16:19:38 +0000 (18:19 +0200)]
[PATCH] x86_64: Don't warn for overflow in nommu case when dma_mask is < 32bit

This triggers for b44's 1GB DMA workaround which tries to map
first and then bounces.

The 32bit heuristic is reasonable because the IOMMU doesn't attempt
to handle < 32bit masks anyways.

Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] x86_64: Check for bad dma address in b44 1GB DMA workaround
Andi Kleen [Mon, 15 May 2006 16:19:35 +0000 (18:19 +0200)]
[PATCH] x86_64: Check for bad dma address in b44 1GB DMA workaround

Needed for interaction with the nommu code in x86-64 which
will return bad_dma_address if the address exceeds dma_mask.

Cc: netdev@vger.kernel.org
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Fix pSeries identification in prom_init.c
Benjamin Herrenschmidt [Mon, 15 May 2006 05:46:03 +0000 (15:46 +1000)]
[PATCH] Fix pSeries identification in prom_init.c

The OF trampoline code prom_init.c still needs to identify IBM pSeries
(PAPR) machines in order to run some platform specific code on them like
instanciating the TCE tables. The code doing that detection was changed
recently in 2.6.17 early stages but was done slightly incorrectly. It
should be testing for an exact match of "chrp" and it currently tests
for anything that begins with "chrp". That means it will incorrectly
match with platforms using Maple-like device-trees and have open
firmware. This fixes it by using strcmp instead of strncmp to match what
the actual platform detection code does.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: fix kernel version display on pseries boxes
Anton Blanchard [Wed, 10 May 2006 03:05:54 +0000 (13:05 +1000)]
[PATCH] powerpc: fix kernel version display on pseries boxes

We are displaying the wrong thing on the operator panel (2x40
character LCD).  This got broken in commit cebb21b5, when UTS_RELEASE
got changed to system_utsname.version.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[ARM] arch/arm/kernel/process.c: Fix warning
Russell King [Tue, 16 May 2006 10:33:15 +0000 (11:33 +0100)]
[ARM] arch/arm/kernel/process.c: Fix warning

arch/arm/kernel/process.c:314: warning: assignment makes integer from pointer without a cast

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3526/1: ioremap should use vunmap instead of vfree on ARM
Catalin Marinas [Tue, 16 May 2006 10:30:26 +0000 (11:30 +0100)]
[ARM] 3526/1: ioremap should use vunmap instead of vfree on ARM

Patch from Catalin Marinas

This patch modifies the __ioremap_pfn and __iounmap functions in
arch/arm/mm/ioremap.c to use vunmap instead of vfree.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3524/1: ARM EABI: more 64-bit aligned stack fixes
Nicolas Pitre [Tue, 16 May 2006 10:29:46 +0000 (11:29 +0100)]
[ARM] 3524/1: ARM EABI: more 64-bit aligned stack fixes

Patch from Nicolas Pitre

Assembly code that calls C code must ensure the C code sees a 64-bit
aligned stack pointer.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3517/1: move definition of PROC_INFO_SZ from procinfo.h to asm-offsets.h
Uwe Zeisberger [Wed, 10 May 2006 17:11:05 +0000 (18:11 +0100)]
[ARM] 3517/1: move definition of PROC_INFO_SZ from procinfo.h to asm-offsets.h

Patch from Uwe Zeisberger

The symbol is only used in arch/arm/kernel/head-common.S.  This in turn
is included from arch/arm/kernel/head.S and arch/arm/kernel/head-nommu.S
which include asm-offsets.h .

Signed-off-by: Uwe Zeisberger <Uwe_Zeisberger@digi.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3523/1: Serial core pm_state
Andrew Victor [Tue, 16 May 2006 10:28:49 +0000 (11:28 +0100)]
[ARM] 3523/1: Serial core pm_state

Patch from Andrew Victor

The serial_core already manages the power state of the UARTs, and
therefore it shouldn't suspend a UART which was previously suspended.

This patch modifies serial_core only call the UART-specific
power-management function if the PM state is actually changing.

Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[WATCHDOG] s3c2410_wdt.c stop watchdog after boot
Ben Dooks [Wed, 19 Apr 2006 22:02:56 +0000 (23:02 +0100)]
[WATCHDOG] s3c2410_wdt.c stop watchdog after boot

If the s3c2410 watchdog timer is not enabled by
the driver at startup, ensure that it is stopped
in-case the boot process has enabled it.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@osdl.org>
18 years ago[WATCHDOG] i8xx_tco.c - remove support for ICH6 + ICH7
Wim Van Sebroeck [Sun, 16 Apr 2006 10:52:35 +0000 (12:52 +0200)]
[WATCHDOG] i8xx_tco.c - remove support for ICH6 + ICH7

Temporary remove support for ICH6 + ICH7. In these newer TCO's
the watchdog timer has changed: the TCO_TMR register is not at
the TCOBASE+0x1 offset, but changed it's place to TCOBASE+0x12
and became 10 bit long [0:9]. (Kernel BUG 6031).

ICH6 + ICH7 support will be added in a new driver. Code is
under test.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@osdl.org>
18 years ago[WATCHDOG] Documentation/watchdog/watchdog-api.txt - fix watchdog daemon
Randy Dunlap [Wed, 5 Apr 2006 03:17:26 +0000 (20:17 -0700)]
[WATCHDOG] Documentation/watchdog/watchdog-api.txt - fix watchdog daemon

Fix the simple watchdog daemon program in Doc/watchdog/watchdog-api.txt
to build cleanly.

Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@osdl.org>
18 years ago[WATCHDOG] sc1200wdt.c printk fix
Dave Jones [Mon, 3 Apr 2006 23:04:48 +0000 (16:04 -0700)]
[WATCHDOG] sc1200wdt.c printk fix

Fix printk output.

sc1200wdt: build 20020303<3>sc1200wdt: io parameter must be specified

Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@osdl.org>
18 years agosky2: prevent dual port receiver problems
Stephen Hemminger [Thu, 11 May 2006 22:07:28 +0000 (15:07 -0700)]
sky2: prevent dual port receiver problems

When both ports are receiving simultaneously, the receive logic gets confused
and may pass up a packet before it is full. This causes hangs, and IP will see
lots of garbage packets. There is even the potential for data corruption if
a later arriving packet DMA's into freed memory.

It looks like a hardware bug because status arrives for a packet but no
data is there. Until this bug is worked out, block the user from bringing
up both ports at once.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
18 years agox86_64: Check for bad dma address in b44 1GB DMA workaround
Andi Kleen [Mon, 15 May 2006 16:19:35 +0000 (18:19 +0200)]
x86_64: Check for bad dma address in b44 1GB DMA workaround

Needed for interaction with the nommu code in x86-64 which
will return bad_dma_address if the address exceeds dma_mask.

Cc: netdev@vger.kernel.org
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
18 years agoThe ixp2000 driver for the enp2611 was developed on a board with
Lennert Buytenhek [Mon, 15 May 2006 19:25:29 +0000 (12:25 -0700)]
The ixp2000 driver for the enp2611 was developed on a board with
three gigabit ports, but some enp2611 models only have two ports
(and only one onboard PM3386.)  The current driver assumes there
are always three ports and so it doesn't work on the two-port
version of the board at all.

This patch adds a bit of logic to the enp2611 driver to limit the
number of ports to 2 if the second PM3386 isn't detected.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>