sfrench/cifs-2.6.git
17 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
Linus Torvalds [Fri, 22 Sep 2006 19:48:03 +0000 (12:48 -0700)]
Merge git://git./linux/kernel/git/paulus/powerpc

* git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: (114 commits)
  [POWERPC] Fix ohare IDE irq workaround on old powermacs
  [POWERPC] EEH: Power4 systems sometimes need multiple resets.
  [POWERPC] Include <asm/mmu.h> in arch/powerpc/sysdev/fsl_soc.h for phys_addr_t.
  [POWERPC] Demacrofy arch/powerpc/platforms/maple/pci.c
  [POWERPC] Maple U3 HT - reject inappropriate config space access
  [POWERPC] Fix IPIC pending register assignments
  [POWERPC] powerpc: fix building gdb against asm/ptrace.h
  [POWERPC] Remove DISCONTIGMEM cruft from page.h
  [POWERPC] Merge iSeries i/o operations with the rest
  [POWERPC] 40x: Fix debug status register defines
  [POWERPC] Fix compile error in sbc8560
  [POWERPC] EEH: support MMIO enable recovery step
  [POWERPC] EEH: enable MMIO/DMA on frozen slot
  [POWERPC] EEH: code comment cleanup
  [POWERPC] EEH: balance pcidev_get/put calls
  [POWERPC] PPC: Fix xmon stack frame address in backtrace
  [POWERPC] Add AT_PLATFORM value for Xilinx Virtex-4 FX
  [POWERPC] Start arch/powerpc/boot code reorganization
  [POWERPC] Define of_read_ulong helper
  [POWERPC] iseries: eliminate a couple of warnings
  ...

17 years ago[POWERPC] Fix ohare IDE irq workaround on old powermacs
Benjamin Herrenschmidt [Fri, 22 Sep 2006 02:56:30 +0000 (12:56 +1000)]
[POWERPC] Fix ohare IDE irq workaround on old powermacs

Looks like a workaround for old bogus OF bitrot...  This fixes it and
hence fixes boot on some performa machines.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] EEH: Power4 systems sometimes need multiple resets.
Linas Vepstas [Thu, 21 Sep 2006 23:25:56 +0000 (18:25 -0500)]
[POWERPC] EEH: Power4 systems sometimes need multiple resets.

On detection of an EEH error, some Power4 systems seem to occasionally
want to be reset twice before they report themselves as fully recovered.
This patch re-arranges the code to attempt additional resets if the first
one doesn't take.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] Include <asm/mmu.h> in arch/powerpc/sysdev/fsl_soc.h for phys_addr_t.
Scott Wood [Thu, 21 Sep 2006 18:11:52 +0000 (13:11 -0500)]
[POWERPC] Include <asm/mmu.h> in arch/powerpc/sysdev/fsl_soc.h for phys_addr_t.

This patch causes fsl_soc.h to import the definition of phys_addr_t
itself, rather than relying on its includer to do so.

Signed-off-by: Scott Wood <scott@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] Demacrofy arch/powerpc/platforms/maple/pci.c
Nathan Lynch [Thu, 21 Sep 2006 19:31:13 +0000 (14:31 -0500)]
[POWERPC] Demacrofy arch/powerpc/platforms/maple/pci.c

Noticed that the U3_*CFA macros have some typos:

#define U3_HT_CFA0(devfn, off) \
((((unsigned long)devfn) << 8) | offset)

(refers to offset rather than off)

#define U3_AGP_CFA0(devfn, off) \
((1 << (unsigned long)PCI_SLOT(dev_fn)) \
| (((unsigned long)PCI_FUNC(dev_fn)) << 8) \

(refers to dev_fn rather than devfn)

Things happen to work, but there doesn't seem to be any reason these
shouldn't be functions.  Overall behavior should be unchanged.

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] Maple U3 HT - reject inappropriate config space access
Nathan Lynch [Thu, 21 Sep 2006 19:25:34 +0000 (14:25 -0500)]
[POWERPC] Maple U3 HT - reject inappropriate config space access

When there is a PCI-X mode 2 capable device behind the HT<->PCI-X
bridge, the pci core decides that the device has the extended 4K
config space, even though the bus is not operating in mode 2.  This is
because the u3_ht pci ops silently accept offsets greater than 255 but
use only the 8 least significant bits, which means reading at offset
0x100 gets the data at offset 0x0, and causes confusion for lspci.

Reject accesses to configuration space offsets greater than 255.

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] Fix IPIC pending register assignments
Scott Wood [Thu, 21 Sep 2006 18:10:51 +0000 (13:10 -0500)]
[POWERPC] Fix IPIC pending register assignments

This patch fixes the assignment of pending registers to IRQ numbers for
the IPIC; the code previously assigned all IRQs to the high pending word
regardless of which word the interrupt belonged to.

Signed-off-by: Scott Wood <scottwood@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] powerpc: fix building gdb against asm/ptrace.h
Arnd Bergmann [Thu, 21 Sep 2006 10:29:51 +0000 (12:29 +0200)]
[POWERPC] powerpc: fix building gdb against asm/ptrace.h

Ulrich Weigand found a bug with the current version of the
asm-powerpc/ptrace.h that prevents building at least the
SPU target version of gdb, since some ptrace opcodes are
not defined.

The problem seems to have originated in the merging of 32 and
64 bit versions of that file, the problem is that some opcodes
are only valid on 64 bit kernels, but are also used by 32 bit
programs, so they can't depends on the __powerpc64__ symbol.

Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] Remove DISCONTIGMEM cruft from page.h
Michael Ellerman [Thu, 21 Sep 2006 08:21:35 +0000 (18:21 +1000)]
[POWERPC] Remove DISCONTIGMEM cruft from page.h

This looks like cruft to me, these functions don't exist AFAICT,
and I can't see that it's possible to even enable DISCONTIGMEM on
powerpc anymore. CC'ing some folks who might know better, based on
the who-touched-it-last principle.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] Merge iSeries i/o operations with the rest
Stephen Rothwell [Thu, 21 Sep 2006 08:00:00 +0000 (18:00 +1000)]
[POWERPC] Merge iSeries i/o operations with the rest

This patch changes the io operations so that they are out of line if
CONFIG_PPC_ISERIES is set and includes a firmware feature check in
that case.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] 40x: Fix debug status register defines
Josh Boyer [Wed, 20 Sep 2006 14:11:59 +0000 (09:11 -0500)]
[POWERPC] 40x: Fix debug status register defines

This fixes some debug register defines on PPC 40x that were incorrect.

