]> err.no Git - linux-2.6/log
linux-2.6
18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Sat, 14 Jan 2006 01:13:44 +0000 (17:13 -0800)]
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6

18 years ago[PATCH] powerpc: special-case ibm,suspend-me RTAS call
Dave C Boutcher [Sat, 14 Jan 2006 00:39:24 +0000 (18:39 -0600)]
[PATCH] powerpc: special-case ibm,suspend-me RTAS call

Handle the ibm,suspend-me RTAS call specially.  It needs
to be wrapped in a set of synchronization hypervisor calls
(H_Join).  When the H_Join calls are made on all CPUs, the
intent is that only one will return with H_Continue, meaning
that he is the "last man standing".  That CPU then issues the
ibm,suspend-me call.  What is interesting, of course, is that
the CPU running when the rtas syscall is made, may NOT be the
CPU that ultimately executes the ibm,suspend-me rtas call.

Signed-off-by: Dave Boutcher <sleddog@us.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agoppc: Remove duplicate export of get_wchan
Paul Mackerras [Sat, 14 Jan 2006 00:17:32 +0000 (11:17 +1100)]
ppc: Remove duplicate export of get_wchan

The arch/powerpc version of process.c exports get_wchan itself.  When
I moved ARCH=ppc over to using arch/powerpc/kernel/process.c the
get_wchan export in arch/ppc/kernel/ppc_ksyms.c became redundant, so
remove it.

Signed-off-by: Paul Mackerras <paulus@samba.org>
(cherry picked from 9871166ad692121d6b944159ef3f053570158ea8 commit)

18 years ago[PATCH] SPI: add spi_butterfly driver
David Brownell [Wed, 11 Jan 2006 19:23:49 +0000 (11:23 -0800)]
[PATCH] SPI: add spi_butterfly driver

This adds a bitbanging parport based adaptor cable for AVR Butterfly, giving
SPI links to its DataFlash chip and (eventually) firmware running in the card.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: remove fastcall crap
Andrew Morton [Wed, 11 Jan 2006 19:23:49 +0000 (11:23 -0800)]
[PATCH] spi: remove fastcall crap

gcc4 generates warnings when a non-FASTCALL function pointer is assigned to a
FASTCALL one.  Perhaps it has taste.

Cc: David Brownell <david-b@pacbell.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: misc fixes
David Brownell [Sun, 8 Jan 2006 21:34:29 +0000 (13:34 -0800)]
[PATCH] spi: misc fixes

This collects some small SPI patches that seem to be missing from the MM tree:

  - spi_butterfly kbuild hooks got dropped somehow; this restores them
  - quick fix for a (theoretical?) m25p80_write() oops noted by Andrew
  - quick fix for a potential config-specific oops for mtd_dataflash()
  - minor doc tweaks

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: use linked lists rather than an array
Vitaly Wool [Sun, 8 Jan 2006 21:34:28 +0000 (13:34 -0800)]
[PATCH] spi: use linked lists rather than an array

This makes the SPI core and its users access transfers in the SPI message
structure as linked list not as an array, as discussed on LKML.

From: David Brownell <dbrownell@users.sourceforge.net>

  Updates including doc, bugfixes to the list code, add
  spi_message_add_tail().  Plus, initialize things _before_ grabbing the
  locks in some cases (in case it grows more expensive).  This also merges
  some bitbang updates of mine that didn't yet make it into the mm tree.

Signed-off-by: Vitaly Wool <vwool@ru.mvista.com>
Signed-off-by: Dmitry Pervushin <dpervushin@gmail.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: M25 series SPI flash
Mike Lavender [Sun, 8 Jan 2006 21:34:27 +0000 (13:34 -0800)]
[PATCH] spi: M25 series SPI flash

This was originally a driver for the ST M25P80 SPI flash.  It's been
updated slightly to handle other M25P series chips.

For many of these chips, the specific type could be probed, but for now
this just requires static setup with flash_platform_data that lists the
chip type (size, format) and any default partitioning to use.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: Mike Lavender <mike@steroidmicros.com>
Cc: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: add spi_bitbang driver
David Brownell [Sun, 8 Jan 2006 21:34:26 +0000 (13:34 -0800)]
[PATCH] spi: add spi_bitbang driver

This adds a bitbanging spi master, hooking up to board/adapter-specific glue
code which knows how to set and read the signals (gpios etc).

This code kicks in after the glue code creates a platform_device with the
right platform_data.  That data includes I/O loops, which will usually
come from expanding an inline function (provided in the header).  One goal
is that the I/O loops should be easily optimized down to a few GPIO register
accesses, in common cases, for speed and minimized overhead.

This understands all the currently defined protocol tweaking options in the
SPI framework, and might eventually serve as as reference implementation.

  - different word sizes (1..32 bits)
  - differing clock rates
  - SPI modes differing by CPOL (affecting chip select and I/O loops)
  - SPI modes differing by CPHA (affecting I/O loops)
  - delays (usecs) after transfers
  - temporarily deselecting chips in mid-transfer

A lot of hardware could work with this framework, though common types of
controller can't reach peak performance without switching to a driver
structure that supports pipelining of transfers (e.g.  DMA queues) and maybe
controllers (e.g.  IRQ driven).

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: ads7836 uses spi_driver
David Brownell [Sun, 8 Jan 2006 21:34:25 +0000 (13:34 -0800)]
[PATCH] spi: ads7836 uses spi_driver

