]> err.no Git - linux-2.6/log
linux-2.6
19 years agoMerge changes from linux-2.6 by hand
Paul Mackerras [Sat, 22 Oct 2005 06:51:34 +0000 (16:51 +1000)]
Merge changes from linux-2.6 by hand

19 years agoppc64: Use arch/powerpc/platforms/powermac for powermac build.
Paul Mackerras [Sat, 22 Oct 2005 06:06:27 +0000 (16:06 +1000)]
ppc64: Use arch/powerpc/platforms/powermac for powermac build.

This switches the ARCH=ppc64 build to use arch/powerpc/platforms/powermac
instead of arch/ppc64/kernel/pmac*, and deletes the latter set of files.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agopowerpc: Merge in 64-bit powermac support.
Paul Mackerras [Sat, 22 Oct 2005 06:02:39 +0000 (16:02 +1000)]
powerpc: Merge in 64-bit powermac support.

This brings in a lot of changes from arch/ppc64/kernel/pmac_*.c to
arch/powerpc/platforms/powermac/*.c and makes various minor tweaks
elsewhere.  On the powermac we now initialize ppc_md by copying
the whole pmac_md structure into it, which required some changes in
the ordering of initializations of individual fields of it.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agopowerpc: Make set_rtc_time() return error code from lower-level function
Paul Mackerras [Sat, 22 Oct 2005 05:57:55 +0000 (15:57 +1000)]
powerpc: Make set_rtc_time() return error code from lower-level function

Previously it ignored the return value from ppc_md.set_rtc_time,
but in fact the functions that that can point to do return a
useful error code, so return it from set_rtc_time().

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agoppc64: Simplify secondary CPU startup on powermacs
Paul Mackerras [Sat, 22 Oct 2005 05:55:58 +0000 (15:55 +1000)]
ppc64: Simplify secondary CPU startup on powermacs

... for consistency with ppc32, and because this way is neater.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agoppc64: Rearrange btext initialization for consistency with ppc32
Paul Mackerras [Sat, 22 Oct 2005 05:36:52 +0000 (15:36 +1000)]
ppc64: Rearrange btext initialization for consistency with ppc32

Moved init_boot_display from arch/ppc64/kernel/pmac_setup.c to
arch/ppc64/kernel/btext.c and declared it in asm-ppc64/btext.h.
Call it from init_early rather than pmac_init_early.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agoppc64: Add a `primary' argument to pci_process_bridge_OF_ranges
Paul Mackerras [Sat, 22 Oct 2005 05:03:21 +0000 (15:03 +1000)]
ppc64: Add a `primary' argument to pci_process_bridge_OF_ranges

... for consistency with ppc32 and to make the powermac merge easier.
Also make it use just a single resource in the host bridge for multiple
consecutive elements of the ranges property.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agoppc64/powerpc: Fix time initialization on SMP systems
Paul Mackerras [Sat, 22 Oct 2005 04:55:23 +0000 (14:55 +1000)]
ppc64/powerpc: Fix time initialization on SMP systems

This moves smp_space_timers from arch/ppc64/kernel/smp.c to
arch/powerpc/kernel/time.c and makes it initialize last_jiffy[]
instead of paca[].next_jiffy_update_tb, since last_jiffy[] is
now what the time code uses.  It also declares smp_space_timers
in include/asm-powerpc/time.h and gets rid of an ifdef in
div128_by_32.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agoppc64: Fix delivery of RT signals to 32-bit processes.
Paul Mackerras [Sat, 22 Oct 2005 04:46:33 +0000 (14:46 +1000)]
ppc64: Fix delivery of RT signals to 32-bit processes.

An error in merging led to 32-bit processes getting the wrong link
register value on entry to RT signal handlers, and the wrong stack
chain as well.  This fixes it.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agopowerpc: Move agp_special_page export to where it is defined
Paul Mackerras [Sat, 22 Oct 2005 04:42:51 +0000 (14:42 +1000)]
powerpc: Move agp_special_page export to where it is defined

... instead of exporting it in arch/*/kernel/ppc_ksyms.c.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] typo fix in last cpufreq powernow patch
Chris Wright [Fri, 21 Oct 2005 23:56:08 +0000 (16:56 -0700)]
[PATCH] typo fix in last cpufreq powernow patch

Not sure how it slipped by, but here's a trivial typo fix for powernow.