Signed-off-by: Josh Boyer <jdub@us.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] Fix compile error in sbc8560
Amy Fong [Tue, 19 Sep 2006 03:07:24 +0000 (23:07 -0400)]
[POWERPC] Fix compile error in sbc8560

The following fixes compile errors in sbc8560.

Signed-off-by: Amy Fong <amy.fong@windriver.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] EEH: support MMIO enable recovery step
Linas Vepstas [Fri, 15 Sep 2006 23:58:59 +0000 (18:58 -0500)]
[POWERPC] EEH: support MMIO enable recovery step

Update to the PowerPC PCI error recovery code.

Add code to enable MMIO if a device driver reports that it is capable
of recovering on its own.  One anticipated use of this having a device
driver enable MMIO so that it can take a register dump, which might
then be followed by the device driver requesting a full reset.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] EEH: enable MMIO/DMA on frozen slot
Linas Vepstas [Fri, 15 Sep 2006 23:57:42 +0000 (18:57 -0500)]
[POWERPC] EEH: enable MMIO/DMA on frozen slot

Add wrapper around the rtas call to enable MMIO or DMA on a frozen pci
slot.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] EEH: code comment cleanup
Linas Vepstas [Fri, 15 Sep 2006 23:56:35 +0000 (18:56 -0500)]
[POWERPC] EEH: code comment cleanup

Clean up subroutine documentation; mostly formatting changes, with
some new content.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] EEH: balance pcidev_get/put calls
Linas Vepstas [Fri, 15 Sep 2006 23:55:34 +0000 (18:55 -0500)]
[POWERPC] EEH: balance pcidev_get/put calls

This corrects a pci_dev get/put imbalance that can occur only in
highly unlikely situations (kmalloc failures, pci devices with
overlapping resource addresses).  No actual failures seen, this was
spotted during code review.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] PPC: Fix xmon stack frame address in backtrace
Josh Boyer [Fri, 15 Sep 2006 19:53:10 +0000 (14:53 -0500)]
[POWERPC] PPC: Fix xmon stack frame address in backtrace

The stack frame address was being printed incorrectly in the backtrace
option of XMON on PPC.  This patch fixes it to print the actual stack
address instead of the address of the local variable that contains it.

Signed-off-by: Josh Boyer <jdub@us.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] Add AT_PLATFORM value for Xilinx Virtex-4 FX
Peter Bergner [Thu, 14 Sep 2006 19:18:38 +0000 (14:18 -0500)]
[POWERPC] Add AT_PLATFORM value for Xilinx Virtex-4 FX

Jakub noticed the cputable.c entry for Xilinx Virtex-4 FX was missing
a .platform value, so the AT_PLATFORM value wouldn't be set correctly.
This adds it.

Signed-off-by: Peter Bergner <bergner@vnet.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] Start arch/powerpc/boot code reorganization
Mark A. Greer [Tue, 19 Sep 2006 04:05:08 +0000 (14:05 +1000)]
[POWERPC] Start arch/powerpc/boot code reorganization

This abstracts the operations used in the bootwrapper, and defines
the operations needed for the bootwrapper to run on an OF platform.

The operations have been divided up into platform ops (platform_ops),
firmware ops (fw_ops), device tree ops (dt_ops), and console ops
(console_ops).

The proper operations will be hooked up at runtime to provide the
functionality that you need.

Signed-off-by: Mark A. Greer <mgreer@mvista.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] Define of_read_ulong helper
Paul Mackerras [Tue, 19 Sep 2006 04:06:27 +0000 (14:06 +1000)]
[POWERPC] Define of_read_ulong helper

There are various places where we want to extract an unsigned long
value from a device-tree property that can be 1 or 2 cells in length.
This replaces some open-coded calculations, and one place where we
assumed without checking that properties were the length we wanted,
with a little of_read_ulong() helper.

Signed-off-by: Paul Mackerras <paulus@samba.org>
17 years ago[POWERPC] iseries: eliminate a couple of warnings
Stephen Rothwell [Thu, 14 Sep 2006 04:55:36 +0000 (14:55 +1000)]
[POWERPC] iseries: eliminate a couple of warnings

Copy and paste bug in io.h

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
17 years ago[POWERPC] convert string i/o operations to C
Stephen Rothwell [Tue, 19 Sep 2006 12:17:49 +0000 (22:17 +1000)]
[POWERPC] convert string i/o operations to C

This produces essentially the same code and will make the iSeries i/o
consolidation easier.

The count parameter is changed to long since that will produce the same
(better) code on 32 and 64 bit builds.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
17 years ago[POWERPC] clean up ide io accessors
Stephen Rothwell [Tue, 19 Sep 2006 07:30:20 +0000 (17:30 +1000)]
[POWERPC] clean up ide io accessors

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
17 years ago[POWERPC] remove unused asm routines
Stephen Rothwell [Tue, 19 Sep 2006 06:52:55 +0000 (16:52 +1000)]
[POWERPC] remove unused asm routines

_insw, _outsw, _insl amd _outsl are all unused, so remove them.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
17 years ago[POWERPC] remove unused io accessors
Stephen Rothwell [Tue, 19 Sep 2006 04:51:40 +0000 (14:51 +1000)]
[POWERPC] remove unused io accessors

The io accessors insw_ns, outsw_ns, insl_ns and outsl_ns are unused
(except for one unnecessary use in drivers/net/3c509.c that is addressed
in a previous patch) and are only defined in powerpc/ppc, so remove them.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
17 years ago[POWERPC] silence a warning
Stephen Rothwell [Thu, 14 Sep 2006 06:59:31 +0000 (16:59 +1000)]
[POWERPC] silence a warning

Left over from the constifying of get_property.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
17 years ago[POWERPC] make spinlocks work in a combined kernel
Stephen Rothwell [Thu, 24 Aug 2006 03:29:33 +0000 (13:29 +1000)]
[POWERPC] make spinlocks work in a combined kernel

If we build a pSeries/iSeries combined kernel, we will need this.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
17 years agoLinux v2.6.18. Arrr! v2.6.18
Linus Torvalds [Wed, 20 Sep 2006 03:42:06 +0000 (20:42 -0700)]
Linux v2.6.18. Arrr!

Ahoy, all land-lubbers, test me out right smartly!

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Wed, 20 Sep 2006 03:36:22 +0000 (20:36 -0700)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
  [IPV4] fib_trie: missing ntohl() when calling fib_semantic_match()
  [NETFILTER]: xt_quota: add missing module aliases
  [ATM]: [he] don't hold the device lock when upcalling

17 years ago[IPV4] fib_trie: missing ntohl() when calling fib_semantic_match()
Al Viro [Tue, 19 Sep 2006 20:42:46 +0000 (13:42 -0700)]
[IPV4] fib_trie: missing ntohl() when calling fib_semantic_match()