This updates the ads7864 driver to use the new "spi_driver" struct, and
includes some minor unrelated cleanup.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] SPI core tweaks, bugfix
David Brownell [Sun, 8 Jan 2006 21:34:25 +0000 (13:34 -0800)]
[PATCH] SPI core tweaks, bugfix

This includes various updates to the SPI core:

  - Fixes a driver model refcount bug in spi_unregister_master() paths.

  - The spi_master structures now have wrappers which help keep drivers
    from needing class-level get/put for device data or for refcounts.

  - Check for a few setup errors that would cause oopsing later.

  - Docs say more about memory management.  Highlights the use of DMA-safe
    i/o buffers, and zero-initializing spi_message and such metadata.

  - Provide a simple alloc/free for spi_message and its spi_transfer;
    this is only one of the possible memory management policies.

Nothing to break code that already works.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: add spi_driver to SPI framework
David Brownell [Sun, 8 Jan 2006 21:34:23 +0000 (13:34 -0800)]
[PATCH] spi: add spi_driver to SPI framework

This is a refresh of the "Simple SPI Framework" found in 2.6.15-rc3-mm1
which makes the following changes:

  * There's now a "struct spi_driver".  This increase the footprint
    of the core a bit, since it now includes code to do what the driver
    core was previously handling directly.  Documentation and comments
    were updated to match.

  * spi_alloc_master() now does class_device_initialize(), so it can
    at least be refcounted before spi_register_master().  To match,
    spi_register_master() switched over to class_device_add().

  * States explicitly that after transfer errors, spi_devices will be
    deselected.  We want fault recovery procedures to work the same
    for all controller drivers.

  * Minor tweaks:  controller_data no longer points to readonly data;
    prevent some potential cast-from-null bugs with container_of calls;
    clarifies some existing kerneldoc,

And a few small cleanups.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: mtd dataflash driver
David Brownell [Sun, 8 Jan 2006 21:34:22 +0000 (13:34 -0800)]
[PATCH] spi: mtd dataflash driver

This is a conversion of the AT91rm9200 DataFlash MTD driver to use the
lightweight SPI framework, and no longer be AT91-specific.  It compiles
down to less than 3KBytes on ARM.

The driver allows board-specific init code to provide platform_data with
the relevant MTD partitioning information, and hotplugs.

This version has been lightly tested.  Its parent at91_dataflash driver has
been pretty well banged on, although kernel.org JFFS2 dataflash support was
acting broken the last time I tried it.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: ads7846 driver
David Brownell [Sun, 8 Jan 2006 21:34:21 +0000 (13:34 -0800)]
[PATCH] spi: ads7846 driver

This is a driver for the ADS7846 touchscreen sensor, derived from
the corgi_ts and omap_ts drivers.  Key differences from those two:

  - Uses the new SPI framework (minimalist version)
  - <linux/spi/ads7846.h> abstracts board-specific touchscreen info
  - Sysfs attributes for the temperature and voltage sensors
  - Uses fewer ARM-specific IRQ primitives

The temperature and voltage sensors show up in sysfs like this:

  $ pwd
  /sys/devices/platform/omap-uwire/spi2.0
  $ ls
  bus@          input:event0@ power/        temp1         vbatt
  driver@       modalias      temp0         vaux
  $ cat modalias
  ads7846
  $ cat temp0
  991
  $ cat temp1
  1177
  $

So far only basic testing has been done.  There's a fair amount of hardware
that uses this sensor, and which also runs Linux, which should eventually
be able to use this driver.

One portability note may be of special interest.  It turns out that not all
SPI controllers are happy issuing requests that do things like "write 8 bit
command, read 12 bit response".  Most of them seem happy to handle various
word sizes, so the issue isn't "12 bit response" but rather "different rx
and tx write sizes", despite that being a common MicroWire convention.  So
this version of the driver no longer reads 12 bit native-endian words; it
reads 16-bit big-endian responses, then byteswaps them and shifts the
results to discard the noise.

Signed-off-by: David Brownell <david-b@pacbell.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: simple SPI framework
David Brownell [Sun, 8 Jan 2006 21:34:19 +0000 (13:34 -0800)]
[PATCH] spi: simple SPI framework

This is the core of a small SPI framework, implementing the model of a
queue of messages which complete asynchronously (with thin synchronous
wrappers on top).

  - It's still less than 2KB of ".text" (ARM).  If there's got to be a
    mid-layer for something so simple, that's the right size budget.  :)

  - The guts use board-specific SPI device tables to build the driver
    model tree.  (Hardware probing is rarely an option.)

  - This version of Kconfig includes no drivers.  At this writing there
    are two known master controller drivers (PXA/SSP, OMAP MicroWire)
    and three protocol drivers (CS8415a, ADS7846, DataFlash) with LKML
    mentions of other drivers in development.

  - No userspace API.  There are several implementations to compare.
    Implement them like any other driver, and bind them with sysfs.

The changes from last version posted to LKML (on 11-Nov-2005) are minor,
and include:

  - One bugfix (removes a FIXME), with the visible effect of making device
    names be "spiB.C" where B is the bus number and C is the chipselect.

  - The "caller provides DMA mappings" mechanism now has kerneldoc, for
    DMA drivers that want to be fancy.

  - Hey, the framework init can be subsys_init.  Even though board init
    logic fires earlier, at arch_init ... since the framework init is
    for driver support, and the board init support uses static init.

  - Various additional spec/doc clarifications based on discussions
    with other folk.  It adds a brief "thank you" at the end, for folk
    who've helped nudge this framework into existence.

