Jesse Allen [Tue, 21 Feb 2006 06:08:18 +0000 (22:08 -0800)]
[PATCH] pcmcia: add id for AMB8110 PC Card
The axnet_cs driver can support the AMB8110 PC Card, so add the id for it.
In the old pcmcia-cs config file, this card is listed with the comment "not
specific enough". The last entry in the axnet_ids has the same comment.
They are disabled, and for good reason as it was originally identified by
the MANFID, and that is shared with several cards that use both the
pcnet_cs driver and axnet_cs driver. I tried my AMB8110 with pcnet_cs, and
found that it works fine, and I cannot find a reason for either, except
that the old config file recommended axnet_cs.
Signed-off-by: Jesse Allen <the3dfxdude@gmail.com>
Cc: Jeff Garzik <jgarzik@pobox.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Pavel Roskin [Tue, 28 Feb 2006 06:18:31 +0000 (01:18 -0500)]
[PATCH] pcmcia: avoid binding hostap_cs to Orinoco cards
Don't just use cards with PCMCIA ID 0x0156, 0x0002. Make sure that the
vendor string is "Intersil" or "INTERSIL"
Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Pavel Roskin [Tue, 28 Feb 2006 06:18:29 +0000 (01:18 -0500)]
[PATCH] pcmcia: Add macro to match PCMCIA cards by numeric ID and first vendor string
This is needed to distinguish Intersil and non-Intersil cards with
numeric ID 0x0156, 0x0002.
Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
David Brownell [Wed, 25 Jan 2006 14:36:32 +0000 (06:36 -0800)]
[PATCH] pcmcia: add another ide-cs CF card id
Add another CF card ID.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Dominik Brodowski [Fri, 27 Jan 2006 18:15:02 +0000 (19:15 +0100)]
[PATCH] pcmcia: properly handle pseudo multi-function devices
The second pseudo multi-function device of a PCMCIA card may only be
configured once the first one is initialized. Therefore, delay the
registration of the second device until the first one is initialized.
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net
Linus Torvalds [Wed, 1 Mar 2006 04:57:20 +0000 (20:57 -0800)]
Merge branch 'upstream-fixes' of /linux/kernel/git/jgarzik/netdev-2.6
Linus Torvalds [Wed, 1 Mar 2006 04:56:24 +0000 (20:56 -0800)]
Merge branch 'release' of git://git./linux/kernel/git/aegl/linux-2.6
Darren Jenkins [Wed, 1 Mar 2006 00:59:20 +0000 (16:59 -0800)]
[PATCH] synclink_gt: make ->init_error signed
Examples of misuse are
3112 info->init_error = -1;
4440 if ((info->init_error = register_test(info)) < 0) {
Signed-off-by: Darren Jenkins <darrenrjenkins@gmail.com>
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Acked-by: Paul Fulghum <paulkf@microgate.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Andrew Morton [Wed, 1 Mar 2006 00:59:19 +0000 (16:59 -0800)]
[PATCH] out_of_memory(): use of uninitialised
Under some circumstances `points' can get printed before it's initialised.
Spotted by Carlos Martin <carlos@cmartin.tk>.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Benjamin Herrenschmidt [Wed, 1 Mar 2006 00:59:19 +0000 (16:59 -0800)]
[PATCH] Add mm->task_size and fix powerpc vdso
This patch adds mm->task_size to keep track of the task size of a given mm
and uses that to fix the powerpc vdso so that it uses the mm task size to
decide what pages to fault in instead of the current thread flags (which
broke when ptracing).
(akpm: I expect that mm_struct.task_size will become the way in which we
finally sort out the confusion between 32-bit processes and 32-bit mm's. It
may need tweaks, but at this stage this patch is powerpc-only.)
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>
Andrew Morton [Wed, 1 Mar 2006 00:59:18 +0000 (16:59 -0800)]
[PATCH] nommu: implement vmalloc_node()
Fix oprofile linkage. Pointed out by "Luke Yang" <luke.adi@gmail.com>.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Christoph Lameter [Wed, 1 Mar 2006 00:59:16 +0000 (16:59 -0800)]
[PATCH] remove_from_swap: fix locking
remove_from_swap() currently attempts to use page_lock_anon_vma to obtain
an anon_vma lock. That is not working since the page may have been
remapped via swap ptes in order to move the page.
However, do_migrate_pages() obtain the mmap_sem lock and therefore there is
a guarantee that the anonymous vma will not vanish from under us. There is
therefore no need to use page_lock_anon_vma.
Signed-off-by: Christoph Lameter <clameter@sgi.com>
Acked-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Paul Fulghum [Wed, 1 Mar 2006 00:59:15 +0000 (16:59 -0800)]
[PATCH] tty buffering: comment out debug code
Comment out debug code in tty receive buffering. For performance reasons
(I'll keep it enabled in -mm).
Signed-off-by: Paul Fulghum <paulkf@microgate.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Alexey Dobriyan [Wed, 1 Mar 2006 00:59:13 +0000 (16:59 -0800)]
[PATCH] video1394: fix "return E;" typo
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Cc: Ben Collins <bcollins@debian.org>
Cc: Jody McIntyre <scjody@modernduck.com>
Cc: Stefan Richter <stefanr@s5r6.in-berlin.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Adam Belay [Wed, 1 Mar 2006 00:59:10 +0000 (16:59 -0800)]
[PATCH] pnp bus type fix
This is Adam's pnp probing fix. It's been reported to fix hangs on several
people's machines. I don't know if it's official or final, and Adam isn't
contactable at present. But I'm not aware of the patch causing any
regressions.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Pat Gefre [Wed, 1 Mar 2006 00:59:09 +0000 (16:59 -0800)]
[PATCH] Altix: more ioc3 cleanups and locking fixes
Some "inline" removing that Andrew suggested, removed some locking on
add/remove at this level - we'll let the callees decide.
Signed-off-by: Patrick Gefre <pfg@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
John Bowler [Wed, 1 Mar 2006 00:59:08 +0000 (16:59 -0800)]
[PATCH] drivers/mtd/redboot.c: recognise a foreign byte sex partition table
The RedBoot boot loader writes flash partition tables containing native
byte sex 32 bit values. When booting an opposite byte sex kernel (e.g. an
LE kernel from BE RedBoot) the current MTD driver fails to handle the
partition table and therefore is unable to generate the correct partition
map for the flash.
So far as I am aware this problem is ARM specific, because only ARM
supports software change of the CPU (memory system) byte sex, however the
partition table parsing is in generic MTD code. The patch below has been
tested on NSLU2 (an IXP4XX based system) with a patch,
10-ixp4xx-copy-from.patch (submitted to linux-arm-kernel - it's ARM
specific) required to make the maps/ixp4xx.c driver work with an LE kernel.
Builds of the patched system are in the 'unstable' release of OpenSlug and
UcSlugC available from www.nslu2-linux.org. These builds are BE, the
archives at www.nslu2-linux.org and www.handhelds.org (see
monotone.vanille.de) can be built LE (currently DISTRO targets
nslu-ltu.conf for LE thumb uclibc (32 bit kernel) and nslu2-lau.conf,
nslu2-lag.conf for LE arm uclibc/glibc) and this patch has been tested
extensively will both BE and LE systems on the NSLU2 (including swapping
between BE and LE by reflashing from both RedBoot and Linux).
The patch recognises that the FIS directory (the partition table) is
byte-reversed by examining the partition table size, which is known to be
one erase block (this is an assumption made elsewhere in redboot.c). If
the size matches the erase block after byte swapping the value then
byte-reversal is assumed, if not no further action is taken. The patched
code is fail safe; should redboot.c be changed to support a partition table
with a modified size field the test will fail and the partition table will
be assumed to have the host byte sex.
If byte-reversal is detected the patch byte swaps the remainder of the 32
bit fields in the copy of the table; this copy is then used to set up the
MTD partition map.
Signed-off-by: John Bowler <jbowler@acm.org>
Cc: David Woodhouse <dwmw2@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Martin Michlmayr <tbm@cyrius.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Miklos Szeredi [Wed, 1 Mar 2006 00:59:03 +0000 (16:59 -0800)]
[PATCH] fuse: fix bug in negative lookup
If negative entries (nodeid == 0) were sent in reply to LOOKUP requests,
two bugs could be triggered:
- looking up a negative entry would return -EIO,
- revaildate on an entry which turned negative would send a FORGET
request with zero nodeid, which would cause an abort() in the
library.
The above would only happen if the 'negative_timeout=N' option was used,
otherwise lookups reply -ENOENT, which worked correctly.
Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Christoph Lameter [Wed, 1 Mar 2006 00:58:57 +0000 (16:58 -0800)]
[PATCH] Fix sys_migrate_pages: Move all pages when invoked from root
Currently sys_migrate_pages only moves pages belonging to a process. This
is okay when invoked from a regular user. But if invoked from root it
should move all pages as documented in the migrate_pages manpage.
Signed-off-by: Christoph Lameter <clameter@sgi.com>
Cc: Andi Kleen <ak@muc.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Dave Jones [Wed, 1 Mar 2006 00:58:53 +0000 (16:58 -0800)]
[PATCH] x86 microcode driver vs hotplug CPUs.
This driver loops over 'num_online_cpus', but it doesn't account for holes
in the online map created by offlined cpus, and assumes that the cpu
numbers stay linear.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Stephen Hemminger [Mon, 27 Feb 2006 21:13:54 +0000 (13:13 -0800)]
[PATCH] sky2: remove MSI support
Remove Message Signaled Interrupt support (for 2.6.16).
MSI is inherently edge-triggered and that is incompatiable (without more
work) with NAPI.
In future, will replace with smarter lockless-IRQ handling like
tg3.c
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Jeff Garzik [Tue, 28 Feb 2006 23:04:30 +0000 (18:04 -0500)]
Merge branch 'upstream-fixes' of git://git./linux/kernel/git/linville/wireless-2.6
Jeff Garzik [Tue, 28 Feb 2006 23:03:45 +0000 (18:03 -0500)]
Merge branch 'for-jeff' of git://electric-eye.fr.zoreil.com/home/romieu/linux-2.6
Linus Torvalds [Tue, 28 Feb 2006 22:02:10 +0000 (14:02 -0800)]
Merge /pub/scm/linux/kernel/git/gregkh/usb-2.6
Ian Abbott [Mon, 27 Feb 2006 14:05:32 +0000 (14:05 +0000)]
[PATCH] USB: ftdi_sio: new microHAM device IDs
This patch adds a bunch of new device IDs to the ftdi_sio driver for
various devices from microHAM using FTDI chips.
Micheal Studer supplied the PID for the USB-Y9 device. I examined the
INF file in microHAM's Windows driver package for the USB-KW, USB-YS,
USB-IC, USB-DB9 and USB-RS232 devices.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Hendrik Schweppe [Sun, 19 Feb 2006 18:00:04 +0000 (19:00 +0100)]
[PATCH] USB: visor.c id for gspda smartphone
Added the USB vendorID of GSPDA and the productID of GSPDA's palm
smartphone 'xplore m68' to the list of known devices.
Signed-off-by: Hendrik Schweppe <linuxkpatch@hendrik.fam-schweppe.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Shaun Tancheff [Thu, 23 Feb 2006 03:47:19 +0000 (19:47 -0800)]
[PATCH] USB: Gadget RNDIS fix alloc bug. (buffer overflow)
Remote NDIS response to OID_GEN_SUPPORTED_LIST only allocated space
for the data attached to the reply, and not the reply structure
itself. This caused other kmalloc'd memory to be corrupted.
Signed-off-by: Shaun Tancheff <shaun@tancheff.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Franck Bui-Huu [Thu, 23 Feb 2006 08:35:06 +0000 (09:35 +0100)]
[PATCH] USB: lh7a40x gadget driver: Fixed a dead lock
There is a dead lock in lh7a40x udc driver. When the driver receive a
SET_FEATURE HALT request, the dev lock is taken by the interrupt
handler lh7a40x_udc_irq then the handler will call lh7a40x_set_halt
function which in its turn will try to acquire the dev lock.
Signed-off-by: Franck Bui-Huu <franck.bui-huu@innova-card.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Alan Stern [Thu, 23 Feb 2006 15:19:25 +0000 (10:19 -0500)]
[PATCH] USB: unusual_devs entry for Lyra RCA RD1080
This patch (as656) adds an unusual_devs.h entry for the Lyra RCA RD1080
MP3 player. Its card-reader firmware has the common
report-one-too-many-sectors bug. This fixes Novell bug #152175.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Andrew Fuller [Sat, 25 Feb 2006 14:52:27 +0000 (09:52 -0500)]
[PATCH] USB: Wisegroup MP-8866 Dual USB Joypad
This patch is for the Dual USB Joypad [0925:8866] from Wisegroup. The
HID_QUIRK_NOGET is necessary for it to respond to input, and the
HID_QUIRK_MULTI_INPUT is necessary to have two js# nodes appear.
Signed-off-by: Andrew Fuller <mactalla.obair@gmail.com>
Cc: "Dmitry Torokhov" <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
David Brownell [Sat, 25 Feb 2006 00:55:52 +0000 (16:55 -0800)]
[PATCH] USB: fix EHCI BIOS handshake
Fix http://bugzilla.kernel.org/show_bug.cgi?id=6128
Finish morphing the "early handoff" version of the EHCI BIOS handshake over
to match the previous implementation inside the EHCI driver (except that
now we forcibly disable the SMI). The version that had been with the PCI
code was surprisingly full of bugs.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: <yazar256@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
David S. Miller [Tue, 28 Feb 2006 19:55:36 +0000 (11:55 -0800)]
[SUNSU]: Fix locking error in sunsu_stop_rx().
The caller takes the UART port lock, so we shouldn't try
to take it again.
Signed-off-by: David S. Miller <davem@davemloft.net>
Jes Sorensen [Tue, 28 Feb 2006 17:42:23 +0000 (09:42 -0800)]
[IA64] sysctl option to silence unaligned trap warnings
Allow sysadmin to disable all warnings about userland apps
making unaligned accesses by using:
# echo 1 > /proc/sys/kernel/ignore-unaligned-usertrap
Rather than having to use prctl on a process by process basis.
Default behaivour leaves the warnings enabled.
Signed-off-by: Jes Sorensen <jes@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Linus Torvalds [Tue, 28 Feb 2006 17:14:09 +0000 (09:14 -0800)]
Merge branch 'upstream' of git://ftp.linux-mips.org/upstream-linus
Ralf Baechle [Tue, 28 Feb 2006 17:04:20 +0000 (17:04 +0000)]
[MIPS] Fix build error on processors that don's support copy-on-write.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Mon, 27 Feb 2006 19:05:55 +0000 (19:05 +0000)]
[MIPS] Initialize S-cache function pointers even on S-cache-less CPUs.
When a CPU has no scache, the scache flushing functions currently
aren't getting initialized and the NULL pointer is eventually called
as a function. Initialize the scache flushing functions as a noop
when there's no scache.
Initial patch by me and most of the debugging done by Martin Michlmayr.
Signed-off-by: Martin Michlmayr <tbm@cyrius.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ken Chen [Tue, 28 Feb 2006 16:53:32 +0000 (08:53 -0800)]
[IA64] cleanup in fsys.S
beautify coding style for zeroing end of fsyscall_table entries.
Remove misleading __NR_syscall_last and add more comments.
Drop (now unneeded) "guard against failure to increase NR_syscalls"
Signed-off-by: Ken Chen <kenneth.w.chen@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Linus Torvalds [Tue, 28 Feb 2006 15:38:21 +0000 (07:38 -0800)]
Merge git://git./linux/kernel/git/paulus/powerpc-merge
Jens Axboe [Tue, 28 Feb 2006 08:35:11 +0000 (09:35 +0100)]
[PATCH] cfq-iosched: slice expiry fixups
During testing of SLES10, we encountered a hang in the CFQ io scheduler.
Turns out the deferred slice expiry logic is buggy, so remove that for
now. We could be left with an idle queue that would never wake up. So
kill that logic, always expire immediately. Also fix a potential timer
race condition.
Patch looks bigger than it is, because it moves a function.
Signed-off-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Michael Ellerman [Tue, 28 Feb 2006 03:54:26 +0000 (14:54 +1100)]
[PATCH] powerpc/iseries: Fix double phys_to_abs bug in htab_bolt_mapping
Before the merge I updated create_pte_mapping() to work for iSeries, by
calling iSeries_hpte_bolt_or_insert. (
4c55130b2aa93370f1bf52d2304394e91cf8ee39)
Later we changed iSeries_hpte_insert to cope with the bolting case, and called
that instead from create_pte_mapping() (which was renamed to htab_bolt_mapping)
(
3c726f8dee6f55e96475574e9f645327e461884c).
Unfortunately that change introduced a subtle bug, where we pass an absolute
address to iSeries_hpte_insert() where it expects a physical address. This
leads to us calling phys_to_abs() twice on the physical address, which is
seriously bogus.
This only causes a problem if the absolute address from the first translation
can be looked up again in the chunk_map, which depends on the size and layout
of memory. I've seen it fail on one box, but not others.
The minimal fix is to pass the physical address to iSeries_hpte_insert(). For
2.6.17 we should make phys_to_abs() BUG if we try to double-translate an
address.
Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Olaf Hering [Mon, 27 Feb 2006 14:52:59 +0000 (15:52 +0100)]
[PATCH] powerpc: fix NULL pointer in handle_eeh_events
This patch fixes a crash in handle_eeh_events,
but ethtool -t still doesnt work right.
...
pepino:~ # cpu 0x3: Vector: 300 (Data Access) at [
c00000005192bbe0]
pc:
c00000000004a380: .handle_eeh_events+0xe0/0x23c
lr:
c00000000004a374: .handle_eeh_events+0xd4/0x23c
sp:
c00000005192be60
msr:
9000000000009032
dar: 268
dsisr:
40000000
current = 0xc0000001fe7bf1a0
paca = 0xc00000000048b280
pid = 16322, comm = eehd
enter ? for help
[
c00000005192bf00]
c00000000004a808 .eeh_event_handler+0xcc/0x130
[
c00000005192bf90]
c000000000025e00 .kernel_thread+0x4c/0x68
...
(none):/# /usr/sbin/ethtool -i eth0
driver: e100
version: 3.5.10-k2-NAPI
firmware-version: N/A
bus-info: 0000:21:01.0
(none):/# /usr/sbin/ethtool -t eth0
Call Trace:
[
C00000000F8DEFF0] [
C00000000000F270] .show_stack+0x74/0x1b4 (unreliable)
[
C00000000F8DF0A0] [
C000000000049D04] .eeh_dn_check_failure+0x290/0x2d8
[
C00000000F8DF150] [
C000000000049E58] .eeh_check_failure+0x10c/0x138
[
C00000000F8DF1E0] [
C0000000002DFDB0] .e100_hw_reset+0x70/0xf4
[
C00000000F8DF270] [
C0000000002E1BBC] .e100_hw_init+0x2c/0x260
[
C00000000F8DF310] [
C0000000002E2464] .e100_loopback_test+0x8c/0x220
[
C00000000F8DF3C0] [
C0000000002E28DC] .e100_diag_test+0xdc/0x16c
[
C00000000F8DF490] [
C000000000420BE0] .dev_ethtool+0xf24/0x14f8
[
C00000000F8DF8F0] [
C00000000041F4A8] .dev_ioctl+0x5cc/0x740
[
C00000000F8DFA20] [
C00000000040FEFC] .sock_ioctl+0x3d0/0x404
[
C00000000F8DFAC0] [
C0000000000D513C] .do_ioctl+0x68/0x108
[
C00000000F8DFB50] [
C0000000000D56B0] .vfs_ioctl+0x4d4/0x510
[
C00000000F8DFC10] [
C0000000000D5740] .sys_ioctl+0x54/0x94
[
C00000000F8DFCC0] [
C0000000000FB6EC] .ethtool_ioctl+0x11c/0x150
[
C00000000F8DFD60] [
C0000000000F7E40] .compat_sys_ioctl+0x338/0x3bc
[
C00000000F8DFE30] [
C00000000000871C] syscall_exit+0x0/0x40
EEH: Detected PCI bus error on device 0000:21:01.0
EEH: This PCI device has failed 1 times since last reboot: <NULL> -
modprobe: FATAL: Could not load /lib/modules/2.6.16-rc4-git7/modules.dep: No such file or directory
Cannot get strings: No such device
(none):/#
(none):/# EEH: Unable to configure device bridge (-3) for /pci@
400000000110/pci@2,2
(none):/# Call Trace:
[
C00000000FA17940] [
C00000000000F270] .show_stack+0x74/0x1b4 (unreliable)
[
C00000000FA179F0] [
C000000000049D04] .eeh_dn_check_failure+0x290/0x2d8
[
C00000000FA17AA0] [
C00000000001E114] .rtas_read_config+0x120/0x154
[
C00000000FA17B40] [
C000000000049664] .early_enable_eeh+0x274/0x2bc
[
C00000000FA17C00] [
C000000000049708] .eeh_add_device_early+0x5c/0x6c
[
C00000000FA17C90] [
C000000000049748] .eeh_add_device_tree_early+0x30/0x5c
[
C00000000FA17D20] [
C000000000046568] .pcibios_add_pci_devices+0x8c/0x1f8
[
C00000000FA17DD0] [
C00000000004A528] .eeh_reset_device+0xe0/0x110
[
C00000000FA17E60] [
C00000000004A698] .handle_eeh_events+0x140/0x250
[
C00000000FA17F00] [
C00000000004AC7C] .eeh_event_handler+0xe8/0x140
[
C00000000FA17F90] [
C000000000025784] .kernel_thread+0x4c/0x68
EEH: Detected PCI bus error on device <NULL>
EEH: This PCI device has failed 1 times since last reboot: <NULL> -
EEH: Unable to configure device bridge (-3) for /pci@
400000000110/pci@2,2
Call Trace:
[
C00000000FA17940] [
C00000000000F270] .show_stack+0x74/0x1b4 (unreliable)
[
C00000000FA179F0] [
C000000000049D04] .eeh_dn_check_failure+0x290/0x2d8
[
C00000000FA17AA0] [
C00000000001E114] .rtas_read_config+0x120/0x154
[
C00000000FA17B40] [
C000000000049664] .early_enable_eeh+0x274/0x2bc
[
C00000000FA17C00] [
C000000000049708] .eeh_add_device_early+0x5c/0x6c
[
C00000000FA17C90] [
C000000000049748] .eeh_add_device_tree_early+0x30/0x5c
[
C00000000FA17D20] [
C000000000046568] .pcibios_add_pci_devices+0x8c/0x1f8
[
C00000000FA17DD0] [
C00000000004A528] .eeh_reset_device+0xe0/0x110
[
C00000000FA17E60] [
C00000000004A698] .handle_eeh_events+0x140/0x250
[
C00000000FA17F00] [
C00000000004AC7C] .eeh_event_handler+0xe8/0x140
[
C00000000FA17F90] [
C000000000025784] .kernel_thread+0x4c/0x68
EEH: Detected PCI bus error on device <NULL>
EEH: This PCI device has failed 1 times since last reboot: <NULL> -
EEH: Unable to configure device bridge (-3) for /pci@
400000000110/pci@2,2
Call Trace:
[
C00000000FA17940] [
C00000000000F270] .show_stack+0x74/0x1b4 (unreliable)
[
C00000000FA179F0] [
C000000000049D04] .eeh_dn_check_failure+0x290/0x2d8
[
C00000000FA17AA0] [
C00000000001E114] .rtas_read_config+0x120/0x154
[
C00000000FA17B40] [
C000000000049664] .early_enable_eeh+0x274/0x2bc
[
C00000000FA17C00] [
C000000000049708] .eeh_add_device_early+0x5c/0x6c
[
C00000000FA17C90] [
C000000000049748] .eeh_add_device_tree_early+0x30/0x5c
[
C00000000FA17D20] [
C000000000046568] .pcibios_add_pci_devices+0x8c/0x1f8
[
C00000000FA17DD0] [
C00000000004A528] .eeh_reset_device+0xe0/0x110
[
C00000000FA17E60] [
C00000000004A698] .handle_eeh_events+0x140/0x250
[
C00000000FA17F00] [
C00000000004AC7C] .eeh_event_handler+0xe8/0x140
[
C00000000FA17F90] [
C000000000025784] .kernel_thread+0x4c/0x68
EEH: Detected PCI bus error on device <NULL>
and so on
Signed-off-by: Olaf Hering <olh@suse.de>
Acked-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Benjamin Herrenschmidt [Sat, 25 Feb 2006 21:09:00 +0000 (08:09 +1100)]
[PATCH] powerpc: vdso 64bits gettimeofday bug
A bug in the assembly code of the vdso can cause gettimeofday() to hang
or to return incorrect results. The wrong register was used to test for
pending updates of the calibration variables and to create a dependency
for subsequent loads. This fixes it.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
John Rose [Fri, 24 Feb 2006 17:34:23 +0000 (11:34 -0600)]
[PATCH] powerpc: fix dynamic PCI probe regression
Some hotplug driver functions were migrated to the kernel for use by EEH
in commit
2bf6a8fa21570f37fd1789610da30f70a05ac5e3.
Previously, the PCI Hotplug module had been changed to use the new
OFDT-based PCI probe when appropriate:
5fa80fcdca9d20d30c9ecec30d4dbff4ed93a5c6
When rpaphp_pci_config_slot() was moved from the rpaphp driver to the
new kernel function pcibios_add_pci_devices(), the OFDT-based probe
stuff was dropped. This patch restores it.
Signed-off-by: John Rose <johnrose@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Linus Torvalds [Tue, 28 Feb 2006 04:43:36 +0000 (20:43 -0800)]
Merge branch 'upstream-fixes' of /linux/kernel/git/jgarzik/libata-dev
Linus Torvalds [Tue, 28 Feb 2006 04:41:56 +0000 (20:41 -0800)]
Revert "[PATCH] x86_64: Only do the clustered systems have unsynchronized TSC assumption on IBM systems"
This reverts commit
13a229abc25640813f1480c0478dfc6bdbc1c19e.
Quoth Andi:
"After some consideration and feedback from various people it turns
out this wasn't that good an idea. It has some problems and needs
more work. Since it was only an optimization anyways it's best to
just back it out again for now."
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jeff Garzik [Tue, 28 Feb 2006 03:31:19 +0000 (22:31 -0500)]
[libata] Disable FUA
Until problems are sorted.
Linus Torvalds [Tue, 28 Feb 2006 02:15:43 +0000 (18:15 -0800)]
Merge git://oss.sgi.com:8090/oss/git/xfs-rc-fixes
Eric Sandeen [Tue, 28 Feb 2006 01:30:30 +0000 (12:30 +1100)]
[XFS] Don't map non-uptodate buffers in xfs_probe_cluster; also fixes
obscure corruption case
SGI-PV: 942658
SGI-Modid: xfs-linux-melb:xfs-kern:
207119a
Signed-off-by: Eric Sandeen <sandeen@sgi.com>
Signed-off-by: Nathan Scott <nathans@sgi.com>
Nathan Scott [Tue, 28 Feb 2006 01:30:13 +0000 (12:30 +1100)]
[XFS] Reduce stack use during quota mounts (caused a panic). This
regressed recently via the fix for inherited quota inode attributes.
SGI-PV: 947312
SGI-Modid: xfs-linux-melb:xfs-kern:25318a
Signed-off-by: Nathan Scott <nathans@sgi.com>
Nathan Scott [Tue, 28 Feb 2006 01:29:51 +0000 (12:29 +1100)]
[XFS] Fix a realtime allocator regression introduced by an old iget race
fix. Noticed by Roger Willcocks.
SGI-PV: 949821
SGI-Modid: xfs-linux-melb:xfs-kern:25257a
Signed-off-by: Nathan Scott <nathans@sgi.com>
Pete Zaitcev [Mon, 27 Feb 2006 07:43:20 +0000 (23:43 -0800)]
[PATCH] ieee80211_rx.c: is_beacon
Fix broken is_beacon().
Signed-off-by: Pete Zaitcev <zaitcev@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Tony Luck [Tue, 28 Feb 2006 01:07:14 +0000 (17:07 -0800)]
[IA64] refresh default config files
Bring all ia64 config files up to date
Signed-off-by: Tony Luck <tony.luck@intel.com>
Tony Luck [Tue, 28 Feb 2006 00:18:58 +0000 (16:18 -0800)]
[IA64] die_if_kernel() can return
arch/ia64/kernel/unaligned.c erroneously marked die_if_kernel()
with a "noreturn" attribute ... which is silly (it returns whenever
the argument regs say that the fault happened in user mode, as one
might expect given the "if_kernel" part of its name!). Thanks to
Alan and Gareth for pointing this out.
Signed-off-by: Tony Luck <tony.luck@intel.com>
Christoph Hellwig [Tue, 21 Feb 2006 10:48:41 +0000 (10:48 +0000)]
[IA64-SGI] revert export sn_pcidev_info_get
Christoph Hellwig <hch@infradead.org> pointed that there are no
in-tree uses of this. So revert
9c65cb9be62ac4993a5b392304b82e4f04f010fd
Signed-off-by: Tony Luck <tony.luck@intel.com>
Matthew Wilcox [Fri, 24 Feb 2006 19:46:23 +0000 (12:46 -0700)]
[IA64] Fix pcibios_setup
pcibios_setup() should return NULL if it handled a parameter. Since ia64
handles no parameters, it should return the string that was passed in,
not NULL. This brings ia64 into line with all other architectures that
handle no parameters.
Signed-off-by: Matthew Wilcox <matthew@wil.cx>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Jack Steiner [Thu, 23 Feb 2006 19:16:44 +0000 (13:16 -0600)]
[IA64-SGI] Make number of TIO nodes configurable
Make the limit for the number of TIO nodes a function of the number
of C/M nodes in the system instead of a hardcoded constant. The
number of TIO nodes should be the same as the number of C/M nodes.
Signed-off-by: Jack Steiner <steiner@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Horms [Wed, 22 Feb 2006 00:57:55 +0000 (09:57 +0900)]
[IA64] Document the "nomca" boot parameter
"nomca" can be used to disable machine check handling
Signed-Off-By: Horms <horms@verge.net.au>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Linus Torvalds [Mon, 27 Feb 2006 23:22:14 +0000 (15:22 -0800)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6
Zhang, Yanmin [Fri, 17 Feb 2006 04:23:09 +0000 (12:23 +0800)]
[IA64] Delete a redundant instruction in unaligned_access
unaligned_access does fetch cr.ipsr, then calls
dispatch_unaligned_handler, but dispatch_unaligned_handler fetches
cr.ipsr again, so delete the first one.
Signed-off-by: Zhang Yanmin <yanmin.zhang@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Jes Sorensen [Fri, 17 Feb 2006 15:25:39 +0000 (10:25 -0500)]
[IA64] show "SN Devices" menu only if CONFIG_SGI_SN
Adrian> On architectures like i386, the "Multimedia Capabilities Port
Adrian> drivers" menu is visible, but it can't be visited since it
Adrian> contains nothing usable for CONFIG_SGI_SN=n.
Jes> Thats only a third of the patch, if you want to do that, you should
Jes> remove the redundant SGI_SN checks below.
Signed-off-by: Tony Luck <tony.luck@intel.com>
Francois Romieu [Mon, 27 Feb 2006 22:15:06 +0000 (23:15 +0100)]
8139cp: fix broken suspend/resume
- check that the device is up before it is enabled again;
- the descriptor ring indexes must be set to zero before
cp_init_hw() is issued. Add a nice comment to remember
that skb allocation failure is still not handled.
Fixes http://bugzilla.kernel.org/show_bug.cgi?id=5681
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Francois Romieu [Mon, 27 Feb 2006 22:11:08 +0000 (23:11 +0100)]
via-velocity: fix memory corruption when changing the mtu
velocity_rx_refill() only replenishes the descriptor entries which
belong to the CPU. It works great in the Rx path but the driver must
ensure that all the descriptors are freed before velocity_rx_refill()
is used in velocity_change_mtu(). The patch resets the Rx descriptors
in velocity_free_rd_ring().
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Arnaldo Carvalho de Melo [Mon, 27 Feb 2006 21:30:43 +0000 (13:30 -0800)]
[REQSK]: Don't reset rskq_defer_accept in reqsk_queue_alloc
In
295f7324ff8d9ea58b4d3ec93b1aaa1d80e048a9 I moved defer_accept from
tcp_sock to request_queue and mistakingly reset it at reqsl_queue_alloc, causing
calls to setsockopt(TCP_DEFER_ACCEPT ) to be lost after bind, the fix is to
remove the zeroing of rskq_defer_accept from reqsl_queue_alloc.
Thanks to Alexandra N. Kossovsky <Alexandra.Kossovsky@oktetlabs.ru> for
reporting and testing the suggested fix.
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Patrick McHardy [Mon, 27 Feb 2006 21:04:17 +0000 (13:04 -0800)]
[NETFILTER]: Restore {ipt,ip6t,ebt}_LOG compatibility
The nfnetlink_log infrastructure changes broke compatiblity of the LOG
targets. They currently use whatever log backend was registered first,
which means that if ipt_ULOG was loaded first, no messages will be printed
to the ring buffer anymore.
Restore compatiblity by using the old log functions by default and only use
the nf_log backend if the user explicitly said so.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Patrick McHardy [Mon, 27 Feb 2006 21:03:55 +0000 (13:03 -0800)]
[NETFILTER]: nf_queue: fix end-of-list check
The comparison wants to find out if the last list iteration reached the
end of the list. It needs to compare the iterator with the list head to
do this, not the element it is looking for.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Patrick McHardy [Mon, 27 Feb 2006 21:03:39 +0000 (13:03 -0800)]
[NETFILTER]: nf_queue: remove unnecessary check for outfn
The only point of registering a queue handler is to provide an outfn,
so there is no need to check for it.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Patrick McHardy [Mon, 27 Feb 2006 21:03:24 +0000 (13:03 -0800)]
[NETFILTER]: nf_queue: fix rerouting after packet mangling
Packets should be rerouted when they come back from userspace, not before.
Also move the queue_rerouters to RCU to avoid taking the queue_handler_lock
for each reinjected packet.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Patrick McHardy [Mon, 27 Feb 2006 21:03:10 +0000 (13:03 -0800)]
[NETFILTER]: nf_queue: check if rerouter is present before using it
Every rerouter needs to provide a save and a reroute function, we don't
need to check for them. But we do need to check if a rerouter is registered
at all for the current family, with bridging for example packets of
unregistered families can hit nf_queue.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Patrick McHardy [Mon, 27 Feb 2006 21:02:52 +0000 (13:02 -0800)]
[NETFILTER]: nf_queue: don't copy registered rerouter data
Use the registered data structure instead of copying it.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Herbert Xu [Mon, 27 Feb 2006 21:00:40 +0000 (13:00 -0800)]
[IPSEC]: Kill post_input hook and do NAT-T in esp_input directly
The only reason post_input exists at all is that it gives us the
potential to adjust the checksums incrementally in future which
we ought to do.
However, after thinking about it for a bit we can adjust the
checksums without using this post_input stuff at all. The crucial
point is that only the inner-most NAT-T SA needs to be considered
when adjusting checksums. What's more, the checksum adjustment
comes down to a single u32 due to the linearity of IP checksums.
We just happen to have a spare u32 lying around in our skb structure :)
When ip_summed is set to CHECKSUM_NONE on input, the value of skb->csum
is currently unused. All we have to do is to make that the checksum
adjustment and voila, there goes all the post_input and decap structures!
I've left in the decap data structures for now since it's intricately
woven into the sec_path stuff. We can kill them later too.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Herbert Xu [Mon, 27 Feb 2006 21:00:01 +0000 (13:00 -0800)]
[IPSEC] esp: Kill unnecessary block and indentation
We used to keep sg on the stack which is why the extra block was useful.
We've long since stopped doing that so let's kill the block and save
some indentation.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Mon, 27 Feb 2006 20:51:27 +0000 (12:51 -0800)]
[TG3]: Fix Sun tg3 variant detection.
Some Sun parts don't have PCI_VENDOR_ID_SUN in the subsystem
vendor ID. So add another fallback test, which is the name
of the OBP firmware device tree node. If it's a Sun part we'll
get "network", else it will be named "ethernet".
Signed-off-by: David S. Miller <davem@davemloft.net>
Linus Torvalds [Mon, 27 Feb 2006 17:46:24 +0000 (09:46 -0800)]
Merge branch 'upstream' of git://ftp.linux-mips.org/upstream-linus
Atsushi Nemoto [Tue, 21 Feb 2006 06:59:00 +0000 (15:59 +0900)]
[MIPS] Use generic compat routines for readdir, getdents
Not just cleanup but also fixes O32 readdir(2) emulation.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 23 Feb 2006 14:10:53 +0000 (14:10 +0000)]
[MIPS] Fix atomic*_sub_if_positive return value.
Reported and initial fix by Thomas Koeller <thomas.koeller@baslerweb.com>,
rewritten by me.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Thu, 23 Feb 2006 12:23:27 +0000 (12:23 +0000)]
[MIPS] SMP: Fix initialization order bug.
A recent change requires cpu_possible_map to be initialized before
smp_sched_init() but most MIPS platforms were initializing their
processors in the prom_prepare_cpus callback of smp_prepare_cpus. The
simple fix of calling prom_prepare_cpus from one of the earlier SMP
initialization hooks doesn't work well either since IPIs may require
init_IRQ() to have completed, so bit the bullet and split
prom_prepare_cpus into two initialization functions, plat_smp_setup
which is called early from setup_arch and plat_prepare_cpus called where
prom_prepare_cpus used to be called.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Tue, 21 Feb 2006 18:32:14 +0000 (18:32 +0000)]
[MIPS] Use "=R" constraint to avoid compiler errors in cmpxchg().
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Marc Zyngier [Mon, 27 Feb 2006 11:08:00 +0000 (12:08 +0100)]
[PATCH] Fix Specialix SX corruption
With the latest kernels, I experienced some strange corruption, some
'*****' being randomly inserted in the character flow, like this:
ashes:~#
ashes:~#
a*******shes:~#
ashes:~#
ashes:~#
Further investigation shows that the problem was introduced during
Alan's "TTY layer buffering revamp" patch, the amount of data to be
copied being reduced after buffer allocation. Moving the count fixup
around solves the problem.
Signed-off-by: Marc Zyngier <maz@misterjones.org>
Approved-by: Rogier Wolff <R.E.Wolff@BitWizard.nl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Mon, 27 Feb 2006 15:41:30 +0000 (07:41 -0800)]
Merge branch 'upstream-fixes' of /linux/kernel/git/jgarzik/libata-dev
Linus Torvalds [Mon, 27 Feb 2006 15:41:11 +0000 (07:41 -0800)]
Merge branch 'upstream-fixes' of /linux/kernel/git/jgarzik/netdev-2.6
Linus Torvalds [Mon, 27 Feb 2006 05:09:35 +0000 (21:09 -0800)]
Linux v2.6.16-rc5
Linus Torvalds [Mon, 27 Feb 2006 04:27:11 +0000 (20:27 -0800)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Mon, 27 Feb 2006 04:24:40 +0000 (20:24 -0800)]
Make Kprobes depend on modules
Commit
9ec4b1f356b3bad928ae8e2aa9caebfa737d52df made kprobes not compile
without module support, so just make that clear in the Kconfig file.
Also, since it's marked EXPERIMENTAL, make that dependency explicit too.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
David S. Miller [Sat, 25 Feb 2006 21:39:56 +0000 (13:39 -0800)]
[SPARC64]: Make cpu_present_map available earlier.
The change to kernel/sched.c's init code to use for_each_cpu()
requires that the cpu_possible_map be setup much earlier.
Set it up via setup_arch(), constrained to NR_CPUS, and later
constrain it to max_cpus in smp_prepare_cpus().
This fixes SMP booting on sparc64.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sat, 25 Feb 2006 20:15:31 +0000 (12:15 -0800)]
[SPARC64]: Implement futex_atomic_op_inuser().
Signed-off-by: David S. Miller <davem@davemloft.net>
James Bottomley [Sun, 26 Feb 2006 23:07:45 +0000 (17:07 -0600)]
[PATCH] fix voyager after topology.c move
Commit
9c869edac591977314323a4eaad5f7633fca684f broke voyager again
rather subtly because it already had its own topology exporting
functions, so now each CPU gets registered twice.
I think we can actually use the generic ones, so I don't propose
reverting it. The attached should eliminate the voyager topology
functions in favour of the generic ones.
I also added a define to ensure voyager is never hotplug CPU (we don't
have the support in the SMP harness).
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Brian Magnuson [Mon, 27 Feb 2006 03:02:04 +0000 (04:02 +0100)]
[PATCH] fix build on x86_64 with !CONFIG_HOTPLUG_CPU
The commit
e2c0388866dc12bef56b178b958f9b778fe6c687 added
setup_additional_cpus to setup.c but this is only defined if
CONFIG_HOTPLUG_CPU is set. This patch changes the #ifdef to reflect that.
Signed-off-by: Brian Magnuson <magnuson@rcn.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Andi Kleen [Sun, 26 Feb 2006 03:18:55 +0000 (04:18 +0100)]
[PATCH] x86_64: Fix ioctl compat code for /dev/rtc
RTC_IRQP_SET/RTC_EPOCH_SET don't take a pointer to an argument, but the
argument itself. This actually simplifies the code and makes it work.
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Andi Kleen [Sun, 26 Feb 2006 03:18:52 +0000 (04:18 +0100)]
[PATCH] x86_64: Better ATI timer fix
The previous experiment for using apicmaintimer on ATI systems didn't
work out very well. In particular laptops with C2/C3 support often
don't let it tick during idle, which makes it useless. There were also
some other bugs that made the apicmaintimer often not used at all.
I tried some other experiments - running timer over RTC and some other
things but they didn't really work well neither.
I rechecked the specs now and it turns out this simple change is
actually enough to avoid the double ticks on the ATI systems. We just
turn off IRQ 0 in the 8254 and only route it directly using the IO-APIC.
I tested it on a few ATI systems and it worked there. In fact it worked
on all chipsets (NVidia, Intel, AMD, ATI) I tried it on.
According to the ACPI spec routing should always work through the
IO-APIC so I think it's the correct thing to do anyways (and most of the
old gunk in check_timer should be thrown away for x86-64).
But for 2.6.16 it's best to do a fairly minimal change:
- Use the known to be working everywhere-but-ATI IRQ0 both over 8254
and IO-APIC setup everywhere
- Except on ATI disable IRQ0 in the 8254
- Remove the code to select apicmaintimer on ATI chipsets
- Add some boot options to allow to override this (just paranoia)
In 2.6.17 I hope to switch the default over to this for everybody.
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Andi Kleen [Sun, 26 Feb 2006 03:18:49 +0000 (04:18 +0100)]
[PATCH] x86_64: Move the SMP time selection earlier
SMP time selection originally ran after all CPUs were brought up because
it needed to know the number of CPUs to decide if it needs an MP safe
timer or not.
This is not needed anymore because we know present CPUs early.
This fixes a couple of problems:
- apicmaintimer didn't always work because it relied on state that was
set up time_init_gtod too late.
- The output for the used timer in early kernel log was misleading
because time_init_gtod could actually change it later. Now always
print the final timer choice
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Andi Kleen [Sun, 26 Feb 2006 03:18:46 +0000 (04:18 +0100)]
[PATCH] x86_64: Fix the additional_cpus=.. option
It didn't set up the CPU possible map early enough, so the
option didn't actually work.
Noticed by Heiko Carstens
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Andi Kleen [Sun, 26 Feb 2006 03:18:43 +0000 (04:18 +0100)]
[PATCH] x86_64: Disable ACPI blacklist by year for now on x86-64
ACPI is initialized very early on x86-64, before the DMI code is
initialized. This means it would often discover a 0 year and then turn
off ACPI because it thought the BIOS was too old. Some systems don't
boot without ACPI so this was a problem.
I have a full fix by adding new very early DMI detection, but it needs
more testing before it can be merged. For 2.6.16 let's just turn the
check off. It never made much sense anyways because there are no x86-64
systems older than 2002 or so and they generally all have working ACPI.
Cc: len.brown@intel.com
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Chris McDermott [Sun, 26 Feb 2006 03:18:40 +0000 (04:18 +0100)]
[PATCH] x86_64: Fix NMI watchdog on x460
[description from AK]
Old check for the IO-APIC watchdog during the timer check was wrong -
it obviously should only drop into this if the IO-APIC watchdog is used.
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Andi Kleen [Sun, 26 Feb 2006 03:18:37 +0000 (04:18 +0100)]
[PATCH] x86-64/i386: Use common X86_PM_TIMER option and make it EMBEDDED
This makes x86-64 use the common X86_PM_TIMER Kconfig entry in drivers/acpi
And since PM timer is needed for correct timing on a lot of systems
now (e.g. AMD dual cores) and we often get bug reports from people
who forgot to set it make it depend on CONFIG_EMBEDDED. x86-64 had
this change before and it's a good thing.
I also fixed the description slightly to make this more clear.
Cc: len.brown@intel.com
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Andreas Deresch [Sun, 26 Feb 2006 03:18:34 +0000 (04:18 +0100)]
[PATCH] i386: Handle non existing APICs without panicing
[description from AK]
This fixes booting in APIC mode on some ACER laptops. x86-64
did a similar change some time ago.
See http://bugzilla.kernel.org/show_bug.cgi?id=4700 for details
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Andi Kleen [Sun, 26 Feb 2006 03:18:31 +0000 (04:18 +0100)]
[PATCH] x86_64: Only do the clustered systems have unsynchronized TSC assumption on IBM systems
Big Unisys systems have multiple clusters too, but they have an
synchronized TSC.
I'm using the SMBIOS to check for vendor == IBM.
Cc: Chris McDermott <lcm@us.ibm.com>
Cc: "Protasevich, Natalie" <Natalie.Protasevich@unisys.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Suresh Siddha [Sun, 26 Feb 2006 03:18:28 +0000 (04:18 +0100)]
[PATCH] x86_64: Check for bad elf entry address.
Fixes a local DOS on Intel systems that lead to an endless
recursive fault. AMD machines don't seem to be affected.
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jan Beulich [Sun, 26 Feb 2006 03:18:25 +0000 (04:18 +0100)]
[PATCH] x86_64: fix USER_PTRS_PER_PGD
The value, while currently unused in the native kernel, was off by one.
Signed-Off-By: Jan Beulich <jbeulich@novell.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jon Mason [Sun, 26 Feb 2006 03:18:22 +0000 (04:18 +0100)]
[PATCH] x86_64: no_iommu removal in pci-gart.c
In previous versions of pci-gart.c, no_iommu was used to determine if IOMMU was
disabled in the GART DMA mapping functions. This changed in 2.6.16 and now
gart_xxx() functions are only called if gart is enabled. Therefore, uses of
no_iommu in the GART code are no longer necessary and can be removed.
Also, it removes double deceleration of no_iommu and force_iommu in pci.h and
proto.h, by removing the deceleration in pci.h.
Lastly, end_pfn off by one error.
Tested (along with patch 1/2) on dual opteron with gart enabled, iommu=soft,
and iommu=off.
Signed-off-by: Jon Mason <jdmason@us.ibm.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Marc Zyngier [Sun, 26 Feb 2006 11:02:56 +0000 (12:02 +0100)]
[PATCH] Fix Specialix SI probing
As the (probably) last user of a Specialix SI board, I noticed that
recent kernels would fail to probe the sucker. Quick investigation
indicate a few missing braces...
I left the double probing in place, as it looks like it's been here
forever.
Signed-off-by: Marc Zyngier <maz@misterjones.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>