GitHub/exynos8895/android_kernel_samsung_universal8895.git
19 years ago[PATCH] x86_64: Don't oops at boot when empty Opteron node has IO
Andi Kleen [Tue, 23 Aug 2005 01:14:27 +0000 (03:14 +0200)]
[PATCH] x86_64: Don't oops at boot when empty Opteron node has IO

The code to detect IO links on Opteron would not check
if the node had actually memory. This could lead to pci_bus_to_node
returning an invalid node, which might cause crashes later
when dma_alloc_coherent passes it to page_alloc_node().

The bug has been there forever but for some reason
it is causing now crashes.

Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] usbnet oops fix
lepton [Tue, 23 Aug 2005 00:06:14 +0000 (17:06 -0700)]
[PATCH] usbnet oops fix

There's a "return the wrong SKB" error in the GL620A cable minidriver
(for "usbnet") which can oops.  This would not appear when talking
Linux-to-Linux, only Linux-to-Windows (for recent Linuxes).

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] i386: fix incorrect FP signal code
Chuck Ebbert [Wed, 24 Aug 2005 01:36:40 +0000 (21:36 -0400)]
[PATCH] i386: fix incorrect FP signal code

i386 floating-point exception handling has a bug that can cause error
code 0 to be sent instead of the proper code during signal delivery.

This is caused by unconditionally checking the IS and c1 bits from the
FPU status word when they are not always relevant.  The IS bit tells
whether an exception is a stack fault and is only relevant when the
exception is IE (invalid operation.) The C1 bit determines whether a
stack fault is overflow or underflow and is only relevant when IS and IE
are set.

Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Wed, 24 Aug 2005 02:21:44 +0000 (19:21 -0700)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

19 years ago[PATCH] s390 __CHECKER__ ifdefs
Al Viro [Tue, 23 Aug 2005 21:48:22 +0000 (22:48 +0100)]
[PATCH] s390 __CHECKER__ ifdefs

remove the bogus games with explicit ifdefs on __CHECKER__

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] %t... in vsnprintf
Al Viro [Tue, 23 Aug 2005 21:48:17 +0000 (22:48 +0100)]
[PATCH] %t... in vsnprintf

handling of %t... (ptrdiff_t) in vsnprintf

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ad1980 makefile fix
Al Viro [Tue, 23 Aug 2005 21:48:12 +0000 (22:48 +0100)]
[PATCH] ad1980 makefile fix

ac97_plugin_ad1980 should trigger build of ac97_codec

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (non-modular SCSI drivers)
Al Viro [Tue, 23 Aug 2005 21:48:07 +0000 (22:48 +0100)]
[PATCH] Kconfig fix (non-modular SCSI drivers)