As I've said before, I think that "protocol tweaking" is the main support
that this driver framework will need to evolve.

From: Mark Underwood <basicmark@yahoo.com>

  Update the SPI framework to remove a potential priority inversion case by
  reverting to kmalloc if the pre-allocated DMA-safe buffer isn't available.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[NETFILTER] x-tables: Missing linux/ipv6.h includes.
David S. Miller [Sat, 14 Jan 2006 00:19:44 +0000 (16:19 -0800)]
[NETFILTER] x-tables: Missing linux/ipv6.h includes.

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[PATCH] powerpc/8xx: Use 8MB D-TLB's for kernel static mapping faults
Marcelo Tosatti [Fri, 13 Jan 2006 16:16:12 +0000 (14:16 -0200)]
[PATCH] powerpc/8xx: Use 8MB D-TLB's for kernel static mapping faults

The following implements support for instantiation of 8MB D-TLB
entries for the kernel direct virtual mapping on 8xx, thus reducing TLB
space consumed for the kernel.

Test used: writing 40MB from /dev/zero to file in ext2fs over
RAMDISK.

$ time dd if=/dev/zero of=file bs=4k count=10000

VANILLA 8MB kernel data pages

real    0m11.485s real    0m11.267s
user    0m0.218s        user    0m0.250s
sys     0m8.939s sys     0m9.108s

real    0m11.518s real    0m10.978s
user    0m0.203s  user    0m0.222s
sys     0m9.585s sys     0m9.138s

real    0m11.554s real    0m10.967s
user    0m0.228s     user    0m0.222s
sys     0m9.497s sys     0m9.127s

real    0m11.633s real 0m11.286s
user    0m0.214s user    0m0.196s
sys     0m9.529s sys     0m9.134s

and averages for both:

real 11.54750 real 11.12450

Which is a 3.6% improvement in execution time. More improvement is
expected for loads with larger kernel data footprint (real workloads).

Signed-off-by: Marcelo Tosatti <marcelo.tosatti@cyclades.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Add MPC834x SYS board to arch/powerpc
Kumar Gala [Fri, 13 Jan 2006 17:19:58 +0000 (11:19 -0600)]
[PATCH] powerpc: Add MPC834x SYS board to arch/powerpc

Add the first MPC83xx board that uses a flat device tree to arch/powerpc.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Add FSL SOC library and setup code
Kumar Gala [Fri, 13 Jan 2006 17:19:13 +0000 (11:19 -0600)]
[PATCH] powerpc: Add FSL SOC library and setup code

Parse the flat device tree for devices on Freescale SOC's that we know
about (gianfar, gianfar_mdio, i2c, mpc83xx_wdt).  We need to setup
platform devices and platform data for these devices to match arch/ppc
usage.

Also add a helper function (get_immrbase) that reports the base
address of the MMIO registers on the SOC.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Allow for ppc_md restart, power_off, and halt to be NULL
Kumar Gala [Fri, 13 Jan 2006 16:15:17 +0000 (10:15 -0600)]
[PATCH] powerpc: Allow for ppc_md restart, power_off, and halt to be NULL

On a number of embedded reference boards there isn't always a
way to reset, power_off, or halt the board.  Rather than having
each board implement a spin loop just let the generic code do
it.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: oprofile cpu type names clash with other code
Andy Whitcroft [Fri, 13 Jan 2006 12:35:49 +0000 (12:35 +0000)]
[PATCH] powerpc: oprofile cpu type names clash with other code

In 2.6.15-git6 a change was commited in the oprofile support in
the powerpc architecture.  It introduced the powerpc_oprofile_type
which contains the define G4.  This causes a name clash with the
existing wacom usb tablet driver.

      CC [M]  drivers/usb/input/wacom.o
    drivers/usb/input/wacom.c:98: error: conflicting types for `G4'
    include/asm/cputable.h:37: error: previous declaration of `G4'
      CC [M]  drivers/usb/mon/mon_text.o
    make[3]: *** [drivers/usb/input/wacom.o] Error 1
    make[2]: *** [drivers/usb/input] Error 2

The elements of an enum declared in global scope are effectivly
global identifiers themselves.  As such we need to ensure the names
are unique.  This patch updates the later oprofile support to use
unique names.

Signed-off-by: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agoMerge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband
Linus Torvalds [Fri, 13 Jan 2006 23:29:07 +0000 (15:29 -0800)]
Merge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband

18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Fri, 13 Jan 2006 23:28:10 +0000 (15:28 -0800)]
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6

18 years agopowerpc: Provide a suitable AT_PLATFORM value
Paul Mackerras [Fri, 13 Jan 2006 23:11:39 +0000 (10:11 +1100)]
powerpc: Provide a suitable AT_PLATFORM value

The glibc folks want to use AT_PLATFORM to select between possible
alternative versions of shared libraries.  This commit makes the kernel
supply an AT_PLATFORM string that indicates what class of processor
we are running on.  Processors with the same set of user-level
instructions and roughly the same instruction scheduling characteristics
are given the same AT_PLATFORM value; for example, 821, 823 and 860
are all reported as "ppc823", and 7447, 7447A, 7448, 7450, 7451, 7455
are all called "ppc7450".

The intention is that the AT_PLATFORM values match the values that
gcc accepts for the -mcpu= option.  For values which are numeric
(e.g. -mcpu=750), "ppc" has been prepended.

