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>
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>
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>
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>
Linus Torvalds [Mon, 27 Feb 2006 23:22:14 +0000 (15:22 -0800)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6
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>
Al Viro [Sun, 26 Feb 2006 14:34:10 +0000 (08:34 -0600)]
[PATCH] sd: fix memory corruption with broken mode page headers
There's a problem in sd where we blindly believe the length of the
headers and block descriptors. Some devices return insane values for
these and cause our length to end up greater than the actual buffer
size, so check to make sure.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Also removed the buffer size magic number (512) and added DPOFUA of
zero to the defaults
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Daniele Venzano [Sat, 25 Feb 2006 22:01:09 +0000 (17:01 -0500)]
Fix Wake on LAN support in sis900
Fix two bugs in the WoL implementation of sis900. The first causes
hangs on some system on driver load, the second causes troubles
when disabling WoL support. Both fixes are one liner and really
simple.
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Daniele Venzano <venza@brownhat.org>
Tejun Heo [Sat, 25 Feb 2006 04:52:30 +0000 (13:52 +0900)]
[PATCH] sata_sil: implement R_ERR on DMA activate FIS errata fix
Silicon Image has disclosed a new sil3114/3152 errata and workaround
which causes the controller to return R_ERR on DMA activate FIS if the
FIS is received while the next PRD is being fetched. This patch
implements the workaround.
This errata results in lock up and doesn't trigger if m15w workaround
is in effect. We stopped applying m15w to 3512 and 3114 in 2.6.14-rc1
which makes 3512/3114 lock up with some drives on all kernel versions
since 2.6.14-rc1 upto now (2.6.16-rc4). This patch should fix the
regression.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Tejun Heo [Sat, 25 Feb 2006 04:52:30 +0000 (13:52 +0900)]
[PATCH] sata_sil: add board ID for 3512
3512 is slightly different from 3112 errata-wise. Differentiate it.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Dave Jones [Sat, 25 Feb 2006 08:55:38 +0000 (03:55 -0500)]
[PATCH] x86-64: react to new topology.c location
Commit
9c869edac591977314323a4eaad5f7633fca684f moved the i386 topology.c
file. That change broke x86-64 compiles, as it uses the same file.
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Sat, 25 Feb 2006 00:01:07 +0000 (16:01 -0800)]
Merge master.kernel.org:/home/rmk/linux-2.6-serial
Linus Torvalds [Sat, 25 Feb 2006 00:00:36 +0000 (16:00 -0800)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Fri, 24 Feb 2006 22:36:42 +0000 (14:36 -0800)]
Merge git://git./linux/kernel/git/aia21/ntfs-2.6
Kumar Gala [Fri, 24 Feb 2006 16:54:52 +0000 (10:54 -0600)]
[PATCH] powerpc: Fix mem= cmdline handling on arch/powerpc for !MULTIPLATFORM
mem= command line option was being ignored in arch/powerpc if we were not
a CONFIG_MULTIPLATFORM (which is handled via prom_init stub). The initial
command line extraction and parsing needed to be moved earlier in the boot
process and have code to actual parse mem= and do something about it.
Also, fixed a compile warning in the file.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Segher Boessenkool <segher@kernel.crashing.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds [Fri, 24 Feb 2006 22:32:18 +0000 (14:32 -0800)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6
Zachary Amsden [Fri, 24 Feb 2006 21:04:27 +0000 (13:04 -0800)]
[PATCH] Fix topology.c location
When compiling a non-default subarch, topology.c is missing from the kernel
build. This causes builds with CONFIG_HOTPLUG_CPU to fail. In addition,
on Intel processors with cpuid level > 4, it causes intel_cacheinfo.c to
reference uninitialized data that should have been set up by the initcall
in topology.c which calls register_cpu. This causes a kernel panic on boot
on newer Intel processors. Moving topology.c to arch/i386/kernel fixes
both of these problems.
Thanks to Dan Hecht for finding and fixing this problem.
Signed-off-by: Zachary Amsden <zach@vmware.com>
Signed-off-by: Dan Hecht <dhect@vmware.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Hugh Dickins [Fri, 24 Feb 2006 21:04:26 +0000 (13:04 -0800)]
[PATCH] tmpfs: recommend remount for mpol
akpm points out that switching to a non-NUMA kernel could be irritating
if mounting tmpfs fails on an mpol option: tmpfs.txt recommend remount.
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jun'ichi Nomura [Fri, 24 Feb 2006 21:04:25 +0000 (13:04 -0800)]
[PATCH] dm: free minor after unlink gendisk
Minor number should be freed after del_gendisk(). Otherwise, there could
be a window where 2 registered gendisk has same minor number.
Signed-off-by: Jun'ichi Nomura <j-nomura@ce.jp.nec.com>
Acked-by: Alasdair G Kergon <agk@redhat.com>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Jun'ichi Nomura [Fri, 24 Feb 2006 21:04:24 +0000 (13:04 -0800)]
[PATCH] dm: missing bdput/thaw_bdev at removal
Need to unfreeze and release bdev otherwise the bdev inode with
inconsistent state is reused later and cause problem.
Signed-off-by: Jun'ichi Nomura <j-nomura@ce.jp.nec.com>
Acked-by: Alasdair G Kergon <agk@redhat.com>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Andrew Morton [Fri, 24 Feb 2006 21:04:23 +0000 (13:04 -0800)]
[PATCH] ramfs: update dir mtime and ctime
Phil Marek <philipp.marek@bmlv.gv.at> points out that ramfs forgets to update
a directory's mtime and ctime when it is modified.
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Christoph Lameter [Fri, 24 Feb 2006 21:04:22 +0000 (13:04 -0800)]
[PATCH] vmscan: fix zone_reclaim
- PF_SWAPWRITE needs to be set for RECLAIM_SWAP to be able to write
out pages to swap. Currently RECLAIM_SWAP may not do that.
- remove setting nr_reclaimed pages after slab reclaim since the slab shrinking
code does not use that and the nr_reclaimed pages is just right for the
intended follow up action.
Signed-off-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Ulrich Drepper [Fri, 24 Feb 2006 21:04:21 +0000 (13:04 -0800)]
[PATCH] flags parameter for linkat
I'm currently at the POSIX meeting and one thing covered was the
incompatibility of Linux's link() with the POSIX definition. The name.
Linux does not follow symlinks, POSIX requires it does.
Even if somebody thinks this is a good default behavior we cannot change this
because it would break the ABI. But the fact remains that some application
might want this behavior.
We have one chance to help implementing this without breaking the behavior.
For this we could use the new linkat interface which would need a new
flags parameter. If the new parameter is AT_SYMLINK_FOLLOW the new
behavior could be invoked.
I do not want to introduce such a patch now. But we could add the
parameter now, just don't use it. The patch below would do this. Can we
get this late patch applied before the release more or less fixes the
syscall API?
Signed-off-by: Ulrich Drepper <drepper@redhat.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Antonino A. Daplas [Fri, 24 Feb 2006 21:04:20 +0000 (13:04 -0800)]
[PATCH] Fix pseudo_palette setup in asiliantfb_setcolreg()
The setcolreg function will attempt to write 24 color entries to the
pseudo_pallette. However, the pseudo_palette has only space for 16 entries.
Thanks to Atsushi Nemoto for reporting this bug.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Freddy Spierenburg [Fri, 24 Feb 2006 21:04:17 +0000 (13:04 -0800)]
[PATCH] au1100fb: replaced io_remap_page_range() with io_remap_pfn_range()
Replaced the no longer existing io_remap_page_range() routine with the
io_remap_pfn_range() routine. Did not have a chance yet to test the
functionality of the driver, but at least the kernel compiles cleanly again.
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Martin Michlmayr [Fri, 24 Feb 2006 21:04:16 +0000 (13:04 -0800)]
[PATCH] gbefb: Set default of FB_GBE_MEM to 4 MB
Allocating more than 4 MB memory for the GBE (SGI O2) framebuffer completely
breakfs gbefb support at the moment. According to comments on #mipslinux,
more than 4 MB has never worked correctly in Linux. Therefore, the default
should be 4 MB.
Signed-off-by: Martin Michlmayr <tbm@cyrius.com>
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Kaj-Michael Lang [Fri, 24 Feb 2006 21:04:15 +0000 (13:04 -0800)]
[PATCH] gbefb: IP32 gbefb depth change fix
The gbefb driver does not update the framebuffer layers visual setting when
depth is changed with fbset, resulting in strange colors (very dark blue in
16-bit, almost black in 24-bit).
Signed-off-by: Kaj-Michael Lang <milang@tal.org>
Signed-off-by: Martin Michlmayr <tbm@cyrius.com>
Signed-off-by: Antonino Daplas <adaplas@pol.net>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
James Bottomley [Fri, 24 Feb 2006 21:04:14 +0000 (13:04 -0800)]
[PATCH] x86: fix broken SMP boot sequence
Recent GDT changes broke the SMP boot sequence if the booting CPU is
numbered anything other than zero. There's also a subtle source of error
in that the boot time CPU now uses cpu_gdt_table (which is actually the GDT
for booting CPUs in head.S). This patch fixes both problems by making GDT
descriptors themselves allocated from a per_cpu area and switching to them
in cpu_init(), which now means that cpu_gdt_table is exclusively used for
booting CPUs again.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Cc: Zachary Amsden <zach@vmware.com>
Cc: Matt Tolentino <metolent@snoqualmie.dp.intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Christoph Lameter [Fri, 24 Feb 2006 21:04:12 +0000 (13:04 -0800)]
[PATCH] page migration: Fix MPOL_INTERLEAVE behavior for migration via mbind()
migrate_pages_to() allocates a list of new pages on the intended target
node or with the intended policy and then uses the list of new pages as
targets for the migration of a list of pages out of place.
When the pages are allocated it is not clear which of the out of place
pages will be moved to the new pages. So we cannot specify an address as
needed by alloc_page_vma(). This causes problem for MPOL_INTERLEAVE which
will currently allocate the pages on the first node of the set. If mbind
is used with vma that has the policy of MPOL_INTERLEAVE then the
interleaving of pages may be destroyed.
This patch fixes that by generating a fake address for each alloc_page_vma
which will result is a distribution of pages as prescribed by
MPOL_INTERLEAVE.
Lee also noted that the sequence of nodes for the new pages seems to be
inverted. So we also invert the way the lists of pages for migration are
build.
Signed-off-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Lee Schermerhorn <lee.schermerhorn@hp.com>
Looks-ok-to: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
James Bottomley [Fri, 24 Feb 2006 21:04:11 +0000 (13:04 -0800)]
[PATCH] voyager: fix the cpu_possible_map to make voyager boot again
Right at the moment (thanks to a patch from Andrew), cpu_possible_map on
voyager is CPU_MASK_NONE, which means the machine always thinks it has no
CPUs. Fix that by doing an early initialisation of the cpu_possible_map
from the cpu_phys_present_map.
(akpm: we aim to please)
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
James Bottomley [Fri, 24 Feb 2006 21:04:10 +0000 (13:04 -0800)]
[PATCH] voyager: fix boot panic by adding topology export
It looks like I can't get away without exporting topology functions from
voyager any longer, so add them to the voyager subarchitecture.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Simon Vogl [Fri, 24 Feb 2006 21:04:09 +0000 (13:04 -0800)]
[PATCH] cfi: init wait queue in chip struct
Fix a kernel oops for Intel P30 flashes, where the wait queue head was not
initialized for the flchip struct, which in turn caused a crash at the
first read operation.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Prasanna S Panchamukhi [Fri, 24 Feb 2006 21:04:08 +0000 (13:04 -0800)]
[PATCH] Kprobes causes NX protection fault on i686 SMP
Fix a problem seen on i686 machine with NX support where the instruction
could not be single stepped because of NX bit set on the memory pages
allocated by kprobes module. This patch provides allocation of instruction
solt so that the processor can execute the instruction from that location
similar to x86_64 architecture. Thanks to Bibo and Masami for testing this
patch.
Signed-off-by: Prasanna S Panchamukhi <prasanna@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Samuel Thibault [Fri, 24 Feb 2006 21:03:59 +0000 (13:03 -0800)]
[PATCH] vgacon: no vertical resizing on EGA
EGA boards suck: they mostly have write-only registers. This is
particularly problematic for the overflow register: for being able to write
to it, we would have to handle vertical sync & such too, which (I'd say)
would potentially break a lot of configurations. Instead, just disabling
vertical resize for EGA boards is just nice enough (horizontal resize still
works).
Fixes http://bugzilla.kernel.org/show_bug.cgi?id=6106
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Cc: Rafal Olearski <olearski@mail2.kim.net.pl>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Paolo 'Blaisorblade' Giarrusso [Fri, 24 Feb 2006 21:03:58 +0000 (13:03 -0800)]
[PATCH] uml: tidying COW code
Improve (especially for coherence) some prototypes, and return code of
init_cow_file in error case - for a short write return -EINVAL, otherwise
return the error we got!
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Acked-by: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Paolo 'Blaisorblade' Giarrusso [Fri, 24 Feb 2006 21:03:57 +0000 (13:03 -0800)]
[PATCH] uml: better error reporting for read_output
Do precise error handling: print precise error messages, distinguishing short
reads and read errors. This functions fails frequently enough for me so I
bothered doing this fix.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Acked-by: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Paolo 'Blaisorblade' Giarrusso [Fri, 24 Feb 2006 21:03:56 +0000 (13:03 -0800)]
[PATCH] uml: os_connect_socket error path fixup
Fix an fd leak and a return of -1 instead of -errno in the error path - this
showed up in intensive testing of HPPFS, the os_connect_socket user.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Acked-by: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Paolo 'Blaisorblade' Giarrusso [Fri, 24 Feb 2006 21:03:55 +0000 (13:03 -0800)]
[PATCH] uml: fix ((unused)) attribute
Use __attribute_used__ instead of __attribute__ ((unused)). This will help
with GCC > 3.2.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Acked-by: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Paolo 'Blaisorblade' Giarrusso [Fri, 24 Feb 2006 21:03:55 +0000 (13:03 -0800)]
[PATCH] uml: fix usage of kernel_errno in place of errno
To avoid conflicts, in kernel files errno is expanded to kernel_errno, to
distinguish it from glibc errno. In this case, the code wants to use the libc
errno but the kernel one is used; in the other usage, we return errno in place
of -errno in case of an error.
Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Acked-by: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>