non-modular scsi drivers depend on built-in scsi

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (missing dependencies on PCI in sound/*)
Al Viro [Tue, 23 Aug 2005 21:48:02 +0000 (22:48 +0100)]
[PATCH] Kconfig fix (missing dependencies on PCI in sound/*)

a bunch of PCI-only drivers didn't have the right dependency

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] missing exports on m32r
Al Viro [Tue, 23 Aug 2005 21:47:57 +0000 (22:47 +0100)]
[PATCH] missing exports on m32r

missing exports on m32r

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] qualifiers in return types - easy cases
Al Viro [Tue, 23 Aug 2005 21:47:52 +0000 (22:47 +0100)]
[PATCH] qualifiers in return types - easy cases

a bunch of functions switched from volatile to __attribute__((noreturn)) and
from const to __attribute_pure__

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] typo fix in qdio.c
Al Viro [Tue, 23 Aug 2005 21:47:47 +0000 (22:47 +0100)]
[PATCH] typo fix in qdio.c

dumb typo: u32 volatile * mistyped as u32 * volatile

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] emac netpoll fix
Al Viro [Tue, 23 Aug 2005 21:47:42 +0000 (22:47 +0100)]
[PATCH] emac netpoll fix

netpoll is void(struct net_device *), not int(struct net_device *)

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] vidc gcc4 fix
Al Viro [Tue, 23 Aug 2005 21:47:37 +0000 (22:47 +0100)]
[PATCH] vidc gcc4 fix

removes an extern for a static variable.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] broken inline asm on s390 (misuse of labels)
Al Viro [Tue, 23 Aug 2005 21:47:32 +0000 (22:47 +0100)]
[PATCH] broken inline asm on s390 (misuse of labels)

use of explicit labels in inline asm is a Bad Idea(tm), since gcc can
decide to inline the function in several places.  Fixed by use of 1f/f:
instead of .Lfitsin/.Lfitsin:

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] m32r_sio gcc4 fixes
Al Viro [Tue, 23 Aug 2005 21:47:27 +0000 (22:47 +0100)]
[PATCH] m32r_sio gcc4 fixes

extern declaration followed by static in drivers/serial/m32r_sio.c

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] m32r icu_data gcc4 fixes
Al Viro [Tue, 23 Aug 2005 21:47:22 +0000 (22:47 +0100)]
[PATCH] m32r icu_data gcc4 fixes

either icu_data declaration for SMP case should be taken out of m32102.h,
or its declarations for m32700ut and opsput should not be static for SMP.
Patch does the latter - judging by comments in m32102.h it is intended to
be non-static.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] m32r smp.h gcc4 fixes
Al Viro [Tue, 23 Aug 2005 21:47:17 +0000 (22:47 +0100)]
[PATCH] m32r smp.h gcc4 fixes

extern on physid_2_cpu[] does not belong in smp.h - the thing is static.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] alpha spinlock code and bogus constraints
Al Viro [Tue, 23 Aug 2005 21:47:12 +0000 (22:47 +0100)]
[PATCH] alpha spinlock code and bogus constraints

"=m" (lock->lock) / "1" (lock->lock) makes gcc4 unhappy; fixed by s/1/m/,
same as in case of i386 rwsem.h where such variant had been accepted
by both Linus and rth.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] alpha xchg fix
Al Viro [Tue, 23 Aug 2005 21:47:07 +0000 (22:47 +0100)]
[PATCH] alpha xchg fix

alpha xchg has to be a macro - alpha disables always_inline and if that
puppy does not get inlined, we immediately blow up on undefined reference.
Happens even on gcc3; with gcc4 that happens a _lot_.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] missing include in pcmcia_resource.c
Al Viro [Tue, 23 Aug 2005 21:47:01 +0000 (22:47 +0100)]
[PATCH] missing include in pcmcia_resource.c

missing include of asm/irq.h

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] alpha gcc4 warnings
Al Viro [Tue, 23 Aug 2005 21:46:56 +0000 (22:46 +0100)]
[PATCH] alpha gcc4 warnings

on UP smp_call_function() is expanded to expression.  Alpha oprofile
calls that puppy and ignores the return value.  And has -Werror for
arch/*...

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (sparc32 drivers/char dependencies)
Al Viro [Tue, 23 Aug 2005 21:46:51 +0000 (22:46 +0100)]
[PATCH] Kconfig fix (sparc32 drivers/char dependencies)

since sparc32 Kconfig includes drivers/char/Kconfig (instead of duplicating
its parts) we need several new dependencies there to exclude the stuff
broken on sparc32 and not excluded by existing dependencies.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (emac dependencient)
Al Viro [Tue, 23 Aug 2005 21:46:46 +0000 (22:46 +0100)]
[PATCH] Kconfig fix (emac dependencient)

emac doesn't build modular; ibm_emac_debug doesn't build at all (missing
headers).

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (CONFIG_PM on 44x)
Al Viro [Tue, 23 Aug 2005 21:46:41 +0000 (22:46 +0100)]
[PATCH] Kconfig fix (CONFIG_PM on 44x)

CONFIG_PM is broken on 44x; removed duplicate entry for CONFIG_PM, made
the inclusion of generic one conditional on BROKEN || !44x.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (ppc 4xx and early serial)
Al Viro [Tue, 23 Aug 2005 21:46:36 +0000 (22:46 +0100)]
[PATCH] Kconfig fix (ppc 4xx and early serial)

a bunch of ppc 4xx variants unconditionally calls early_serial_setup() and
therefore needs SERIAL_8250

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (IRQ_ALL_CPUS vs. MV64360)
Al Viro [Tue, 23 Aug 2005 21:46:31 +0000 (22:46 +0100)]
[PATCH] Kconfig fix (IRQ_ALL_CPUS vs. MV64360)

MV64360 does not support IRQ_ALL_CPUS - see arch/ppc/kernel/mv64360_pic.c.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (ppc32 SMP dependencies)
Al Viro [Tue, 23 Aug 2005 21:46:26 +0000 (22:46 +0100)]
[PATCH] Kconfig fix (ppc32 SMP dependencies)

ppc SMP is supported only for 6xx/POWER3/POWER4 - i.e. ones that have
PPC_STD_MMU.  Dependency fixed.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Acked-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (VGA console on arm/versatile)
Al Viro [Tue, 23 Aug 2005 21:46:21 +0000 (22:46 +0100)]
[PATCH] Kconfig fix (VGA console on arm/versatile)

VGA console doesn't exist (or build) on arm/versatile; dependency fixed.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (amba on arm/versatile)
Al Viro [Tue, 23 Aug 2005 21:46:16 +0000 (22:46 +0100)]
[PATCH] Kconfig fix (amba on arm/versatile)

AMBA_PL010 is broken on arm/versatile; marked as such

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (acornscsi)
Al Viro [Tue, 23 Aug 2005 21:46:11 +0000 (22:46 +0100)]
[PATCH] Kconfig fix (acornscsi)

acornscsi had been broken for a long time; marked as such

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (M32R_PLDSIO dependecies)
Al Viro [Tue, 23 Aug 2005 21:46:06 +0000 (22:46 +0100)]
[PATCH] Kconfig fix (M32R_PLDSIO dependecies)

M32R_PLDSIO depends on subarchitecture providing PLD_ESIO0CR and
friends.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (parport_pc on m32r)
Al Viro [Tue, 23 Aug 2005 21:46:01 +0000 (22:46 +0100)]
[PATCH] Kconfig fix (parport_pc on m32r)

parport_pc shouldn't be picked on m32r (no asm/parport.h, for starters)

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (airo_cs on m32r)
Al Viro [Tue, 23 Aug 2005 21:45:56 +0000 (22:45 +0100)]
[PATCH] Kconfig fix (airo_cs on m32r)

airo_cs is broken on m32r; marked as such. [Proper fix would involve
separating PCI-dependent parts and making sure they don't get in the
way _and_ arranging for asm/scatterlist.h getting picked on m32r]

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (tms380tr and ISA_DMA_API)
Al Viro [Tue, 23 Aug 2005 21:45:51 +0000 (22:45 +0100)]
[PATCH] Kconfig fix (tms380tr and ISA_DMA_API)

ISA parts of tms380tr are using ISA DMA helpers and should depend on
ISA_DMA_API.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (arv)
Al Viro [Tue, 23 Aug 2005 21:45:46 +0000 (22:45 +0100)]
[PATCH] Kconfig fix (arv)

arv uses constants provided only by include/asm-m32r/m32700ut/m32700ut_lan.h
It won't build for any subarchitecture other than M32700UT; marked as such.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (infiniband and PCI)
Al Viro [Tue, 23 Aug 2005 21:45:41 +0000 (22:45 +0100)]
[PATCH] Kconfig fix (infiniband and PCI)

infiniband uses PCI helpers all over the place (including the core parts) and
won't build without PCI.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (DEBUG_PAGEALLOC on m32r)
Al Viro [Tue, 23 Aug 2005 21:45:36 +0000 (22:45 +0100)]
[PATCH] Kconfig fix (DEBUG_PAGEALLOC on m32r)

DEBUG_PAGEALLOC is broken on m32r - the option had been blindly copied from
i386; kernel_map_pages() had not and that's what is needed for DEBUG_PAGEALLOC
to work (or link, while we are at it).

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (PCI on m32r)
Al Viro [Tue, 23 Aug 2005 21:45:31 +0000 (22:45 +0100)]
[PATCH] Kconfig fix (PCI on m32r)

PCI support is broken on m32r (pci_map_... missing, etc.); marked as such

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (PMAC_BACKLIGHT on ppc64)
Al Viro [Tue, 23 Aug 2005 21:45:26 +0000 (22:45 +0100)]
[PATCH] Kconfig fix (PMAC_BACKLIGHT on ppc64)

PMAC_BACKLIGHT is broken on ppc64; marked as such

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (HISAX_FRITZPCI on ppc64)
Al Viro [Tue, 23 Aug 2005 21:45:21 +0000 (22:45 +0100)]
[PATCH] Kconfig fix (HISAX_FRITZPCI on ppc64)

HISAX_FRITZPCI is broken on ppc64; marked as such

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (m32r genrtc)
Al Viro [Tue, 23 Aug 2005 21:45:16 +0000 (22:45 +0100)]
[PATCH] Kconfig fix (m32r genrtc)

genrtc is not for m32r; marked as such.  Probably ought to put that into
arch/* - list of "don't build it on <platform>" is getting too long.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (m32r NUMA)
Al Viro [Tue, 23 Aug 2005 21:45:11 +0000 (22:45 +0100)]
[PATCH] Kconfig fix (m32r NUMA)

NUMA is broken on m32r; marked as such

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (ISA_DMA_API and sound/*)
Al Viro [Tue, 23 Aug 2005 21:45:06 +0000 (22:45 +0100)]
[PATCH] Kconfig fix (ISA_DMA_API and sound/*)

fixed kconfig dependencies on ISA_DMA_API for parts of sound/* that rely
on it.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (epca on 64bit)
Al Viro [Tue, 23 Aug 2005 21:45:01 +0000 (22:45 +0100)]
[PATCH] Kconfig fix (epca on 64bit)

epca is broken on 64bit; marked as such

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (arm SMP)
Al Viro [Tue, 23 Aug 2005 21:44:55 +0000 (22:44 +0100)]
[PATCH] Kconfig fix (arm SMP)

SMP is broken on arm; marked as such

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Kconfig fix (alpha NUMA)
Al Viro [Tue, 23 Aug 2005 21:44:50 +0000 (22:44 +0100)]
[PATCH] Kconfig fix (alpha NUMA)

NUMA is broken on alpha; marked as such

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[ROSE]: Fix typo in rose_route_frame() locking fix.
David S. Miller [Tue, 23 Aug 2005 21:55:32 +0000 (14:55 -0700)]
[ROSE]: Fix typo in rose_route_frame() locking fix.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[PATCH] zd1201 kmalloc size fix
Alexey Dobriyan [Mon, 22 Aug 2005 20:11:09 +0000 (13:11 -0700)]
[PATCH] zd1201 kmalloc size fix

Noticed by Coverity checker.

(akpm: I stole this from Greg's tree and used the (IMO) tidier sizeof(*p)
construct).

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] md: make sure resync gets started when array starts.
NeilBrown [Mon, 22 Aug 2005 20:11:08 +0000 (13:11 -0700)]
[PATCH] md: make sure resync gets started when array starts.

We weren't actually waking up the md thread after setting
MD_RECOVERY_NEEDED when assembling an array, so it is possible to lose a
race and not actually start resync.

So add a call to md_wakeup_thread, and while we are at it, remove all the
"if (mddev->thread)" guards as md_wake_thread does its own checking.

Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] preempt race in getppid
David Meybohm [Mon, 22 Aug 2005 20:11:08 +0000 (13:11 -0700)]
[PATCH] preempt race in getppid

With CONFIG_PREEMPT && !CONFIG_SMP, it's possible for sys_getppid to
return a bogus value if the parent's task_struct gets reallocated after
current->group_leader->real_parent is read:

        asmlinkage long sys_getppid(void)
        {
                int pid;
                struct task_struct *me = current;
                struct task_struct *parent;

                parent = me->group_leader->real_parent;
RACE HERE =>    for (;;) {
                        pid = parent->tgid;
        #ifdef CONFIG_SMP
        {
                        struct task_struct *old = parent;

                        /*
                         * Make sure we read the pid before re-reading the
                         * parent pointer:
                         */
                        smp_rmb();
                        parent = me->group_leader->real_parent;
                        if (old != parent)
                                continue;
        }
        #endif
                        break;
                }
                return pid;
        }