Signed-off-by: Chris Wright <chrisw@osdl.org>
[ It's "nurter" backwards.. Maybe we have a hillbilly The Shining fan? ]
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Call exit_itimers from do_exit, not __exit_signal
Roland McGrath [Fri, 21 Oct 2005 22:03:29 +0000 (15:03 -0700)]
[PATCH] Call exit_itimers from do_exit, not __exit_signal

When I originally moved exit_itimers into __exit_signal, that was the only
place where we could reliably know it was the last thread in the group
dying, without races.  Since then we've gotten the signal_struct.live
counter, and do_exit can reliably do group-wide cleanup work.

This patch moves the call to do_exit, where it's made without locks.  This
avoids the deadlock issues that the old __exit_signal code's comment talks
about, and the one that Oleg found recently with process CPU timers.

[ This replaces e03d13e985d48ac4885382c9e3b1510c78bd047f, which is why
  it was just reverted. ]

Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoRevert "Fix cpu timers exit deadlock and races"
Linus Torvalds [Fri, 21 Oct 2005 22:36:00 +0000 (15:36 -0700)]
Revert "Fix cpu timers exit deadlock and races"

Revert commit e03d13e985d48ac4885382c9e3b1510c78bd047f, to be replaced
by a much nicer fix from Roland.

19 years ago[PATCH] cpufreq: fix pending powernow timer stuck condition
Dave Jones [Fri, 21 Oct 2005 21:21:03 +0000 (17:21 -0400)]
[PATCH] cpufreq: fix pending powernow timer stuck condition

AMD recently discovered that on some hardware, there is a race condition
possible when a C-state change request goes onto the bus at the same
time as a P-state change request.

Both requests happen, but the southbridge hardware only acknowledges the
C-state change.  The PowerNow! driver is then stuck in a loop, waiting
for the P-state change acknowledgement.  The driver eventually times
out, but can no longer perform P-state changes.

It turns out the solution is to resend the P-state change, which the
southbridge will acknowledge normally.

Thanks to Johannes Winkelmann for reporting this and testing the fix.

Signed-off-by: Mark Langsdorf <mark.langsdorf@amd.com>
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ppc64: Fix typo bug in iSeries hash code
David Gibson [Fri, 21 Oct 2005 03:41:19 +0000 (13:41 +1000)]
[PATCH] ppc64: Fix typo bug in iSeries hash code

This fixes a stupid typo bug in the iSeries hash table code.

When we place a hash PTE in the secondary bucket, instead of setting the
SECONDARY flag bit, as we should, we (redundantly) set the VALID flag.

This was introduced with the patch abolishing bitfields from the hash
table code.  Mea culpa, oops.  It hasn't been noticed until now because
in practice we don't hit the secondary bucket terribly often.

Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoMerge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Fri, 21 Oct 2005 19:23:07 +0000 (12:23 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm

19 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/acme/net-2.6
Linus Torvalds [Fri, 21 Oct 2005 19:22:33 +0000 (12:22 -0700)]
Merge master.kernel.org:/pub/scm/linux/kernel/git/acme/net-2.6

19 years ago[PATCH] drm: another mga bug
Dave Airlie [Thu, 20 Oct 2005 22:49:00 +0000 (23:49 +0100)]
[PATCH] drm: another mga bug

The wrong state emission routines were being called for G550, and
consistent maps weren't correctly mapped...

Signed-off-by: Dave Airlie <airlied@linux.ie>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ppc64: Fix pages marked dirty abusively
Benjamin Herrenschmidt [Fri, 21 Oct 2005 04:12:51 +0000 (14:12 +1000)]
[PATCH] ppc64: Fix pages marked dirty abusively

While working on 64K pages, I found this little buglet in our
update_mmu_cache() implementation.

The code calls __hash_page() passing it an "access" parameter (the type
of access that triggers the hash) containing the bits _PAGE_RW and
_PAGE_USER of the linux PTE.  The latter is useless in this case and the
former is wrong.  In fact, if we have a writeable PTE and we pass
_PAGE_RW to hash_page(), it will set _PAGE_DIRTY (since we track dirty
that way, by hash faulting !dirty) which is not what we want.

In fact, the correct fix is to always pass 0. That means that only
read-only or already dirty read write PTEs will be preloaded. The
(hopefully rare) case of a non dirty read write PTE can't be preloaded
this way, it will have to fault in hash_page on the actual access.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ppc64: Fix typo in time calculations
Paul Mackerras [Fri, 21 Oct 2005 12:39:36 +0000 (22:39 +1000)]
[PATCH] ppc64: Fix typo in time calculations

This fixes a typo in the div128_by_32 function used in the timekeeping
calculations on ppc64.  If you look at the code it's quite obvious
that we need (rb + c) rather than (rb + b).  The "b" is clearly just a
typo.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] mptsas: fix phy identifiers
Eric Moore [Fri, 21 Oct 2005 18:56:36 +0000 (20:56 +0200)]
[PATCH] mptsas: fix phy identifiers

This fixes handling of the phy identifiers in mptsas.

Signed-off-by: Eric Moore <Eric.Moore@lsil.com>
[ split it a pre-2.6.14 portion from Eric's bigger patch ]
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] powerpc: Fix mmap returning 64 bit addresses
Michael Ellerman [Fri, 21 Oct 2005 06:01:34 +0000 (16:01 +1000)]
[PATCH] powerpc: Fix mmap returning 64 bit addresses

The merge of syscalls.c & sys_ppc32.c (30286ef6e044bc3d9019c3d8b900572e3fa05e65)
broke mmap, if the mmap returned a 64 bit address.

do_mmap2 was taking the return value from do_mmap_pgoff (an unsigned long), and
storing it in an int, before returning it to sys_mmap as an unsigned long. So
we were losing the high bits of the address.

You would have thought the compiler could catch this for us ...

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] powerpc: Don't blow away load_addr in start_thread
Michael Ellerman [Fri, 21 Oct 2005 06:01:33 +0000 (16:01 +1000)]
[PATCH] powerpc: Don't blow away load_addr in start_thread

The patch to make process.c work for 32-bit and 64-bit
(06d67d54741a5bfefa31945ef195dfa748c29025) broke some 64-bit binaries.
We were blowing away load_addr in gpr[2], so we weren't properly relocating
the entry point.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] powerpc: Merge thread_info.h
David Gibson [Fri, 21 Oct 2005 05:45:50 +0000 (15:45 +1000)]
[PATCH] powerpc: Merge thread_info.h

Merge ppc32 and ppc64 versions of thread_info.h.  They were pretty
similar already, the chief changes are:

- Instead of inline asm to implement current_thread_info(),
which needs to be different for ppc32 and ppc64, we use C with an
asm("r1") register variable.  gcc turns it into the same asm as we
used to have for both platforms.
- We replace ppc32's 'local_flags' with the ppc64
'syscall_noerror' field.  The noerror flag was in fact the only thing
in the local_flags field anyway, so the ppc64 approach is simpler, and
means we only need a load-immediate/store instead of load/mask/store
when clearing the flag.
- In readiness for 64k pages, when THREAD_SIZE will be less
than a page, ppc64 used kmalloc() rather than get_free_pages() to
allocate the kernel stack.  With this patch we do the same for ppc32,
since there's no strong reason not to.
- For ppc64, we no longer export THREAD_SHIFT and THREAD_SIZE
via asm-offsets, thread_info.h can now be safely included in asm, as
on ppc32.

Built and booted on G4 Powerbook (ARCH=ppc and ARCH=powerpc) and
Power5 (ARCH=ppc64 and ARCH=powerpc).

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] Fix broken initialization of conswitchp for ARCH=ppc64
David Gibson [Fri, 21 Oct 2005 05:43:42 +0000 (15:43 +1000)]
[PATCH] Fix broken initialization of conswitchp for ARCH=ppc64