This also adds a PPC_FEATURE_BOOKE bit to the AT_HWCAP value and sets
it for the 440 family and the Freescale 85xx family.

Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[IA64] build broken for ia64 simserial.c
Andreas Schwab [Fri, 13 Jan 2006 22:46:38 +0000 (23:46 +0100)]
[IA64] build broken for ia64 simserial.c

TTY layer buffering revamp broke ia64 in commit
 33f0f88f1c51ae5c2d593d26960c760ea154c2e2

  CC      arch/ia64/hp/sim/simserial.o
arch/ia64/hp/sim/simserial.c: In function `receive_chars':
arch/ia64/hp/sim/simserial.c:170: error: structure has no member named `flip'
 ... and so on ...
make[1]: *** [arch/ia64/hp/sim/simserial.o] Error 1

Patch from Andreas Schwab.

Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years agoIB: convert from semaphores to mutexes
Ingo Molnar [Fri, 13 Jan 2006 22:51:39 +0000 (14:51 -0800)]
IB: convert from semaphores to mutexes

semaphore to mutex conversion by Ingo and Arjan's script.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
[ Sanity-checked on real IB hardware ]
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years ago[IA64] prevent accidental modification of args in jprobe handler
Zhang Yanmin [Fri, 13 Jan 2006 22:45:21 +0000 (14:45 -0800)]
[IA64] prevent accidental modification of args in jprobe handler

When jprobe is hit, the function parameters of the original function
should be saved before jprobe handler is executed, and restored it after
jprobe handler is executed, because jprobe handler might change the
register values due to tail call optimization by the gcc.

Signed-off-by: Zhang Yanmin <yanmin.zhang@intel.com>
Signed-off-by: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[PKT_SCHED]: Change default clock source to gettimeofday
Patrick McHardy [Fri, 13 Jan 2006 22:36:55 +0000 (14:36 -0800)]
[PKT_SCHED]: Change default clock source to gettimeofday

The default of using jiffies is very bad and results in
underutilization except with very low bandwidth.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[XFRM]: IPsec tunnel wildcard address support
Patrick McHardy [Fri, 13 Jan 2006 22:34:36 +0000 (14:34 -0800)]
[XFRM]: IPsec tunnel wildcard address support

When the source address of a tunnel is given as 0.0.0.0 do a routing lookup
to get the real source address for the destination and fill that into the
acquire message. This allows to specify policies like this:

spdadd 172.16.128.13/32 172.16.0.0/20 any -P out ipsec
        esp/tunnel/0.0.0.0-x.x.x.x/require;
spdadd 172.16.0.0/20 172.16.128.13/32 any -P in ipsec
        esp/tunnel/x.x.x.x-0.0.0.0/require;

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[NET]: Clean up comments for sk_chk_filter()
Kris Katterjohn [Fri, 13 Jan 2006 22:33:06 +0000 (14:33 -0800)]
[NET]: Clean up comments for sk_chk_filter()

This removes redundant comments, and moves one comment to a better
location.

Signed-off-by: Kris Katterjohn <kjak@users.sourceforge.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[NET]: Use NIP6_FMT in kernel.h
Joe Perches [Fri, 13 Jan 2006 22:29:07 +0000 (14:29 -0800)]
[NET]: Use NIP6_FMT in kernel.h

There are errors and inconsistency in the display of NIP6 strings.
ie: net/ipv6/ip6_flowlabel.c

There are errors and inconsistency in the display of NIPQUAD strings too.
ie: net/netfilter/nf_conntrack_ftp.c

This patch:
adds NIP6_FMT to kernel.h
changes all code to use NIP6_FMT
fixes net/ipv6/ip6_flowlabel.c
adds NIPQUAD_FMT to kernel.h
fixes net/netfilter/nf_conntrack_ftp.c
changes a few uses of "%u.%u.%u.%u" to NIPQUAD_FMT for symmetry to NIP6_FMT

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[IA64] Add hotplug cpu to salinfo.c, replace semaphore with mutex
Keith Owens [Thu, 5 Jan 2006 23:36:06 +0000 (10:36 +1100)]
[IA64] Add hotplug cpu to salinfo.c, replace semaphore with mutex

Add hotplug cpu support to salinfo.c.

The cpu_event field is a cpumask so use the cpu_* macros consistently,
replacing the existing mixture of cpu_* and *_bit macros.

Instead of counting the number of outstanding events in a semaphore and
trying to track that count over user space context, interrupt context,
non-maskable interrupt context and cpu hotplug, replace the semaphore
with a test for "any bits set" combined with a mutex.

Modify the locking to make the test for "work to do" an atomic
operation.

Signed-off-by: Keith Owens <kaos@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[IA64] Handle debug traps in fsys mode
Jason Uhlenkott [Fri, 30 Dec 2005 10:27:01 +0000 (02:27 -0800)]
[IA64] Handle debug traps in fsys mode

We need to handle debug traps in fsys mode non-fatally.  They can
happen now that we have fsyscalls which contain probe instructions.

Signed-off-by: Jason Uhlenkott <jasonuhl@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years agoMerge ../linux-2.6
Paul Mackerras [Fri, 13 Jan 2006 22:15:28 +0000 (09:15 +1100)]
Merge ../linux-2.6

18 years ago[IA64-SGI] Fix sn_flush_device_kernel & spinlock initialization
Prarit Bhargava [Fri, 23 Dec 2005 18:33:25 +0000 (13:33 -0500)]
[IA64-SGI] Fix sn_flush_device_kernel & spinlock initialization