fib_trie.c::check_leaf() passes host-endian where fib_semantic_match()
expects (and stores into) net-endian.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NETFILTER]: xt_quota: add missing module aliases
Patrick McHardy [Tue, 19 Sep 2006 20:00:57 +0000 (13:00 -0700)]
[NETFILTER]: xt_quota: add missing module aliases

Add missing aliases for ipt_quota and ip6t_quota to make autoload
work.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[ATM]: [he] don't hold the device lock when upcalling
Chas Williams [Tue, 19 Sep 2006 19:59:11 +0000 (12:59 -0700)]
[ATM]: [he] don't hold the device lock when upcalling

This can create a deadlock/lock ordering problem with other layers
that want to use the transmit (or other) path of the card at that
time.

Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoMerge branch 'fixes' of git://git.linux-nfs.org/pub/linux/nfs-2.6
Linus Torvalds [Tue, 19 Sep 2006 16:46:53 +0000 (09:46 -0700)]
Merge branch 'fixes' of git://git.linux-nfs.org/pub/linux/nfs-2.6

* 'fixes' of git://git.linux-nfs.org/pub/linux/nfs-2.6:
  NFS: Fix nfs_page use after free issues in fs/nfs/write.c
  NFSv4: Fix incorrect semaphore release in _nfs4_do_open()
  NFS: Fix Oopsable condition in nfs_readpage_sync()

17 years agoNFS: Fix nfs_page use after free issues in fs/nfs/write.c
Trond Myklebust [Tue, 19 Sep 2006 03:20:35 +0000 (23:20 -0400)]
NFS: Fix nfs_page use after free issues in fs/nfs/write.c

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
17 years agoNFSv4: Fix incorrect semaphore release in _nfs4_do_open()
Trond Myklebust [Fri, 15 Sep 2006 12:11:51 +0000 (08:11 -0400)]
NFSv4: Fix incorrect semaphore release in _nfs4_do_open()

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
17 years agoNFS: Fix Oopsable condition in nfs_readpage_sync()
Trond Myklebust [Fri, 15 Sep 2006 20:03:45 +0000 (16:03 -0400)]
NFS: Fix Oopsable condition in nfs_readpage_sync()

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
17 years agoRevert mmiocfg heuristics and blacklist changes
Linus Torvalds [Tue, 19 Sep 2006 15:15:22 +0000 (08:15 -0700)]
Revert mmiocfg heuristics and blacklist changes

This reverts commits 11012d419cfc0e0f78ca356aca03674217910124 and
40dd2d20f220eda1cd0da8ea3f0f9db8971ba237, which allowed us to use the
MMIO accesses for PCI config cycles even without the area being marked
reserved in the e820 memory tables.

Those changes were needed for EFI-environment Intel macs, but broke some
newer Intel 965 boards, so for now it's better to revert to our old
2.6.17 behaviour and at least avoid introducing any new breakage.

Andi Kleen has a set of patches that work with both EFI and the broken
Intel 965 boards, which will be applied once they get wider testing.

Cc: Arjan van de Ven <arjan@infradead.org>
Cc: Edgar Hucek <hostmaster@ed-soft.at>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years agoMerge git://git.infradead.org/mtd-2.6
Linus Torvalds [Tue, 19 Sep 2006 15:01:58 +0000 (08:01 -0700)]
Merge git://git.infradead.org/mtd-2.6

* git://git.infradead.org/mtd-2.6:
  [MTD] Use SEEK_{SET,CUR,END} instead of hardcoded values in mtdchar lseek()
  MTD: Fix bug in fixup_convert_atmel_pri
  [JFFS2][SUMMARY] Fix a summary collecting bug.
  [PATCH] [MTD] DEVICES: Fill more device IDs in the structure of m25p80
  MTD: Add lock/unlock operations for Atmel AT49BV6416
  MTD: Convert Atmel PRI information to AMD format
  fs/jffs2/xattr.c: remove dead code
  [PATCH] [MTD] Maps: Add dependency on alternate probe methods to physmap
  [PATCH] MTD: Add Macronix MX29F040 to JEDEC
  [MTD] Fixes of performance and stability issues in CFI driver.
  block2mtd.c: Make kernel boot command line arguments work (try 4)
  [MTD NAND] Fix lookup error in nand_get_flash_type()
  remove #error on !PCI from pmc551.c
  MTD: [NAND] Fix the sharpsl driver after breakage from a core conversion
  [MTD] NAND: OOB buffer offset fixups
  make fs/jffs2/nodelist.c:jffs2_obsolete_node_frag() static
  [PATCH] [MTD] NAND: fix dead URL in Kconfig

17 years ago[PATCH] EXT2: Remove superblock lock contention in ext2_statfs
Dave Kleikamp [Tue, 19 Sep 2006 03:12:33 +0000 (20:12 -0700)]
[PATCH] EXT2: Remove superblock lock contention in ext2_statfs

Fix a performance degradation introduced in 2.6.17.  (30% degradation
running dbench with 16 threads)

Commit 21730eed11de42f22afcbd43f450a1872a0b5ea1, which claims to make
EXT2_DEBUG work again, moves the taking of the kernel lock out of
debug-only code in ext2_count_free_inodes and ext2_count_free_blocks and
into ext2_statfs.

The same problem was fixed in ext3 by removing the lock completely (commit
5b11687924e40790deb0d5f959247ade82196665)

Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] headers_check: Clean up asm-parisc/page.h for user headers
Matthew Wilcox [Tue, 19 Sep 2006 03:12:27 +0000 (20:12 -0700)]
[PATCH] headers_check: Clean up asm-parisc/page.h for user headers

Remove definitions of PAGE_* from the user view
Delete unnecessary comments referring to the size of pages
Only include <asm-generic> if we're in __KERNEL__

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Matthew Wilcox <matthew@wil.cx>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Fix 'make headers_check' on ia64
Geert Uytterhoeven [Tue, 19 Sep 2006 03:12:23 +0000 (20:12 -0700)]
[PATCH] Fix 'make headers_check' on ia64

Fix 'make headers_check' on m68k

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Roman Zippel <zippel@linux-m68k.org>
Cc: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Add headers_check' target to output of 'make help'
David Woodhouse [Tue, 19 Sep 2006 03:12:19 +0000 (20:12 -0700)]
[PATCH] Add headers_check' target to output of 'make help'

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Cc: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] genirq core: fix handle_level_irq()
Ingo Molnar [Tue, 19 Sep 2006 09:14:34 +0000 (11:14 +0200)]
[PATCH] genirq core: fix handle_level_irq()