In the merge tree, commit 0458060c1c59c5378d8fb5daabe18cf4681c35cd
broke boot on some machines because the initialization of conswitchp
was moved to arch/powerpc/kernel/setup_64.c, but a corresponding copy
was not added to arch/ppc64/kernel/setup.c.  This patch fixes it.

Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[ARM] Fix Integrator IM/PD-1 support
Russell King [Fri, 21 Oct 2005 09:17:37 +0000 (10:17 +0100)]
[ARM] Fix Integrator IM/PD-1 support

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[ARM] 3028/1: S3C2410 - add DCLK mask definitions
Ben Dooks [Thu, 20 Oct 2005 22:21:20 +0000 (23:21 +0100)]
[ARM] 3028/1: S3C2410 - add DCLK mask definitions

Patch from Ben Dooks

From: Guillaume Gourat <guillaume.gourat@nexvision.fr>

Add MASK definitions for DCLK0 and DCLK1

Signed-off-by: Guillaume Gourat <guillaume.gourat@nexvision.fr>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[ARM] 3027/1: BAST - reduce NAND timings slightly
Ben Dooks [Thu, 20 Oct 2005 22:21:19 +0000 (23:21 +0100)]
[ARM] 3027/1: BAST - reduce NAND timings slightly

Patch from Ben Dooks

The current Simtec BAST nand area timings are a little
too slow to be obtained by a 2410 running at 266MHz,
so reduce the timings slightly to bring them into the
acceptable range.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[ARM] 3026/1: S3C2410 - avoid possible overflow in pll calculations
Ben Dooks [Thu, 20 Oct 2005 22:21:18 +0000 (23:21 +0100)]
[ARM] 3026/1: S3C2410 - avoid possible overflow in pll calculations

Patch from Ben Dooks

Avoid the possiblity that if the board is using
a 16.9334 or higher crystal with a high PLL
multiplier, then the pll value could overflow
the capability of an int.

Also fix the value types of the intermediate
variables to unsigned int.

Rewrite of patch from Guillaume Gourat

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[ARM] 3025/1: Add I2S platform device for PXA
Matt Reimer [Thu, 20 Oct 2005 22:21:18 +0000 (23:21 +0100)]
[ARM] 3025/1: Add I2S platform device for PXA

Patch from Matt Reimer

Adds an I2S platform_device for PXA. I2S is used to interface
with sound chips on systems like iPAQ h1910/h2200/hx4700 and
Asus 716.

Signed-off-by: mreimer@vpop.net
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[TCP] Allow len == skb->len in tcp_fragment
Herbert Xu [Thu, 20 Oct 2005 19:13:13 +0000 (17:13 -0200)]
[TCP] Allow len == skb->len in tcp_fragment

It is legitimate to call tcp_fragment with len == skb->len since
that is done for FIN packets and the FIN flag counts as one byte.
So we should only check for the len > skb->len case.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
19 years ago[DCCP]: Clear the IPCB area
Herbert Xu [Tue, 18 Oct 2005 02:03:28 +0000 (12:03 +1000)]
[DCCP]: Clear the IPCB area

Turns out the problem has nothing to do with use-after-free or double-free.
It's just that we're not clearing the CB area and DCCP unlike TCP uses a CB
format that's incompatible with IP.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Ian McDonald <imcdnzl@gmail.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
19 years ago[DCCP]: Make dccp_write_xmit always free the packet
Herbert Xu [Sun, 16 Oct 2005 11:08:46 +0000 (21:08 +1000)]
[DCCP]: Make dccp_write_xmit always free the packet

icmp_send doesn't use skb->sk at all so even if skb->sk has already
been freed it can't cause crash there (it would've crashed somewhere
else first, e.g., ip_queue_xmit).

I found a double-free on an skb that could explain this though.
dccp_sendmsg and dccp_write_xmit are a little confused as to what
should free the packet when something goes wrong.  Sometimes they
both go for the ball and end up in each other's way.

This patch makes dccp_write_xmit always free the packet no matter
what.  This makes sense since dccp_transmit_skb which in turn comes
from the fact that ip_queue_xmit always frees the packet.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
19 years ago[DCCP]: Use skb_set_owner_w in dccp_transmit_skb when skb->sk is NULL
Herbert Xu [Fri, 14 Oct 2005 06:38:49 +0000 (16:38 +1000)]
[DCCP]: Use skb_set_owner_w in dccp_transmit_skb when skb->sk is NULL

David S. Miller <davem@davemloft.net> wrote:
> One thing you can probably do for this bug is to mark data packets
> explicitly somehow, perhaps in the SKB control block DCCP already
> uses for other data.  Put some boolean in there, set it true for
> data packets.  Then change the test in dccp_transmit_skb() as
> appropriate to test the boolean flag instead of "skb_cloned(skb)".

I agree.  In fact we already have that flag, it's called skb->sk.
So here is patch to test that instead of skb_cloned().

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Acked-by: Ian McDonald <imcdnzl@gmail.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
19 years ago[PATCH] Fix handling spurious page fault for hugetlb region
Hugh Dickins [Thu, 20 Oct 2005 15:24:28 +0000 (16:24 +0100)]
[PATCH] Fix handling spurious page fault for hugetlb region

This reverts commit 3359b54c8c07338f3a863d1109b42eebccdcf379 and
replaces it with a cleaner version that is purely based on page table
operations, so that the synchronization between inode size and hugetlb
mappings becomes moot.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agopowerpc: Fix some bugs in the new merged time code
Paul Mackerras [Thu, 20 Oct 2005 12:33:06 +0000 (22:33 +1000)]
powerpc: Fix some bugs in the new merged time code

I had the sense of the test for when to use the old 601-style RTC
registers inverted.  pmac_calibrate_decr and via_calibrate_decr
weren't setting ppc_tb_freq, on which all the further calculations
depended.  Lastly, update_gtod was losing the top 32 bits of
the new tb_to_xs value.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agopowerpc/ppc/ppc64: Various compile fixes.
Paul Mackerras [Thu, 20 Oct 2005 11:10:09 +0000 (21:10 +1000)]
powerpc/ppc/ppc64: Various compile fixes.

This declares powersave_nap in system.h and makes it an int everywhere,
fixes typos for the maple platform, fixes a couple of places where
I missed removing the last two arguments from a message_pass function,
and makes ppc64 consistent with ppc32 in the type of the
pci_bridge.cfg_data field.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agoppc64: Use the merged mpic.c
Paul Mackerras [Thu, 20 Oct 2005 11:06:44 +0000 (21:06 +1000)]
ppc64: Use the merged mpic.c