This patch separates the sn_flush_device_list struct into kernel and
common (both kernel and PROM accessible) structures.  As it was, if the
size of a spinlock_t changed (due to additional CONFIG options, etc.) the
sal call which populated the sn_flush_device_list structs would erroneously
write data (and cause memory corruption and/or a panic).

This patch does the following:

1.  Removes sn_flush_device_list and adds sn_flush_device_common and
sn_flush_device_kernel.

2.  Adds a new SAL call to populate a sn_flush_device_common struct per
device, not per widget as previously done.

3.  Correctly initializes each device's sn_flush_device_kernel spinlock_t
struct (before it was only doing each widget's first device).

Signed-off-by: Prarit Bhargava <prarit@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[IA64] Hole in IA64 TLB flushing from system threads
Jack Steiner [Thu, 22 Dec 2005 19:45:41 +0000 (13:45 -0600)]
[IA64] Hole in IA64 TLB flushing from system threads

I originally thought this was an bug only in the SN code, but I think I
also see a hole in the generic IA64 tlb code. (Separate patch was sent
for the SN problem).

It looks like there is a bug in the TLB flushing code. During context switch,
kernel threads (kswapd, for example) inherit the mm of the task that was
previously running on the cpu. Normally, this is ok because the previous context
is still loaded into the RR registers. However, if the owner of the mm
migrates to another cpu, changes it's context number, and references a
page before kswapd issues a tlb_purge for that same page, the purge will be
done with a stale context number (& RR registers).

Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[IA64-SGI] Altix BTE error handling fixes
Russ Anderson [Fri, 16 Dec 2005 23:19:01 +0000 (17:19 -0600)]
[IA64-SGI] Altix BTE error handling fixes

Altix (shub2) pushes the BTE clean-up into SAL.
This patch correctly interfaces with the now implemented SAL call.
It also fixes a bug when delaying clean-up to allow busy BTEs to
complete (or error out).

Signed-off-by: Russ Anderson <rja@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[IA64] Fix conversion of pal_min_state physical address
Francois Wellenrieter [Fri, 13 Jan 2006 22:01:01 +0000 (14:01 -0800)]
[IA64] Fix conversion of pal_min_state physical address

On return from INIT handler we must convert the address of the
minstate area from a kernel virtual uncached address (0xC...)
to physical uncached (0x8...).  A typo (or thinko?) in the code
converted to physical cached.

Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[PATCH] genetlink: don't touch module ref count
Per Liden [Fri, 13 Jan 2006 21:06:40 +0000 (13:06 -0800)]
[PATCH] genetlink: don't touch module ref count

Increasing the module ref count at registration will block the module from
ever being unloaded. In fact, genetlink should not care about the owner at
all. This patch removes the owner field from the struct registered with
genetlink.

Signed-off-by: Per Liden <per.liden@ericsson.com>
Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[PATCH] device_shutdown can loop if the driver frees itself
Michael Richardson [Mon, 9 Jan 2006 09:04:51 +0000 (01:04 -0800)]
[PATCH] device_shutdown can loop if the driver frees itself

This patch changes device_shutdown() to use the newly introduced safe
reverse list traversal.  We experienced loops on system reboot if we had
removed and re-inserted our device from the device list.

We noticed this problem on PPC405. Our PCI IDE device comes and goes a lot.

Our hypothesis was that there was a loop caused by the driver->shutdown
freeing memory.  It is possible that we do something wrong as well, but
being unable to reboot is kind of nasty.

Signed-off-by: Michael Richardson <mcr@marajade.sandelman.ca>
Cc: Patrick Mochel <mochel@digitalimplant.org>
Cc: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] platform-device-del typo fix
Jean Delvare [Tue, 27 Dec 2005 18:45:58 +0000 (19:45 +0100)]
[PATCH] platform-device-del typo fix

Please fold this typo fix into platform-device-del.patch, as was
discussed earlier on LKML:
  http://lkml.org/lkml/2005/12/10/76

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add {css,ccw}_bus_type probe, remove, shutdown methods.
Cornelia Huck [Wed, 11 Jan 2006 09:56:22 +0000 (10:56 +0100)]
[PATCH] Add {css,ccw}_bus_type probe, remove, shutdown methods.

The following patch converts css_bus_type and ccw_bus_type to use
the new bus_type methods.

Signed-off-by: Cornelia Huck <huckc@de.ibm.com>
CC: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add bttv sub bus_type probe and remove methods
Russell King [Fri, 6 Jan 2006 11:42:03 +0000 (11:42 +0000)]
[PATCH] Add bttv sub bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Remove usb gadget generic driver methods
Russell King [Fri, 6 Jan 2006 11:41:32 +0000 (11:41 +0000)]
[PATCH] Remove usb gadget generic driver methods