while porting the -rt tree to 2.6.18-rc7 i noticed the following
screaming-IRQ scenario on an SMP system:

 2274  0Dn.:1 0.001ms: do_IRQ+0xc/0x103  <= (ret_from_intr+0x0/0xf)
 2274  0Dn.:1 0.010ms: do_IRQ+0xc/0x103  <= (ret_from_intr+0x0/0xf)
 2274  0Dn.:1 0.020ms: do_IRQ+0xc/0x103  <= (ret_from_intr+0x0/0xf)
 2274  0Dn.:1 0.029ms: do_IRQ+0xc/0x103  <= (ret_from_intr+0x0/0xf)
 2274  0Dn.:1 0.039ms: do_IRQ+0xc/0x103  <= (ret_from_intr+0x0/0xf)
 2274  0Dn.:1 0.048ms: do_IRQ+0xc/0x103  <= (ret_from_intr+0x0/0xf)
 2274  0Dn.:1 0.058ms: do_IRQ+0xc/0x103  <= (ret_from_intr+0x0/0xf)
 2274  0Dn.:1 0.068ms: do_IRQ+0xc/0x103  <= (ret_from_intr+0x0/0xf)
 2274  0Dn.:1 0.077ms: do_IRQ+0xc/0x103  <= (ret_from_intr+0x0/0xf)
 2274  0Dn.:1 0.087ms: do_IRQ+0xc/0x103  <= (ret_from_intr+0x0/0xf)
 2274  0Dn.:1 0.097ms: do_IRQ+0xc/0x103  <= (ret_from_intr+0x0/0xf)

as it turns out, the bug is caused by handle_level_irq(), which if it
races with another CPU already handling this IRQ, it _unmasks_ the IRQ
line on the way out. This is not how 2.6.17 works, and we introduced
this bug in one of the early genirq cleanups right before it went into
-mm. (the bug was not in the genirq patchset for a long time, and we
didnt notice the bug due to the lack of -rt rebase to the new genirq
code. -rt, and hardirq-preemption in particular opens up such races much
wider than anything else.)

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years agox86: save/restore eflags in context switch
Linus Torvalds [Mon, 18 Sep 2006 23:20:40 +0000 (16:20 -0700)]
x86: save/restore eflags in context switch

(And reset it on new thread creation)

It turns out that eflags is important to save and restore not just
because of iopl, but due to the magic bits like the NT bit, which we
don't want leaking between different threads.

Tested-by: Mike Galbraith <efault@gmx.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Mon, 18 Sep 2006 23:16:05 +0000 (16:16 -0700)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
  [ATM] CLIP: Do not refer freed skbuff in clip_mkip().
  [NET]: Drop tx lock in dev_watchdog_up
  [PACKET]: Don't truncate non-linear skbs with mmaped IO
  [NET]: Mark frame diverter for future removal.
  [NETFILTER]: Add secmark headers to header-y
  [ATM]: linux-atm-general mailing list is subscribers only
  [ATM]: [he] when transmit fails, unmap the dma regions
  [TCP] tcp-lp: update information to MAINTAINERS
  [TCP] tcp-lp: bug fix for oops in 2.6.18-rc6
  [BRIDGE]: random extra bytes on STP TCN packet
  [IPV6]: Accept -1 for IPV6_TCLASS
  [IPV6]: Fix tclass setting for raw sockets.
  [IPVS]: remove the debug option go ip_vs_ftp
  [IPVS]: Make sure ip_vs_ftp ports are valid
  [IPVS]: auto-help for ip_vs_ftp
  [IPVS]: Document the ports option to ip_vs_ftp in kernel-parameters.txt
  [TCP]: Turn ABC off.
  [NEIGH]: neigh_table_clear() doesn't free stats

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Mon, 18 Sep 2006 23:15:40 +0000 (16:15 -0700)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SPARC]: Fix regression in sys_getdomainname()
  [OPENPROMIO]: Handle current_node being NULL correctly.

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

* master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] 3815/1: headers_install support for ARM
  [ARM] 3794/1: S3C24XX: do not defined set_irq_wake when no CONFIG_PM
  [ARM] 3793/1: S3C2412: fix wrong serial info struct
  [ARM] 3780/1: Fix iop321 cpuid
  [ARM] 3786/1: pnx4008: update defconfig
  [ARM] 3785/1: S3C2412: Fix idle code as default uses wrong clocks
  [ARM] 3784/1: S3C2413: fix config for MACH_S3C2413/MACH_SMDK2413

17 years ago[ARM] 3815/1: headers_install support for ARM
Ralph Siemsen [Mon, 18 Sep 2006 15:28:50 +0000 (16:28 +0100)]
[ARM] 3815/1: headers_install support for ARM

Move kernel-only #includes into #ifdef __KERNEL__, so that
headers_install target can be used on ARM.

Signed-off-by: Ralph Siemsen <ralphs@netwinder.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years ago[SPARC]: Fix regression in sys_getdomainname()
Andy Walker [Mon, 18 Sep 2006 14:11:36 +0000 (07:11 -0700)]
[SPARC]: Fix regression in sys_getdomainname()

This patch corrects the buffer length checking in the
sys_getdomainname() implementation for sparc/sparc64.

Signed-off-by: Andy Walker <andy@puszczka.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[ATM] CLIP: Do not refer freed skbuff in clip_mkip().
YOSHIFUJI Hideaki [Mon, 18 Sep 2006 13:37:58 +0000 (06:37 -0700)]
[ATM] CLIP: Do not refer freed skbuff in clip_mkip().

In clip_mkip(), skb->dev is dereferenced after clip_push(),
which frees up skb.

Advisory: AD_LAB-06009 (<adlab@venustech.com.cn>).

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[ARM] 3794/1: S3C24XX: do not defined set_irq_wake when no CONFIG_PM
Ben Dooks [Mon, 18 Sep 2006 12:30:20 +0000 (13:30 +0100)]
[ARM] 3794/1: S3C24XX: do not defined set_irq_wake when no CONFIG_PM

Patch from Ben Dooks

Do not define set_irq_wake as a real function if
the CONFIG_PM option is not set.

Fixes bug reported by Thomas Gleixner.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years ago[ARM] 3793/1: S3C2412: fix wrong serial info struct
Ben Dooks [Mon, 18 Sep 2006 12:30:17 +0000 (13:30 +0100)]
[ARM] 3793/1: S3C2412: fix wrong serial info struct

Patch from Ben Dooks