If the process gets preempted at the indicated point, the parent process
can go ahead and call exit() and then get wait()'d on to reap its
task_struct. When the preempted process gets resumed, it will not do any
further checks of the parent pointer on !CONFIG_SMP: it will read the
bad pid and return.

So, the same algorithm used when SMP is enabled should be used when
preempt is enabled, which will recheck ->real_parent in this case.

Signed-off-by: David Meybohm <dmeybohmlkml@bellsouth.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Tue, 23 Aug 2005 18:06:56 +0000 (11:06 -0700)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

19 years ago[ROSE]: Fix missing unlocks in rose_route_frame()
David S. Miller [Tue, 23 Aug 2005 17:50:09 +0000 (10:50 -0700)]
[ROSE]: Fix missing unlocks in rose_route_frame()

Noticed by Coverity checker.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[TCP]: Document non-trivial locking path in tcp_v{4,6}_get_port().
David S. Miller [Tue, 23 Aug 2005 17:49:54 +0000 (10:49 -0700)]
[TCP]: Document non-trivial locking path in tcp_v{4,6}_get_port().

This trips up a lot of folks reading this code.
Put an unlikely() around the port-exhaustion test
for good measure.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[TCP]: Unconditionally clear TCP_NAGLE_PUSH in skb_entail().
David S. Miller [Tue, 23 Aug 2005 17:13:06 +0000 (10:13 -0700)]
[TCP]: Unconditionally clear TCP_NAGLE_PUSH in skb_entail().