USB gadget drivers make no use of these, remove the pointless
comments.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add ide_bus_type probe and remove methods
Russell King [Fri, 6 Jan 2006 11:41:00 +0000 (11:41 +0000)]
[PATCH] Add ide_bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add Pseudo LLD bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:44:46 +0000 (14:44 +0000)]
[PATCH] Add Pseudo LLD bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add rio_bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:44:14 +0000 (14:44 +0000)]
[PATCH] Add rio_bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add zorro_bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:43:43 +0000 (14:43 +0000)]
[PATCH] Add zorro_bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add usb_serial_bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:43:11 +0000 (14:43 +0000)]
[PATCH] Add usb_serial_bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add superhyway_bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:42:40 +0000 (14:42 +0000)]
[PATCH] Add superhyway_bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add ccwgroup_bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:42:09 +0000 (14:42 +0000)]
[PATCH] Add ccwgroup_bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add pnp_bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:41:37 +0000 (14:41 +0000)]
[PATCH] Add pnp_bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add pcmcia_bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:40:58 +0000 (14:40 +0000)]
[PATCH] Add pcmcia_bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add mmc_bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:40:27 +0000 (14:40 +0000)]
[PATCH] Add mmc_bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add MCP bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:39:56 +0000 (14:39 +0000)]
[PATCH] Add MCP bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add macio_bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:39:24 +0000 (14:39 +0000)]
[PATCH] Add macio_bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add serio bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:38:53 +0000 (14:38 +0000)]
[PATCH] Add serio bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add gameport bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:38:22 +0000 (14:38 +0000)]
[PATCH] Add gameport bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add i2c_bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:37:50 +0000 (14:37 +0000)]
[PATCH] Add i2c_bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add dio_bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:37:18 +0000 (14:37 +0000)]
[PATCH] Add dio_bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add vio_bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:36:47 +0000 (14:36 +0000)]
[PATCH] Add vio_bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add of_platform_bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:36:16 +0000 (14:36 +0000)]
[PATCH] Add of_platform_bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add sh_bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:35:42 +0000 (14:35 +0000)]
[PATCH] Add sh_bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add ocp_bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:35:09 +0000 (14:35 +0000)]
[PATCH] Add ocp_bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add parisc_bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:34:38 +0000 (14:34 +0000)]
[PATCH] Add parisc_bus_type probe and remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Matthew Wilcox <matthew@wil.cx>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add tiocx bus_type probe/remove methods
Russell King [Thu, 5 Jan 2006 14:34:06 +0000 (14:34 +0000)]
[PATCH] Add tiocx bus_type probe/remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add logic module bus_type probe/remove methods
Russell King [Thu, 5 Jan 2006 14:33:35 +0000 (14:33 +0000)]
[PATCH] Add logic module bus_type probe/remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add locomo bus_type probe/remove methods
Russell King [Thu, 5 Jan 2006 14:33:04 +0000 (14:33 +0000)]
[PATCH] Add locomo bus_type probe/remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add SA1111 bus_type probe/remove methods
Russell King [Thu, 5 Jan 2006 14:32:32 +0000 (14:32 +0000)]
[PATCH] Add SA1111 bus_type probe/remove methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add ecard_bus_type probe/remove/shutdown methods
Russell King [Thu, 5 Jan 2006 14:30:57 +0000 (14:30 +0000)]
[PATCH] Add ecard_bus_type probe/remove/shutdown methods

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add pci_bus_type probe and remove methods
Russell King [Thu, 5 Jan 2006 14:30:22 +0000 (14:30 +0000)]
[PATCH] Add pci_bus_type probe and remove methods

Move the PCI bus device probe/remove methods to the bus_type
structure.  We leave the shutdown method alone since there
are compatibility issues with that.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] Add bus_type probe, remove, shutdown methods.
Russell King [Thu, 5 Jan 2006 14:29:51 +0000 (14:29 +0000)]
[PATCH] Add bus_type probe, remove, shutdown methods.

Add bus_type probe, remove and shutdown methods to replace the
corresponding methods in struct device_driver.  This matches
the way we handle the suspend/resume methods.

Since the bus methods override the device_driver methods, warn
if a device driver is registered whose methods will not be
called.

The long-term idea is to remove the device_driver methods entirely.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] INPUT: add MODALIAS to the event environment
Kay Sievers [Thu, 5 Jan 2006 12:19:55 +0000 (13:19 +0100)]
[PATCH] INPUT: add MODALIAS to the event environment

input: add MODALIAS to the event environment

Signed-off-by: Kay Sievers <kay.sievers@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[IA64-SGI] move xpc.h to include/asm-ia64/sn (cleanup)
Dean Nelson [Tue, 10 Jan 2006 17:12:32 +0000 (11:12 -0600)]
[IA64-SGI] move xpc.h to include/asm-ia64/sn (cleanup)

Cleanup a few items after moving xpc.h from arch/ia64/sn/kernel to
include/asm-ia64/sn.

Signed-off-by: Dean Nelson <dcn@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[IA64-SGI] move xpc.h to include/asm-ia64/sn
Dean Nelson [Tue, 10 Jan 2006 17:09:48 +0000 (11:09 -0600)]
[IA64-SGI] move xpc.h to include/asm-ia64/sn

Move xpc.h from arch/ia64/sn/kernel to include/asm-ia64/sn without change.

Signed-off-by: Dean Nelson <dcn@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[IA64-SGI] move xpc_system_reboot()
Dean Nelson [Tue, 10 Jan 2006 17:08:55 +0000 (11:08 -0600)]
[IA64-SGI] move xpc_system_reboot()

Move xpc_system_reboot() to be closer to the file it calls for readability
reasons (which are indeed subjective).

Signed-off-by: Dean Nelson <dcn@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[IA64-SGI] ignoring loss of heartbeat while XPC is in kdebug
Dean Nelson [Tue, 10 Jan 2006 17:08:00 +0000 (11:08 -0600)]
[IA64-SGI] ignoring loss of heartbeat while XPC is in kdebug