This means we now compile in arch/powerpc/sysdev for ARCH=ppc64.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agopowerpc: Move some calculations from xxx_calibrate_decr to time_init
Paul Mackerras [Thu, 20 Oct 2005 11:04:51 +0000 (21:04 +1000)]
powerpc: Move some calculations from xxx_calibrate_decr to time_init

Previously the individual xxx_calibrate_decr functions would each
print the timebase and cpu frequency and calculate several values
such as tb_to_us and tb_to_xs.  This moves those printks and
calculations into time_init just after the call to the platform's
calibrate_decr function.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agoppc64: Move init_boot_text call and conswitchp init into setup_arch
Paul Mackerras [Thu, 20 Oct 2005 11:00:20 +0000 (21:00 +1000)]
ppc64: Move init_boot_text call and conswitchp init into setup_arch

This way they get done in one place for all platforms, and it is
more consistent with what ppc32 does.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agoppc: rename pci_assign_all_busses to pci_assign_all_buses
Paul Mackerras [Thu, 20 Oct 2005 10:57:05 +0000 (20:57 +1000)]
ppc: rename pci_assign_all_busses to pci_assign_all_buses

... for consistency with ppc64 and to make merging easier.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agopowerpc: Merge various powermac-related header files.
Paul Mackerras [Thu, 20 Oct 2005 10:53:39 +0000 (20:53 +1000)]
powerpc: Merge various powermac-related header files.

Except for smu.h, which moved from asm-ppc64 to asm-powerpc, all
of these moved from asm-ppc to asm-powerpc.  In each case the
asm-ppc64 version (if there was one) was just a single line
including the asm-ppc version.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agopowerpc: Fix places where ppc_md.show_[per]cpuinfo was treated as int
Paul Mackerras [Thu, 20 Oct 2005 10:48:19 +0000 (20:48 +1000)]
powerpc: Fix places where ppc_md.show_[per]cpuinfo was treated as int

I missed a few places where ppc code was still assuming that the
ppc_md.show_[per]cpuinfo functions returned int.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agopowerpc: Move smp_mpic_message_pass into mpic.c
Paul Mackerras [Thu, 20 Oct 2005 07:09:51 +0000 (17:09 +1000)]
powerpc: Move smp_mpic_message_pass into mpic.c

Having it here rather than in arch/ppc64/kernel/smp.c means that
we can use it on 32-bit SMP systems easily with ARCH=powerpc.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agoppc64: Change ppc_md.get_cpuinfo to ppc_md.show_cpuinfo
Paul Mackerras [Thu, 20 Oct 2005 07:02:01 +0000 (17:02 +1000)]
ppc64: Change ppc_md.get_cpuinfo to ppc_md.show_cpuinfo

... for consistency with ppc32; also add in ppc32's show_percpuinfo
function.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agoLinux v2.6.14-rc5 v2.6.14-rc5
Linus Torvalds [Thu, 20 Oct 2005 06:23:05 +0000 (23:23 -0700)]
Linux v2.6.14-rc5

The -rc4 release was supposed to be the last -rc, but here goes.  The
RCU fixes and the swiotlb changes need an -rc for final testing.

19 years ago[PATCH] powerpc: Merge types.h
Becky Bruce [Wed, 19 Oct 2005 23:45:03 +0000 (18:45 -0500)]
[PATCH] powerpc: Merge types.h

This patch merges types.h into include/asm-powerpc. The only real change is
the removal of the include of linux/config.h from the 32-bit version - it
doesn't appear to be necessary.

This patch has been built on several different 32 and 64-bit platforms,
and booted on mpc8540_ads.

Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Signed-off-by: Kumar Gala <kumar.gala@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] powerpc: Merge ppc64 pmc.[ch] with ppc32 perfmon.[ch]
David Gibson [Wed, 19 Oct 2005 04:53:32 +0000 (14:53 +1000)]
[PATCH] powerpc: Merge ppc64 pmc.[ch] with ppc32 perfmon.[ch]

This patches the ppc32 and ppc64 versions of the headers and .c files
with helper functions for manipulating the performance counting
hardware.  As a side effect, it removes use of the term "perfmon" from
ppc32, thus avoiding confusion with the unrelated performance counter
interface from HP Labs also called "perfmon".

Built, but not booted, for g5, pSeries, iSeries, and 32-bit Powermac
with both ARCH=powerpc and ARCH=ppc{,64} as appropriate.

Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] build fix for uml/amd64
Al Viro [Tue, 18 Oct 2005 21:45:17 +0000 (22:45 +0100)]
[PATCH] build fix for uml/amd64

Missing half of the [PATCH] uml: Fix sysrq-r support for skas mode
We need to remove these (UPT_[DEFG]S) from the read side as well as the
write one - otherwise it simply won't build.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Acked-by: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] scsi_error thread exits in TASK_INTERRUPTIBLE state.
Steven Rostedt [Wed, 19 Oct 2005 12:22:13 +0000 (08:22 -0400)]
[PATCH] scsi_error thread exits in TASK_INTERRUPTIBLE state.

Found in the -rt patch set.  The scsi_error thread likely will be in the
TASK_INTERRUPTIBLE state upon exit.  This patch fixes this bug.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ppc64: update defconfigs
Paul Mackerras [Wed, 19 Oct 2005 22:34:56 +0000 (08:34 +1000)]
[PATCH] ppc64: update defconfigs

Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoMerge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Thu, 20 Oct 2005 06:12:03 +0000 (23:12 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm

19 years ago[PATCH] swiotlb: make sure initial DMA allocations really are in DMA memory
Yasunori Goto [Wed, 19 Oct 2005 22:52:18 +0000 (15:52 -0700)]
[PATCH] swiotlb: make sure initial DMA allocations really are in DMA memory

This introduces a limit parameter to the core bootmem allocator; The new
parameter indicates that physical memory allocated by the bootmem
allocator should be within the requested limit.

We also introduce alloc_bootmem_low_pages_limit, alloc_bootmem_node_limit,
alloc_bootmem_low_pages_node_limit apis, but alloc_bootmem_low_pages_limit
is the only api used for swiotlb.

The existing alloc_bootmem_low_pages() api could instead have been
changed and made to pass right limit to the core allocator.  But that
would make the patch more intrusive for 2.6.14, as other arches use
alloc_bootmem_low_pages().  We may be done that post 2.6.14 as a
cleanup.

With this, swiotlb gets memory within 4G for both x86_64 and ia64
arches.

Signed-off-by: Yasunori Goto <y-goto@jp.fujitsu.com>
Cc: Ravikiran G Thirumalai <kiran@scalex86.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] `unaligned access' in acpi get_root_bridge_busnr()
Peter Chubb [Thu, 20 Oct 2005 05:45:14 +0000 (22:45 -0700)]
[PATCH] `unaligned access' in acpi get_root_bridge_busnr()