Intention of this bit is to force pushing of the existing
send queue when TCP_CORK or TCP_NODELAY state changes via
setsockopt().

But it's easy to create a situation where the bit never
clears.  For example, if the send queue starts empty:

1) set TCP_NODELAY
2) clear TCP_NODELAY
3) set TCP_CORK
4) do small write()

The current code will leave TCP_NAGLE_PUSH set after that
sequence.  Unconditionally clearing the bit when new data
is added via skb_entail() solves the problem.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[PKT_SCHED]: Fix missing qdisc_destroy() in qdisc_create_dflt()
Thomas Graf [Tue, 23 Aug 2005 17:12:44 +0000 (10:12 -0700)]
[PKT_SCHED]: Fix missing qdisc_destroy() in qdisc_create_dflt()

qdisc_create_dflt() is missing to destroy the newly allocated
default qdisc if the initialization fails resulting in leaks
of all kinds. The only caller in mainline which may trigger
this bug is sch_tbf.c in tbf_create_dflt_qdisc().

Note: qdisc_create_dflt() doesn't fulfill the official locking
      requirements of qdisc_destroy() but since the qdisc could
      never be seen by the outside world this doesn't matter
      and it can stay as-is until the locking of pkt_sched
      is cleaned up.

Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[SCTP]: Add SENTINEL to SCTP MIB stats
Vlad Yasevich [Tue, 23 Aug 2005 17:12:04 +0000 (10:12 -0700)]
[SCTP]: Add SENTINEL to SCTP MIB stats