The S3C2440 serial info struct is being passed
through the S3C2412 serial info struct probe
routine.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Thomas Glexiner <tglx@linutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years ago[OPENPROMIO]: Handle current_node being NULL correctly.
David S. Miller [Mon, 18 Sep 2006 08:47:13 +0000 (01:47 -0700)]
[OPENPROMIO]: Handle current_node being NULL correctly.

If the user tries to traverse to the next node of the
last node, we get NULL in current_node and a zero phandle
returned.  That's fine, but if the user tries to obtain
properties in that state, we try to dereference a NULL
pointer in the downcall to the of_*() routines.

So protect against that.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NET]: Drop tx lock in dev_watchdog_up
Herbert Xu [Mon, 18 Sep 2006 07:22:30 +0000 (00:22 -0700)]
[NET]: Drop tx lock in dev_watchdog_up

Fix lockdep warning with GRE, iptables and Speedtouch ADSL, PPP over ATM.

On Sat, Sep 02, 2006 at 08:39:28PM +0000, Krzysztof Halasa wrote:
>
> =======================================================
> [ INFO: possible circular locking dependency detected ]
> -------------------------------------------------------
> swapper/0 is trying to acquire lock:
>  (&dev->queue_lock){-+..}, at: [<c02c8c46>] dev_queue_xmit+0x56/0x290
>
> but task is already holding lock:
>  (&dev->_xmit_lock){-+..}, at: [<c02c8e14>] dev_queue_xmit+0x224/0x290
>
> which lock already depends on the new lock.

This turns out to be a genuine bug.  The queue lock and xmit lock are
intentionally taken out of order.  Two things are supposed to prevent
dead-locks from occuring:

1) When we hold the queue_lock we're supposed to only do try_lock on the
tx_lock.

2) We always drop the queue_lock after taking the tx_lock and before doing
anything else.

>
> the existing dependency chain (in reverse order) is:
>
> -> #1 (&dev->_xmit_lock){-+..}:
>        [<c012e7b6>] lock_acquire+0x76/0xa0
>        [<c0336241>] _spin_lock_bh+0x31/0x40
>        [<c02d25a9>] dev_activate+0x69/0x120

This path obviously breaks assumption 1) and therefore can lead to ABBA
dead-locks.

I've looked at the history and there seems to be no reason for the lock
to be held at all in dev_watchdog_up.  The lock appeared in day one and
even there it was unnecessary.  In fact, people added __dev_watchdog_up
precisely in order to get around the tx lock there.

The function dev_watchdog_up is already serialised by rtnl_lock since
its only caller dev_activate is always called under it.

So here is a simple patch to remove the tx lock from dev_watchdog_up.
In 2.6.19 we can eliminate the unnecessary __dev_watchdog_up and
replace it with dev_watchdog_up.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[PACKET]: Don't truncate non-linear skbs with mmaped IO
Patrick McHardy [Mon, 18 Sep 2006 06:59:57 +0000 (23:59 -0700)]
[PACKET]: Don't truncate non-linear skbs with mmaped IO

Non-linear skbs are truncated to their linear part with mmaped IO.
Fix by using skb_copy_bits instead of memcpy.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Acked-by: Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NET]: Mark frame diverter for future removal.
Stephen Hemminger [Thu, 14 Sep 2006 04:13:54 +0000 (21:13 -0700)]
[NET]: Mark frame diverter for future removal.

The code for frame diverter is unmaintained and has bitrotted.
The number of users is very small and the code has lots of problems.
If anyone is using it, they maybe exposing themselves to bad packet attacks.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NETFILTER]: Add secmark headers to header-y
James Morris [Thu, 14 Sep 2006 04:04:55 +0000 (21:04 -0700)]
[NETFILTER]: Add secmark headers to header-y

This patch includes xt_SECMARK.h and xt_CONNSECMARK.h to the kernel
headers which are exported via 'make headers_install'.  This is needed to
allow userland code to be built correctly with these features.

Please apply, and consider for inclusion with 2.6.18 as a bugfix.

Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[ATM]: linux-atm-general mailing list is subscribers only
Roland Dreier [Thu, 14 Sep 2006 03:39:33 +0000 (20:39 -0700)]
[ATM]: linux-atm-general mailing list is subscribers only

As the automated reply I got to my last ATM patch shows, the
linux-atm-general mailing list is subscribers-only.

Signed-off-by: Roland Dreier <roland@digitalvampire.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[ATM]: [he] when transmit fails, unmap the dma regions
Chas Williams [Thu, 14 Sep 2006 03:33:40 +0000 (20:33 -0700)]
[ATM]: [he] when transmit fails, unmap the dma regions

Signed-off-by: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[TCP] tcp-lp: update information to MAINTAINERS
Wong Hoi Sing Edison [Thu, 14 Sep 2006 03:31:13 +0000 (20:31 -0700)]
[TCP] tcp-lp: update information to MAINTAINERS

Signed-off-by: Wong Hoi Sing Edison <hswong3i@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[TCP] tcp-lp: bug fix for oops in 2.6.18-rc6
Wong Hoi Sing Edison [Thu, 14 Sep 2006 03:30:30 +0000 (20:30 -0700)]
[TCP] tcp-lp: bug fix for oops in 2.6.18-rc6

Sorry that the patch submited yesterday still contain a small bug.
This version have already been test for hours with BT connections. The
oops is now difficult to reproduce.

Signed-off-by: Wong Hoi Sing Edison <hswong3i@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[BRIDGE]: random extra bytes on STP TCN packet
Stephen Hemminger [Thu, 14 Sep 2006 03:12:40 +0000 (20:12 -0700)]
[BRIDGE]: random extra bytes on STP TCN packet

We seem to send 3 extra bytes in a TCN, which will be whatever happens
to be on the stack. Thanks to Aji_Srinivas@emc.com for seeing.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPV6]: Accept -1 for IPV6_TCLASS
Remi Denis-Courmont [Thu, 14 Sep 2006 03:08:07 +0000 (20:08 -0700)]
[IPV6]: Accept -1 for IPV6_TCLASS

This patch should add support for -1 as "default" IPv6 traffic class,
as specified in IETF RFC3542 Â§6.5. Within the kernel, it seems tclass
< 0 is already handled, but setsockopt, getsockopt and recvmsg calls
won't accept it from userland.

Signed-off-by: Remi Denis-Courmont <rdenis@simphalempin.com>
Acked-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPV6]: Fix tclass setting for raw sockets.
YOSHIFUJI Hideaki [Thu, 14 Sep 2006 03:01:28 +0000 (20:01 -0700)]
[IPV6]: Fix tclass setting for raw sockets.

np->cork.tclass is used only in cork'ed context.
Otherwise, np->tclass should be used.