Allow for the loss of heartbeat while in kdebug to be ignored by remote
partitions.

Signed-off-by: Dean Nelson <dcn@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[IA64-SGI] XPC and unregistering from notifier lists
Dean Nelson [Tue, 10 Jan 2006 17:07:19 +0000 (11:07 -0600)]
[IA64-SGI] XPC and unregistering from notifier lists

Only unregister from notifier lists if XPC is unloading.

Signed-off-by: Dean Nelson <dcn@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[IA64-SGI] cleanup XPC disengage related messages
Dean Nelson [Fri, 6 Jan 2006 15:48:21 +0000 (09:48 -0600)]
[IA64-SGI] cleanup XPC disengage related messages

Cleanup the XPC disengage related messages that are printed to the log.

Signed-off-by: Dean Nelson <dcn@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[IA64-SGI] ensure XPC disengage request is processed
Dean Nelson [Thu, 22 Dec 2005 20:32:56 +0000 (14:32 -0600)]
[IA64-SGI] ensure XPC disengage request is processed

This patch fixes a problem in XPC disengage processing whereby it was not
seeing the request to disengage from a remote partition, so the disengage
wasn't happening. The disengagement is suppose to transpire during the time
a XPC channel is disconnecting, and should be completed before the channel
is declared to be disconnected.

Signed-off-by: Dean Nelson <dcn@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[IA64] Add stub entry to fsys.S for sys_migrate_pages
Tony Luck [Fri, 13 Jan 2006 18:03:58 +0000 (10:03 -0800)]
[IA64] Add stub entry to fsys.S for sys_migrate_pages

When this new syscall was added to ia64 in commit

  39743889aaf76725152f16aa90ca3c45f6d52da3

fsys.S was forgotten.  Add a ".data8 0" there to keep
it in step.  [Reported by Stephane Eranian]

Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[PATCH] Increase AT_VECTOR_SIZE
Paul Mackerras [Fri, 13 Jan 2006 03:23:25 +0000 (14:23 +1100)]
[PATCH] Increase AT_VECTOR_SIZE

On PowerPC, we want to be able to provide an AT_PLATFORM aux table
entry to userspace, so that glibc can choose optimized libraries for
the processor we're running on.  Unfortunately that would be the 21st
aux table entry on powerpc, meaning that the aux table including the
terminating null entry would overflow the mm->saved_auxv[] array,
leading to userland programs segfaulting.

This increases the size of the mm->saved_auxv array to be large enough
to accommodate an AT_PLATFORM entry on powerpc.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] Fix oops in ufs_fill_super at mount time
Evgeniy [Fri, 13 Jan 2006 15:12:15 +0000 (18:12 +0300)]
[PATCH] Fix oops in ufs_fill_super at mount time

There's a lack of parenthesis in fs/ufs/utils.h, so instead of the 512th
byte of buffer, the usb2 pointer will point to the nth structure of type
ufs_super_block_second.

This can cause a mount-time oops if you're unlucky (especially with
DEBUG_PAGEALLOC, which is how Alexey Dobriyan saw this problem)

Signed-off-by: Evgeniy Dushistov <dushistov@mail.ru>
Acked-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] powerpc: reformat atomic_add_unless
Anton Blanchard [Fri, 13 Jan 2006 05:51:52 +0000 (16:51 +1100)]
[PATCH] powerpc: reformat atomic_add_unless

It makes my eyes hurt.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: use lwsync in atomics, bitops, lock functions
Anton Blanchard [Fri, 13 Jan 2006 04:37:17 +0000 (15:37 +1100)]
[PATCH] powerpc: use lwsync in atomics, bitops, lock functions

eieio is only a store - store ordering. When used to order an unlock
operation loads may leak out of the critical region. This is potentially
buggy, one example is if a user wants to atomically read a couple of
values.

We can solve this with an lwsync which orders everything except store - load.

I removed the (now unused) EIEIO_ON_SMP macros and the c versions
isync_on_smp and eieio_on_smp now we dont use them. I also removed some
old comments that were used to identify inline spinlocks in assembly,
they dont make sense now our locks are out of line.

Another interesting thing was that read_unlock was using an eieio even
though the rest of the spinlock code had already been converted to
use lwsync.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Remove lppaca structure from the PACA
David Gibson [Thu, 12 Jan 2006 23:26:42 +0000 (10:26 +1100)]
[PATCH] powerpc: Remove lppaca structure from the PACA

At present the lppaca - the structure shared with the iSeries
hypervisor and phyp - is contained within the PACA, our own low-level
per-cpu structure.  This doesn't have to be so, the patch below
removes it, making a separate array of lppaca structures.

This saves approximately 500*NR_CPUS bytes of image size and kernel
memory, because we don't need aligning gap between the Linux and
hypervisor portions of every PACA.  On the other hand it means an
extra level of dereference in many accesses to the lppaca.

The patch also gets rid of several places where we assign the paca
address to a local variable for no particular reason.

Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Cleanup LOADADDR etc. asm macros
David Gibson [Fri, 13 Jan 2006 03:56:25 +0000 (14:56 +1100)]
[PATCH] powerpc: Cleanup LOADADDR etc. asm macros

This patch consolidates the variety of macros used for loading 32 or
64-bit constants in assembler (LOADADDR, LOADBASE, SET_REG_TO_*).  The
idea is to make the set of macros consistent across 32 and 64 bit and
to make it more obvious which is the appropriate one to use in a given
situation.  The new macros and their semantics are described in the
comments in ppc_asm.h.