In drivers/acpi/glue.c the address of an integer is cast to the address of
an unsigned long.  This breaks on systems where a long is larger than an
int --- for a start the int can be misaligned; for a second the assignment
through the pointer will overwrite part of the next variable.

Signed-off-by: Peter Chubb <peterc@gelato.unsw.edu.au>
Acked-by: "Brown, Len" <len.brown@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] fix MGA DRM regression before 2.6.14
Dave Airlie [Thu, 20 Oct 2005 04:23:51 +0000 (21:23 -0700)]
[PATCH] fix MGA DRM regression before 2.6.14

I've gotten a report on lkml, of a possible regression in the MGA DRM in
2.6.14-rc4 (since -rc1), I haven't been able to reproduce it here, but I've
figured out some possible issues in the mga code that were definitely
wrong, some of these are from DRM CVS, the main fix is the agp enable bit
on the old code path still used by everyone.....

Signed-off-by: Dave Airlie <airlied@linux.ie>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Threads shouldn't inherit PF_NOFREEZE
Alan Stern [Thu, 20 Oct 2005 04:23:51 +0000 (21:23 -0700)]
[PATCH] Threads shouldn't inherit PF_NOFREEZE

The PF_NOFREEZE process flag should not be inherited when a thread is
forked.  This patch (as585) removes the flag from the child.

This problem is starting to show up more and more as drivers turn to the
kthread API instead of using kernel_thread().  As a result, their kernel
threads are now children of the kthread worker instead of modprobe, and
they inherit the PF_NOFREEZE flag.  This can cause problems during system
suspend; the kernel threads are not getting frozen as they ought to be.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Acked-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Export RCS_TAR_IGNORE for rpm targets
Tom Rini [Thu, 20 Oct 2005 04:23:49 +0000 (21:23 -0700)]
[PATCH] Export RCS_TAR_IGNORE for rpm targets

The variable RCS_TAR_IGNORE is used in scripts/packaging/Makefile, but not
exported from the main Makefile, so it's never used.

This results in the rpm targets being very unhappy in quilted trees.

Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ppc64: Fix error in vDSO 32 bits date
Benjamin Herrenschmidt [Thu, 20 Oct 2005 04:23:49 +0000 (21:23 -0700)]
[PATCH] ppc64: Fix error in vDSO 32 bits date

The implementation of __kernel_gettimeofday() in the 32 bits vDSO has a
small bug (a typo actually) that will cause it to lose 1 bit of precision.
Not terribly bad but worth fixing.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Three one-liners in md.c
NeilBrown [Thu, 20 Oct 2005 04:23:47 +0000 (21:23 -0700)]
[PATCH] Three one-liners in md.c

The main problem fixes is that in certain situations stopping md arrays may
take longer than you expect, or may require multiple attempts.  This would
only happen when resync/recovery is happening.

This patch fixes three vaguely related bugs.

1/ The recent change to use kthreads got the setting of the
   process name wrong.  This fixes it.
2/ The recent change to use kthreads lost the ability for
   md threads to be signalled with SIG_KILL.  This restores that.
3/ There is a long standing bug in that if:
    - An array needs recovery (onto a hot-spare) and
    - The recovery is being blocked because some other array being
       recovered shares a physical device and
    - The recovery thread is killed with SIG_KILL
   Then the recovery will appear to have completed with no IO being
   done, which can cause data corruption.
   This patch makes sure that incomplete recovery will be treated as
   incomplete.

Note that any kernel affected by bug 2 will not suffer the problem of bug
3, as the signal can never be delivered.  Thus the current 2.6.14-rc
kernels are not susceptible to data corruption.  Note also that if arrays
are shutdown (with "mdadm -S" or "raidstop") then the problem doesn't
occur.  It only happens if a SIGKILL is independently delivered as done by
'init' when shutting down.

Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] raw1394: fix locking in the presence of SMP and interrupts
Andy Wingo [Thu, 20 Oct 2005 04:23:46 +0000 (21:23 -0700)]
[PATCH] raw1394: fix locking in the presence of SMP and interrupts

Changes all spinlocks that can be held during an irq handler to disable
interrupts while the lock is held.  Changes spin_[un]lock_irq to use the
irqsave/irqrestore variants for robustness and readability.

In raw1394.c:handle_iso_listen(), don't grab host_info_lock at all -- we're
not accessing host_info_list or host_count, and holding this lock while
trying to tasklet_kill the iso tasklet this can cause an ABBA deadlock if
ohci:dma_rcv_tasklet is running and tries to grab host_info_lock in
raw1394.c:receive_iso.  Test program attached reliably deadlocks all SMP
machines I have been able to test without this patch.

Signed-off-by: Andy Wingo <wingo@pobox.com>
Acked-by: Ben Collins <bcollins@ubuntu.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] orinoco: limit message rate
Andrew Morton [Thu, 20 Oct 2005 04:23:44 +0000 (21:23 -0700)]
[PATCH] orinoco: limit message rate

Brice Goglin <Brice.Goglin@ens-lyon.org> reports a printk storm from this
driver.  Fix.

Acked-by: David Gibson <hermes@gibson.dropbear.id.au>
Cc: Jeff Garzik <jgarzik@pobox.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] mm: hugetlb truncation fixes
Hugh Dickins [Thu, 20 Oct 2005 04:23:43 +0000 (21:23 -0700)]
[PATCH] mm: hugetlb truncation fixes

