linux-2.6.git
16 years agopowerpc: Implement smp_release_cpus() in C not asm
Michael Ellerman [Fri, 4 Nov 2005 01:09:42 +0000 (12:09 +1100)]
powerpc: Implement smp_release_cpus() in C not asm

There's no reason for smp_release_cpus() to be asm, and most people can make
more sense of C code. Add an extern declaration to smp.h and remove the custom
one in machine_kexec.c

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
16 years agopowerpc: Cleanup vpa code
Michael Ellerman [Thu, 3 Nov 2005 08:34:38 +0000 (19:34 +1100)]
powerpc: Cleanup vpa code

register_vpa() doesn't actually do a VPA register call it just uses the flags
you pass it, so rename it to vpa_call() to be clearer.

We can then define register_vpa() and unregister_vpa() which are both simple
wrappers around vpa_call(). (we'll need unregister_vpa() for kexec soon)

We can then cleanup vpa_init(), and because vpa_init() is only called from
platforms/pseries we remove the definition in asm-ppc64/smp.h.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
16 years agopowerpc: Add helper functions for synthesising instructions at runtime
Michael Ellerman [Thu, 3 Nov 2005 06:57:53 +0000 (17:57 +1100)]
powerpc: Add helper functions for synthesising instructions at runtime

There's a few places already, and soon will be more, where we synthesise
branch instructions at runtime. Rather than doing it by hand in each case,
it would make sense to have one implementation.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
16 years agopowerpc: Set entry point and text address in linker script
Michael Ellerman [Thu, 3 Nov 2005 05:03:06 +0000 (16:03 +1100)]
powerpc: Set entry point and text address in linker script

Currently we set the kernel entry point and the address of the text
section in the Makefile, using CONFIG_KERNEL_START.

But we've already got <asm/page.h> in the linker script, so we can just
use KERNELBASE directly. That means if we ever change KERNELBASE there's
one less place to change it.

And we can set the entry point with ENTRY().

There are zero differences from "readelf -a vmlinux" with or without this
patch.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
16 years agopowerpc: Make early debugging fit on 80 character terminal
Michael Ellerman [Thu, 3 Nov 2005 04:39:09 +0000 (15:39 +1100)]
powerpc: Make early debugging fit on 80 character terminal

There's some debugging in prom.c that wraps nastly on 80 character
terminals, reformat it to fit.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
16 years agopowerpc: Merge asm-ppc/kexec.h and asm-ppc64/kexec.h
Michael Ellerman [Thu, 3 Nov 2005 04:35:45 +0000 (15:35 +1100)]
powerpc: Merge asm-ppc/kexec.h and asm-ppc64/kexec.h

Merge include/asm-ppc/kexec.h and include/asm-ppc64/kexec.h.

The only thing that's really changed is that we now allocate crash_notes
properly on PPC32. It's address is exported via sysfs, so it's not correct
for it to be a pointer.

I've also removed some of the "we don't use this" comments, because they're
wrong (or perhaps were referring only to arch code).

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
16 years agopowerpc: Move plpar_wrappers.h into arch/powerpc/platforms/pseries
Michael Ellerman [Thu, 3 Nov 2005 04:33:31 +0000 (15:33 +1100)]
powerpc: Move plpar_wrappers.h into arch/powerpc/platforms/pseries

Move plpar_wrappers.h into arch/powerpc/platforms/pseries, fixup white space,
and update callers.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
16 years agopowerpc: Make set_dabr() a ppc_md function
Michael Ellerman [Thu, 3 Nov 2005 04:30:49 +0000 (15:30 +1100)]
powerpc: Make set_dabr() a ppc_md function

Move pSeries specific code in set_dabr() into a ppc_md function, this will
allow us to keep plpar_wrappers.h private to platforms/pseries.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
16 years agopowerpc: Copy default configs into arch/powerpc/configs
Michael Ellerman [Thu, 3 Nov 2005 04:24:57 +0000 (15:24 +1100)]
powerpc: Copy default configs into arch/powerpc/configs

Copy default configs into arch/powerpc/configs, rename bpa_defconfig to
cell_defconfig while we're at it.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
16 years agopowerpc: Compile fixes for chrp/nvram.c
Paul Mackerras [Wed, 2 Nov 2005 08:58:12 +0000 (19:58 +1100)]
powerpc: Compile fixes for chrp/nvram.c

Include asm/rtas.h for prototype for rtas_call etc., and make the
`done' variable unsigned int since that's what rtas_call wants.

Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years agopowerpc: include <linux/platform_device.h> in pegasos_eth.c
Paul Mackerras [Wed, 2 Nov 2005 08:57:22 +0000 (19:57 +1100)]
powerpc: include <linux/platform_device.h> in pegasos_eth.c

Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years agoMerge Paulus' tree
Stephen Rothwell [Wed, 2 Nov 2005 07:15:43 +0000 (18:15 +1100)]
Merge Paulus' tree

16 years agopowerpc: include lmb.h in arch/powerpc/platforms/powermac/setup.c
Paul Mackerras [Wed, 2 Nov 2005 05:07:22 +0000 (16:07 +1100)]
powerpc: include lmb.h in arch/powerpc/platforms/powermac/setup.c

since it uses the lmb stuff in one place.

Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years agoMerge iSeries include file move
Stephen Rothwell [Wed, 2 Nov 2005 05:06:03 +0000 (16:06 +1100)]
Merge iSeries include file move

16 years ago[PATCH] powerpc: Move naca.h to platforms/iseries
David Gibson [Tue, 1 Nov 2005 04:30:26 +0000 (15:30 +1100)]
[PATCH] powerpc: Move naca.h to platforms/iseries

These days, the NACA only exists on iSeries.  Therefore, this patch
moves naca.h from include/asm-ppc64 to arch/powerpc/platforms/iseries.
There was one file including naca.h outside of platforms/iseries -
arch/ppc64/kernel/udbg_scc.c.  However, that's obviously a hangover
from older days.  The include is not necessary, so this patch simply
removes it.

Built and booted on iSeries, built for G5 (which uses udbg_scc.o).

Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years agomodify defines according to _ASM_POWERPC_ISERIES_
Kelly Daly [Wed, 2 Nov 2005 04:53:01 +0000 (15:53 +1100)]
modify defines according to _ASM_POWERPC_ISERIES_

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
16 years ago[PATCH] powerpc: Move dart.h
David Gibson [Wed, 2 Nov 2005 04:13:20 +0000 (15:13 +1100)]
[PATCH] powerpc: Move dart.h

asm-ppc64/dart.h is included in exactly one place -
arch/powerpc/sysdev/u3_iommu.c.  This patch, therefore, moves it into
arch/powerpc/sysdev.  While we're at it, update the #ifndef/#define
protecting the include, and the filename in the comments of
u3_iommu.c.

Built and booted on pSeries and G5, built for ppc32 powermac.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[PATCH] powerpc: Merge (move) numnodes.h and sparsemem.h
David Gibson [Wed, 2 Nov 2005 03:48:36 +0000 (14:48 +1100)]
[PATCH] powerpc: Merge (move) numnodes.h and sparsemem.h

The ppc64 versions of numnodes.h and sparsemem.h can be safely moved
to asm-powerpc with no changes apart from changing the #define to the
standard _ASM_POWERPC_ form.  There are no ppc32 versions of these
files, because they only have any effect if CONFIG_SPARSEMEM is
enabled, which it never can be on ppc32.

Built and booted on pSeries (POWER5), built for 32-bit powermac.

Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years agofix incorrect dir
Kelly Daly [Wed, 2 Nov 2005 04:22:37 +0000 (15:22 +1100)]
fix incorrect dir

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
16 years agoMerge ../linux-2.6
Paul Mackerras [Wed, 2 Nov 2005 04:20:55 +0000 (15:20 +1100)]
Merge ../linux-2.6

16 years agopowerpc: clean up bug.h further
Paul Mackerras [Wed, 2 Nov 2005 04:19:47 +0000 (15:19 +1100)]
powerpc: clean up bug.h further

This simplifies the macros which are different between 32-bit and
64-bit.  It also fixes a couple of printks on the bug->line element,
which is now a long.

Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years agoMerge git://oak/home/sfr/kernels/iseries/work
Paul Mackerras [Wed, 2 Nov 2005 04:14:44 +0000 (15:14 +1100)]
Merge git://oak/home/sfr/kernels/iseries/work

16 years agomerge filename and modify references to iseries/vio.h
Kelly Daly [Wed, 2 Nov 2005 04:13:57 +0000 (15:13 +1100)]
merge filename and modify references to iseries/vio.h

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
16 years agomerge filename and modify references to iSeries/mf.h
Kelly Daly [Wed, 2 Nov 2005 04:10:38 +0000 (15:10 +1100)]
merge filename and modify references to iSeries/mf.h

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
16 years agopowerpc: exclude powerbook sleep code with CONFIG_PPC64 and CONFIG_PM
Paul Mackerras [Wed, 2 Nov 2005 04:08:17 +0000 (15:08 +1100)]
powerpc: exclude powerbook sleep code with CONFIG_PPC64 and CONFIG_PM

We were getting powerbook sleep code included, and giving compile
errors, with CONFIG_PM=y on a 64-bit build.  This excludes that code
so the kernel will compile.  One day BenH will implement on sleep on
the G5...

Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years agomerge filename and modify references to iseries/iseries_io.h
Kelly Daly [Wed, 2 Nov 2005 04:07:51 +0000 (15:07 +1100)]
merge filename and modify references to iseries/iseries_io.h

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
16 years agopowerpc: Fix compile error with CONFIG_TAU=y
Paul Mackerras [Wed, 2 Nov 2005 04:06:22 +0000 (15:06 +1100)]
powerpc: Fix compile error with CONFIG_TAU=y

A couple of instances of "i" that needed to be changed to "cpu_id"
got missed in the merge, because they were in CONFIG_TAU code.

Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years agopowerpc: Use rtas_call not call_rtas in CHRP code
Paul Mackerras [Wed, 2 Nov 2005 04:04:26 +0000 (15:04 +1100)]
powerpc: Use rtas_call not call_rtas in CHRP code

The nvram driver imported from the ppc code uses call_rtas, but
rtas_call is the name we are using in merged code (since ppc64 used
that name, and it uses far more RTAS calls than ppc32).

Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years agomerge filename and modify references to iseries/lpar_map.h
Kelly Daly [Wed, 2 Nov 2005 04:02:47 +0000 (15:02 +1100)]
merge filename and modify references to iseries/lpar_map.h

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
16 years ago[PATCH] ppc bug.h namespace pollution
Al Viro [Wed, 2 Nov 2005 03:10:43 +0000 (03:10 +0000)]
[PATCH] ppc bug.h namespace pollution

DATA_TYPE is really not a good thing to put into header that
gets included all over the tree...

Just make the cast always (long) and get rid of DATA_TYPE altogether.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years agomerge filename and modify references to iseries/it_lp_reg_save.h
Kelly Daly [Wed, 2 Nov 2005 03:49:47 +0000 (14:49 +1100)]
merge filename and modify references to iseries/it_lp_reg_save.h

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
16 years ago[PATCH] powerpc: Merge futex.h
David Gibson [Wed, 2 Nov 2005 02:58:22 +0000 (13:58 +1100)]
[PATCH] powerpc: Merge futex.h

This patch merges the ppc32 and ppc64 versions of futex.h, essentially
by taking the ppc64 version as the powerpc version.  The old ppc32
version did not implement the futex_atomic_op_inuser() callback (it
always returned -ENOSYS), so FUTEX_WAKE_OP would not work on ppc32.
In fact the ppc64 version of this function is almost suitable for
ppc32 as well - the only change needed is to extend ppc_asm.h with a
macro expanding to to the right pseudo-op to store a pointer (either
".long" or ".llong").

Built and booted on pSeries.  Built for 32-bit powermac.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[PATCH] powerpc: Fix merged ipcbuf.h
David Gibson [Wed, 2 Nov 2005 00:44:26 +0000 (11:44 +1100)]
[PATCH] powerpc: Fix merged ipcbuf.h

Oops, when merging ipcbuf.h, I forgot that 'u64' can't be used in
user-visible headers.  This patch corrects the problem, replacing the
unused fields with an array of four __u32s.

Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years agomerge filename and modify references to iseries/it_lp_queue.h
Kelly Daly [Wed, 2 Nov 2005 03:13:34 +0000 (14:13 +1100)]
merge filename and modify references to iseries/it_lp_queue.h

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
16 years agomerge filename and modify references to iseries/it_lp_naca.h
Kelly Daly [Wed, 2 Nov 2005 02:51:41 +0000 (13:51 +1100)]
merge filename and modify references to iseries/it_lp_naca.h

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
16 years agomerge filename and modify references to iseries/it_exp_vpd_panel.h
Kelly Daly [Wed, 2 Nov 2005 02:48:25 +0000 (13:48 +1100)]
merge filename and modify references to iseries/it_exp_vpd_panel.h

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
16 years agomerge filename and modify references to iseries/hv_types.h
Kelly Daly [Wed, 2 Nov 2005 02:46:07 +0000 (13:46 +1100)]
merge filename and modify references to iseries/hv_types.h

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
16 years agomerge filename and modify references to iseries/hv_lp_event.h
Kelly Daly [Wed, 2 Nov 2005 01:08:31 +0000 (12:08 +1100)]
merge filename and modify references to iseries/hv_lp_event.h

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
16 years agomerge filename and modify reference to iseries/hv_lp_config.h
Kelly Daly [Wed, 2 Nov 2005 00:55:28 +0000 (11:55 +1100)]
merge filename and modify reference to iseries/hv_lp_config.h

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
16 years agomerge filename and modify references to iseries/hv_call_xm.h
Kelly Daly [Wed, 2 Nov 2005 00:41:12 +0000 (11:41 +1100)]
merge filename and modify references to iseries/hv_call_xm.h

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
16 years agomerge filename and modify references to iseries/hv_call_sc.h
Kelly Daly [Wed, 2 Nov 2005 00:37:22 +0000 (11:37 +1100)]
merge filename and modify references to iseries/hv_call_sc.h

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
16 years agomerge filename and modify references to iseries/hv_call_event.h
Kelly Daly [Wed, 2 Nov 2005 00:11:11 +0000 (11:11 +1100)]
merge filename and modify references to iseries/hv_call_event.h

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/aia21/ntfs-2.6
Linus Torvalds [Tue, 1 Nov 2005 16:30:05 +0000 (08:30 -0800)]
Merge git://git./linux/kernel/git/aia21/ntfs-2.6

16 years agoMerge branch 'master' of /home/src/linux-2.6/
Anton Altaparmakov [Tue, 1 Nov 2005 15:51:32 +0000 (15:51 +0000)]
Merge branch 'master' of /home/src/linux-2.6/

16 years agoNTFS: Fix a stupid bug causing writes to non-initialized pages to segfault.
Anton Altaparmakov [Tue, 1 Nov 2005 15:49:31 +0000 (15:49 +0000)]
NTFS: Fix a stupid bug causing writes to non-initialized pages to segfault.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
16 years agopowerpc: Fix pseries (64-bit) build
Paul Mackerras [Tue, 1 Nov 2005 11:37:47 +0000 (22:37 +1100)]
powerpc: Fix pseries (64-bit) build

A recent commit that removed rtas-fw.h and moved its contents to
include/asm-powerpc/rtas.h forgot to also remove the inclusion of
it in arch/powerpc/platforms/pseries/setup.c.

Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years agopowerpc: Fix BUG/WARN macros for 64-bit
Paul Mackerras [Tue, 1 Nov 2005 10:54:38 +0000 (21:54 +1100)]
powerpc: Fix BUG/WARN macros for 64-bit

The bug_entry struct had an int in the middle of pointers and unsigned
longs, and the inline asm that generated the bug table entries didn't
insert the necessary padding, so the fields following it didn't get
initialized properly and an oops resulted.  This changes the int field
(the line number) to a long so that all the fields are the same size
and no padding is required.

Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[PATCH] powerpc: Merge bitops.h
David Gibson [Tue, 1 Nov 2005 06:28:10 +0000 (17:28 +1100)]
[PATCH] powerpc: Merge bitops.h

Here's a revised version.  This re-introduces the set_bits() function
from ppc64, which I removed because I thought it was unused (it exists
on no other arch).  In fact it is used in the powermac interrupt code
(but not on pSeries).

- We use LARXL/STCXL macros to generate the right (32 or 64 bit)
  instructions, similar to LDL/STL from ppc_asm.h, used in fpu.S

- ppc32 previously used a full "sync" barrier at the end of
  test_and_*_bit(), whereas ppc64 used an "isync".  The merged version
  uses "isync", since I believe that's sufficient.

- The ppc64 versions of then minix_*() bitmap functions have changed
  semantics.  Previously on ppc64, these functions were big-endian
  (that is bit 0 was the LSB in the first 64-bit, big-endian word).
  On ppc32 (and x86, for that matter, they were little-endian.  As far
  as I can tell, the big-endian usage was simply wrong - I guess
  no-one ever tried to use minixfs on ppc64.

- On ppc32 find_next_bit() and find_next_zero_bit() are no longer
  inline (they were already out-of-line on ppc64).

- For ppc64, sched_find_first_bit() has moved from mmu_context.h to
  the merged bitops.  What it was doing in mmu_context.h in the first
  place, I have no idea.

- The fls() function is now implemented using the cntlzw instruction
  on ppc64, instead of generic_fls(), as it already was on ppc32.

- For ARCH=ppc, this patch requires adding arch/powerpc/lib to the
  arch/ppc/Makefile.  This in turn requires some changes to
  arch/powerpc/lib/Makefile which didn't correctly handle ARCH=ppc.

Built and running on G5.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[PATCH] powerpc: Merge ipcbuf.h
David Gibson [Tue, 1 Nov 2005 05:53:24 +0000 (16:53 +1100)]
[PATCH] powerpc: Merge ipcbuf.h

This patch merges ppc32 and ppc64 versions of ipcbuf.h.  The merge is
essentially trivial, since the structure defined in each version was
already identical.  Only wrinkle is that the merged version now
includes linux/types.h in order to get the fixed width integer types.
In fact, the old versions probably should have been including that
anyway, since the file uses various __kernel_*_t types.

Built and booted on G5, built for 32-bit pmac, but not booted, since
the merge tree currently doesn't boot there.

Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[PATCH] powerpc: move arch/ppc64/kernel/bpa* to arch/powerpc/platforms/cell
Arnd Bergmann [Tue, 1 Nov 2005 01:08:41 +0000 (20:08 -0500)]
[PATCH] powerpc: move arch/ppc64/kernel/bpa* to arch/powerpc/platforms/cell

This patch simply moves files over to arch/powerpc without making
any changes to them.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[PATCH] powerpc: move mmio_nvram.c over to arch/powerpc
Arnd Bergmann [Tue, 1 Nov 2005 01:08:40 +0000 (20:08 -0500)]
[PATCH] powerpc: move mmio_nvram.c over to arch/powerpc

The nvram code formally known as bpa_nvram.c is rather
generic really, so it is quite likely to be useful to
future boards not based on cell.

This patch puts it into arch/powerpc/sysdev.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[PATCH] powerpc: move rtas_fw.c out of platforms/pseries
Arnd Bergmann [Tue, 1 Nov 2005 01:08:39 +0000 (20:08 -0500)]
[PATCH] powerpc: move rtas_fw.c out of platforms/pseries

Cell uses the same code as pSeries for flashing the firmware
through rtas, so the implementation should not be part of
platforms/pseries.

Put it into arch/powerpc/kernel instead.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[PATCH] powerpc: create a new arch/powerpc/platforms/cell/smp.c
Arnd Bergmann [Tue, 1 Nov 2005 01:08:38 +0000 (20:08 -0500)]
[PATCH] powerpc: create a new arch/powerpc/platforms/cell/smp.c

During the conversion to the merge tree, the Cell specific
SMP initialization was removed from the pSeries code.

This creates a new Cell specific SMP implementation file.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[PATCH] powerpc: Rename BPA to Cell
Arnd Bergmann [Tue, 1 Nov 2005 01:08:37 +0000 (20:08 -0500)]
[PATCH] powerpc: Rename BPA to Cell

The official name for BPA is now CBEA (Cell Broadband
Engine Architecture). This patch renames all occurences
of the term BPA to 'Cell' for easier recognition.

Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years agomerge filename and modify references to iseries/hv_call.h
Kelly Daly [Tue, 1 Nov 2005 05:59:20 +0000 (16:59 +1100)]
merge filename and modify references to iseries/hv_call.h

Signed-off-by: Kelly Daly <kelly@au.ibm.com>
16 years agoDon't touch USB controller IO registers when they are disabled
Linus Torvalds [Tue, 1 Nov 2005 05:12:40 +0000 (21:12 -0800)]
Don't touch USB controller IO registers when they are disabled

The USB "handoff" code is an early PCI quirk to make sure we own the USB
controller (as opposed to the BIOS/SMM).  But if the controller isn't
even enabled yet, don't try to access it.

Acked-by: Paul Mackerras <paulus@samba.org> (who had an alternate patch)
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years agopowerpc: clean up uaccess.h
Stephen Rothwell [Tue, 1 Nov 2005 04:53:19 +0000 (15:53 +1100)]
powerpc: clean up uaccess.h

Use the best from each architecture.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
16 years agopowerpc: use asm-generic/termios.h
Stephen Rothwell [Tue, 1 Nov 2005 03:26:41 +0000 (14:26 +1100)]
powerpc: use asm-generic/termios.h

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
16 years agopowerpc: remove duplicate ioctl definitions
Stephen Rothwell [Tue, 1 Nov 2005 03:36:30 +0000 (14:36 +1100)]
powerpc: remove duplicate ioctl definitions

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
16 years agopowerpc: make mem= work on iSeries again
Stephen Rothwell [Tue, 1 Nov 2005 00:45:19 +0000 (11:45 +1100)]
powerpc: make mem= work on iSeries again

By parsing the command line earlier, we can add the mem= value to the
flattened device tree and let the generic code sort out the memory limit
for us.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
16 years agopowerpc: fix __strnlen_user in merge tree
Stephen Rothwell [Mon, 31 Oct 2005 07:39:20 +0000 (18:39 +1100)]
powerpc: fix __strnlen_user in merge tree

Change USER/KERNEL_DS so that the merged version of
__strnlen_user can be used which allows us to complete the
removal of arch/ppc64/lib/.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
16 years agopowerpc: merge uaccess.h
Stephen Rothwell [Sat, 29 Oct 2005 07:51:31 +0000 (17:51 +1000)]
powerpc: merge uaccess.h

There is still a bug to be fixed and more merging to be done.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
16 years agoRevert "i386: move apic init in init_IRQs"
Linus Torvalds [Tue, 1 Nov 2005 03:16:17 +0000 (19:16 -0800)]
Revert "i386: move apic init in init_IRQs"

Commit f2b36db692b7ff6972320ad9839ae656a3b0ee3e causes a bootup hang on
at least one machine.  Revert for now until we understand why.  The old
code may be ugly, but it works.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years ago[PATCH] Creative Audigy 2 cardbus: Add IO window wakeup magic
James Courtier-Dutton [Mon, 31 Oct 2005 10:27:41 +0000 (10:27 +0000)]
[PATCH] Creative Audigy 2 cardbus: Add IO window wakeup magic

This adds the magic IO wakeup code for the CardBus version of the
Creative Labs Audigy 2 to the snd-emu10k1 driver.

Without the magic IO enable sequence, reading from the IO region of the
card will fail spectacularly, and the machine will hang.

My next task will be getting the driver to actually play sound without
distortion.

Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
[ This is a work-in-progress, but since it avoids a total lockup
  if the emu10k module is loaded on a machine with the cardbus
  card inserted, we're better off with it than without it, even
  if sound quality is bad right now ]

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years ago[PATCH] fix __writeback_single_inode WARN_ON
Andrea Arcangeli [Mon, 31 Oct 2005 22:08:54 +0000 (14:08 -0800)]
[PATCH] fix __writeback_single_inode WARN_ON

When the inode count is zero in inode writeback, the

WARN_ON(!(inode->i_state & I_WILL_FREE));

is broken, and needs to test for either I_WILL_FREE|I_FREEING.

When the inode is in I_FREEING state, it's already out of the visibility
of the vm so it can't be freed so it doesn't require the __iget and the
generic_delete_inode path can call the sync internally to the lowlevel
fs callback during the last iput. So the inode being in I_FREEING is
also a valid condition for calling the sync with i_count == 0.

The specific stack trace is this:

  0xc00000007b8fb6e0  0xc00000000010118c  .__writeback_single_inode +0x5c
  0xc00000007b8fb6e0  0xc0000000001014dc (lr) .sync_inode +0x3c
  0xc00000007b8fb790  0xc0000000001014dc  .sync_inode +0x3c
  0xc00000007b8fb820  0xc0000000001a5020  .ext2_sync_inode +0x64
  0xc00000007b8fb8f0  0xc0000000001a65b4  .ext2_truncate +0x3f8
  0xc00000007b8fba40  0xc0000000001a6940  .ext2_delete_inode +0xdc
  0xc00000007b8fbac0  0xc0000000000f7a5c  .generic_delete_inode +0x124
  0xc00000007b8fbb50  0xc0000000000f5fe0  .iput +0xb8
  0xc00000007b8fbbe0  0xc0000000000e9fd4  .sys_unlink +0x2a8
  0xc00000007b8fbd10  0xc00000000001048c  .ret_from_syscall_1 +0x0

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years ago[PATCH] revert ide-scsi highmem cleanup
Andrew Morton [Mon, 31 Oct 2005 22:08:53 +0000 (14:08 -0800)]
[PATCH] revert ide-scsi highmem cleanup

Jeff Garzik <jgarzik@pobox.com> points out that this was wrong: we need to
disable local interrupts while holding KM_IRQ0 due to IRQ sharing.

And holding interrupts off during a big PIO opration is expensive, so we only
want to do that if we know the page was highmem.

So revert commit 17fd47ab4d33e764216b87006d8118fa050b4c92

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years ago[PATCH] i386: CONFIG_PC removal
Arthur Othieno [Mon, 31 Oct 2005 04:04:05 +0000 (23:04 -0500)]
[PATCH] i386: CONFIG_PC removal

CONFIG_PC is left-over cruft after the introduction of CONFIG_X86_PC with
the subarch split.  Remove it, and fixup the remaining users to depend on
CONFIG_X86_PC instead.

Signed-off-by: Arthur Othieno <a.othieno@bluewin.ch>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years ago[PATCH] noop-iosched: avoid corrupted request merging
Jens Axboe [Mon, 31 Oct 2005 08:23:54 +0000 (09:23 +0100)]
[PATCH] noop-iosched: avoid corrupted request merging

Tejun Heo notes:

   "I'm currently debugging this.  The problem is that we are using the
    generic dispatch queue directly in the noop sched and merging is NOT
    allowed on dispatch queues but generic handling of last_merge tries
    to merge requests.  I'm still trying to verify this, so I'll be back
    with results soon."

In the meantime, disable merging for noop by setting REQ_NOMERGE in
elevator_noop_add_request().

Eventually, we should add a noop_list and do the dispatching like in the
other io schedulers.  Merging is still beneficial for noop (and it has
always done it).

Signed-off-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years ago[PATCH] Fix on-the-fly switch from cfq i/o scheduler
Jens Axboe [Mon, 31 Oct 2005 12:51:33 +0000 (13:51 +0100)]
[PATCH] Fix on-the-fly switch from cfq i/o scheduler

Don't clear ->elevator_data on exit, if we are switching queues we are
overwriting the data of the new io scheduler.

Signed-off-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/aia21/ntfs-2.6
Linus Torvalds [Mon, 31 Oct 2005 15:36:08 +0000 (07:36 -0800)]
Merge git://git./linux/kernel/git/aia21/ntfs-2.6

16 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Mon, 31 Oct 2005 15:34:07 +0000 (07:34 -0800)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/libata-dev

16 years agoMerge master.kernel.org:/home/rmk/linux-2.6-drvmodel
Linus Torvalds [Mon, 31 Oct 2005 15:32:56 +0000 (07:32 -0800)]
Merge kernel.org:/home/rmk/linux-2.6-drvmodel

Manual #include fixups for clashes - there may be some unnecessary

16 years agoMerge branch 'master' of /usr/src/ntfs-2.6/
Anton Altaparmakov [Mon, 31 Oct 2005 10:06:46 +0000 (10:06 +0000)]
Merge branch 'master' of /usr/src/ntfs-2.6/

16 years agoInput: adbhid - fix OOPS introduced by dynalloc conversion
Paul Mackerras [Mon, 31 Oct 2005 06:30:32 +0000 (01:30 -0500)]
Input: adbhid - fix OOPS introduced by dynalloc conversion

The problem is that adbhid[]->input is NULL, so the kernel oopses with
a null pointer dereference as soon as a key is pressed.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
16 years agoInput: lkkbd - fix debug message in lkkbd_interrupt()
Dmitry Torokhov [Mon, 31 Oct 2005 06:30:19 +0000 (01:30 -0500)]
Input: lkkbd - fix debug message in lkkbd_interrupt()

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
16 years agoInput: pcspkr - fix setting name and phys for the device
Dmitry Torokhov [Mon, 31 Oct 2005 06:30:05 +0000 (01:30 -0500)]
Input: pcspkr - fix setting name and phys for the device

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
16 years agoInput: fix input_dev registration message
Dmitry Torokhov [Mon, 31 Oct 2005 06:29:51 +0000 (01:29 -0500)]
Input: fix input_dev registration message

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
16 years agoInput: evdev - allow querying SW state from compat ioctl
Dmitry Torokhov [Mon, 31 Oct 2005 06:29:37 +0000 (01:29 -0500)]
Input: evdev - allow querying SW state from compat ioctl

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
16 years agoInput: evdev - allow querying EV_SW bits from compat_ioctl
Dmitry Torokhov [Mon, 31 Oct 2005 06:29:23 +0000 (01:29 -0500)]
Input: evdev - allow querying EV_SW bits from compat_ioctl

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
16 years ago[libata] locking rewrite (== fix)
Jeff Garzik [Mon, 31 Oct 2005 04:31:48 +0000 (23:31 -0500)]
[libata] locking rewrite (== fix)

A lot of power packed into a little patch.

This change eliminates the sharing between our controller-wide spinlock
and the SCSI core's Scsi_Host lock.  As the locking in libata was
already highly compartmentalized, always referencing our own lock, and
never scsi_host::host_lock.

As a side effect, this change eliminates a deadlock from calling
scsi_finish_command() while inside our spinlock.

16 years agopowerpc: import a fix from arch/ppc/mm/pgtable.c
Paul Mackerras [Mon, 31 Oct 2005 03:40:03 +0000 (14:40 +1100)]
powerpc: import a fix from arch/ppc/mm/pgtable.c

... namely, the change to the 2-argument pte_alloc_kernel.

Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years agopowerpc: apply recent changes to merged code
Paul Mackerras [Mon, 31 Oct 2005 02:57:01 +0000 (13:57 +1100)]
powerpc: apply recent changes to merged code

Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years ago[libata] ata_tf_to_host cleanups
Jeff Garzik [Mon, 31 Oct 2005 02:37:17 +0000 (21:37 -0500)]
[libata] ata_tf_to_host cleanups

Integrate ata_exec() and ata_tf_to_host() into their only caller,
ata_bus_edd().

Rename ata_tf_to_host_nolock() to ata_tf_to_host().

This makes locking a bit easier to review, and may help pave the way for
future changes.

16 years agoMerge ../linux-2.6 by hand
Paul Mackerras [Mon, 31 Oct 2005 02:37:12 +0000 (13:37 +1100)]
Merge ../linux-2.6 by hand

16 years agoppc: remove duplicate export of cur_cpu_spec
Paul Mackerras [Mon, 31 Oct 2005 02:08:54 +0000 (13:08 +1100)]
ppc: remove duplicate export of cur_cpu_spec

Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years agopowerpc: Fix bug arising from having multiple memory_limit variables
Paul Mackerras [Mon, 31 Oct 2005 02:07:02 +0000 (13:07 +1100)]
powerpc: Fix bug arising from having multiple memory_limit variables

We had a static memory_limit in prom.c, and then another one defined
in setup_64.c and used in numa.c, which resulted in the kernel crashing
when mem=xxx was given on the command line.  This puts the declaration
in system.h and the definition in mem.c.  This also moves the
definition of tce_alloc_start/end out of setup_64.c.

Signed-off-by: Paul Mackerras <paulus@samba.org>
16 years agoMerge master.kernel.org:/home/rmk/linux-2.6-serial
Linus Torvalds [Mon, 31 Oct 2005 01:48:37 +0000 (17:48 -0800)]
Merge master.kernel.org:/home/rmk/linux-2.6-serial

16 years agoMerge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Mon, 31 Oct 2005 01:48:00 +0000 (17:48 -0800)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm

16 years agoMerge master.kernel.org:/home/rmk/linux-2.6-mmc
Linus Torvalds [Mon, 31 Oct 2005 01:47:00 +0000 (17:47 -0800)]
Merge master.kernel.org:/home/rmk/linux-2.6-mmc

16 years ago[PATCH] fat: Remove duplicate directory scanning code
Pekka Enberg [Sun, 30 Oct 2005 23:03:50 +0000 (15:03 -0800)]
[PATCH] fat: Remove duplicate directory scanning code

This patch removes duplicate directory scanning code from fs/fat/dir.c.  The
two functions that share identical code are fat_readdirx() and
fat_search_long().  This patch also renames fat_readdirx to __fat_readdir().

Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years ago[PATCH] fat: remove the unneeded vfat_find() in vfat_rename()
OGAWA Hirofumi [Sun, 30 Oct 2005 23:03:50 +0000 (15:03 -0800)]
[PATCH] fat: remove the unneeded vfat_find() in vfat_rename()

Now, vfat_rename() is using vfat_find() for sanity check.  This removes that
sanity check, the cost of sanity check is too high.

Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years ago[PATCH] fat: cleanup and optimization of checksum
OGAWA Hirofumi [Sun, 30 Oct 2005 23:03:49 +0000 (15:03 -0800)]
[PATCH] fat: cleanup and optimization of checksum

Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years ago[PATCH] fix missing includes
Tim Schmielau [Sun, 30 Oct 2005 23:03:48 +0000 (15:03 -0800)]
[PATCH] fix missing includes

I recently picked up my older work to remove unnecessary #includes of
sched.h, starting from a patch by Dave Jones to not include sched.h
from module.h. This reduces the number of indirect includes of sched.h
by ~300. Another ~400 pointless direct includes can be removed after
this disentangling (patch to follow later).
However, quite a few indirect includes need to be fixed up for this.

In order to feed the patches through -mm with as little disturbance as
possible, I've split out the fixes I accumulated up to now (complete for
i386 and x86_64, more archs to follow later) and post them before the real
patch.  This way this large part of the patch is kept simple with only
adding #includes, and all hunks are independent of each other.  So if any
hunk rejects or gets in the way of other patches, just drop it.  My scripts
will pick it up again in the next round.

Signed-off-by: Tim Schmielau <tim@physik3.uni-rostock.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years ago[PATCH] Remove duplicate code in signal.c
Paul E. McKenney [Sun, 30 Oct 2005 23:03:46 +0000 (15:03 -0800)]
[PATCH] Remove duplicate code in signal.c

Combine a bit of redundant code between force_sig_info() and
force_sig_specific().

Signed-off-by: paulmck@us.ibm.com
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years ago[PATCH] remove unneeded SI_TIMER checks
Oleg Nesterov [Sun, 30 Oct 2005 23:03:46 +0000 (15:03 -0800)]
[PATCH] remove unneeded SI_TIMER checks

This patch removes checks for ->si_code == SI_TIMER from send_signal,
specific_send_sig_info, __group_send_sig_info.

I think posix-timers.c used these functions some time ago, now it sends
signals via send_{,group_}sigqueue, so these hooks are unneeded.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years ago[PATCH] cleanup the usage of SEND_SIG_xxx constants
Oleg Nesterov [Sun, 30 Oct 2005 23:03:45 +0000 (15:03 -0800)]
[PATCH] cleanup the usage of SEND_SIG_xxx constants

This patch simplifies some checks for magic siginfo values.  It should not
change the behaviour in any way.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years ago[PATCH] remove hardcoded SEND_SIG_xxx constants
Oleg Nesterov [Sun, 30 Oct 2005 23:03:44 +0000 (15:03 -0800)]
[PATCH] remove hardcoded SEND_SIG_xxx constants

This patch replaces hardcoded SEND_SIG_xxx constants with
their symbolic names.

No changes in affected .o files.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years ago[PATCH] hpet: hpet driver cleanups
Randy Dunlap [Sun, 30 Oct 2005 23:03:44 +0000 (15:03 -0800)]
[PATCH] hpet: hpet driver cleanups

- Use kzalloc() instead of kmalloc + memset.
- Clean/fix some printk's.
- Use NULL for pointers instead of 0.
- Combine hpet busy searching locations into a function call.

Signed-off-by: Randy Dunlap <randy_d_dunlap@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years ago[PATCH] hpet: use HPET physical addresses for dup. detection
Randy Dunlap [Sun, 30 Oct 2005 23:03:43 +0000 (15:03 -0800)]
[PATCH] hpet: use HPET physical addresses for dup. detection

- Use HPET physical address to detect duplicates, not logical addresses.
  Using logical (mapped) addresses fails to detect duplicates
  because ioremap() returns a new mapped address each time.

- iounmap() regions when duplicate/busy areas are found.

Signed-off-by: Randy Dunlap <randy_d_dunlap@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
16 years ago[PATCH] hpet: allow HPET FIXED_MEM32 resource type
Randy Dunlap [Sun, 30 Oct 2005 23:03:42 +0000 (15:03 -0800)]
[PATCH] hpet: allow HPET FIXED_MEM32 resource type

Allow the ACPI HPET description table to use a resource type of FIXED_MEM32
for the HPET reource.  Use the fixed resoure size of 1 KB for the HPET
resource as per the HPET spec.

Signed-off-by: Randy Dunlap <randy_d_dunlap@linux.intel.com>
Acked-by: Bob Picco <bob.picco@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>