In the process, we change several places that were unnecessarily using
immediate loads on ppc64 to use the GOT/TOC.  Likewise we cleanup a
couple of places where we were clumsily subtracting PAGE_OFFSET with
asm instructions to use assemble-time arithmetic or the toreal() macro
instead.

Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Updated platforms that use gianfar to match driver
Kumar Gala [Fri, 13 Jan 2006 03:04:23 +0000 (21:04 -0600)]
[PATCH] powerpc: Updated platforms that use gianfar to match driver

The gianfar driver changed how it required MDIO bus and phy id's
to be passed to it.  Also, it no longer passes the physical address
of the MDIO bus.  Instead we have a proper platform device.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc/boot: Better use of defaultimage-
Tom Rini [Thu, 12 Jan 2006 23:55:58 +0000 (16:55 -0700)]
[PATCH] powerpc/boot: Better use of defaultimage-

The following reworks how defaultimage- is used.  We default to zImage
here and then override it on platforms that need something more (uImage
in the future) or less (vmlinux on iSeries).

Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Add support for changing properties from userspace
Dave C Boutcher [Thu, 12 Jan 2006 22:10:22 +0000 (16:10 -0600)]
[PATCH] powerpc: Add support for changing properties from userspace

Add support to reconfigure the device tree through the existing
proc filesystem interface.  Add "add_property", "remove_property",
and "update_property" commands to the existing interface.

Signed-off-by: Dave Boutcher <sleddog@us.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Add of_find_property function
Dave C Boutcher [Thu, 12 Jan 2006 22:09:29 +0000 (16:09 -0600)]
[PATCH] powerpc: Add of_find_property function

Add an of_find_property function that returns a struct property
given a property name.  Then change the get_property function to
use that routine internally.

Signed-off-by: Dave Boutcher <sleddog@us.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Add/remove/update properties in firmware device tree
Dave C Boutcher [Thu, 12 Jan 2006 22:08:27 +0000 (16:08 -0600)]
[PATCH] powerpc: Add/remove/update properties in firmware device tree

Add support for updating and removing device tree
properties.  Since we hand out pointers to properties with gay
abandon, we can't just free the property storage.  Instead we
move deleted, or the old copy of an updated property, to a
"dead properties" list.

Also note, its not feasable to kref device tree properties.
we call get_property() all over the kernel in a wild variety
of contexts.

One consequence of this change is that we now take a
read_lock(&devtree_lock) when doing get_property().

Signed-off-by: Dave Boutcher <sleddog@us.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Add/remove/update properties in /proc/device-tree
Dave C Boutcher [Thu, 12 Jan 2006 22:07:17 +0000 (16:07 -0600)]
[PATCH] powerpc: Add/remove/update properties in /proc/device-tree

Add support to the proc_device_tree file for removing
and updating properties.  Remove just removes the
proc file, update changes the data pointer within
the proc file.  The remainder of the device-tree
changes occur elsewhere.

Signed-off-by: Dave Boutcher <sleddog@us.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Add some more pSeries hypervisor call constants
Dave C Boutcher [Thu, 12 Jan 2006 22:05:35 +0000 (16:05 -0600)]
[PATCH] powerpc: Add some more pSeries hypervisor call constants

Adds a few more hypervisor call constants.

Signed-off-by: Dave Boutcher <sleddog@us.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] Remove bzImage target
Tom Rini [Thu, 12 Jan 2006 21:25:50 +0000 (14:25 -0700)]
[PATCH] Remove bzImage target

Since the documentation no longer tells people to 'make bzImage', and
with the previous patch nothing more than 'make' is required to get the
right bootable images (just like on i386 now), this removes the bzImage
-> zImage target redirect on ARCH=powerpc

Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agoIB/mthca: Initialize grh_present before using it
Michael S. Tsirkin [Thu, 12 Jan 2006 23:55:41 +0000 (15:55 -0800)]
IB/mthca: Initialize grh_present before using it

build_mlx_header() was using sqp->ud_header.grh_present before it was
initialized by mthca_read_ah().  Furthermore, header->grh_present is
set by ib_ud_header_init, so there's no need to set it again in
mthca_read_ah().

Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoIB/mthca: Cosmetic: use the ALIGN macro
Michael S. Tsirkin [Thu, 12 Jan 2006 23:43:58 +0000 (15:43 -0800)]
IB/mthca: Cosmetic: use the ALIGN macro

Use the ALIGN macro to simplify some rounding code.

Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Thu, 12 Jan 2006 23:43:39 +0000 (15:43 -0800)]
Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6

18 years agoIB/mthca: Fix memory leaks in error handling
Jack Morgenstein [Thu, 12 Jan 2006 23:35:15 +0000 (15:35 -0800)]
IB/mthca: Fix memory leaks in error handling

Fix memory leaks in mthca_create_qp() and mthca_create_srq()
error handling.

Signed-off-by: Jack Morgenstein <jackm@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years agoIB/mthca: Fix memory leak of multicast group structures
Ishai Rabinovitz [Thu, 12 Jan 2006 23:24:51 +0000 (15:24 -0800)]
IB/mthca: Fix memory leak of multicast group structures

Convert "/ (1 << lg)" to ">> lg" for a slight code size reduction.

add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-24 (-24)
function                                     old     new   delta
mthca_map_cmd                                613     589     -24

Signed-off-by: Ishai Rabinovitz <ishai@mellanox.co.il>
Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>