Ralf Baechle [Mon, 9 Oct 2006 22:20:46 +0000 (23:20 +0100)]
[MIPS] qtronix: remove driver.
Another leftover of removing support for the ITE8172.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Atsushi Nemoto [Sun, 8 Oct 2006 16:24:23 +0000 (01:24 +0900)]
[MIPS] ret_from_irq adjustment
Make sure that RA on top of interrupt stack is an address of ret_from_irq,
so that dump_stack etc. can trace info interrupted context.
Also this patch fixes except_vec_vi_handler and __smtc_ipi_vector which
seems broken.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Fri, 2 Jun 2006 10:48:11 +0000 (11:48 +0100)]
[MIPS] Fix RM9000 wait instruction detection.
Only revisions < 4.0 don't have a functional wait instruction.
From Thomas Koeller (Thomas.Koeller@baslerweb.com).
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Geert Uytterhoeven [Mon, 9 Oct 2006 20:27:42 +0000 (22:27 +0200)]
[PATCH] m68k/MVME167: SERIAL167 tty flip buffer updates
Compile fixes related to changed tty flip buffer handling.
Signed-off-by: Kars de Jong <jongk@linux-m68k.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Geert Uytterhoeven [Mon, 9 Oct 2006 20:27:42 +0000 (22:27 +0200)]
[PATCH] m68k/MVME167: SERIAL167 is no longer broken
- SERIAL167 is no longer broken
- Removed some unused variables from the driver to fix compiler warnings
Signed-off-by: Kars de Jong <jongk@linux-m68k.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Geert Uytterhoeven [Mon, 9 Oct 2006 20:23:56 +0000 (22:23 +0200)]
[PATCH] m68k/Apollo: Remove obsolete arch/m68k/apollo/dma.c
Remove unused arch/m68k/apollo/dma.c, which was obsoleted by the move to the
generic DMA API.
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Geert Uytterhoeven [Mon, 9 Oct 2006 20:23:31 +0000 (22:23 +0200)]
[PATCH] m68k/Atari: Interrupt updates
Misc Atari fixes:
- initialize correct number of atari irqs
- silence vbl interrupt until it's used by atafb
- use mdelay() to read clock if necessary
Signed-off-by: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Geert Uytterhoeven [Mon, 9 Oct 2006 20:22:37 +0000 (22:22 +0200)]
[PATCH] m68k/HP300: Enable HIL configuration options
Enable HIL configuration options on HP300
Signed-off-by: Kars de Jong <jongk@linux-m68k.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Geert Uytterhoeven [Mon, 9 Oct 2006 20:02:31 +0000 (22:02 +0200)]
[PATCH] m68k: more syscall updates
Add missing syscalls
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Geert Uytterhoeven [Mon, 9 Oct 2006 20:02:25 +0000 (22:02 +0200)]
[PATCH] m68k: syscall updates
Add some missing system calls (recent udev needs them)
Signed-off-by: Kars de Jong <jongk@linux-m68k.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Eric W. Biederman [Mon, 9 Oct 2006 05:41:59 +0000 (23:41 -0600)]
[PATCH] x86_64 irq: Scream but don't die if we receive an unexpected irq
Due to code bugs or misbehaving hardware it is possible that we can
receive an interrupt that we have not mapped into a linux irq. Calling
BUG when that happens is very rude, and if the problem is mild enough
prevents anything else from getting done.
So instead of calling BUG just scream loudly about the problem and
continue running. We don't have enough knowledge to know which
interrupt triggered this behavior so we don't acknowledge it. This will
likely prevent a recurrence of the problem by jamming up the works with
an unacknowledged interrupt.
If the interrupt was something important it is quite possible that
nothing productive will happen past this point. But it is now at least
possible to keep working if the kernel can survive without the interrupt
we dropped on the floor.
Solutions like irqpoll should generally make dropped irqs non-fatal.
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Mon, 9 Oct 2006 21:29:26 +0000 (14:29 -0700)]
Merge git://git.infradead.org/~dhowells/irq-2.6
* git://git.infradead.org/~dhowells/irq-2.6:
IRQ: Use the new typedef for interrupt handler function pointers
Linus Torvalds [Mon, 9 Oct 2006 21:21:45 +0000 (14:21 -0700)]
Merge branch 'irqclean-submit1' of /linux/kernel/git/jgarzik/misc-2.6
* 'irqclean-submit1' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/misc-2.6:
drivers/isdn/act2000: kill irq2card_map
drivers/net/eepro: kill dead code
Various drivers' irq handlers: kill dead code, needless casts
drivers/net: eliminate irq handler impossible checks, needless casts
arch/i386/kernel/time: don't shadow 'irq' function arg
Bill Nottingham [Mon, 9 Oct 2006 20:10:48 +0000 (16:10 -0400)]
[PATCH] Introduce vfs_listxattr
This patch moves code out of fs/xattr.c:listxattr into a new function -
vfs_listxattr. The code for vfs_listxattr was originally submitted by Bill
Nottingham <notting@redhat.com> to Unionfs.
Sorry about that. The reason for this submission is to make the
listxattr code in fs/xattr.c a little cleaner (as well as to clean up
some code in Unionfs.)
Currently, Unionfs has vfs_listxattr defined in its code. I think
that's very ugly, and I'd like to see it (re)moved. The logical place
to put it, is along side of all the other vfs_*xattr functions.
Overall, I think this patch is benefitial for both kernel.org kernel and
Unionfs.
Signed-off-by: Josef "Jeff" Sipek <jsipek@cs.sunysb.edu>
Acked-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Mon, 9 Oct 2006 19:29:43 +0000 (20:29 +0100)]
[PATCH] tifm __iomem annotations, NULL noise removal
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Mon, 9 Oct 2006 19:29:03 +0000 (20:29 +0100)]
[PATCH] mos7840 annotations
__user annotations, NULL noise removal, %p use for pointers
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Mon, 9 Oct 2006 19:28:03 +0000 (20:28 +0100)]
[PATCH] s390 traps.c __user annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Mon, 9 Oct 2006 19:26:58 +0000 (20:26 +0100)]
[PATCH] hppfs: readdir callback missed in prototype change
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Mon, 9 Oct 2006 19:27:30 +0000 (20:27 +0100)]
[PATCH] dlm gfp_t annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Mon, 9 Oct 2006 19:24:49 +0000 (20:24 +0100)]
[PATCH] wrong order of arguments in copy_to_user() in ncpfs
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Mon, 9 Oct 2006 15:26:47 +0000 (16:26 +0100)]
[PATCH] mv64630_pic NULL noise removal
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Mon, 9 Oct 2006 15:23:09 +0000 (16:23 +0100)]
[PATCH] trivial iomem annotations (arch/powerpc/platfroms/parsemi/pci.c)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Mon, 9 Oct 2006 15:22:09 +0000 (16:22 +0100)]
[PATCH] extern doesn't make sense on a definition of function...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Mon, 9 Oct 2006 11:47:31 +0000 (12:47 +0100)]
[PATCH] more ia64 irq handlers
Cast to (void *) in request_irq() argument is stupid and
only hides problems...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Mon, 9 Oct 2006 11:46:52 +0000 (12:46 +0100)]
[PATCH] fallout from alpha pt_regs patches
missed irq handler in sys_titan and forgotten prototype update.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Mon, 9 Oct 2006 10:51:14 +0000 (11:51 +0100)]
[PATCH] sparc64 irq pt_regs fallout
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
David Howells [Mon, 9 Oct 2006 11:19:47 +0000 (12:19 +0100)]
IRQ: Use the new typedef for interrupt handler function pointers
Use the new typedef for interrupt handler function pointers rather than
actually spelling out the full thing each time. This was scripted with the
following small shell script:
#!/bin/sh
egrep -nHrl -e 'irqreturn_t[ ]*[(][*]' $* |
while read i
do
echo $i
perl -pi -e 's/irqreturn_t\s*[(]\s*[*]\s*([_a-zA-Z0-9]*)\s*[)]\s*[(]\s*int\s*,\s*void\s*[*]\s*[)]/irq_handler_t \1/g' $i || exit $?
done
Signed-Off-By: David Howells <dhowells@redhat.com>
Al Viro [Mon, 9 Oct 2006 01:11:47 +0000 (02:11 +0100)]
[PATCH] m68k/kernel/dma.c assumes !MMU_SUN3
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Mon, 9 Oct 2006 01:09:49 +0000 (02:09 +0100)]
[PATCH] arm: it's OK to pass pointer to volatile as iounmap() argument...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Mon, 9 Oct 2006 00:28:25 +0000 (17:28 -0700)]
Fix extraneous '&' in recent NFS client cleanup
We should pass "wait_event_interruptible()" the wait-queue itself, not
the pointer to it. The magic macro will pointerize it internally.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Sun, 8 Oct 2006 23:42:11 +0000 (16:42 -0700)]
Merge branch 'upstream' of git://ftp.linux-mips.org/upstream-linus
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
[MIPS] Cleanup unnecessary <asm/ptrace.h> inclusions.
[MIPS] DEC: pt_regs fixes for buserror handlers
[MIPS] Fix return type of gt64120_irq.
[MIPS] Ocelot C: Build fix - ll_mv64340_irq takes no more regs argument.
[MIPS] Jazz defconfig file.
[MIPS] Jazz: build fix - include <linux/screen_info.h>
[MIPS] Jazz: Remove warning. After 7 years probably somebody test this ;)
[MIPS] Jazz: Fix I/O port resources.
[MIPS] DEC: pt_regs fixes for dec_intr_halt.
handle_sysrq lost its pt_regs * argument
Manual conflict resolved in arch/um/drivers/mconsole_kern.c
Al Viro [Sun, 8 Oct 2006 21:49:34 +0000 (22:49 +0100)]
[PATCH] uml pt_regs fixes
Real fix for UML pt_regs stuff. Note set_irq_regs() logics in there...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Ralf Baechle [Sun, 8 Oct 2006 23:03:05 +0000 (00:03 +0100)]
[MIPS] Cleanup unnecessary <asm/ptrace.h> inclusions.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Sun, 8 Oct 2006 23:00:31 +0000 (00:00 +0100)]
[MIPS] DEC: pt_regs fixes for buserror handlers
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Sun, 8 Oct 2006 22:56:13 +0000 (23:56 +0100)]
[MIPS] Fix return type of gt64120_irq.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Sun, 8 Oct 2006 20:32:40 +0000 (21:32 +0100)]
[MIPS] Ocelot C: Build fix - ll_mv64340_irq takes no more regs argument.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Sun, 8 Oct 2006 19:50:12 +0000 (20:50 +0100)]
[MIPS] Jazz defconfig file.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Sun, 8 Oct 2006 18:35:00 +0000 (19:35 +0100)]
[MIPS] Jazz: build fix - include <linux/screen_info.h>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Sun, 8 Oct 2006 18:28:44 +0000 (19:28 +0100)]
[MIPS] Jazz: Remove warning. After 7 years probably somebody test this ;)
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Sun, 8 Oct 2006 18:19:11 +0000 (19:19 +0100)]
[MIPS] Jazz: Fix I/O port resources.
struct resource members were shuffeled a while ago.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Sun, 8 Oct 2006 16:38:18 +0000 (17:38 +0100)]
[MIPS] DEC: pt_regs fixes for dec_intr_halt.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Sun, 8 Oct 2006 23:15:27 +0000 (00:15 +0100)]
handle_sysrq lost its pt_regs * argument
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Linus Torvalds [Sun, 8 Oct 2006 22:38:22 +0000 (15:38 -0700)]
Revert "[POWERPC] Don't get PCI IRQ from OF for devices with no IRQ"
This reverts commit
41550c5128150175197257b6ceab2cd50dea7b51.
Quoth Ben Herrenschmidt:
"Please revert this one for now. It seems to break G5s :( Looks like
PCI cells inside Apple IO ASICs don't have a PCI_INTERRUPT_LINE set.
I need to figure out a better fix."
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Trond Myklebust [Sun, 8 Oct 2006 18:33:24 +0000 (14:33 -0400)]
[PATCH] NFS: Fix typo in nfs_get_client()
Commit
ca4aa09635516258f158a7bc1594a794e4c34864 fixed waiting for the
structure to get initialised, but it is also possible to break out of
the loop while still in TASK_INTERRUPTIBLE.
Replace the whole thing by wait_event_interruptible, which is much more
readable, and doesn't suffer from these problems.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 8 Oct 2006 14:08:45 +0000 (15:08 +0100)]
[PATCH] linux/io.h needs types.h
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 8 Oct 2006 14:05:14 +0000 (15:05 +0100)]
[PATCH] missing forward declaration of pt_regs (asm-m68k/signal.h)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 8 Oct 2006 14:04:15 +0000 (15:04 +0100)]
[PATCH] missing include of scatterlist.h
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 8 Oct 2006 14:01:14 +0000 (15:01 +0100)]
[PATCH] missing include in pdaudiocf_irq
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 8 Oct 2006 14:00:44 +0000 (15:00 +0100)]
[PATCH] misc ppc pt_regs fixes
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 8 Oct 2006 14:00:12 +0000 (15:00 +0100)]
[PATCH] misc arm pt_regs fixes
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 8 Oct 2006 13:59:19 +0000 (14:59 +0100)]
[PATCH] missed ia64 pt_regs fixes
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 8 Oct 2006 13:45:28 +0000 (14:45 +0100)]
[PATCH] alpha pt_regs cleanups: collapse set_irq_regs() in titan_dispatch_irqs()
titan_dispatch_irqs() always gets get_irq_regs() as argument; kill
the argument and collapse set_irq_regs() in body.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 8 Oct 2006 13:44:38 +0000 (14:44 +0100)]
[PATCH] alpha pt_regs cleanups: machine_check()
do set_irq_regs() in caller, kill pt_regs argument.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 8 Oct 2006 13:37:32 +0000 (14:37 +0100)]
[PATCH] alpha pt_regs cleanups: handle_irq()
isa_no_iack_sc_device_interrupt() always gets get_irq_regs() as
argument; kill that argument.
All but two callers of handle_irq() pass get_irq_regs() as argument;
convert the remaining two, kill set_irq_regs() inside handle_irq().
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 8 Oct 2006 13:36:08 +0000 (14:36 +0100)]
[PATCH] alpha pt_regs cleanups: device_interrupt
callers of ->device_interrupt() do set_irq_regs() now; pt_regs argument
removed, remaining uses of regs in instances of ->device_interrupt()
are switched to get_irq_regs() and will be gone in the next patch.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 8 Oct 2006 13:33:33 +0000 (14:33 +0100)]
[PATCH] m68k pt_regs fixes, part 2
Fallout from previous patch:
- actually add include/asm-m68k/irq_regs.h
- missed the prototype of sun3_sched_init()
NB: git diff without argumentgs sucks when you've added
some files...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 8 Oct 2006 13:32:15 +0000 (14:32 +0100)]
[PATCH] sparc32 rwlock fix
read_trylock() is broken on sparc32 (doesn't build and didn't work
right, actually). Proposed fix:
- make "writer holds lock" distinguishable from "reader tries to grab
lock"
- have __raw_read_trylock() try to acquire the mutex (in LSB of lock),
terminating spin if we see that there's writer holding it. Then do
the rest as we do in read_lock().
Thanks to Ingo for discussion...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 8 Oct 2006 12:23:28 +0000 (08:23 -0400)]
[PATCH] sparc64 pt_regs fixes
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sun, 8 Oct 2006 13:30:44 +0000 (14:30 +0100)]
[PATCH] sparc32 pt_regs fixes
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Sun, 8 Oct 2006 19:28:41 +0000 (12:28 -0700)]
Merge branch 'upstream-linus' of git://git./linux/kernel/git/ieee1394/linux1394-2.6
* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
ieee1394: nodemgr: fix startup of knodemgrd
Linus Torvalds [Sun, 8 Oct 2006 19:26:00 +0000 (12:26 -0700)]
Merge branch 'irq-fixes' of git://git.parisc-linux.org/git/linux-2.6
* 'irq-fixes' of git://git.parisc-linux.org/git/linux-2.6:
[PARISC] More pt_regs removal
[PARISC] pdc_init no longer exists
[PARISC] Make firmware calls irqsafe-ish...
[PA-RISC] Fix boot breakage
[PARISC] Use set_irq_regs
Eric W. Biederman [Sun, 8 Oct 2006 13:47:55 +0000 (07:47 -0600)]
[PATCH] x86_64 irq: Allocate a vector across all cpus for genapic_flat.
The problem we can't take advantage of lowest priority delivery mode if
the vectors are allocated for only one cpu at a time. Nor can we work
around hardware that assumes lowest priority delivery mode is always
used with several cpus.
So this patch introduces the concept of a vector_allocation_domain. A
set of cpus that will receive an irq on the same vector. Currently the
code for implementing this is placed in the genapic structure so we can
vary this depending on how we are using the io_apics.
This allows us to restore the previous behaviour of genapic_flat without
removing the benefits of having separate vector allocation for large
machines.
This should also fix the problem report where a hyperthreaded cpu was
receving the irq on the wrong hyperthread when in logical delivery mode
because the previous behaviour is restored.
This patch properly records our allocation of the first 16 irqs to the
first 16 available vectors on all cpus. This should be fine but it may
run into problems with multiple interrupts at the same interrupt level.
Except for some badly maintained comments in the code and the behaviour
of the interrupt allocator I have no real understanding of that problem.
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Acked-by: Muli Ben-Yehuda <muli@il.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Eric W. Biederman [Sun, 8 Oct 2006 13:43:46 +0000 (07:43 -0600)]
[PATCH] i386/x86_64: Remove global IO_APIC_VECTOR
Which vector an irq is assigned to now varies dynamically and is
not needed outside of io_apic.c. So remove the possibility
of accessing the information outside of io_apic.c and remove
the silly macro that makes looking for users of irq_vector
difficult.
The fact this compiles ensures there aren't any more pieces
of the old CONFIG_PCI_MSI weirdness that I failed to remove.
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Eric W. Biederman [Sun, 8 Oct 2006 13:41:19 +0000 (07:41 -0600)]
[PATCH] i386/x86_64: FIX pci_enable_irq to set dev->irq to the irq number
In commit
ace80ab796ae30d2c9ee8a84ab6f608a61f8b87b I removed the weird
logic that used the vector number as the irq number when MSI was
defined. However pci_enable_irq was using a different test in the
io_apic_assign_irqs path and I missed it :(
This patch removes the wrong code so no one hits this problem.
This code is only active when a specific set of boot command line
parameters is specified which likely explains why no one has notices
this earlier.
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Trond Myklebust [Sun, 8 Oct 2006 18:33:24 +0000 (14:33 -0400)]
[PATCH] NFS: Fix typo in nfs_get_client()
NFS_CS_INITING > NFS_CS_READY, so instead of waiting for the structure to
get initialised, we currently immediately jump out of the loop without ever
sleeping.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Stefan Richter [Fri, 6 Oct 2006 17:49:52 +0000 (19:49 +0200)]
ieee1394: nodemgr: fix startup of knodemgrd
Revert a thinko in commit
d2f119fe319528da8c76a1107459d6f478cbf28c:
When knodemgrd starts, it needs to sleep until host->generation was
incremented above its initial value of 0. My wrong logic caused it to
start sending requests when the bus wasn't completely ready. Seen as
"AT dma reset ctx=0, aborting transmission" messages in 2.6.19-rc1.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Yoichi Yuasa [Sat, 7 Oct 2006 04:41:51 +0000 (13:41 +0900)]
[MIPS] Fix DECserial build error by IRQ hander change
Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Sat, 7 Oct 2006 18:44:33 +0000 (19:44 +0100)]
[MIPS] Complete fixes after removal of pt_regs argument to int handlers.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Karl-Johan Karlsson [Sat, 7 Oct 2006 23:15:02 +0000 (01:15 +0200)]
[MIPS] Show actual CPU information in /proc/cpuinfo
Currently, /proc/cpuinfo contains several copies of the information for
whatever processor we happen to be scheduled on. This patch makes it contain
the proper information for each CPU, which is particularly useful on mixed
R12k/R10k IP27 machines.
Signed-off-by: Karl-Johan Karlsson <creideiki@lysator.liu.se>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Scott Ashcroft [Fri, 6 Oct 2006 15:54:54 +0000 (16:54 +0100)]
[MIPS] Cobalt: Time runs too quickly
A kernel built with HZ==250 runs about 4 four times too quickly on a
Cobalt RaQ2.
Signed-off-by: Scott Ashcroft <scott.ashcroft@talk21.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Fri, 6 Oct 2006 16:36:20 +0000 (17:36 +0100)]
[MIPS] Update Malta config.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Linus Torvalds [Sat, 7 Oct 2006 17:52:00 +0000 (10:52 -0700)]
Merge branch 'merge' of git://git./linux/kernel/git/paulus/powerpc
* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
[POWERPC] PReP fixup after irq changes
[POWERPC] SPU fixup after irq changes
[POWERPC] Fix up after irq changes
[POWERPC] Fix iseries/smp.c for irq breakage
[POWERPC] Fix viocons for irq breakage
[POWERPC] Update iseries_defconfig
[POWERPC] Fix fsl_soc build breaks
[POWERPC] Minor fix for bootargs property
[POWERPC] Update MTFSF_L() comment
[POWERPC] Update pSeries defconfig for SATA
[POWERPC] Don't get PCI IRQ from OF for devices with no IRQ
[POWERPC] Fix zImage decompress location
[POWERPC] linux,tce-size property is 32 bits
[POWERPC] Add DTS for MPC8349E-mITX board
[POWERPC] Fix harmless typo
[PPC] Fix some irq breakage with ARCH=ppc
Al Viro [Sat, 7 Oct 2006 15:29:18 +0000 (16:29 +0100)]
[PATCH] m32r pt_regs fixes
... and now with irq_regs.h not forgotten...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sat, 7 Oct 2006 13:17:31 +0000 (14:17 +0100)]
[PATCH] minimal alpha pt_regs fixes
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Al Viro [Sat, 7 Oct 2006 13:16:45 +0000 (14:16 +0100)]
[PATCH] m68k pt_regs fixes
m68k_handle_int() split in two functions: __m68k_handle_int() takes
pt_regs * and does set_irq_regs(); m68k_handle_int() doesn't get pt_regs
*.
Places where we used to call m68k_handle_int() recursively with the same
pt_regs have simply lost the second argument, the rest is switched to
__m68k_handle_int().
The rest of patch is just dropping pt_regs * where needed.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Eric Eric Sesterhenn [Sat, 7 Oct 2006 05:19:45 +0000 (22:19 -0700)]
[PATCH] reiserfs: null pointer dereferencing in reiserfs_read_bitmap_block
null pointer dereferencing in reiserfs_read_bitmap_block.
Signed-off-by: Alexander Zarochentsev <zam@namesys.com>
Cc: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Rafael J. Wysocki [Sat, 7 Oct 2006 05:19:44 +0000 (22:19 -0700)]
[PATCH] swsusp: Make userland suspend work on SMP again
Unfortunately one of the recent changes in swsusp has broken the userland
suspend on SMP. Fix it.
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Christoph Lameter [Sat, 7 Oct 2006 05:19:44 +0000 (22:19 -0700)]
[PATCH] slab: remove wrongly placed BUG_ON
Init list is called with a list parameter that is not equal to the
cachep->nodelists entry under NUMA if more than one node exists. This is
fully legitimatei. One may want to populate the list fields before
switching nodelist pointers.
Signed-off-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Olaf Hering [Fri, 6 Oct 2006 21:06:48 +0000 (23:06 +0200)]
[POWERPC] PReP fixup after irq changes
Compile fixes for PReP in ARCH=ppc.
Signed-off-by: Olaf Hering <olaf@aepfle.de>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Olaf Hering [Fri, 6 Oct 2006 20:52:16 +0000 (22:52 +0200)]
[POWERPC] SPU fixup after irq changes
Remove struct pt_regs * from remaining spu irq functions.
Signed-off-by: Olaf Hering <olaf@aepfle.de>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Olaf Hering [Sat, 7 Oct 2006 12:08:26 +0000 (22:08 +1000)]
[POWERPC] Fix up after irq changes
Remove struct pt_regs * from all handlers.
Also remove the regs argument from get_irq() functions.
Compile tested with arch/powerpc/config/* and
arch/ppc/configs/prep_defconfig
Signed-off-by: Olaf Hering <olaf@aepfle.de>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Matthew Wilcox [Sat, 7 Oct 2006 12:01:11 +0000 (06:01 -0600)]
[PARISC] More pt_regs removal
Remove pt_regs from ipi_interrupt and timer_interrupt.
Inline smp_do_timer() into its only caller, and unify the SMP and
non-SMP paths. Fixes a profiling bug.
Signed-off-by: Matthew Wilcox <matthew@wil.cx>
Matthew Wilcox [Sat, 7 Oct 2006 03:45:09 +0000 (23:45 -0400)]
[PARISC] pdc_init no longer exists
Just a stale prototype
Signed-off-by: Matthew Wilcox <matthew@wil.cx>
Kyle McMartin [Fri, 6 Oct 2006 03:45:45 +0000 (23:45 -0400)]
[PARISC] Make firmware calls irqsafe-ish...
There's no reason why we shouldn't be using _irqsave instead of
_irq for any of these calls. fwiw, this fixes the
"start_kernel(): bug: interrupts were enabled early" message displayed
on bootup recently.
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
Signed-off-by: Matthew Wilcox <matthew@wil.cx>
Matthew Wilcox [Thu, 5 Oct 2006 04:57:28 +0000 (22:57 -0600)]
[PA-RISC] Fix boot breakage
Conditionals were the wrong way around. Turns out I was booting the
wrong kernel when testing the original fix.
Signed-off-by: Matthew Wilcox <matthew@wil.cx>
Matthew Wilcox [Sat, 7 Oct 2006 11:11:07 +0000 (05:11 -0600)]
[PARISC] Use set_irq_regs
Actually set the irq_regs pointer.
Signed-off-by: Matthew Wilcox <matthew@wil.cx>
Linus Torvalds [Sat, 7 Oct 2006 03:12:11 +0000 (20:12 -0700)]
Merge branch 'irq-fixes' of git://git.parisc-linux.org/git/linux-2.6
* 'irq-fixes' of git://git.parisc-linux.org/git/linux-2.6:
Build fixes for struct pt_regs removal
Matthew Wilcox [Sat, 7 Oct 2006 02:47:23 +0000 (20:47 -0600)]
Build fixes for struct pt_regs removal
Signed-off-by: Matthew Wilcox <matthew@wil.cx>
Stephen Rothwell [Fri, 6 Oct 2006 03:55:26 +0000 (13:55 +1000)]
[POWERPC] Fix iseries/smp.c for irq breakage
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Stephen Rothwell [Fri, 6 Oct 2006 03:54:28 +0000 (13:54 +1000)]
[POWERPC] Fix viocons for irq breakage
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Stephen Rothwell [Fri, 6 Oct 2006 03:53:12 +0000 (13:53 +1000)]
[POWERPC] Update iseries_defconfig
This make sure that an iseries_defconfig does not inlude
other platforms.
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Olof Johansson [Fri, 6 Oct 2006 02:16:48 +0000 (21:16 -0500)]
[POWERPC] Fix fsl_soc build breaks
Hrm, there's no way this ever built at time of merge. There's a missing } and
the wrong type on phy_irq.
Also, another const for get_property().
CC arch/powerpc/sysdev/fsl_soc.o
arch/powerpc/sysdev/fsl_soc.c: In function 'fs_enet_of_init':
arch/powerpc/sysdev/fsl_soc.c:625: error: assignment of read-only variable 'phy_irq'
arch/powerpc/sysdev/fsl_soc.c:625: warning: assignment makes integer from pointer without a cast
arch/powerpc/sysdev/fsl_soc.c:661: warning: assignment discards qualifiers from pointer target type
arch/powerpc/sysdev/fsl_soc.c:684: error: subscripted value is neither array nor pointer
arch/powerpc/sysdev/fsl_soc.c:687: error: subscripted value is neither array nor pointer
arch/powerpc/sysdev/fsl_soc.c:722: warning: ISO C90 forbids mixed declarations and code
arch/powerpc/sysdev/fsl_soc.c:728: error: invalid storage class for function 'cpm_uart_of_init'
arch/powerpc/sysdev/fsl_soc.c:798: error: initializer element is not constant
arch/powerpc/sysdev/fsl_soc.c:798: error: expected declaration or statement at end of input
make[1]: *** [arch/powerpc/sysdev/fsl_soc.o] Error 1
Signed-off-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Andrew Morton [Fri, 6 Oct 2006 20:28:09 +0000 (13:28 -0700)]
[PATCH] x86_64 irq_regs fix
smp_apic_timer_interrupt() needs to stack the pt_regs* for profile_tick.
If any other of those APIC interrupt handlers want to run get_irq_regs() then
their C entrypoint handlers will need the same treatment.
Cc: Andi Kleen <ak@muc.de>
Cc: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Acked-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Fri, 6 Oct 2006 20:11:15 +0000 (13:11 -0700)]
ARM: fix up nested irq regs usage
This should fix up the per-cpu irq register pointer if we have nested
hardware interrupts.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jeff Garzik [Fri, 6 Oct 2006 19:27:31 +0000 (15:27 -0400)]
Merge branch 'submit1' of viper:/spare/repo/irq-remove-2.6 into irqcleanups
Frederik Deweerdt [Fri, 6 Oct 2006 18:58:24 +0000 (18:58 +0000)]
[PATCH] ixp4xxdefconfig arm fixes
With the following patch, the ixp4xxdefconfig builds correctly. I'll
test some more configs if I get some time.
Signed-off-by: Frederik Deweerdt <frederik.deweerdt@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Olaf Hering [Fri, 6 Oct 2006 18:53:10 +0000 (20:53 +0200)]
[PATCH] fix mesh compile errors after irq changes
drivers/scsi/mesh.c:469: error: too many arguments to function 'mesh_interrupt'
drivers/scsi/mesh.c:507: error: too many arguments to function 'mesh_interrupt'
Signed-off-by: Olaf Hering <olaf@aepfle.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jeff Garzik [Fri, 6 Oct 2006 19:04:35 +0000 (15:04 -0400)]
drivers/isdn/act2000: kill irq2card_map
Eliminate irq->card lookup table, by properly passing the card pointer
via request_irq() like other drivers.
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Jeff Garzik [Fri, 6 Oct 2006 19:03:04 +0000 (15:03 -0400)]
drivers/net/eepro: kill dead code
The irq2dev_map has not been used for a long time.
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Jeff Garzik [Fri, 6 Oct 2006 19:00:58 +0000 (15:00 -0400)]
Various drivers' irq handlers: kill dead code, needless casts
- Eliminate casts to/from void*
- Eliminate checks for conditions that never occur. These typically
fall into two classes:
1) Checking for 'dev_id == NULL', then it is never called with
NULL as an argument.
2) Checking for invalid irq number, when the only caller (the
system) guarantees the irq handler is called with the proper
'irq' number argument.
Signed-off-by: Jeff Garzik <jeff@garzik.org>