Add SNMP_MIB_SENTINEL to the definition of the sctp_snmp_list so that
the output routine in proc correctly terminates.  This was causing some
problems running on ia64 systems.

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[AX25]: UID fixes
Ralf Baechle [Tue, 23 Aug 2005 17:11:45 +0000 (10:11 -0700)]
[AX25]: UID fixes

 o Brown paperbag bug - ax25_findbyuid() was always returning a NULL pointer
   as the result.  Breaks ROSE completly and AX.25 if UID policy set to deny.

 o While the list structure of AX.25's UID to callsign mapping table was
   properly protected by a spinlock, it's elements were not refcounted
   resulting in a race between removal and usage of an element.

Signed-off-by: Ralf Baechle DL5RB <ralf@linux-mips.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NET]: Fix socket bitop damage
Ralf Baechle [Tue, 23 Aug 2005 17:11:30 +0000 (10:11 -0700)]
[NET]: Fix socket bitop damage

The socket flag cleanups that went into 2.6.12-rc1 are basically oring
the flags of an old socket into the socket just being created.
Unfortunately that one was just initialized by sock_init_data(), so already
has SOCK_ZAPPED set.  As the result zapped sockets are created and all
incoming connection will fail due to this bug which again was carefully
replicated to at least AX.25, NET/ROM or ROSE.

In order to keep the abstraction alive I've introduced sock_copy_flags()
to copy the socket flags from one sockets to another and used that
instead of the bitwise copy thing.  Anyway, the idea here has probably
been to copy all flags, so sock_copy_flags() should be the right thing.
With this the ham radio protocols are usable again, so I hope this will
make it into 2.6.13.

Signed-off-by: Ralf Baechle DL5RB <ralf@linux-mips.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NETFILTER]: Fix HW checksum handling in ip_queue/ip6_queue
Patrick McHardy [Tue, 23 Aug 2005 17:10:35 +0000 (10:10 -0700)]
[NETFILTER]: Fix HW checksum handling in ip_queue/ip6_queue

The checksum needs to be filled in on output, after mangling a packet
ip_summed needs to be reset.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[IPV4]: Fix negative timer loop with lots of ipv4 peers.
Dave Johnson [Tue, 23 Aug 2005 17:10:15 +0000 (10:10 -0700)]
[IPV4]: Fix negative timer loop with lots of ipv4 peers.

From: Dave Johnson <djohnson+linux-kernel@sw.starentnetworks.com>

Found this bug while doing some scaling testing that created 500K inet
peers.

peer_check_expire() in net/ipv4/inetpeer.c isn't using inet_peer_gc_mintime
correctly and will end up creating an expire timer with less than the
minimum duration, and even zero/negative if enough active peers are
present.

If >65K peers, the timer will be less than inet_peer_gc_mintime, and with
>70K peers, the timer duration will reach zero and go negative.

The timer handler will continue to schedule another zero/negative timer in
a loop until peers can be aged.  This can continue for at least a few
minutes or even longer if the peers remain active due to arriving packets
while the loop is occurring.

Bug is present in both 2.4 and 2.6.  Same patch will apply to both just
fine.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[RPC]: Kill bogus kmap in krb5
Herbert Xu [Tue, 23 Aug 2005 17:09:53 +0000 (10:09 -0700)]
[RPC]: Kill bogus kmap in krb5

While I was going through the crypto users recently, I noticed this
bogus kmap in sunrpc.  It's totally unnecessary since the crypto
layer will do its own kmap before touching the data.  Besides, the
kmap is throwing the return value away.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[TCP]: Do TSO deferral even if tail SKB can go out now.
Dmitry Yusupov [Tue, 23 Aug 2005 17:09:27 +0000 (10:09 -0700)]
[TCP]: Do TSO deferral even if tail SKB can go out now.

If the tail SKB fits into the window, it is still
benefitical to defer until the goal percentage of
the window is available.  This give the application
time to feed more data into the send queue and thus
results in larger TSO frames going out.

Patch from Dmitry Yusupov <dima@neterion.com>.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[IA64] Fix simulator boot (for real this time).
Peter Chubb [Tue, 23 Aug 2005 00:50:00 +0000 (17:50 -0700)]
[IA64] Fix simulator boot (for real this time).