hugetlbfs allows truncation of its files (should it?), but hugetlb.c often
forgets that: crashes and misaccounting ensue.

copy_hugetlb_page_range better grab the src page_table_lock since we don't
want to guess what happens if concurrently truncated.  unmap_hugepage_range
rss accounting must not assume the full range was mapped.  follow_hugetlb_page
must guard with page_table_lock and be prepared to exit early.

Restyle copy_hugetlb_page_range with a for loop like the others there.

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 cpu timers exit deadlock and races
Roland McGrath [Thu, 20 Oct 2005 05:21:23 +0000 (22:21 -0700)]
[PATCH] Fix cpu timers exit deadlock and races

Oleg Nesterov reported an SMP deadlock.  If there is a running timer
tracking a different process's CPU time clock when the process owning
the timer exits, we deadlock on tasklist_lock in posix_cpu_timer_del via
exit_itimers.

That code was using tasklist_lock to check for a race with __exit_signal
being called on the timer-target task and clearing its ->signal.
However, there is actually no such race.  __exit_signal will have called
posix_cpu_timers_exit and posix_cpu_timers_exit_group before it does
that.  Those will clear those k_itimer's association with the dying
task, so posix_cpu_timer_del will return early and never reach the code
in question.

In addition, posix_cpu_timer_del called from exit_itimers during execve
or directly from timer_delete in the process owning the timer can race
with an exiting timer-target task to cause a double put on timer-target
task struct.  Make sure we always access cpu_timers lists with sighand
lock held.

Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ppc32: replace use of _GLOBAL with .globl for ppc32
Kumar Gala [Tue, 18 Oct 2005 22:42:41 +0000 (17:42 -0500)]
[PATCH] ppc32: replace use of _GLOBAL with .globl for ppc32

The _GLOBAL() macro is for text symbols only. Changed to using
.globl for .data symbols.  This is also needed in ppc32 land
to allow FSL Book-E, 40x, and 44x to work.

Signed-off-by: Kumar K. Gala <kumar.gala@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] powerpc: Some more fixes to allow building for a Book-E processor
Kumar Gala [Tue, 18 Oct 2005 22:42:09 +0000 (17:42 -0500)]
[PATCH] powerpc: Some more fixes to allow building for a Book-E processor

Some minor fixes that are needed if we are building for a book-e
processor.

Signed-off-by: Kumar K. Gala <kumar.gala@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agopowerpc: Fix a corner case in __div64_32
Paul Mackerras [Wed, 19 Oct 2005 23:37:02 +0000 (09:37 +1000)]
powerpc: Fix a corner case in __div64_32

The code was incorrectly doing a division by 0 in the case where
the denominator was 0x100000000 and the divisor was 0xffffffff.
Thanks to Fred Liu of Motorola for pointing this out.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agopowerpc: Fix a branch-too-far link error for 32-bit targets
Paul Mackerras [Wed, 19 Oct 2005 23:24:18 +0000 (09:24 +1000)]
powerpc: Fix a branch-too-far link error for 32-bit targets

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agopowerpc: Merge time.c and asm/time.h.
Paul Mackerras [Wed, 19 Oct 2005 23:23:26 +0000 (09:23 +1000)]
powerpc: Merge time.c and asm/time.h.

We now use the merged time.c for both 32-bit and 64-bit compilation
with ARCH=powerpc, and for ARCH=ppc64, but not for ARCH=ppc32.
This removes setup_default_decr (folds its function into time_init)
and moves wakeup_decrementer into time.c.  This also makes an
asm-powerpc/rtc.h.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agoppc64: Minor compilation fixes
Paul Mackerras [Wed, 19 Oct 2005 23:15:05 +0000 (09:15 +1000)]
ppc64: Minor compilation fixes

This defines CONFIG_PPC_STD_MMU for ppc64, changes an instance of
sys32_ to compat_sys_ in the ppc64 syscall table, and removes a
reference to a non-existent arch/powerpc/xmon/Makefile.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agopowerpc: Move ptrace32.c from arch/ppc64 to arch/powerpc
Paul Mackerras [Wed, 19 Oct 2005 23:11:29 +0000 (09:11 +1000)]
powerpc: Move ptrace32.c from arch/ppc64 to arch/powerpc

Also corrected my email address in ptrace.c and updated the comments
at the top of ptrace32.c.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[ARM] 3024/1: Add cpu_v6_proc_fin
Tony Lindgren [Wed, 19 Oct 2005 22:00:56 +0000 (23:00 +0100)]
[ARM] 3024/1: Add cpu_v6_proc_fin

Patch from Tony Lindgren

Machine restart calls cpu_proc_fin() to clean and disable
cache, and turn off interrupts. This patch adds proper
cpu_v6_proc_fin.

Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[PATCH] Handle spurious page fault for hugetlb region
Seth, Rohit [Tue, 18 Oct 2005 21:15:12 +0000 (14:15 -0700)]
[PATCH] Handle spurious page fault for hugetlb region

The hugetlb pages are currently pre-faulted.  At the time of mmap of
hugepages, we populate the new PTEs.  It is possible that HW has already
cached some of the unused PTEs internally.  These stale entries never
get a chance to be purged in existing control flow.

This patch extends the check in page fault code for hugepages.  Check if
a faulted address falls with in size for the hugetlb file backing it.
We return VM_FAULT_MINOR for these cases (assuming that the arch
specific page-faulting code purges the stale entry for the archs that
need it).

Signed-off-by: Rohit Seth <rohit.seth@intel.com>
[ This is apparently arguably an ia64 port bug. But the code won't
  hurt, and for now it fixes a real problem on some ia64 machines ]

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agopowerpc: Eliminate a compile warning in signal_32.c
Paul Mackerras [Wed, 19 Oct 2005 13:13:04 +0000 (23:13 +1000)]
powerpc: Eliminate a compile warning in signal_32.c

The second argument of get_sigset_t needed to have the const keyword.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agoppc: declare smp_ops in asm/smp.h, since platform setup code needs it
Paul Mackerras [Wed, 19 Oct 2005 13:12:01 +0000 (23:12 +1000)]
ppc: declare smp_ops in asm/smp.h, since platform setup code needs it

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agopowerpc: Merge machdep.h
Paul Mackerras [Wed, 19 Oct 2005 13:11:21 +0000 (23:11 +1000)]
powerpc: Merge machdep.h