Bug#7096 reported by Remi Denis-Courmont <rdenis@simphalempin.com>.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPVS]: remove the debug option go ip_vs_ftp
Simon Horman [Thu, 14 Sep 2006 02:59:23 +0000 (19:59 -0700)]
[IPVS]: remove the debug option go ip_vs_ftp

This patch makes the debuging behaviour of this code more consistent
with the rest of IPVS.

Signed-Off-By: Simon Horman <horms@verge.net.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPVS]: Make sure ip_vs_ftp ports are valid
Simon Horman [Thu, 14 Sep 2006 02:58:44 +0000 (19:58 -0700)]
[IPVS]: Make sure ip_vs_ftp ports are valid

I'm not entirely sure what happens in the case of a valid port,
at best it'll be silently ignored. This patch ignores them a little
more verbosely.

Signed-Off-By: Simon Horman <horms@verge.net.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPVS]: auto-help for ip_vs_ftp
Simon Horman [Thu, 14 Sep 2006 02:57:54 +0000 (19:57 -0700)]
[IPVS]: auto-help for ip_vs_ftp

Fill in a help message for the ports option to ip_vs_ftp

Signed-Off-By: Simon Horman <horms@verge.net.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPVS]: Document the ports option to ip_vs_ftp in kernel-parameters.txt
Simon Horman [Thu, 14 Sep 2006 02:57:18 +0000 (19:57 -0700)]
[IPVS]: Document the ports option to ip_vs_ftp in kernel-parameters.txt

I'm not sure if documenting this here is appropriate, but
if it is, here is some text to put there.

Signed-Off-By: Simon Horman <horms@verge.net.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[TCP]: Turn ABC off.
Stephen Hemminger [Thu, 14 Sep 2006 02:51:02 +0000 (19:51 -0700)]
[TCP]: Turn ABC off.

Turn Appropriate Byte Count off by default because it unfairly
penalizes applications that do small writes.  Add better documentation
to describe what it is so users will understand why they might want to
turn it on.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NEIGH]: neigh_table_clear() doesn't free stats
Kirill Korotaev [Fri, 1 Sep 2006 08:34:10 +0000 (01:34 -0700)]
[NEIGH]: neigh_table_clear() doesn't free stats

neigh_table_clear() doesn't free tbl->stats.
Found by Alexey Kuznetsov. Though Alexey considers this
leak minor for mainstream, I still believe that cleanup
code should not forget to free some of the resources :)

At least, this is critical for OpenVZ with virtualized
neighbour tables.

Signed-Off-By: Kirill Korotaev <dev@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[MTD] Use SEEK_{SET,CUR,END} instead of hardcoded values in mtdchar lseek()
Josef 'Jeff' Sipek [Sun, 17 Sep 2006 01:09:29 +0000 (21:09 -0400)]
[MTD] Use SEEK_{SET,CUR,END} instead of hardcoded values in mtdchar lseek()

Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
17 years agoMerge branch 'master' into upstream-fixes
Jeff Garzik [Sun, 17 Sep 2006 05:05:43 +0000 (01:05 -0400)]
Merge branch 'master' into upstream-fixes

17 years ago[PATCH] s390: qeth driver fixes [6/6]
Frank Pavlic [Fri, 15 Sep 2006 14:27:02 +0000 (16:27 +0200)]
[PATCH] s390: qeth driver fixes [6/6]

[PATCH 9/9] s390: qeth driver fixes [6/6]

From: Frank Pavlic <fpavlic@de.ibm.com>
- Hipersockets has no IPV6 support, thus prevent issueing
  SETRTG_IPV6 control commands on Hipersockets devices.
- fixed error handling in qeth_sysfs_(un)register

Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] s390: qeth driver fixes [5/6]
Frank Pavlic [Fri, 15 Sep 2006 14:26:52 +0000 (16:26 +0200)]
[PATCH] s390: qeth driver fixes [5/6]

[PATCH 8/9] s390: qeth driver fixes [5/6]

From: Frank Pavlic <fpavlic@de.ibm.com>
fix kernel panic in qdio queue handling.
qeth_qdio_clear_card() could be invoked by 2 CPUs
simultaneously (for example reboot event and recovery).

Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] s390: qeth driver fixes [4/6]
Frank Pavlic [Fri, 15 Sep 2006 14:26:34 +0000 (16:26 +0200)]
[PATCH] s390: qeth driver fixes [4/6]

[PATCH 7/9] s390: qeth driver fixes [4/6]

From: Frank Pavlic <fpavlic@de.ibm.com>
- fix kernel crash due to race,
  set card->state to SOFTSETUP after
  card and card->dev are initialized properly.
- remove CONFIG_QETH_PERF_STATS, use sysfs attribute instead,
  as we want to have the ability to turn on/off the
  statistics at runtime.

Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] s390: qeth driver fixes [3/6]
Frank Pavlic [Fri, 15 Sep 2006 14:26:19 +0000 (16:26 +0200)]
[PATCH] s390: qeth driver fixes [3/6]

[PATCH 6/9] s390: qeth driver fixes [3/6]

From: Frank Pavlic <fpavlic@de.ibm.com>
        fixed kernel panic caused by qeth driver:
        Using a bonding device qeth driver will realloc
        headroom for every skb coming from the bond device.
        Once this happens qeth frees the original skb and
        set the skb pointer to the new realloced skb.
        Under heavy transmit workload (e.g.UDP streams) through bond
        network device the qdio output queue might get full.
        In this case we return with EBUSY from qeth_send_packet.
        Returning to qeth_hard_start_xmit routine
        the skb address on the stack still points to the old address,
        which has been freed before.
        Returning from qeth_hard_start_xmit with EBUSY results in
        requeuing the skb. In this case it corrupts the qdisc queue
        and results in kernel panic.

Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] s390: qeth driver fixes [2/6]
Frank Pavlic [Fri, 15 Sep 2006 14:26:07 +0000 (16:26 +0200)]
[PATCH] s390: qeth driver fixes [2/6]

[PATCH 5/9] s390: qeth driver fixes [2/6]

From: Frank Pavlic <fpavlic@de.ibm.com>
- fixed error handling in create_device_attributes
- fixed some minor bugs in IPv4
  and IPv6 address checking

Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] s390: qeth driver fixes [1/6]
Frank Pavlic [Fri, 15 Sep 2006 14:25:56 +0000 (16:25 +0200)]
[PATCH] s390: qeth driver fixes [1/6]

[PATCH 4/9] s390: qeth driver fixes [1/6]

From: Frank Pavlic <fpavlic@de.ibm.com>
- Drop incoming packets with vlan_tag set
          if card->vlangrp is not set.
        - use always vlan_hwaccel_rx to pass
  vlan frames to the stack.
        - fix recovery problem. Device was recovered
  properly but still not working.
  netif_carrier_on call right before
          recovery start fixes it.

Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] s390: Makefile cleanup
Frank Pavlic [Fri, 15 Sep 2006 14:25:39 +0000 (16:25 +0200)]
[PATCH] s390: Makefile cleanup

[PATCH 3/9] s390: Makefile cleanup

From: Frank Pavlic <fpavlic@de.ibm.com>
  remove CONFIG_MPC from Makefile which was
introduced accidently in the past.

Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] s390: netiucv driver fixes
Frank Pavlic [Fri, 15 Sep 2006 14:25:19 +0000 (16:25 +0200)]
[PATCH] s390: netiucv driver fixes

[PATCH 2/9] s390: netiucv driver fixes

From: Frank Pavlic <fpavlic@de.ibm.com>
- missing lock initialization added
        - avoid duplicate iucv-interfaces to the same peer
        - rw-lock added for manipulating the list of
          defined iucv connections

Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] s390: minor s390 network driver fixes
Frank Pavlic [Fri, 15 Sep 2006 14:25:03 +0000 (16:25 +0200)]
[PATCH] s390: minor s390 network driver fixes

Hi Jeff,
this is a RESEND of the nine s390 network driver patches.
I finally found  that my kmail corrupted almost every patch
I sent the last time. Please apply these 9 patches and forget
about my first attempt! Sorry for the delay, I had some fights
with sendmail, IMAP and mutt configuration.

Frank

[RESEND PATCH 1/9] s390: minor s390 network driver fixes

From: Frank Pavlic <fpavlic@de.ibm.com>
- iucv driver:
          use do { } while (0) constructs
  instead of empty defines to avoid compile bugs.
        - ctc driver:
          missing lock initialization added
        - lcs driver:
          BUG_ON usage was removed accidently
  with the last lcs patch.
          Put them back in place.

Signed-off-by: Frank Pavlic <fpavlic@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years ago[PATCH] i386/x86-64: Add core 2 to oprofile
Benjamin LaHaise [Sat, 16 Sep 2006 23:35:46 +0000 (16:35 -0700)]
[PATCH] i386/x86-64: Add core 2 to oprofile

Add the CPU identification needed by oprofile for Intel (r) Core (tm) 2
CPUs.

Signed-off-by: Benjamin LaHaise <benjamin.c.lahaise@intel.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Cc: "Arun Sharma" <aruns@google.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years agoMerge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband
Linus Torvalds [Sun, 17 Sep 2006 04:35:15 +0000 (21:35 -0700)]
Merge branch 'for-linus' of /linux/kernel/git/roland/infiniband

* 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband:
  RDMA/cma: Increase the IB CM retry count in CMA
  IPoIB: Retry failed send-only multicast group joins
  IB/srp: Don't schedule reconnect from srp

17 years ago[PATCH] JFFS2: SUMMARY: fix a summary collecting bug
Zoltan Sogor [Sat, 16 Sep 2006 19:15:59 +0000 (12:15 -0700)]
[PATCH] JFFS2: SUMMARY: fix a summary collecting bug

In some special case (padding because of sync or umount) it can be possible
that summary information is not fit to the end of the erase block.  In
these cases the collecting of summary is disabled for this erase block.

The problem was that this was not respected by jffs2_sum_add_kvec().  This
patch fix this bug.

Signed-off-by: Ferenc Havasi <havasi@inf.u-szeged.hu>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] MTD NAND: OOB buffer offset fixups
Vitaly Wool [Sat, 16 Sep 2006 19:15:58 +0000 (12:15 -0700)]
[PATCH] MTD NAND: OOB buffer offset fixups

In the case of data-pad-ecc-pad-data...  layout the oob start position has
to be sizeof(data) in nand_write_oob_syndrom().

In nand_fill_oob() we need to copy to buf + buffer offset instead of buf +
write offset.

Signed-off-by: Vitaly Wool <vwool@ru.mvista.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] ext3 sequential read regression fix
Suparna Bhattacharya [Sat, 16 Sep 2006 19:15:58 +0000 (12:15 -0700)]
[PATCH] ext3 sequential read regression fix

ext3-get-blocks support caused ~20% degrade in Sequential read
performance (tiobench). Problem is with marking the buffer boundary
so IO can be submitted right away. Here is the patch to fix it.

  2.6.18-rc6:
  -----------
  # ./iotest
  1048576+0 records in
  1048576+0 records out
  4294967296 bytes (4.3 GB) copied, 75.2726 seconds, 57.1 MB/s

  real    1m15.285s
  user    0m0.276s
  sys     0m3.884s

  2.6.18-rc6 + fix:
  -----------------
  [root@elm3a241 ~]# ./iotest
  1048576+0 records in
  1048576+0 records out
  4294967296 bytes (4.3 GB) copied, 62.9356 seconds, 68.2 MB/s

The boundary block check in ext3_get_blocks_handle needs to be adjusted
against the count of blocks mapped in this call, now that it can map
more than one block.

Signed-off-by: Suparna Bhattacharya <suparna@in.ibm.com>
Tested-by: Badari Pulavarty <pbadari@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] bug fix in kernel/kmod.c
Kenneth Lee [Sat, 16 Sep 2006 19:15:55 +0000 (12:15 -0700)]
[PATCH] bug fix in kernel/kmod.c

I think there is a bug in kmod.c: In __call_usermodehelper(), when
kernel_thread(wait_for_helper, ...) return success, since wait_for_helper()
might call complete() at any time, the sub_info should not be used any
more.

Normally wait_for_helper() take a long time to finish, you may not get
problem for most of the case.  But if you remove /sbin/modprobe, it may
become easier for you to get a oop in khelper.

Cc: Matt Helsley <matthltc@us.ibm.com>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] headers_check: use a different default directory
David Woodhouse [Sat, 16 Sep 2006 19:15:55 +0000 (12:15 -0700)]
[PATCH] headers_check: use a different default directory

