]> err.no Git - linux-2.6/log
linux-2.6
19 years ago[PATCH] uml: add profile_pc for i386
Paolo 'Blaisorblade' Giarrusso [Sat, 25 Jun 2005 21:55:26 +0000 (14:55 -0700)]
[PATCH] uml: add profile_pc for i386

Cope with a conditional i386 definition, which is wrong for UML.  Before we
just used that one, but it wasn't defined for CONFIG_SMP, so in that case
we got link errors.

Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] uml: hot-unplug code cleanup
Jeff Dike [Sat, 25 Jun 2005 21:55:25 +0000 (14:55 -0700)]
[PATCH] uml: hot-unplug code cleanup

Clean up the hot-unplugging code.  There is now an id procedure which is
called to figure out what device we're talking to.  The error messages from
that are now done from mconsole_remove instead of the driver.  remove is now
called with the device number, after it has been checked, so doesn't need to
do sanity checking on it.

Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] uml: time initialization tidying
Jeff Dike [Sat, 25 Jun 2005 21:55:24 +0000 (14:55 -0700)]
[PATCH] uml: time initialization tidying

user_time_init_skas and user_time_init_tt were essentially the same.  So, this
merges them, deleting the mode-specific functions and declarations.

Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] uml: always disable kmalloc during shutdown
Jeff Dike [Sat, 25 Jun 2005 21:55:23 +0000 (14:55 -0700)]
[PATCH] uml: always disable kmalloc during shutdown

kmalloc wasn't being disabled during panic.  This patch ensures that, no
matter how UML is exiting, it is disabled.  This matters because part of the
cleanup is to remove the umid file, which involves readdir, which calls
malloc.  This must map to libc malloc, rather than kmalloc or vmalloc.

Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] uml: fix timer initialization
Jeff Dike [Sat, 25 Jun 2005 21:55:22 +0000 (14:55 -0700)]
[PATCH] uml: fix timer initialization

In skas mode, the call to uml_idle_timer permanently shut off the virtual
timer, resulting in no timer ticks to anything but the idle thread.  This is
likely the cause of the soft lockups that are seen sporadically in recent
UMLs.

Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] uml: fork cleanup
Jeff Dike [Sat, 25 Jun 2005 21:55:21 +0000 (14:55 -0700)]
[PATCH] uml: fork cleanup

Fix the do_fork calling convention: normal arch pass the regs and the new sp
value to do_fork instead of NULL.

Currently the arch-independent code ignores these values, while the UML code
(actually it's copy_thread) gets the right values by itself.

With this patch, things are fixed up.

Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] uml: kfree cleanup
Jesper Juhl [Sat, 25 Jun 2005 21:55:20 +0000 (14:55 -0700)]
[PATCH] uml: kfree cleanup

Here's a small patch to remove a few unnessesary NULL pointer checks before
kfree() in arch/um/drivers/daemon_user.c

Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] uml: fix sizeof usage
Andrew Morton [Sat, 25 Jun 2005 21:55:19 +0000 (14:55 -0700)]
[PATCH] uml: fix sizeof usage

Size of pointer doesn't seem right, but maybe my solution isn't either
(sig_size maybe?).

Signed-off-by: Domen Puncer <domen@coderock.org>
Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Update video-after-suspend documentation
Pavel Machek [Sat, 25 Jun 2005 21:55:18 +0000 (14:55 -0700)]
[PATCH] Update video-after-suspend documentation

Update video-after-suspend documentation; few more machines are added.

Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] swsusp: only allow it when it makes sense
Pavel Machek [Sat, 25 Jun 2005 21:55:17 +0000 (14:55 -0700)]
[PATCH] swsusp: only allow it when it makes sense

Show swsuspend only on .config where it can compile.  I got this on PPC32 &&
SMP:

kernel/power/smp.c:24: error: storage size of `ctxt' isn't known

Also mark swsusp as no longer experimental.

Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] suspend: PCI power managment reference implementation
pavel@ucw.cz [Sat, 25 Jun 2005 21:55:16 +0000 (14:55 -0700)]
[PATCH] suspend: PCI power managment reference implementation

Added reference implementation of suspend and resume routines.

From: Shaohua Li <shaohua.li@intel.com>

  build fix

Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] CPU hotplug printk fix
Shaohua Li [Sat, 25 Jun 2005 21:55:15 +0000 (14:55 -0700)]
[PATCH] CPU hotplug printk fix

In the cpu hotplug case, per-cpu data possibly isn't initialized even the
system state is 'running'.  As the comments say in the original code, some
console drivers assume per-cpu resources have been allocated.  radeon fb is
one such driver, which uses kmalloc.  After a CPU is down, the per-cpu data
of slab is freed, so the system crashed when printing some info.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] swsusp: clean assembly parts
Pavel Machek [Sat, 25 Jun 2005 21:55:14 +0000 (14:55 -0700)]
[PATCH] swsusp: clean assembly parts

This patch fixes register saving so that each register is only saved once,
and adds missing saving of %cr8 on x86-64.  Some reordering so that
save/restore is more logical/safer (segment registers should be restored
after gdt).

Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] swsusp: fix nr_copy_pages
Pavel Machek [Sat, 25 Jun 2005 21:55:14 +0000 (14:55 -0700)]
[PATCH] swsusp: fix nr_copy_pages

The following patch moves the recalculation of nr_copy_pages so that the right
number is used in the calculation of the size of memory and swap needed.

It prevents swsusp from attempting to suspend if there is not enough memory
and/or swap (which is unlikely anyway).

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] swsusp: cleanup whitespace
Pavel Machek [Sat, 25 Jun 2005 21:55:12 +0000 (14:55 -0700)]
[PATCH] swsusp: cleanup whitespace

The following patch cleans up whitespace in swsusp.c (a bit):

- removes any trailing whitespace

- adds spaces after if, for, for_each_pbe, for_each_zone etc., wherever
  necessary.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] swsusp: kill unneccessary does_collide_order
Pavel Machek [Sat, 25 Jun 2005 21:55:12 +0000 (14:55 -0700)]
[PATCH] swsusp: kill unneccessary does_collide_order

The following patch removes the unnecessary function does_collide_order().

This function is no longer necessary, as currently there are only 0-order
allocations in swsusp, and the use of it is confusing.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] properly stop devices before poweroff
Pavel Machek [Sat, 25 Jun 2005 21:55:11 +0000 (14:55 -0700)]
[PATCH] properly stop devices before poweroff

Without this patch, Linux provokes emergency disk shutdowns and
similar nastiness. It was in SuSE kernels for some time, IIRC.

Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] acpi: fix video docs
Pavel Machek [Sat, 25 Jun 2005 21:55:10 +0000 (14:55 -0700)]
[PATCH] acpi: fix video docs

This fixes typos/formatting in video_extension.txt.

Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] s-t-RAM: load gdt the right way
Pavel Machek [Sat, 25 Jun 2005 21:55:09 +0000 (14:55 -0700)]
[PATCH] s-t-RAM: load gdt the right way

Sleep code uses wrong version of lgdt, that does the wrong thing when
gdt is beyond 16MB or so.

Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] swsusp: kill config_pm_disk
Pavel Machek [Sat, 25 Jun 2005 21:55:09 +0000 (14:55 -0700)]
[PATCH] swsusp: kill config_pm_disk

CONFIG_PM_DISK is long gone, but it still managed to survived at few
places.

Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] swsusp: documentation updates
Pavel Machek [Sat, 25 Jun 2005 21:55:07 +0000 (14:55 -0700)]
[PATCH] swsusp: documentation updates

This updates documentation and fixes pointers in MAINTAINERS file.

Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] suspend/resume SMP support
Li Shaohua [Sat, 25 Jun 2005 21:55:06 +0000 (14:55 -0700)]
[PATCH] suspend/resume SMP support

Using CPU hotplug to support suspend/resume SMP.  Both S3 and S4 use
disable/enable_nonboot_cpus API.  The S4 part is based on Pavel's original S4
SMP patch.

Signed-off-by: Li Shaohua<shaohua.li@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] generate hotplug events for cpu online
Nathan Lynch [Sat, 25 Jun 2005 21:55:05 +0000 (14:55 -0700)]
[PATCH] generate hotplug events for cpu online

We already do kobject_hotplug for cpu offline; this adds a kobject_hotplug
call for the online case.  This is being requested by developers of an
application which wants to be notified about both kinds of events.

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] set cpu_state for CPU hotplug (ia64)
Shaohua Li [Sat, 25 Jun 2005 21:55:05 +0000 (14:55 -0700)]
[PATCH] set cpu_state for CPU hotplug (ia64)

Dead CPU notifies online CPU that it's dead using cpu_state variable.
After switching to physical cpu hotplug, we forgot setting the variable.
This patch fixes it.  Currently only __cpu_die uses it.  We changed other
locations for consistency in case others use it.

Signed-off-by: Shaohua Li <shaohua.li@intel.com>
Acked-by: Ashok Raj <ashok.raj@intel.com>
Cc: "Luck, Tony" <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] x86_64: Provide ability to choose using shortcuts for IPI in flat mode.
Ashok Raj [Sat, 25 Jun 2005 21:55:03 +0000 (14:55 -0700)]
[PATCH] x86_64: Provide ability to choose using shortcuts for IPI in flat mode.

This patch provides an option to switch broadcast or use mask version for
sending IPI's.  If CONFIG_HOTPLUG_CPU is defined, we choose not to use
broadcast shortcuts by default, otherwise we choose broadcast mode as default.

both cases, one can change this via startup cmd line option, to choose
no-broadcast mode.

no_ipi_broadcast=1

This is provided on request from Andi Kleen, since he doesnt agree with
replacing IPI shortcuts as a solution for CPU hotplug.  Without removing
broadcast IPI's, it would mean lots of new code for __cpu_up() path, which
would acheive the same results.

Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Acked-by: Andi Kleen <ak@muc.de>
Acked-by: Zwane Mwaikambo <zwane@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] x86_64: Dont use broadcast shortcut to make it cpu hotplug safe.
Ashok Raj [Sat, 25 Jun 2005 21:55:02 +0000 (14:55 -0700)]
[PATCH] x86_64: Dont use broadcast shortcut to make it cpu hotplug safe.

Broadcast IPI's provide un-expected behaviour for cpu hotplug.  CPU's in
offline state also end up receiving the IPI.  Once the cpus become online they
receive these stale IPI's which are bad and introduce unexpected behaviour.

This is easily avoided by not sending a broadcast and addressing just the
CPU's in online map.  Doing prelim cycle counts it appears there is no big
overhead and numbers seem around 0x3000-0x3900 on an average on x86 and x86_64
systems with CPUS running 3G, both for broadcast and mask version of the
API's.

The shortcuts are useful only for flat mode (where the perf shows no
degradation), and in cluster mode, its unicast anyway.  Its simpler to just
not use broadcast anymore.

Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Acked-by: Andi Kleen <ak@muc.de>
Acked-by: Zwane Mwaikambo <zwane@arm.linux.org.uk>
Signed-off-by: Shaohua Li <shaohua.li@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] x86_64: CPU hotplug sibling map cleanup
Ashok Raj [Sat, 25 Jun 2005 21:55:01 +0000 (14:55 -0700)]
[PATCH] x86_64: CPU hotplug sibling map cleanup

This patch is a minor cleanup to the cpu sibling/core map.  It is required
that this setup happens on a per-cpu bringup time.

Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Acked-by: Andi Kleen <ak@muc.de>
Acked-by: Zwane Mwaikambo <zwane@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] x86_64: CPU hotplug support
Ashok Raj [Sat, 25 Jun 2005 21:55:00 +0000 (14:55 -0700)]
[PATCH] x86_64: CPU hotplug support

  Experimental CPU hotplug patch for x86_64
  -----------------------------------------
This supports logical CPU online and offline.
- Test with maxcpus=1, and then kick other cpu's off to test if init code
  is all cleaned up. CONFIG_SCHED_SMT works as well.
- idle threads are forked on demand from keventd threads for clean startup

TBD:
1. Not tested on a real NUMA machine (tested with numa=fake=2)
2. Handle ACPI pieces for physical hotplug support.

Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Acked-by: Andi Kleen <ak@muc.de>
Acked-by: Zwane Mwaikambo <zwane@arm.linux.org.uk>
Signed-off-by: Shaohua.li<shaohua.li@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] x86_64: Change init sections for CPU hotplug support
Ashok Raj [Sat, 25 Jun 2005 21:54:58 +0000 (14:54 -0700)]
[PATCH] x86_64: Change init sections for CPU hotplug support

This patch adds __cpuinit and __cpuinitdata sections that need to exist past
boot to support cpu hotplug.

Caveat: This is done *only* for EM64T CPU Hotplug support, on request from
Andi Kleen.  Much of the generic hotplug code in kernel, and none of the other
archs that support CPU hotplug today, i386, ia64, ppc64, s390 and parisc dont
mark sections with __cpuinit, but only mark them as __devinit, and
__devinitdata.

If someone is motivated to change generic code, we need to make sure all
existing hotplug code does not break, on other arch's that dont use __cpuinit,
and __cpudevinit.

Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Acked-by: Andi Kleen <ak@muc.de>
Acked-by: Zwane Mwaikambo <zwane@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] make smp_prepare_cpu to a weak function
Ashok Raj [Sat, 25 Jun 2005 21:54:57 +0000 (14:54 -0700)]
[PATCH] make smp_prepare_cpu to a weak function

I really wish smp_prepare_cpu() would disappear eventually.  In the interim
this is ideally a weak function, so we dont end up changing several places
to define this dummy in headers.

Today since the dummy declaration is done only in drivers/base/cpu.c but
the function is called in kernel/power/smp.c i get undefined reference in
my cpu hotplug code for x86_64 under development.

Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] cpu state clean after hot remove
Li Shaohua [Sat, 25 Jun 2005 21:54:56 +0000 (14:54 -0700)]
[PATCH] cpu state clean after hot remove

Clean CPU states in order to reuse smp boot code for CPU hotplug.

Signed-off-by: Li Shaohua<shaohua.li@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] init call cleanup
Li Shaohua [Sat, 25 Jun 2005 21:54:55 +0000 (14:54 -0700)]
[PATCH] init call cleanup

Trival patch for CPU hotplug.  In CPU identify part, only did cleaup for intel
CPUs.  Need do for other CPUs if they support S3 SMP.

Signed-off-by: Li Shaohua<shaohua.li@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] sibling map initializing rework
Li Shaohua [Sat, 25 Jun 2005 21:54:54 +0000 (14:54 -0700)]
[PATCH] sibling map initializing rework

Make sibling map init per-cpu.  Hotplug CPU may change the map at runtime.

Signed-off-by: Li Shaohua<shaohua.li@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] sep initializing rework
Li Shaohua [Sat, 25 Jun 2005 21:54:53 +0000 (14:54 -0700)]
[PATCH] sep initializing rework

Make SEP init per-cpu, so it is hotplug safe.

Signed-off-by: Li Shaohua<shaohua.li@intel.com>
Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] i386: Dont use IPI broadcast when using cpu hotplug.
Ashok Raj [Sat, 25 Jun 2005 21:54:52 +0000 (14:54 -0700)]
[PATCH] i386: Dont use IPI broadcast when using cpu hotplug.

This patch introduces a startup parameter no_broadcast.  When we enable
CONFIG_HOTPLUG_CPU, we dont want to use broadcast shortcut as it has ill
effects on a offline cpu.  If we issue broadcast, the IPI is also delivered
to offline cpus, or partially up cpu causing stale IPI's to be handled,
which is a problem and can cause undesirable effects.

Introduces a new startup cmdline option no_ipi_broadcast, that can be
switched at cmdline if necessary.

Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Acked-by: Shaohua Li <shaohua.li@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] i386 CPU hotplug
Zwane Mwaikambo [Sat, 25 Jun 2005 21:54:50 +0000 (14:54 -0700)]
[PATCH] i386 CPU hotplug

(The i386 CPU hotplug patch provides infrastructure for some work which Pavel
is doing as well as for ACPI S3 (suspend-to-RAM) work which Li Shaohua
<shaohua.li@intel.com> is doing)

The following provides i386 architecture support for safely unregistering and
registering processors during runtime, updated for the current -mm tree.  In
order to avoid dumping cpu hotplug code into kernel/irq/* i dropped the
cpu_online check in do_IRQ() by modifying fixup_irqs().  The difference being
that on cpu offline, fixup_irqs() is called before we clear the cpu from
cpu_online_map and a long delay in order to ensure that we never have any
queued external interrupts on the APICs.  There are additional changes to s390
and ppc64 to account for this change.

1) Add CONFIG_HOTPLUG_CPU
2) disable local APIC timer on dead cpus.
3) Disable preempt around irq balancing to prevent CPUs going down.
4) Print irq stats for all possible cpus.
5) Debugging check for interrupts on offline cpus.
6) Hacky fixup_irqs() to redirect irqs when cpus go off/online.
7) play_dead() for offline cpus to spin inside.
8) Handle offline cpus set in flush_tlb_others().
9) Grab lock earlier in smp_call_function() to prevent CPUs going down.
10) Implement __cpu_disable() and __cpu_die().
11) Enable local interrupts in cpu_enable() after fixup_irqs()
12) Don't fiddle with NMI on dead cpu, but leave intact on other cpus.
13) Program IRQ affinity whilst cpu is still in cpu_online_map on offline.

Signed-off-by: Zwane Mwaikambo <zwane@linuxpower.ca>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] variable overflow after hundreds round of hotplug CPU
Shaohua Li [Sat, 25 Jun 2005 21:54:49 +0000 (14:54 -0700)]
[PATCH] variable overflow after hundreds round of hotplug CPU

I'm doing the cpu hotplug stress test and found a variable ('ready') is
overflow after several hundreds rounds of cpu hotplug.  Here is a fix.

Signed-off-by: Shaohua Li<shaohua.li@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] CPU hotplug: fix hpet sectioning
Shaohua Li [Sat, 25 Jun 2005 21:54:48 +0000 (14:54 -0700)]
[PATCH] CPU hotplug: fix hpet sectioning

With hpet enabled, cpu hotplug uses some routines marked with __init.

Signed-off-by: Shaohua Li<shaohua.li@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dmi: spring cleanup
Andrey Panin [Sat, 25 Jun 2005 21:54:47 +0000 (14:54 -0700)]
[PATCH] dmi: spring cleanup

Whitespace and CodingStyle cleanup. No functionality changes.

Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dmi: remove central blacklist
Andrey Panin [Sat, 25 Jun 2005 21:54:46 +0000 (14:54 -0700)]
[PATCH] dmi: remove central blacklist

Since last dmi quirk looks useless (it just prints 404 compliant url) we can
finally remove central dmi blacklist.

Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dmi: move ACPI sleep quirk
Andrey Panin [Sat, 25 Jun 2005 21:54:45 +0000 (14:54 -0700)]
[PATCH] dmi: move ACPI sleep quirk

This patch moves ACPI sleep quirk out of dmi_scan.c

Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dmi: move ACPI boot quirk
Andrey Panin [Sat, 25 Jun 2005 21:54:42 +0000 (14:54 -0700)]
[PATCH] dmi: move ACPI boot quirk

This patch moves ACPI boot quirks out of dmi_scan.c

Signed-off-by: Andrey Panin <pazke@donpac.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ppc64: Fix compile warnings in arch/ppc64/kernel/lparcfg.c
Michael Ellerman [Sat, 25 Jun 2005 21:54:42 +0000 (14:54 -0700)]
[PATCH] ppc64: Fix compile warnings in arch/ppc64/kernel/lparcfg.c

Stephen's patch to remove LparData.h missed an include in lparcfg.c This
fixes a few compile warnings.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ppc32: remove some unnecessary includes of bootmem.h
Kumar Gala [Sat, 25 Jun 2005 21:54:41 +0000 (14:54 -0700)]
[PATCH] ppc32: remove some unnecessary includes of bootmem.h

Continue the Good Fight:  Limit bootmem.h include creep.

Signed-off-by: Jon Loeliger <jdl@freescale.com>
Signed-off-by: Kumar Gala <kumar.gala@freescale.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] I2C-MPC: Remove OCP device model support
Kumar Gala [Sat, 25 Jun 2005 21:54:39 +0000 (14:54 -0700)]
[PATCH] I2C-MPC: Remove OCP device model support

All consumers of the driver MPC10x, MPC52xx, MPC824x, MPC83xx, and MPC85xx are
all using platform devices.  We can get ride of the dead code to support using
this driver with the old OCP based model

Signed-off-by: Kumar Gala <kumar.gala@freescale.com>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ppc32: Remove FSL OCP support
Kumar Gala [Sat, 25 Jun 2005 21:54:39 +0000 (14:54 -0700)]
[PATCH] ppc32: Remove FSL OCP support

Support for the OCP device model on Freescale (FSL) PPC's is no longer used.
All FSL PPC's that were using OCP have be converted to using the platform
device model.

Signed-off-by: Kumar Gala <kumar.gala@freescale.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ppc32: Add support for Freescale e200 (Book-E) core
Kumar Gala [Sat, 25 Jun 2005 21:54:37 +0000 (14:54 -0700)]
[PATCH] ppc32: Add support for Freescale e200 (Book-E) core

The e200 core is a Book-E core (similar to e500) that has a unified L1 cache
and is not cache coherent on the bus.  The e200 core also adds a separate
exception level for debug exceptions.  Part of this patch helps to cleanup a
few cases that are true for all Freescale Book-E parts, not just e500.

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: Kumar Gala <kumar.gala@freescale.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ppc32: Check return of ppc_sys_get_pdata before accessing pointer
Kumar Gala [Sat, 25 Jun 2005 21:54:36 +0000 (14:54 -0700)]
[PATCH] ppc32: Check return of ppc_sys_get_pdata before accessing pointer

Ensure that the returned pointer from ppc_sys_get_pdata is not NULL before we
start using it.  This handles any cases where we have variants of processors
on the same board with different functionality.

Signed-off-by: Kumar Gala <kumar.gala@freescale.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] selinux: add executable heap check
Lorenzo Hernández García-Hierro [Sat, 25 Jun 2005 21:54:35 +0000 (14:54 -0700)]
[PATCH] selinux: add executable heap check

This patch,based on sample code by Roland McGrath, adds an execheap
permission check that controls the ability to make the heap executable so
that this can be prevented in almost all cases (the X server is presently
an exception, but this will hopefully be resolved in the future) so that
even programs with execmem permission will need to have the anonymous
memory mapped in order to make it executable.

The only reason that we use a permission check for such restriction (vs.
making it unconditional) is that the X module loader presently needs it; it
could possibly be made unconditional in the future when X is changed.

The policy patch for the execheap permission is available at:
http://pearls.tuxedo-es.org/patches/selinux/policy-execheap.patch

Signed-off-by: Lorenzo Hernandez Garcia-Hierro <lorenzo@gnu.org>
Acked-by: James Morris <jmorris@redhat.com>
Acked-by: Stephen Smalley <sds@tycho.nsa.gov>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] selinux: add executable stack check
Lorenzo Hernandez García-Hierro [Sat, 25 Jun 2005 21:54:34 +0000 (14:54 -0700)]
[PATCH] selinux: add executable stack check

This patch adds an execstack permission check that controls the ability to
make the main process stack executable so that attempts to make the stack
executable can still be prevented even if the process is allowed the
existing execmem permission in order to e.g.  perform runtime code
generation.  Note that this does not yet address thread stacks.  Note also
that unlike the execmem check, the execstack check is only applied on
mprotect calls, not mmap calls, as the current security_file_mmap hook is
not passed the necessary information presently.

The original author of the code that makes the distinction of the stack
region, is Ingo Molnar, who wrote it within his patch for
/proc/<pid>/maps markers.
(http://marc.theaimsgroup.com/?l=linux-kernel&m=110719881508591&w=2)

The patches also can be found at:
http://pearls.tuxedo-es.org/patches/selinux/policy-execstack.patch
http://pearls.tuxedo-es.org/patches/selinux/kernel-execstack.patch

policy-execstack.patch is the patch that needs to be applied to the policy in
order to support the execstack permission and exclude it
from general_domain_access within macros/core_macros.te.

kernel-execstack.patch adds such permission to the SELinux code within
the kernel and adds the proper permission check to the selinux_file_mprotect() hook.

Signed-off-by: Lorenzo Hernandez Garcia-Hierro <lorenzo@gnu.org>
Acked-by: James Morris <jmorris@redhat.com>
Acked-by: Stephen Smalley <sds@tycho.nsa.gov>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] mm: fix remap_pte_range BUG
Hugh Dickins [Sat, 25 Jun 2005 21:54:33 +0000 (14:54 -0700)]
[PATCH] mm: fix remap_pte_range BUG

Out-of-tree user of remap_pfn_range hit kernel BUG at mm/memory.c:1112!  It
passes an unrounded size to remap_pfn_range, which was okay before 2.6.12,
but misses remap_pte_range's new end condition.  An audit of all the other
ptwalks confirms that this is the only one so exposed.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Fix the error handling in direct I/O
Hifumi Hisashi [Sat, 25 Jun 2005 21:54:32 +0000 (14:54 -0700)]
[PATCH] Fix the error handling in direct I/O

Fix a bug on error handling in the direct I/O function.

Currently, if a file is opened with the O_DIRECT|O_SYNC flag, the write()
syscall cannot receive the EIO error after an I/O error (SCSI cable is
disconnected etc.).

Return values of other points that call generic_osync_inode() are treated
appropriately.

Signed-off-by: Hisashi Hifumi <hifumi.hisashi@lab.ntt.co.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] mips: add MIPS-specific support for flatmem/discontigmem
Yoichi Yuasa [Sat, 25 Jun 2005 21:54:31 +0000 (14:54 -0700)]
[PATCH] mips: add MIPS-specific support for flatmem/discontigmem

2.6.12-git6 doesn't boot on some MIPS machines.  They need the support of flat
memory and discontig memory.

Signed-off-by: Yoichi Yuasa <yuasa@hh.iij4u.or.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Serial: remove unnecessary register_serial/unregister_serial
Russell King [Sat, 25 Jun 2005 21:54:30 +0000 (14:54 -0700)]
[PATCH] Serial: remove unnecessary register_serial/unregister_serial

A couple of drivers declare register_serial/unregister_serial prototypes
but don't use them.  FRV contains a commented out call to register_serial.
Since these are deprecated, remove these unnecessary references.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] gcc4 compile fix for recent ia64 xpc changes
Dave Jones [Sat, 25 Jun 2005 21:54:29 +0000 (14:54 -0700)]
[PATCH] gcc4 compile fix for recent ia64 xpc changes

Gcc4 doesn't like volatile casts as lvalues.  Make the structure members
volatile instead.

Signed-off-by: Dave Jones <davej@redhat.com>
Cc: "Luck, Tony" <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] I8K: add new BIOS signatures
Dmitry Torokhov [Sat, 25 Jun 2005 21:54:28 +0000 (14:54 -0700)]
[PATCH] I8K: add new BIOS signatures

I8K: add BIOS signatures of a newer Dell laptops, also there can be
     more than one temperature sensor reported by BIOS. Lifted from
     driver 1.25 on Massimo Dal Zotto's site.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] I8K: initialization code cleanup; formatting
Dmitry Torokhov [Sat, 25 Jun 2005 21:54:27 +0000 (14:54 -0700)]
[PATCH] I8K: initialization code cleanup; formatting

I8K: use module_{init|exit} instead of old style #ifdef MODULE
     code, some formatting changes.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] I8K: convert to seqfile
Dmitry Torokhov [Sat, 25 Jun 2005 21:54:26 +0000 (14:54 -0700)]
[PATCH] I8K: convert to seqfile

I8K: Change proc code to use seq_file.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] I8K: use standard DMI interface
Dmitry Torokhov [Sat, 25 Jun 2005 21:54:25 +0000 (14:54 -0700)]
[PATCH] I8K: use standard DMI interface

I8K: Change to use stock dmi infrastructure instead of homegrown
     parsing code. The driver now requires box's DMI data to match
     list of supported models so driver can be safely compiled-in
     by default without fear of it poking into random SMM BIOS
     code. DMI checks can be ignored with i8k.ignore_dmi option.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] I8K: pass through lindent
Dmitry Torokhov [Sat, 25 Jun 2005 21:54:23 +0000 (14:54 -0700)]
[PATCH] I8K: pass through lindent

I8K: pass through Lindent to change 4 spaces identation to TABs

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Toshiba driver cleanup
Dmitry Torokhov [Sat, 25 Jun 2005 21:54:22 +0000 (14:54 -0700)]
[PATCH] Toshiba driver cleanup

Toshiba legacy driver cleanup:
 - use module_init/module_exit for initialization instead of using
   #ifdef MODULE and calling tosh_init manually from drivers/char/misc.c
 - do not explicitly initialize static variables
 - some whitespace and formatting cleanups

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] cx88 build fix
Mauro Carvalho Chehab [Sat, 25 Jun 2005 21:54:22 +0000 (14:54 -0700)]
[PATCH] cx88 build fix

static declaration of cx88_pci_irqs follows non-static.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb-bt8xx.txt fixes
Uwe Bugla [Sat, 25 Jun 2005 21:54:21 +0000 (14:54 -0700)]
[PATCH] dvb-bt8xx.txt fixes

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoMerge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Sat, 25 Jun 2005 23:03:08 +0000 (16:03 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm

19 years ago[PATCH] ARM: Generic Dynamic Tick Timer support for ARM, take 4
Russell King [Sat, 25 Jun 2005 18:39:45 +0000 (19:39 +0100)]
[PATCH] ARM: Generic Dynamic Tick Timer support for ARM, take 4

This patch adds support for Dynamic Tick Timer for ARM. Dynamic Tick is
also known as VST (Variable Scheduling Timeouts).

Dynamic Tick has been in use in the OMAP tree since last October.  The
patch is not intrusive, and does not do anything unless CONFIG_NO_IDLE_HZ
is defined.  This patch has the following fixed based on comments from
RMK:
- Time is updated before calling interrupt handlers.
- Added new interrupt flag SA_TIMER to avoid duplicate timer interrupts
- Moved struct dyn_tick_timer to time.h until we at some point probably
  have an arch independent dyn-tick.h
- Cleaned up testing for DYN_TICK_ENABLED in irq.c

 I've cleaned up this patch to fix some remaining issues:
 - Call the timer tick handler with irqs disabled, as it would be from
   a normal interrupt
 - if we have a dyn_tick, we better implement all methods.
 - generic timer_dyn_reprogram() call, to be called before sleeping
 - added command line option - "dyntick=" to allow boot-time control
   of this feature
    -- rmk

Signed-off-by: Tony Lindgren
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[PATCH] ARM: 2752/1: disable ixp2000 PCI I/O software workaround on chips that don...
Lennert Buytenhek [Sat, 25 Jun 2005 18:30:04 +0000 (19:30 +0100)]
[PATCH] ARM: 2752/1: disable ixp2000 PCI I/O software workaround on chips that don't need it

Patch from Lennert Buytenhek

The later ixp2000 models don't need the PCI I/O workaround that we
currently perform.  Add a config option to disable the workaround,
and panic on boot if a kernel without the workaround is booted on a
buggy chip.  As only pre-production ixp2000s need the workaround,
the default is for it not to be configured in.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Deepak Saxena
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[PATCH] ARM: Fix discontigmem
Russell King [Sat, 25 Jun 2005 18:29:34 +0000 (19:29 +0100)]
[PATCH] ARM: Fix discontigmem

The merge of sparsemem broke ARM discontigmem.  Fix it.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years agoMerge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Sat, 25 Jun 2005 17:25:13 +0000 (10:25 -0700)]
Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6

19 years agoACPI: Make sure we call acpi_register_gsi() even for default PCI interrupt assignment
Linus Torvalds [Sat, 25 Jun 2005 17:01:36 +0000 (10:01 -0700)]
ACPI: Make sure we call acpi_register_gsi() even for default PCI interrupt assignment

That's the part that keeps track of the ELCR register, and we want to
make sure that the PCI interrupts are properly marked level/low.

19 years ago[PATCH] ARM: 2751/1: ixp2000 gpio cleanup broke ixdp2800 build
Lennert Buytenhek [Sat, 25 Jun 2005 15:58:22 +0000 (16:58 +0100)]
[PATCH] ARM: 2751/1: ixp2000 gpio cleanup broke ixdp2800 build

Patch from Lennert Buytenhek

The ixp2000 gpio cleanup broke the ixdp2800 build as it moved some
gpio-related functions from arch/platform.h to arch/gpio.h and the
ixdp2x00 support code used those functions but didn't include the
latter header file.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[PATCH] ARM: 2750/1: add i2c platform device for enp2611 on-board i2c bus
Lennert Buytenhek [Sat, 25 Jun 2005 15:58:21 +0000 (16:58 +0100)]
[PATCH] ARM: 2750/1: add i2c platform device for enp2611 on-board i2c bus

Patch from Lennert Buytenhek

On the enp2611, GPIO 7 and 6 are connected to an on-board i2c bus that
attaches to the SODIMM module slot (for SPD) and an LM84 temperature
sensor.  Add a platform device for this i2c bus.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[PATCH] ARM: 2749/1: update ixp2000 defconfigs to 2.6.12-git6
Lennert Buytenhek [Sat, 25 Jun 2005 15:58:21 +0000 (16:58 +0100)]
[PATCH] ARM: 2749/1: update ixp2000 defconfigs to 2.6.12-git6

Patch from Lennert Buytenhek

Update the defconfigs for the ixp2000 platforms to 2.6.12-git6.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[TG3]: Update driver version and reldate.
David S. Miller [Sat, 25 Jun 2005 03:21:01 +0000 (20:21 -0700)]
[TG3]: Update driver version and reldate.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[TG3]: Refinements to new locking strategy.
Michael Chan [Sat, 25 Jun 2005 03:20:04 +0000 (20:20 -0700)]
[TG3]: Refinements to new locking strategy.

1. Move tp->irq_sync = 0 to before the interrupt mailbox IO in
   tg3_enable_ints() so that the interrupt handler will always see
   irq_sync == 0 when interrupts are enabled.

2. Remove the tg3_enable_ints() call in tg3_reset_hw(). Interrupts are
   always enabled explicitly or through tg3_netif_start(). This is to
   prevent interrupts being enabled while poll is disabled.

3. Update trans_start with jiffies in tg3_netif_stop() to prevent false
   NETDEV WATCHDOG.

4. Pass in the proper irq_sync parameter to tg3_full_lock() depending on
   netif_running() in some of the ethtool set calls.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[TG3]: Eliminate all hw IRQ handler spinlocks.
David S. Miller [Sat, 25 Jun 2005 03:18:35 +0000 (20:18 -0700)]
[TG3]: Eliminate all hw IRQ handler spinlocks.

Move all driver spinlocks to be taken at sw IRQ
context only.

This fixes the skb_copy() we were doing with hw
IRQs disabled (which is illegal and triggers a
BUG() with HIGHMEM enabled).  It also simplifies
the locking all over the driver tremendously.

We accomplish this feat by creating a special
sequence to synchronize with the hw IRQ handler
using a binary state and synchronize_irq().
This idea is from Herbert Xu.

Thanks to Michael Chan for helping to track down
all of the race conditions in initial versions
of this code.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[TG3]: Fix missing memory barriers and SD_STATUS_UPDATED bit clearing.
David S. Miller [Sat, 25 Jun 2005 03:17:10 +0000 (20:17 -0700)]
[TG3]: Fix missing memory barriers and SD_STATUS_UPDATED bit clearing.

There must be a rmb() between reading the status block tag
and calling tg3_has_work().  This was missing in tg3_mis()
and tg3_interrupt_tagged().  tg3_poll() got it right.

Also, SD_STATUS_UPDATED must be cleared in the status block
right before we call tg3_has_work().  Only tg3_poll() got this
wrong.

Based upon patches and commentary from Grant Grundler and
Michael Chan.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[SPARC64]: Report any user access faults in termios accessors.
David S. Miller [Sat, 25 Jun 2005 03:11:03 +0000 (20:11 -0700)]
[SPARC64]: Report any user access faults in termios accessors.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[SPARC]: sunzilog warning fixes
William Lee Irwin III [Sat, 25 Jun 2005 03:06:18 +0000 (20:06 -0700)]
[SPARC]: sunzilog warning fixes

From: William Lee Irwin III <wli@holomorphy.com>

This small patch silences some iomem-related warnings in sunzilog.c by
declaring mapped_addr as void __iomem * and inserting a cast in one case.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[SUNRPC]: Fix {s,}size_t printf format strings in xprt.c
David S. Miller [Sat, 25 Jun 2005 02:57:07 +0000 (19:57 -0700)]
[SUNRPC]: Fix {s,}size_t printf format strings in xprt.c

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[TCP]: Do not present confusing congestion control options by default.
David S. Miller [Sat, 25 Jun 2005 01:07:51 +0000 (18:07 -0700)]
[TCP]: Do not present confusing congestion control options by default.

Create TCP_CONG_ADVANCED option, akin to IP_ADVANCED_ROUTER, which
when disabled will bypass all of the congestion control Kconfig
options and leave the user with a safe default.

That safe default is currently BIC-TCP with new Reno as a fallback.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[IPV4]: Move FIB lookup algorithm choice under IP_ADVANCED_ROUTING
David S. Miller [Sat, 25 Jun 2005 00:50:53 +0000 (17:50 -0700)]
[IPV4]: Move FIB lookup algorithm choice under IP_ADVANCED_ROUTING

Most users need not be concerned with a complex choice of what
FIB lookup algorithm to use.  So give them the safe default of
IP_FIB_HASH if IP_ADVANCED_ROUTING is disabled.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[PKT_SCHED]: Make TEXTSEARCH* options only selected.
David S. Miller [Sat, 25 Jun 2005 00:39:03 +0000 (17:39 -0700)]
[PKT_SCHED]: Make TEXTSEARCH* options only selected.

Do not present these confusing new options to the user
unless he picked some facility that makes use of it,
such as NET_EMATCH_TEXT.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years agoMerge master.kernel.org:/home/rmk/linux-2.6-serial
Linus Torvalds [Fri, 24 Jun 2005 22:33:30 +0000 (15:33 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-serial

19 years agoMerge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Fri, 24 Jun 2005 22:32:01 +0000 (15:32 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm

19 years ago[PATCH] ARM: 2748/1: ixp2000 implementation of the iomap api
Lennert Buytenhek [Fri, 24 Jun 2005 22:11:31 +0000 (23:11 +0100)]
[PATCH] ARM: 2748/1: ixp2000 implementation of the iomap api

Patch from Lennert Buytenhek

A number of ixp2000 models have a bug where the byte lanes for PCI I/O
transactions are swapped.  We already work around this in our versions
of {in,out}{b,w,l}, but we also need to perform these workarounds in a
custom implementation of the new iomap API, provided in this patch.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Deepak Saxena
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[PATCH] ARM: 2747/1: allow platforms to provide their own iomap implementation
Lennert Buytenhek [Fri, 24 Jun 2005 22:11:31 +0000 (23:11 +0100)]
[PATCH] ARM: 2747/1: allow platforms to provide their own iomap implementation

Patch from Lennert Buytenhek

This patch conditionalises the io{read,write}{8,16,32} defines and the
prototypes for ioport_map/ioport_unmap in asm-arm/io.h on ioread8 not
already having been defined.  This is done so that platforms can provide
their own implementation of the iomap API, ixp2000 for example needs
this.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Deepak Saxena
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[PATCH] fs/qnx4/*: fix sparse warnings
Alexey Dobriyan [Fri, 24 Jun 2005 20:52:52 +0000 (20:52 +0000)]
[PATCH] fs/qnx4/*: fix sparse warnings

This patch fixes sparse warnings in the qnx4fs (and might even make
qnx4fs work on big-endian boxes)

Signed-off-by: Alexey Dobriyan <adobriyan@mail.ru>
Signed-off-by: Domen Puncer <domen@coderock.org>
Signed-off-by: Anders Larsen <al@alarsen.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ARM: 2698/1: Enable kernel r/w access to user pages on ARMv6
Catalin Marinas [Fri, 24 Jun 2005 20:27:39 +0000 (21:27 +0100)]
[PATCH] ARM: 2698/1: Enable kernel r/w access to user pages on ARMv6

Patch from Catalin Marinas

cpu_v6_set_pte() sets the kernel access rights to r/o for user
pages (L_PTE_USER) when neither L_PTE_WRITE nor L_PTE_DIRTY are
set. This causes a kernel data abort when writing the TLS value
in the 0xffff0000 page. This patch enables the kernel r/w access.

Signed-off-by: Catalin Marinas
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[PATCH] ARM: 2745/1: Fix IXP4xx debug macros
Deepak Saxena [Fri, 24 Jun 2005 19:54:35 +0000 (20:54 +0100)]
[PATCH] ARM: 2745/1: Fix IXP4xx debug macros

Patch from Deepak Saxena

Current IXP4xx debug macros do not work in the small window between
the MMU being enabled and the call to map_io() b/c the standard
peripheral mapping is not properly setup for use with the low-level
debug code. This patch creates a new section-aligned mapping for the
UART specifically for use with the debug macros.

Signed-off-by: Deepak Saxena
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[PATCH] ARM: 2744/1: ixp2000 gpio irq support
Lennert Buytenhek [Fri, 24 Jun 2005 19:54:35 +0000 (20:54 +0100)]
[PATCH] ARM: 2744/1: ixp2000 gpio irq support

Patch from Lennert Buytenhek

This patch cleans up the ixp2000 gpio irq code and implements the
set_irq_type method for gpio irqs so that users can select for which
events (falling edge/rising edge/level low/level high) on the gpio
pin they want the corresponding gpio irq to be triggered.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Deepak Saxena
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[PATCH] ARM: 2740/1: ixp2000 align{b,w} need to parenthesize their arguments
Lennert Buytenhek [Fri, 24 Jun 2005 19:54:34 +0000 (20:54 +0100)]
[PATCH] ARM: 2740/1: ixp2000 align{b,w} need to parenthesize their arguments

Patch from Lennert Buytenhek

Two macros that are used on the ixp2000 to fixup byte lane enables
for I/O space accesses, align{b,w}, use their arguments without
parenthesizing them.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[PATCH] Serial: Eliminate magic numbers
Russell King [Fri, 24 Jun 2005 18:48:22 +0000 (19:48 +0100)]
[PATCH] Serial: Eliminate magic numbers

Use the existing macros instead.

Signed-off-by: Yoichi Yuasa <yuasa@hh.iij4u.or.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years agoAdd "memory" clobbers to the x86 inline asm of strncmp and friends
Linus Torvalds [Fri, 24 Jun 2005 17:39:17 +0000 (10:39 -0700)]
Add "memory" clobbers to the x86 inline asm of strncmp and friends

They don't actually clobber memory, but gcc doesn't even know they
_read_ memory, so can apparently re-order memory accesses around them.

Which obviously does the wrong thing if the memory access happens to
change the memory that the compare function is accessing..

Verified to fix a strange boot problem by Jens Axboe.

19 years agoMerge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Fri, 24 Jun 2005 07:31:46 +0000 (00:31 -0700)]
Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6

19 years ago[PATCH] make various thing static
Adrian Bunk [Fri, 24 Jun 2005 05:05:33 +0000 (22:05 -0700)]
[PATCH] make various thing static

Another rollup of patches which give various symbols static scope

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] xip: description
Carsten Otte [Fri, 24 Jun 2005 05:05:31 +0000 (22:05 -0700)]
[PATCH] xip: description

Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] xip: madvice/fadvice: execute in place
Carsten Otte [Fri, 24 Jun 2005 05:05:29 +0000 (22:05 -0700)]
[PATCH] xip: madvice/fadvice: execute in place

Make sys_madvice/fadvice return sane with xip.

Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] xip: reduce code duplication
Carsten Otte [Fri, 24 Jun 2005 05:05:28 +0000 (22:05 -0700)]
[PATCH] xip: reduce code duplication

This patch reworks filemap_xip.c with the goal to reduce code duplication
from mm/filemap.c.  It applies agains 2.6.12-rc6-mm1.  Instead of
implementing the aio functions, this one implements the synchronous
read/write functions only.  For readv and writev, the generic fallback is
used.  For aio, we rely on the application doing the fallback.  Since our
"synchronous" function does memcpy immediately anyway, there is no
performance difference between using the fallbacks or implementing each
operation.

Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] xip: ext2: execute in place
Carsten Otte [Fri, 24 Jun 2005 05:05:26 +0000 (22:05 -0700)]
[PATCH] xip: ext2: execute in place

These are the ext2 related parts.  Ext2 now uses the xip_* file operations
along with the get_xip_page aop when mounted with -o xip.

Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] xip: fs/mm: execute in place
Carsten Otte [Fri, 24 Jun 2005 05:05:25 +0000 (22:05 -0700)]
[PATCH] xip: fs/mm: execute in place

- generic_file* file operations do no longer have a xip/non-xip split
- filemap_xip.c implements a new set of fops that require get_xip_page
  aop to work proper. all new fops are exported GPL-only (don't like to
  see whatever code use those except GPL modules)
- __xip_unmap now uses page_check_address, which is no longer static
  in rmap.c, and defined in linux/rmap.h
- mm/filemap.h is now much more clean, plainly having just Linus'
  inline funcs moved here from filemap.c
- fix includes in filemap_xip to make it build cleanly on i386

Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>