A few things change for consistency between ppc32 and ppc64:
idle functions return void; *_get_boot_time functions return
unsigned long (i.e. time_t) rather than filling in a struct rtc_time
(since that's useful to the callers and easier for pmac to
generate); *_get_rtc_time and *_set_rtc_time functions take
a struct rtc_time; irq_canonicalize is gone; nvram_sync returns
void.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agoppc: Minor smp changes for consistency with ppc64
Paul Mackerras [Wed, 19 Oct 2005 11:44:51 +0000 (21:44 +1000)]
ppc: Minor smp changes for consistency with ppc64

This makes platform code use the smp_ops variable directly instead
of ppc_md.smp_ops, removes the two unused `data' and `wait' arguments
from the *_message_pass() functions, and removes the call to the
never-implemented smp_ops->space_timers() function.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[ARM] 3023/1: pxa-regs: Typo in ARM pxa register definitions.
Paul Schulz [Tue, 18 Oct 2005 18:40:32 +0000 (19:40 +0100)]
[ARM] 3023/1: pxa-regs: Typo in ARM pxa register definitions.

Patch from Paul Schulz

The following trivial patch is to fix what looks like a typo in the PXA register
definitions. The correction comes directly from the definition in the
Intel Documentation.

 http://www.intel.com/design/pca/applicationsprocessors/manuals/278693.htm
 Intel(R) PXA 255 Processor - Developers Manual - Jan 2004 - Page 12-33

Neither 'UDCCS_IO_ROF' or 'UDCCS_IO_DME' are currently used elseware
in the main code (from grep of tree)... The current definitions have been
in the code since at lease 2.4.7.

Signed-off-by: Paul Schulz <paul@mawsonlakes.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[PATCH] vesafb: Fix display corruption on display blank
Antonino A. Daplas [Tue, 18 Oct 2005 07:59:52 +0000 (15:59 +0800)]
[PATCH] vesafb: Fix display corruption on display blank

Reported by: Bob Tracy <rct@gherkin.frus.com>

 "...I've got a Toshiba notebook (730XCDT -- Pentium 150MMX) for which
  I'm using the Vesa FB driver.  When the machine has been idle for some
  time and the driver attempts to powerdown the display, rather than the
  display going blank, it goes gray with several strange lines.  When I
  hit the "shift" key or other-wise wake up the display, the old video
  state is not fully restored..."

vesafb recently added a blank method which has only 2 states, powerup and
powerdown.  The powerdown state is used for all blanking levels, but in his
case, powerdown does not work correctly for higher levels of display
powersaving. Thus, for intermediate power levels, use software blanking,
and use only hardware blanking for an explicit powerdown.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoMerge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Tue, 18 Oct 2005 15:41:06 +0000 (08:41 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm

19 years agoMerge master.kernel.org:/home/rmk/linux-2.6-serial
Linus Torvalds [Tue, 18 Oct 2005 15:40:46 +0000 (08:40 -0700)]
Merge master.kernel.org:/home/rmk/linux-2.6-serial

19 years agoAdd some basic .gitignore files
Linus Torvalds [Tue, 18 Oct 2005 15:26:15 +0000 (08:26 -0700)]
Add some basic .gitignore files

This still leaves driver and architecture-specific subdirectories alone,
but gets rid of the bulk of the "generic" generated files that we should
ignore.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[ARM] 3021/1: Interrupt 0 bug fix for ixp4xx
Kenneth Tan [Tue, 18 Oct 2005 06:53:35 +0000 (07:53 +0100)]
[ARM] 3021/1: Interrupt 0 bug fix for ixp4xx

Patch from Kenneth Tan

The get_irqnr_and_base subroutine of ixp4xx does not take interrupt 0 condition into account properly. We should not perform "subs" here. The Z flag will be set when interrupt 0 occur, which resulting "movne r1, sp" in the caller routine (irq_handler) not being executed.

When interrupt 0 occur:
o if CONFIG_CPU_IXP46X is not set, "subs" will set the Z flag and return
o if CONFIG_CPU_IXP46X is set, codes in upper interrupt handling will be trigerred. But since this is not supper interrupt, the "cmp" in the upper interrupt handling portion will set the Z flag and return

Signed-off-by: Kenneth Tan <chong.yin.tan@intel.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[ARM] 3020/1: Fixes typo error CONFIG_CPU_IXP465, which should be CONFIG_CPU_IXP46X
Kenneth Tan [Tue, 18 Oct 2005 06:51:35 +0000 (07:51 +0100)]
[ARM] 3020/1: Fixes typo error CONFIG_CPU_IXP465, which should be CONFIG_CPU_IXP46X

Patch from Kenneth Tan

The cpu_is_ixp465 macro in include/asm-arm/arch-ixp4xx/hardware.h is always returning 0 because #ifdef CONFIG_CPU_IXP465 is always false.

Signed-off-by: Kenneth Tan <chong.yin.tan@intel.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[ARM] 3019/1: fix wrong comments
Nicolas Pitre [Tue, 18 Oct 2005 06:51:34 +0000 (07:51 +0100)]
[ARM] 3019/1: fix wrong comments

Patch from Nicolas Pitre

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years ago[ARM] 3018/1: S3C2410 - check de-referenced device is really a platform device
Ben Dooks [Tue, 18 Oct 2005 06:51:34 +0000 (07:51 +0100)]
[ARM] 3018/1: S3C2410 - check de-referenced device is really a platform device

Patch from Ben Dooks

Check that the device we are looking at is really
a platform device before trying to cast it to one
to find out the platform bus number.

Thanks to RMK for pointing this out.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
19 years agoMerge rsync://oak/kernels/iseries/work/
Paul Mackerras [Tue, 18 Oct 2005 04:53:41 +0000 (14:53 +1000)]
Merge rsync://oak/kernels/iseries/work/

19 years agopowerpc: change sys32_ to compat_sys_
Stephen Rothwell [Tue, 18 Oct 2005 04:51:57 +0000 (14:51 +1000)]
powerpc: change sys32_ to compat_sys_

This allows us to get rid of one type of entry in systbl.S.

In passing we remove the duplicate compat_sys_getdents and
compat_sys_utimes for which there are generic versions.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
19 years agopowerpc: Fix various compile errors with ARCH=ppc, ppc64 and powerpc
Paul Mackerras [Tue, 18 Oct 2005 04:19:41 +0000 (14:19 +1000)]
powerpc: Fix various compile errors with ARCH=ppc, ppc64 and powerpc

This makes ppc use the syscalls.c from arch/powerpc/kernel, exports
copy_and_flush from head_32.S for use by prom_init.c (ARCH=powerpc),
and consolidates the sys_fadvise64_64 implementations for 32-bit.

Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agopowerpc: merge ppc signal.c and ppc64 signal32.c
Stephen Rothwell [Tue, 18 Oct 2005 01:17:58 +0000 (11:17 +1000)]
powerpc: merge ppc signal.c and ppc64 signal32.c

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
19 years ago[PATCH] kbuild: Eliminate build error when KALLSYMS not defined
Mark Rustad [Mon, 17 Oct 2005 23:43:34 +0000 (16:43 -0700)]
[PATCH] kbuild: Eliminate build error when KALLSYMS not defined

The following build error happens with 2.6.14-rc4 when CONFIG_KALLSYMS is
not defined.  The error message in a fragment of the output was:

  CC      arch/i386/lib/usercopy.o
  AR      arch/i386/lib/lib.a
/bin/sh: line 1: +@: command not found
make[3]: warning: jobserver unavailable: using -j1.  Add `+' to parent make rule.
  CHK     include/linux/compile.h

Signed-off-by: Mark Rustad <mrustad@mac.com>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] aio: revert lock_kiocb()
Zach Brown [Mon, 17 Oct 2005 23:43:33 +0000 (16:43 -0700)]
[PATCH] aio: revert lock_kiocb()

lock_kiocb() was introduced to serialize retrying and cancellation.  In the
process of doing so it tried to sleep waiting for KIF_LOCKED while holding
the ctx_lock spinlock.  Recent fixes have ensured that multiple concurrent
retries won't be attempted for a given iocb.  Cancel has other problems and
has no significant in-tree users that have been complaining about it.  So
for the immediate future we'll revert sleeping with the lock held and will
address proper cancellation and retry serialization in the future.

Signed-off-by: Zach Brown <zach.brown@oracle.com>
Acked-by: Benjamin LaHaise <bcrl@kvack.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] uniput - fix crash on SMP
Dmitry Torokhov [Mon, 17 Oct 2005 23:43:32 +0000 (16:43 -0700)]
[PATCH] uniput - fix crash on SMP

Only signal completion after marking request slot as free, otherwise other
processor can free request structure before we finish using it.

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] Fix /proc/acpi/events around suspend
Pavel Machek [Mon, 17 Oct 2005 23:43:31 +0000 (16:43 -0700)]
[PATCH] Fix /proc/acpi/events around suspend

Fix -EIO on /proc/acpi/events after suspends.  This actually breaks
suspending by power button in many setups.

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] n_r3964 mod_timer() fix
Stephan Brodkorb [Mon, 17 Oct 2005 23:43:30 +0000 (16:43 -0700)]
[PATCH] n_r3964 mod_timer() fix

Since Revision 1.10 was released the n_r3964 module wasn't able to receive any
data.  The reason for that behavior is because there were some wrong calls of
mod_timer(...) in the function receive_char (...).  This patch should fix this
problem and was successfully tested with talking to some kuka industrial
robots.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] output of /proc/maps on nommu systems is incomplete
David McCullough [Mon, 17 Oct 2005 23:43:29 +0000 (16:43 -0700)]
[PATCH] output of /proc/maps on nommu systems is incomplete

Currently you do not get all the map entries on nommu systems because the
start function doesn't index into the list using the value of "pos".

Signed-off-by: David McCullough <davidm@snapgear.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] rcu: keep rcu callback event counter
Eric Dumazet [Mon, 17 Oct 2005 18:01:21 +0000 (20:01 +0200)]
[PATCH] rcu: keep rcu callback event counter

This makes call_rcu() keep track of how many events there are on the RCU
list, and cause a reschedule event when the list gets too long.

This helps keep RCU event lists down.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Fix and clean up quirk_intel_ide_combined() configuration
Jeff Garzik [Mon, 17 Oct 2005 17:01:57 +0000 (13:01 -0400)]
[PATCH] Fix and clean up quirk_intel_ide_combined() configuration

This change makes quirk_intel_ide_combined() dependent on the precise
conditions under which it is needed:

* IDE is built in
* IDE SATA option is not set
* ata_piix or ahci drivers are enabled

This fixes an issue where some modular configurations would not cause
the quirk to be enabled.

Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Signed-off-by: Linus torvalds <torvalds@osdl.org>
19 years ago[PATCH] posix-timers: fix task accounting
Oleg Nesterov [Mon, 17 Oct 2005 14:49:42 +0000 (18:49 +0400)]
[PATCH] posix-timers: fix task accounting

Make sure we release the task struct properly when releasing pending
timers.

release_task() does write_lock_irq(&tasklist_lock), so it can't race
with run_posix_cpu_timers() on any cpu.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] NFS: Fix Oopsable/unnecessary i_count manipulations in nfs_wait_on_inode()
Trond Myklebust [Mon, 17 Oct 2005 10:03:23 +0000 (06:03 -0400)]
[PATCH] NFS: Fix Oopsable/unnecessary i_count manipulations in nfs_wait_on_inode()

Oopsable since nfs_wait_on_inode() can get called as part of iput_final().

Unnecessary since the caller had better be damned sure that the inode won't
disappear from underneath it anyway.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] NFS: Fix cache consistency races
Trond Myklebust [Mon, 17 Oct 2005 10:02:00 +0000 (06:02 -0400)]
[PATCH] NFS: Fix cache consistency races

If the data cache has been marked as potentially invalid by nfs_refresh_inode,
we should invalidate it rather than assume that changes are due to our own
activity.

Also ensure that we always start with a valid cache before declaring it
to be protected by a delegation.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>