Thanks to Stephane, we've now worked out the real cause of the
`Linux  will not boot on simulator' problem.  Turns out it's a stack
overflow because the stack pointer wasn't being initialised properly
in boot_head.S (it was being initialised to the lowest instead of the
highest address of the stack, so the first push started to overwrite
data in the BSS).

Signed-off-by: Peter Chubb <peterc@gelato.unsw.edu.au>
Signed-off-by: Tony Luck <tony.luck@intel.com>
19 years ago[IA64] backout incorrect fix for simulator boot issue
Tony Luck [Tue, 23 Aug 2005 14:39:15 +0000 (07:39 -0700)]
[IA64] backout incorrect fix for simulator boot issue

Earlier fix in 4aec0fb12267718c750475f3404337ad13caa8f5 just
masked the real problem.

Signed-off-by: Tony Luck <tony.luck@intel.com>
19 years agoPull prarit-bus-sysdata into release branch
Tony Luck [Tue, 23 Aug 2005 14:27:28 +0000 (07:27 -0700)]
Pull prarit-bus-sysdata into release branch

19 years agoAuto-update from upstream
Tony Luck [Mon, 22 Aug 2005 21:31:36 +0000 (14:31 -0700)]
Auto-update from upstream

19 years agoDon't allow normal users to set idle IO priority
Linus Torvalds [Sun, 21 Aug 2005 01:51:29 +0000 (18:51 -0700)]
Don't allow normal users to set idle IO priority

It has all the normal priority inversion problems.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[NETFILTER]: Fix HW checksum handling in TCPMSS target
Patrick McHardy [Sun, 21 Aug 2005 00:40:41 +0000 (17:40 -0700)]
[NETFILTER]: Fix HW checksum handling in TCPMSS target

Most importantly, remove bogus BUG() in receive path.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NETFILTER]: Fix HW checksum handling in ECN target
Patrick McHardy [Sun, 21 Aug 2005 00:39:15 +0000 (17:39 -0700)]
[NETFILTER]: Fix HW checksum handling in ECN target

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NETFILTER]: Fix ECN target TCP marking
Patrick McHardy [Sun, 21 Aug 2005 00:38:40 +0000 (17:38 -0700)]
[NETFILTER]: Fix ECN target TCP marking

An incorrect check made it bail out before doing anything.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[PATCH] freevxfs: fix breakage introduced by symlink fixes
Alexey Dobriyan [Sat, 20 Aug 2005 21:08:36 +0000 (01:08 +0400)]
[PATCH] freevxfs: fix breakage introduced by symlink fixes

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agobefs: fix up missed follow_link declaration change
Linus Torvalds [Sat, 20 Aug 2005 20:20:01 +0000 (13:20 -0700)]
befs: fix up missed follow_link declaration change

We'd updated the prototype and the return value, but not the function
declaration itself.

19 years ago[PATCH] x86_64: Fix race in TSC synchronization
Andi Kleen [Fri, 19 Aug 2005 04:56:40 +0000 (06:56 +0200)]
[PATCH] x86_64: Fix race in TSC synchronization

Plug a race in TSC synchronization

We need to do tsc_sync_wait() before the CPU is set online to prevent
multiple CPUs from doing it in parallel - which won't work because TSC
sync has global unprotected state.

Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] x86_64: Don't print exceptions for ltrace
Andi Kleen [Fri, 19 Aug 2005 04:56:04 +0000 (06:56 +0200)]
[PATCH] x86_64: Don't print exceptions for ltrace

Don't printk exceptions for ltrace

Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Sat, 20 Aug 2005 02:15:57 +0000 (19:15 -0700)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

19 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Sat, 20 Aug 2005 01:59:49 +0000 (18:59 -0700)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6

19 years ago[PATCH] NFSv4: unbalanced BKL in nfs_atomic_lookup()
Steve Dickson [Sat, 20 Aug 2005 00:57:48 +0000 (17:57 -0700)]
[PATCH] NFSv4: unbalanced BKL in nfs_atomic_lookup()

Added missing unlock_kernel() to NFSv4 atomic lookup.

Signed-off-by: Steve Dickson <steved@redhat.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Mobil Pentium 4 HT and the NMI
Steven Rostedt [Sat, 20 Aug 2005 00:57:46 +0000 (17:57 -0700)]
[PATCH] Mobil Pentium 4 HT and the NMI

I'm trying to get the nmi working with my laptop (IBM ThinkPad G41) and after
debugging it a while, I found that the nmi code doesn't want to set it up for
this particular CPU.

Here I have:

$ cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 15
model           : 4
model name      : Mobile Intel(R) Pentium(R) 4 CPU 3.33GHz
stepping        : 1
cpu MHz         : 3320.084
cache size      : 1024 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 1
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 3
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni
monitor ds_cpl est tm2 cid xtpr
bogomips        : 6642.39

processor       : 1
vendor_id       : GenuineIntel
cpu family      : 15
model           : 4
model name      : Mobile Intel(R) Pentium(R) 4 CPU 3.33GHz
stepping        : 1
cpu MHz         : 3320.084
cache size      : 1024 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 1
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 3
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni
monitor ds_cpl est tm2 cid xtpr
bogomips        : 6637.46

And the following code shows:

$ cat linux-2.6.13-rc6/arch/i386/kernel/nmi.c

[...]

void setup_apic_nmi_watchdog (void)
{
        switch (boot_cpu_data.x86_vendor) {
        case X86_VENDOR_AMD:
                if (boot_cpu_data.x86 != 6 && boot_cpu_data.x86 != 15)
                        return;
                setup_k7_watchdog();
                break;
        case X86_VENDOR_INTEL:
                 switch (boot_cpu_data.x86) {
                case 6:
                        if (boot_cpu_data.x86_model > 0xd)
                                return;

                        setup_p6_watchdog();
                        break;
                case 15:
                        if (boot_cpu_data.x86_model > 0x3)
                                return;

Here I get boot_cpu_data.x86_model == 0x4.  So I decided to change it and
reboot.  I now seem to have a working NMI.  So, unless there's something know
to be bad about this processor and the NMI.  I'm submitting the following
patch.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Acked-by: Zwane Mwaikambo <zwane@arm.linux.org.uk>
Acked-by: Mikael Pettersson <mikpe@csd.uu.se>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Fix up symlink function pointers
Al Viro [Fri, 19 Aug 2005 23:17:39 +0000 (00:17 +0100)]
[PATCH] Fix up symlink function pointers

This fixes up the symlink functions for the calling convention change:

 * afs, autofs4, befs, devfs, freevxfs, jffs2, jfs, ncpfs, procfs,
   smbfs, sysvfs, ufs, xfs - prototype change for ->follow_link()
 * befs, smbfs, xfs - same for ->put_link()

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoFix nasty ncpfs symlink handling bug.
Linus Torvalds [Sat, 20 Aug 2005 01:02:56 +0000 (18:02 -0700)]
Fix nasty ncpfs symlink handling bug.

This bug could cause oopses and page state corruption, because ncpfs
used the generic page-cache symlink handlign functions.  But those
functions only work if the page cache is guaranteed to be "stable", ie a
page that was installed when the symlink walk was started has to still
be installed in the page cache at the end of the walk.

We could have fixed ncpfs to not use the generic helper routines, but it
is in many ways much cleaner to instead improve on the symlink walking
helper routines so that they don't require that absolute stability.

We do this by allowing "follow_link()" to return a error-pointer as a
cookie, which is fed back to the cleanup "put_link()" routine.  This
also simplifies NFS symlink handling.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] jffs2: fix symlink error handling
Al Viro [Fri, 19 Aug 2005 21:42:16 +0000 (22:42 +0100)]
[PATCH] jffs2: fix symlink error handling

The current calling conventions for ->follow_link() are already fairly
complex.

What we have is
1) you can return -error; then you must release nameidata yourself
   and ->put_link() will _not_ be called.
2) you can do nd_set_link(nd, ERR_PTR(-error)) and return 0
3) you can do nd_set_link(nd, path) and return 0
4) you can return 0 (after having moved nameidata yourself)

jffs2 follow_link() is broken - it has an exit where it returns
-EIO and leaks nameidata.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[SPARC]: Fix weak aliases
Al Viro [Fri, 19 Aug 2005 22:56:37 +0000 (15:56 -0700)]
[SPARC]: Fix weak aliases

sparc_ksyms.c used to declare weak alias to several gcc intrinsics.  It
doesn't work with gcc4 anymore - it wants a declaration for the thing
we are aliasing to and that's not going to happen for something like
.mul, etc.  Replaced with direct injection of weak alias on the assembler
level - .weak <alias> followed by <alias> = <aliased>; that works on all
gcc versions.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[SPARC64]: Move kernel unaligned trap handlers into assembler file.
David S. Miller [Fri, 19 Aug 2005 22:55:33 +0000 (15:55 -0700)]
[SPARC64]: Move kernel unaligned trap handlers into assembler file.

GCC 4.x really dislikes the games we are playing in
unaligned.c, and the cleanest way to fix this is to
move things into assembler.

Noted by Al Viro.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[SPARC]: Deal with glibc changing macro names in modpost.c
Ben Colline [Fri, 19 Aug 2005 20:44:57 +0000 (13:44 -0700)]
[SPARC]: Deal with glibc changing macro names in modpost.c

GLIBC 2.3.4 and later changed the STT_REGISTER macro to
STT_SPARC_REGISTER, so we need to cope with that somehow.

Original patch from fabbione, reposted by Ben Collins.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[TG3]: Update driver version and reldate.
David S. Miller [Fri, 19 Aug 2005 19:57:31 +0000 (12:57 -0700)]
[TG3]: Update driver version and reldate.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[TG3]: Fix SerDes detection
Michael Chan [Fri, 19 Aug 2005 19:54:29 +0000 (12:54 -0700)]
[TG3]: Fix SerDes detection

A problem was reported by Grant Grundler on an HP rx8620 using IOX
Core LAN partno(A7109-6) 5701 copper NIC. The tg3 driver mistakenly
detects this NIC as having a SerDes PHY and link does not come up as a
result.

The problem was caused by an incorrectly programmed eeprom that set the
NIC_SRAM_DATA_CFG_PHY_TYPE_FIBER bit in the NIC_SRAM_DATA_CFG location.

This patch will override the NIC_SRAM_DATA_CFG_PHY_TYPE_FIBER bit if a
valid PHY ID is read from the MII registers on older 570x chips where
the MII interface is not used on SerDes chips. On newer chips such as
the 5780 that use MII for both copper and SerDes, SerDes detection must
rely on the eeprom.

This patch will make the SerDes detection identical to versions 3.25 and
older.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Acked-by: Grant Grundler <iod00d@hp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years agoAuto-update from upstream
Tony Luck [Thu, 18 Aug 2005 23:44:15 +0000 (16:44 -0700)]
Auto-update from upstream

19 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6
Linus Torvalds [Thu, 18 Aug 2005 22:16:12 +0000 (15:16 -0700)]
Merge /pub/scm/linux/kernel/git/bart/ide-2.6

19 years agoMerge head 'upstream-fixes' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Thu, 18 Aug 2005 21:58:21 +0000 (14:58 -0700)]
Merge head 'upstream-fixes' of /linux/kernel/git/jgarzik/netdev-2.6

19 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Thu, 18 Aug 2005 21:57:53 +0000 (14:57 -0700)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6

19 years ago[IA64] remove unused function __ia64_get_io_port_base
Tony Luck [Thu, 18 Aug 2005 21:40:00 +0000 (14:40 -0700)]
[IA64] remove unused function __ia64_get_io_port_base

Not only was this unused, but its somewhat eccentric declaration
of "static inline const unsigned long" gives gcc4 heartburn.

Signed-off-by: Tony Luck <tony.luck@intel.com>
19 years ago[IPCOMP]: Fix false smp_processor_id warning
Herbert Xu [Thu, 18 Aug 2005 21:36:59 +0000 (14:36 -0700)]
[IPCOMP]: Fix false smp_processor_id warning

This patch fixes a false-positive from debug_smp_processor_id().

The processor ID is only used to look up crypto_tfm objects.
Any processor ID is acceptable here as long as it is one that is
iterated on by for_each_cpu().

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[SPARC64]: Fix 2 bugs in cpufreq drivers.
David S. Miller [Thu, 18 Aug 2005 21:35:38 +0000 (14:35 -0700)]
[SPARC64]: Fix 2 bugs in cpufreq drivers.

1) cpufreq wants frequenceis in KHZ not MHZ
2) provide ->get() method so curfreq node is created

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[IA64] Simulator bootloader fails with gcc 4
Ian Wienand [Wed, 20 Jul 2005 05:32:00 +0000 (22:32 -0700)]
[IA64] Simulator bootloader fails with gcc 4
After building a fresh tree with gcc 4 I can't boot the simulator as
the bootloader loader dies with

loading /home/ianw/kerntest/kerncomp//build/sim_defconfig/vmlinux...
failed to read phdr

After some investigation I believe this is do with differences between
the alignment of variables on the stack between gcc 3 and 4 and the
ski simulator.  If you trace through with the simulator you can see
that the disk_stat structure value returned from the SSC_WAIT_COMPLETION
call seems to be only half loaded.  I guess it doesn't like the alignment
of the input.

Signed-off-by: Ian Wienand <ianw@gelato.unsw.edu.au>
Signed-off-by: Tony Luck <tony.luck@intel.com>
19 years ago[IPV4]: Fix DST leak in icmp_push_reply()
Patrick McHardy [Thu, 18 Aug 2005 21:05:44 +0000 (14:05 -0700)]
[IPV4]: Fix DST leak in icmp_push_reply()

Based upon a bug report and initial patch by
Ollie Wild.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NET]: Fix comment in loopback driver.
Ralf Baechle [Thu, 18 Aug 2005 21:05:18 +0000 (14:05 -0700)]
[NET]: Fix comment in loopback driver.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[TOKENRING]: Use interrupt-safe locking with rif_lock.
Jay Vosburgh [Thu, 18 Aug 2005 21:04:51 +0000 (14:04 -0700)]
[TOKENRING]: Use interrupt-safe locking with rif_lock.

Change operations on rif_lock from spin_{un}lock_bh to
spin_{un}lock_irq{save,restore} equivalents.  Some of the
rif_lock critical sections are called from interrupt context via
tr_type_trans->tr_add_rif_info.  The TR NIC drivers call tr_type_trans
from their packet receive handlers.

Signed-off-by: Jay Vosburgh <fubar@us.ibm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[PATCH] DM9000 - incorrect ioctl() handling
Ben Dooks [Sat, 23 Jul 2005 16:29:38 +0000 (17:29 +0100)]
[PATCH] DM9000 - incorrect ioctl() handling

The DM9000 driver is responding to ioctl() calls it should not be. This
can cause problems with the wireless tools incorrectly indentifying the
device as wireless capable, and crashing under certain operations.

This patch also moves the version printk() to the init call, so that
you only get it once for multiple devices, and to show it is loaded
if there are no defined dm9000s

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
19 years ago[PATCH] DM9000 - spinlock fixes
Ben Dooks [Sat, 23 Jul 2005 16:25:18 +0000 (17:25 +0100)]
[PATCH] DM9000 - spinlock fixes

Fix DM9000 driver usage of spinlocks, which mainly came to light
when running a kernel with spinlock debugging. These come down to:

1) Un-initialised spin lock

2) Several cases of using  spin_xxx(lock) and not spin_xxx(&lock)

3) move the locking around the phy reg for read/write to only
   keep the lock when actually reading or writing to the phy.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>