`make headers_check' wants to go and write stuff in /lib/modules, which
requires root, whic is unfortunate.

In fact, there's no _particular_ reason for headers_install to put it there
either -- it can go into a subdirectory of the build tree in both cases.
It's not intended to go directly into /usr/include, which is why we didn't
put it there -- and we certainly don't want people screwing around with
symlinking to it.  It's for distributors to take away and do stuff with, so
leaving it in $(objtree) is fine, even in the headers_install case.

I picked $(objtree)/usr/include but I have no _particular_ preference
for that; it just seemed reasonable.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Cc: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Kconfig: move CONFIG_EMBEDDED options to submenu
Chuck Ebbert [Sat, 16 Sep 2006 19:15:53 +0000 (12:15 -0700)]
[PATCH] Kconfig: move CONFIG_EMBEDDED options to submenu

Fix two problems with the CONFIG_EMBEDDED submenu:

(1) The menu was split in two by the rt_mutex patch, which moved
    half the items into the "General setup" menu.

(2) CONFIG_SYSCTL and CONFIG_UID16 were added to the main menu
    instead of the submenu.

Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Fix 'make headers_check' for Alpha
David Woodhouse [Sat, 16 Sep 2006 19:15:49 +0000 (12:15 -0700)]
[PATCH] Fix 'make headers_check' for Alpha

Alpha currently fails 'make headers_check' in the 2.6.18-rc kernels.  This
patch fixes it, by moving the existing #ifdef __KERNEL__ in asm/page.h so that
it covers everything that userspace shouldn't so, and by adding asm/compiler.h
to the list of exported files so that its use within asm/byteorder.h is
successful.

[ Note that at least with GCC 4, <linux/compiler.h> doesn't do the forced
  inlining about which there are nasty comments (and a workaround) in
  <asm/compiler.h>, unless you set CONFIG_FORCED_INLINING.  Rather than keep
  the mess you have in <asm/compiler.h> you could perhaps just make sure
  CONFIG_FORCED_INLINING=n is also honoured with GCC3, and make sure it cannot
  be set for Alpha? ]

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: Richard Henderson <rth@twiddle.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Fix 'make headers_check' on x86_64
David Woodhouse [Sat, 16 Sep 2006 19:15:48 +0000 (12:15 -0700)]
[PATCH] Fix 'make headers_check' on x86_64

On Tue, 2006-09-12 at 17:44 +0100, David Woodhouse wrote:
> asm-x86_64/elf.h requires asm/processor.h, which does not exist
> asm-x86_64/signal.h requires linux/linkage.h, which does not exist
> asm-x86_64/unistd.h requires linux/linkage.h, which does not exist
> asm-x86_64/vsyscall.h requires linux/seqlock.h, which does not exist

Again, move stuff which shouldn't be visible inside (mostly already existing)
#ifdef __KERNEL__.

This fixes a bunch of mislabelled and unlabelled #endifs in unistd.h and also
cleans that up to conform with what's visible on other architectures, since
the minimal fix for the error reported about would have involved a more
intrusive patch, renesting other ifdefs.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Fix 'make headers_check' on i386
David Woodhouse [Sat, 16 Sep 2006 19:15:48 +0000 (12:15 -0700)]
[PATCH] Fix 'make headers_check' on i386

This brings i386 asm/unistd.h into consistency with other architectures by not
exporting functionality which is not necessary.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Fix 'make headers_check' on ia64
David Woodhouse [Sat, 16 Sep 2006 19:15:47 +0000 (12:15 -0700)]
[PATCH] Fix 'make headers_check' on ia64

On Tue, 2006-09-12 at 17:44 +0100, David Woodhouse wrote:
> asm-ia64/ptrace.h requires asm/asm-offsets.h, which does not exist
> asm-ia64/resource.h requires asm/ustack.h, which does not exist

Hide parts which shouldn't be visible to userspace.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: "Luck, Tony" <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Fix 'make headers_check' on s390
David Woodhouse [Sat, 16 Sep 2006 19:15:46 +0000 (12:15 -0700)]
[PATCH] Fix 'make headers_check' on s390

On Tue, 2006-09-12 at 17:44 +0100, David Woodhouse wrote:
> asm-s390/debug.h requires linux/string.h, which does not exist
> asm-s390/elf.h requires asm/system.h, which does not exist

Move things around slightly so the right things end up within
#ifdef __KERNEL__ and thus don't pollute the exported headers.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Cc: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Fix 'make headers_check' on biarch architectures
David Woodhouse [Sat, 16 Sep 2006 19:15:45 +0000 (12:15 -0700)]
[PATCH] Fix 'make headers_check' on biarch architectures

We generate an <asm/foo.h> which includes either <asm-$ARCH/foo.h> or
<asm-$ALTARCH/foo.h> as appropriate.  But we were doing this dependent on
whether the file in question existed in the _unexported_ tree, not the
exported tree.  So if a file was exported to userspace in one asm- directory
but not the other, the generated file in asm/ was incorrect.

This only changed the failure mode if it _was_ included from a nice #error to
a less explicable #include failure -- but it also gave false errors in 'make
headers_check' output.  Fix it by looking in the right place instead.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Cc: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Add symbol type files (*.symtypes) to .gitignore
Josh Triplett [Sat, 16 Sep 2006 19:15:44 +0000 (12:15 -0700)]
[PATCH] Add symbol type files (*.symtypes) to .gitignore

The kernel build system supports making symbol type files (*.symtypes) from C
source files.  Add these files to .gitignore.

Signed-off-by: Josh Triplett <josh@freedesktop.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Add mixed source and assembly listings (*.lst) to .gitignore
Josh Triplett [Sat, 16 Sep 2006 19:15:43 +0000 (12:15 -0700)]
[PATCH] Add mixed source and assembly listings (*.lst) to .gitignore

The kernel build system supports making mixed source and assembly listings
(*.lst) from C source files.  Add these files to .gitignore.

Signed-off-by: Josh Triplett <josh@freedesktop.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Add preprocessed files (*.i) to .gitignore
Josh Triplett [Sat, 16 Sep 2006 19:15:42 +0000 (12:15 -0700)]
[PATCH] Add preprocessed files (*.i) to .gitignore

The kernel build system supports making preprocessed files (*.i) from C source
files.  Add these files to .gitignore.

Signed-off-by: Josh Triplett <josh@freedesktop.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] IPMI: fix handling of OEM flags
Corey Minyard [Sat, 16 Sep 2006 19:15:41 +0000 (12:15 -0700)]
[PATCH] IPMI: fix handling of OEM flags

If one of the OEM flags becomes set in the flags from the hardware, the
driver could hang if no OEM handler was set.  Fix the code to handle this.
This was tested by setting the flags by hand after they were fetched.

Signed-off-by: Corey Minyard <minyard@acm.org>
Ackde-by: Matt Domsch <Matt_Domsch@dell.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Add a missing space that prevents building modules that require host programs
Ross Biro [Sat, 16 Sep 2006 19:15:39 +0000 (12:15 -0700)]
[PATCH] Add a missing space that prevents building modules that require host programs

Signed-off-by: Ross Biro <rossb@google.com>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>