09 Sep, 2005
2 commits
-
Since GCC has to emit a call and a delay slot to the
out-of-line "membar" routines in arch/sparc64/lib/mb.S
it is much better to just do the necessary predicted
branch inline instead as:ba,pt %xcc, 1f
membar #whatever
1:instead of the current:
call membar_foo
dslotbecause this way GCC is not required to allocate a stack
frame if the function can be a leaf function.This also makes this bug fix easier to backport to 2.4.x
Signed-off-by: David S. Miller
08 Sep, 2005
38 commits
-
When we copy 32bit ->msg_control contents to kernel, we walk the same
userland data twice without sanity checks on the second pass.Second version of this patch: the original broke with 64-bit arches
running 32-bit-compat-mode executables doing sendmsg() syscalls with
unaligned CMSG data areasAnother thing is that we use kmalloc() to allocate and sock_kfree_s()
to free afterwards; less serious, but also needs fixing.Signed-off-by: Al Viro
Signed-off-by: David Woodhouse
Signed-off-by: Chris Wright
Signed-off-by: Linus Torvalds -
head_4xx.S wasn't compiling due to a missing #endif
Signed-off-by: Kumar Gala
Signed-off-by: Linus Torvalds -
ICH6 spec defines the PORT_ bits as:
PORT_ENABLED (R/W):
0 = Disabled. The port is in the off state and cannot detect any
devices.1 = Enabled. The port can transition between the on, partial, and
slumber states and can detect devices.PORT_PRESENT (R/O)
The status of this bit may change at any time. This bit is cleared
when the port is disabled via PORT_ENABLED. This bit is not cleared upon
surprise removal of a device.So from a textual view it is not necessary that PORT_PRESENT _must_ be set,
especially if a device detection has to be done anyway. And, in fact, this
is the view that ACER has been taken with its new Laptops (e.g. Travelmate
4150).And the definition of PORT_ENABLED / PORT_PRESENT is mixed up, btw.
Signed-off-by: Hannes Reinecke
Signed-off-by: Jens Axboe
Cc: Jeff Garzik
Signed-off-by: Andrew Morton
Signed-off-by: Jeff Garzik -
Signed-off-by: Nathan Scott
-
Signed-off-by: Eric Sandeen
Signed-off-by: Nathan Scott -
Christoph).
SGI-PV: 942400
SGI-Modid: xfs-linux-melb:xfs-kern:23771aSigned-off-by: Nathan Scott
-
With the previous commit that introduces the klist enhancements, we can
now re-do 2b7d6a8cb9718fc1d9e826201b64909c44a915f4 again. -
The problem is that klists claim to provide semantics for safe traversal of
lists which are being modified. The failure case is when traversal of a
list causes element removal (a fairly common case). The issue is that
although the list node is refcounted, if it is embedded in an object (which
is universally the case), then the object will be freed regardless of the
klist refcount leading to slab corruption because the klist iterator refers
to the prior element to get the next.The solution is to make the klist take and release references to the
embedding object meaning that the embedding object won't be released until
the list relinquishes the reference to it.(akpm: fast-track this because it's needed for the 2.6.13 scsi merge)
Signed-off-by: James Bottomley
Signed-off-by: Greg Kroah-Hartman
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Revert commit 2b7d6a8cb9718fc1d9e826201b64909c44a915f4.
The "fix" was known to not even compile. Duh. That's not a fix.
That's just stupid.Signed-off-by: Linus Torvalds
-
This patch adds support for the SiS182 sata chipset. This is a
minimalistic version of the patch from
http://bugme.osdl.org/show_bug.cgi?id=4192. Basically, it add the PCI
IDs and handles the change of the 2nd port adress register.Signed-Off-By: Arnaud Patard
Signed-off-by: Jeff Garzik -
Signed-off-by: Al Viro
Signed-off-by: Linus Torvalds -
Now that asm-powerpc/* is using ifdefs on __powerpc64__ we need to add it
to CHECKFLAGS on ppc64.Signed-off-by: Al Viro
Signed-off-by: Linus Torvalds -
Signed-off-by: Al Viro
Signed-off-by: Linus Torvalds -
Signed-off-by: Al Viro
Signed-off-by: Linus Torvalds -
Signed-off-by: Al Viro
Signed-off-by: Linus Torvalds -
CARD_... in hisax are all used with #if; CARD_FN_ENTERNOW_PCI lacks define
to 0 if corresponding config option is not set.Signed-off-by: Al Viro
Signed-off-by: Linus Torvalds -
NDEBUG and NDEBUG_ABORT are almost always used as integers in NCR5380; added
define to 0 if they are not defined, switched lone ifdef NDEBUG into if.Signed-off-by: Al Viro
Signed-off-by: Linus Torvalds -
All uses of ADDRLEN are comparisons with 64 (it's an address width).
added define to 32 (again, we only care about comparisons with 64)
if not defined.Signed-off-by: Al Viro
Signed-off-by: Linus Torvalds -
elf_aux is userland code; it uses symbol (ELF_CLASS) that doesn't exist in
userland headers; pulled into kernel-offsets.h, switched elf_aux to using it.Signed-off-by: Al Viro
Signed-off-by: Linus Torvalds -
parcelfarce is dead...
Signed-off-by: Al Viro
Signed-off-by: Linus Torvalds -
Signed-off-by: Al Viro
Signed-off-by: Linus Torvalds -
A piece of the UML stubs patch got lost - it has
Killed STUBS_CFLAGS - it's not needed and the only remaining use had been
gratitious - it only polluted CFLAGS
in description and does remove it in arch/um/Makefile-x86_64, but forgets to
do the same in i386 counterpart. Lost chunk follows:Signed-off-by: Al Viro
Signed-off-by: Linus Torvalds -
Sanitized and fixed floppy dependencies: split the messy dependencies for
BLK_DEV_FD by introducing a new symbol (ARCH_MAY_HAVE_PC_FDC), making
BLK_DEV_FD depend on that one and taking declarations of ARCH_MAY_HAVE_PC_FDC
to arch/*/Kconfig. While we are at it, fixed several obvious cases when
BLK_DEV_FD should have been excluded (architectures lacking asm/floppy.h
are *not* going to have floppy.c compile, let alone work).If you can come up with better name for that ("this architecture might
have working PC-compatible floppy disk controller"), you are more than
welcome - just s/ARCH_MAY_HAVE_PC_FDC/your_prefered_name/g in the patch
below...Signed-off-by: Al Viro
Signed-off-by: Linus Torvalds -
u64 is not uintptr_t; unsigned long is...
Signed-off-by: Al Viro
Signed-off-by: Linus Torvalds -
Most of the patch is whitespace cleanup, but more importantly, this patch
checks to see whether a callback is set before calling it. On cx88 boards
(currently the only boards using lgdt330x in 2.6.13) every callback is set.
However, newer drivers currently in development leave a callback undefined,
and lgdt330x must not call it if it isn't defined.Signed-off-by: Patrick Boettcher
Signed-off-by: Michael Krufky
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds