David Mosberger [Mon, 12 Jan 2004 03:20:44 +0000 (19:20 -0800)]
ia64: add generic defconfig file
Here's a generic_defconfig that works on all the ia64
platforms I'm aware of, and we can always update it if it's
missing a driver or two. Compile tested 'make compressed' and
'make modules', and boot tested on sn2, and I think Alex boot
tested on an HP machine.
Linus Torvalds [Thu, 8 Jan 2004 03:46:52 +0000 (19:46 -0800)]
Fix subtle fork() race that Ingo noticed.
We must not mark the process TASK_STOPPED early, because
that might allow a signal to wake it up before we actually
got to the "wake_up_forked_process()" state. Total confusion
would happen.
Make wake_up_forked_process() verify the new world order.
Dave Jones [Wed, 7 Jan 2004 14:53:58 +0000 (14:53 +0000)]
[AGPGART] Add support for Radeon IGP345M to ATI GART driver.
Also consolidate a bunch of convoluted if's into a single
"is this an r200 or r300" function.
Andrew Morton [Wed, 7 Jan 2004 13:56:59 +0000 (05:56 -0800)]
[PATCH] ppc64: Add missing section definition
From: Anton Blanchard <anton@samba.org>
For a laugh we moved the BSS and our world exploded. Turns out we zero
from __bss_start to _end. Add __bss_stop to our section definitions so
we can use it instead.
Dave Kleikamp [Wed, 7 Jan 2004 02:35:15 +0000 (18:35 -0800)]
[PATCH] don't clear i_sb
From: Christoph Hellwig <hch@lst.de>
JFS currently clears i_sb in some error pathes which can make the
core kernel OOPS because it may never be NULL. Noticed because some
IBM people try to "fix" the core kernel for it now..
Andrew Morton [Tue, 6 Jan 2004 23:52:48 +0000 (15:52 -0800)]
[PATCH] ia32 sched_clock() deadlock fix
From: Ingo Molnar <mingo@elte.hu>,
Voyager is getting odd deadlocks due to the taking of xtime_lock() in
sched_clock()->get_jiffies_64().
I had this patch queued up to fix a different deadlock, which occurs when we
relax the requirement that TSC's be synchronised across CPUs. But it will
fix James' deadlock too.
Andrew Morton [Tue, 6 Jan 2004 23:52:30 +0000 (15:52 -0800)]
[PATCH] JFS fix for NFS on little-endian systems
From: Dave Kleikamp <shaggy@austin.ibm.com>
After Jose debugged the problem down to the routine jfs_get_parent, we
were able to find the problem. I believe it only affects users of
NFS-exported JFS file systems on big-endian hardware.
The problem was a missing le32_to_cpu macro. The patch also fixes a
return code to be more consistent other implementations of get_parent.
Andrew Morton [Tue, 6 Jan 2004 23:52:21 +0000 (15:52 -0800)]
[PATCH] fix sysfs oops
From: Greg KH <greg@kroah.com>
This fixes an oops when a kobject is unregistered before it's child is.
The usb-serial devices show this bug very easily (yank out a device
while its port is opened...)
Patch was originally written by Mike Gorse <mgorse@mgorse.dhs.org>
Andrew Morton [Tue, 6 Jan 2004 23:52:12 +0000 (15:52 -0800)]
[PATCH] MSI build fixes
Add missing NR_VECTORS definition to visws and pc9800. Also, make MSI
support dependent on CONFIG_X86_IO_APIC, as it won't build without IOAPIC
support.
Adam Belay [Tue, 6 Jan 2004 12:08:21 +0000 (04:08 -0800)]
[PATCH] Fix PnP BIOS call
The recent escd fix I have made corrects a thinko in the PnPBIOS code and it
turns out that faults from calling /proc/pnp/bus/escd were probably not caused
by BIOS bugs.
Fix for oops on rmmod caused by *_remove() function marked as __devinit
(and thus discarded after module initialization - if CONFIG_MODULES=y
and CONFIG_HOTPLUG is not set).
This patch changes __devinit to __devexit and adds __devexit_p() where
pointer to such function is used.
The only exception is au1000, where au1000_remove() is called from
cleanup_au1000() function - __devinit is jest removed there.
This fixes BUG-on-swapout for srmmu-based systems. The problem is
caused by kmap_atomic_to_page being fed an aliased (pagetable) address
and returning bogons. This also adjusts the pkmap and fixmap base
addresses so they cannot overlap.
David Mosberger [Mon, 5 Jan 2004 05:09:39 +0000 (21:09 -0800)]
Many files:
ia64: Cleanup EXPORT_SYMBOL usage
This cleans up the use of EXPORT_SYMBOL in ia64_ksyms.c by
moving most of them to the place where the symbol is defined.
Ideally, only symbols defined in assembler sources should
remain here, but there are some cases where an EXPORT_SYMBOL
is missing outside the arch/ia64 tree. I did not change them
for now. Also, EXPORT_SYMBOL_NOVERS is obsolete.
This patch for 2.6 fixes the problem found by Zoltan Farkas
with mixed PCI/ISA and a non-modular config. The problem is the old_netdev
ISA probing isn't skipping eth0 which already got assigned by the PCI
initialization.
David Mosberger [Mon, 5 Jan 2004 03:16:25 +0000 (19:16 -0800)]
ia64: Skip zero-length resources in PCI root bridge _CRS. This fixes
some ugly messages that used to show up on Tiger and other Intel
boxes:
alloc 0xffffffff-0x0 from PCI mem for PCI Bus 0000:02 failed
alloc 0xffffffff-0x0 from PCI mem for PCI Bus 0000:08 failed
alloc 0xffffffff-0x0 from PCI mem for PCI Bus 0000:08 failed
alloc 0xffffffff-0x0 from PCI mem for PCI Bus 0000:08 failed
alloc 0xffff-0x0 from PCI IO for PCI Bus 0000:08 failed
alloc 0xffffffff-0x0 from PCI mem for PCI Bus 0000:09 failed
alloc 0xffffffff-0x0 from PCI mem for PCI Bus 0000:0f failed
Russell King [Sun, 4 Jan 2004 17:29:23 +0000 (17:29 +0000)]
[ARM] Fix cachepolicy=<foo>
On ARM, it is possible to configure the desired cache policy in
the page tables. Unfortunately, we haven't been updating the
protection_map nor PAGE_KERNEL, so this option doesn't change
the behaviour of the majority of mappings. This cset corrects
this oversight.
Amit Gurdasani [Sun, 4 Jan 2004 16:28:39 +0000 (16:28 +0000)]
[SERIAL] EISA ID for PnP modem
Patch from: Amit Gurdasani
I have a PROLiNK 1456VH internal Rockwell-based ISA PnP K56flex fax modem
whose EISA ID seems not to be known to 8250_pnp.c. The ID is AEI0250 as
reported in /sys/devices/pnp1/01:01/01:01.00/id and adding this into the
pnp_dev_table[] allows the device to be found and enabled properly by the
8250 serial driver.
Linus Torvalds [Sat, 3 Jan 2004 10:25:13 +0000 (02:25 -0800)]
Fix IDE "PIO WRITE wait for ready" test under extreme interrupt load.
From Daniel Tram Lux: under extreme irq load on an underpowered CPU,
the timeout loop may not make any progress, and decide that a timeout
occurred before it has actually tested the status register.
The minimal fix for now is to just have a final test _after_ the timeout
to remove the problem. The real fix would likely be to not have irqs
enabled between reading the status and the timeout.
Russell King [Fri, 2 Jan 2004 19:36:52 +0000 (19:36 +0000)]
[SERIAL] Remove old RSA resource handlign.
The resource handling left in autoconfig() is plainly wrong, since
we've already claimed the necessary resources prior to calling
autoconfig(). Therefore, we remove the superfluous code from
autoconfig().
Andi Kleen [Thu, 1 Jan 2004 03:41:03 +0000 (19:41 -0800)]
[PATCH] X86-64 merge
At least one of them is critical. It fixes an path in the IOMMU that
I broke with the ealier "fullflush" workaround.
- Check for ~/bin/installkernel like i386 (M. Bligh)
- Implement 32bit RTC_IRQ_SET correctly (Lutz Vieweg)
- Disable some useless printks in 32bit emulation
- Warning fixes for mixed C99 style declarations/statements.
- Sync lAPIC power management with i386
- Use topology sysfs like i386
- Fix some serious bugs in the MCE handler. ECC should
be decoded correctly now.
- Add oops=panic option to panic on Oopses.
- Fix hackish code in head.S
- Add missing options in IOMMU
- Fix _syscall6 (Olaf Hering)
- Remove broken ACPI locking code. Port IA64 C version.
- Make safe_smp_processor_id() more reliable
- Read HPET in vsyscall code
- Add workaround for BIOS that corrupt 64bit registers in HLT
- Fix unaligned access in bitops.h
- Remove broken ntp drift correction code for now
- i386 merge in SCI setup
- Fix wrong offset in callin.h (Jim Houston)
- Minor comment fixes