pandora-kernel.git
17 years ago[PATCH] KVM: Improve interrupt response
Dor Laor [Sat, 6 Jan 2007 00:36:24 +0000 (16:36 -0800)]
[PATCH] KVM: Improve interrupt response

The current interrupt injection mechanism might delay an interrupt under
the following circumstances:

 - if injection fails because the guest is not interruptible (rflags.IF clear,
   or after a 'mov ss' or 'sti' instruction).  Userspace can check rflags,
   but the other cases or not testable under the current API.
 - if injection fails because of a fault during delivery.  This probably
   never happens under normal guests.
 - if injection fails due to a physical interrupt causing a vmexit so that
   it can be handled by the host.

In all cases the guest proceeds without processing the interrupt, reducing
the interactive feel and interrupt throughput of the guest.

This patch fixes the situation by allowing userspace to request an exit
when the 'interrupt window' opens, so that it can re-inject the interrupt
at the right time.  Guest interactivity is very visibly improved.

Signed-off-by: Dor Laor <dor.laor@qumranet.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Acked-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] KVM: Recover after an arch module load failure
Yoshimi Ichiyanagi [Sat, 6 Jan 2007 00:36:24 +0000 (16:36 -0800)]
[PATCH] KVM: Recover after an arch module load failure

If we load the wrong arch module, it leaves behind kvm_arch_ops set, which
prevents loading of the correct arch module later.

Fix be not setting kvm_arch_ops until we're sure it's good.

Signed-off-by: Yoshimi Ichiyanagi <ichiyanagi.yoshimi@lab.ntt.co.jp>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] KVM: Use raw_smp_processor_id() instead of smp_processor_id() where applicable
Ingo Molnar [Sat, 6 Jan 2007 00:36:23 +0000 (16:36 -0800)]
[PATCH] KVM: Use raw_smp_processor_id() instead of smp_processor_id() where applicable

Signed-off-by: Avi Kivity <avi@qumranet.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] KVM: Fix GFP_KERNEL alloc in atomic section bug
Ingo Molnar [Sat, 6 Jan 2007 00:36:23 +0000 (16:36 -0800)]
[PATCH] KVM: Fix GFP_KERNEL alloc in atomic section bug

KVM does kmalloc() in an atomic section while having preemption disabled via
vcpu_load().  Fix this by moving the ->*_msr setup from the vcpu_setup method
to the vcpu_create method.

(This is also a small speedup for setting up a vcpu, which can in theory be
more frequent than the vcpu_create method).

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] via82cxxx: fix cable detection
Bartlomiej Zolnierkiewicz [Sat, 6 Jan 2007 00:36:21 +0000 (16:36 -0800)]
[PATCH] via82cxxx: fix cable detection

This patch fixes 2.6.15 regression, is straightforward and tested.

Cable detection got broken probably while converting the driver to support
multiple controllers.  Cable detection is done by examining how BIOS
configured the attached devices.  The current code is broken in that it
examines the status *after* modifying Clk66 configuration ending up
detecting 40c cables as 80c.  This patch fixes it.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.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>
17 years ago[PATCH] PCI: prevent down_read when pci_devices is empty
Ard van Breemen [Sat, 6 Jan 2007 00:36:21 +0000 (16:36 -0800)]
[PATCH] PCI: prevent down_read when pci_devices is empty

The pci_find_subsys gets called very early by obsolete ide setup parameters.
This is a bogus call since pci is not initialized yet, so the list is empty.
But in the mean time, interrupts get enabled by down_read.  This can result in
a kernel panic when the irq controller gets initialized.

This patch checks if the device list is empty before taking the semaphore, and
hence will not enable irq's.  Furthermore it will inform that it is called
while pci_devices is empty as a reminder that the ide code needs to be fixed.

The pci_get_subsys can get called in the same manner, and as such is patched
in the same manner.

[akpm@osdl.org: cleanups]
Signed-off-by: Ard van Breemen <ard@telegraafnet.nl>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] kernelparams: detect if and which parameter parsing enabled irq's
Ard van Breemen [Sat, 6 Jan 2007 00:36:20 +0000 (16:36 -0800)]
[PATCH] kernelparams: detect if and which parameter parsing enabled irq's

The parsing of some kernel parameters seem to enable irq's at a stage that
irq's are not supposed to be enabled (Particularly the ide kernel parameters).

Having irq's enabled before the irq controller is initialized might lead to a
kernel panic.  This patch only detects this behaviour and warns about wich
parameter caused it.

[akpm@osdl.org: cleanups]
Signed-off-by: Ard van Breemen <ard@telegraafnet.nl>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] start_kernel: test if irq's got enabled early, barf, and disable them again
Ard van Breemen [Sat, 6 Jan 2007 00:36:19 +0000 (16:36 -0800)]
[PATCH] start_kernel: test if irq's got enabled early, barf, and disable them again

The calls made by parse_parms to other initialization code might enable
interrupts again way too early.

Having interrupts on this early can make systems PANIC when they initialize
the IRQ controllers (which happens later in the code).  This patch detects
that irq's are enabled again, barfs about it and disables them again as a
safety net.

[akpm@osdl.org: cleanups]
Signed-off-by: Ard van Breemen <ard@telegraafnet.nl>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Fix leds-s3c24xx hardware.h reference
Richard Purdie [Sat, 6 Jan 2007 00:36:18 +0000 (16:36 -0800)]
[PATCH] Fix leds-s3c24xx hardware.h reference

Russell King recently reminded us that one shouldn't use
asm/arch/hardware.h but one should use asm/hardware.h
(http://lkml.org/lkml/2006/12/23/26).  Unfortunately, the leds-s3c24xx
driver is using the wrong header.  This patch is fixing that.

Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Acked-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Fix implicit declarations in via-pmu
Dave Jones [Sat, 6 Jan 2007 00:36:18 +0000 (16:36 -0800)]
[PATCH] Fix implicit declarations in via-pmu

drivers/macintosh/via-pmu.c: In function 'pmac_suspend_devices':
drivers/macintosh/via-pmu.c:2014: error: implicit declaration of function 'pm_prepare_console'
drivers/macintosh/via-pmu.c: In function 'pmac_wakeup_devices':
drivers/macintosh/via-pmu.c:2139: error: implicit declaration of function 'pm_restore_console'

Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Add AFS_SUPER_MAGIC to magic.h
Adam Megacz [Sat, 6 Jan 2007 00:36:17 +0000 (16:36 -0800)]
[PATCH] Add AFS_SUPER_MAGIC to magic.h

Jeffrey Altman, one of the gatekeepers of OpenAFS (the open source project
which inherited the Transarc/IBM AFS codebase) has requested that the magic
number 0x5346414F (little endian 'OAFS') be allocated for the f_type field
of the fsinfo structure on Linux:

  https://lists.openafs.org/pipermail/openafs-info/2006-December/024829.html

Add it to include/linux/magic.h, mostly as a way of publishing this number
and ensuring that no other filesystem accidentally uses it.

Cc: Jeffrey Altman <jaltman@secure-endpoints.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Driver core: Fix prefix driver links in /sys/module by bus-name
Kay Sievers [Wed, 20 Dec 2006 09:39:33 +0000 (10:39 +0100)]
[PATCH] Driver core: Fix prefix driver links in /sys/module by bus-name

Modules may have drivers with the same name on different buses.
This patch fixes this problem.

Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years ago[PATCH] PCI: disable PCI_MULTITHREAD_PROBE
Andrew Morton [Fri, 15 Dec 2006 00:40:00 +0000 (16:40 -0800)]
[PATCH] PCI: disable PCI_MULTITHREAD_PROBE

Unfortunatly, no one reads Kconfig help entries :(

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: asix: Fix AX88772 device PHY selection
David Hollis [Thu, 28 Dec 2006 19:09:11 +0000 (14:09 -0500)]
USB: asix: Fix AX88772 device PHY selection

A small typo in ax88772_bind() prevents the device from selecting the
proper PHY, leaving the device useless.  The attached patch fixes this.
If this patch can be added to the 2.6.19.x series as well, that would be
helpful for end-users.

Signed-off-by: David Hollis <dhollis@davehollis.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: usblp.c - add Kyocera Mita FS 820 to list of "quirky" printers
Martin Williges [Thu, 28 Dec 2006 19:52:10 +0000 (20:52 +0100)]
USB: usblp.c - add Kyocera Mita FS 820 to list of "quirky" printers

This patch gets the Kyocera FS-820 working with cups 1.2 via usb again. It
adds the printer to the list of "quirky" printers. The printer seems not
answer to ID requests some seconds after plugging in. Patch is based on
linux-2.6.19.1.

Background:
As far as I could see (strace, usbmon), the Kyocera FS-820 answers to ID
requests only a few seconds after plugging it in. This applies to detecting
it with cups and is also true for the printing itself, which is initiated
with an ID request. Since I have little usb knowledge, maybe someone can
interpret the data, especially the fist bulk transfer - why request 8192
bytes? This is the second version of the patch.

usbmon output of printing an email without patch:
tail -F /tmp/printlog.txt
c636e140 3374734463 S Bi:002:02 -115 8192 <
c9d43b40 3374734494 S Ci:002:00 s a1 00 0000 0000 03ff 1023 <
c9d43b40 3379732301 C Ci:002:00 -104 0
c636e140 3379733294 C Bi:002:02 -2 0
[...repeating...]

with patch:
tail -F /tmp/printlog.txt
d9cb82c0 3729790131 S Ci:002:00 s a1 00 0000 0000 03ff 1023 <
d9cb82c0 3729791725 C Ci:002:00 0 91 = 005b4944 3a46532d 3832303b 4d46473a
 4b796f63 6572613b 434d443a 50434c58 df956320 3732493190 S Bo:002:01 -115
 1347 = 1b252d31 32333435 5840504a 4c0a4050 4a4c2053 4554204d 414e5541
 4c464545 [...more data...]

Signed-off-by: Martin Williges <kernel@zut.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agosisusb_con warning fixes
Andrew Morton [Thu, 4 Jan 2007 00:45:21 +0000 (16:45 -0800)]
sisusb_con warning fixes

x86_64:

drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_putc':
drivers/usb/misc/sisusbvga/sisusb_con.c:405: warning: cast from pointer to integer of different size
drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_putcs':
drivers/usb/misc/sisusbvga/sisusb_con.c:440: warning: cast from pointer to integer of different size
drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_clear':
drivers/usb/misc/sisusbvga/sisusb_con.c:494: warning: cast from pointer to integer of different size
drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_bmove':
drivers/usb/misc/sisusbvga/sisusb_con.c:566: warning: cast from pointer to integer of different size
drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_switch':
drivers/usb/misc/sisusbvga/sisusb_con.c:614: warning: cast from pointer to integer of different size
drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_scroll_area':
drivers/usb/misc/sisusbvga/sisusb_con.c:941: warning: cast from pointer to integer of different size

Cc: Thomas Winischhofer <thomas@winischhofer.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: Fixed bug in endpoint release function.
Sarah Bailey [Thu, 4 Jan 2007 05:37:22 +0000 (21:37 -0800)]
USB: Fixed bug in endpoint release function.

Error handling in usb_create_ep_files() is not correct unless
the minor number is freed in ep_device_release().

Signed-off-by: Sarah Bailey <saharabeara@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: small update to Documentation/usb/acm.txt
Oliver Neukum [Wed, 3 Jan 2007 14:14:43 +0000 (15:14 +0100)]
USB: small update to Documentation/usb/acm.txt

this docu update mentions that cell phones also use cdc-acm.

Signed-off-by: Oliver Neukum <oliver@neukum.name>
17 years agoUSB storage: fix ipod ejecting issue
Pete Zaitcev [Sun, 31 Dec 2006 21:43:26 +0000 (13:43 -0800)]
USB storage: fix ipod ejecting issue

This patch from Pete fixes the 'ejecting problem' on yet another ipod. Please applyt.

Signed-off-by: Pete Zaitcev <zaitcev@yahoo.com>
Signed-off-by: Phil Dibowitz <phil@ipom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB Storage: unusual_devs: add supertop drives
Phil Dibowitz [Sun, 31 Dec 2006 08:19:50 +0000 (00:19 -0800)]
USB Storage: unusual_devs: add supertop drives

This combines patches from Alan Stern and Robert Schedel for two "Super Top"
drives that need the IGNORE_RESIDUE flag but have different vendor IDs.

Signed-off-by: Phil Dibowitz <phil@ipom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: omap_udc build fixes (sync with linux-omap)
David Brownell [Sun, 10 Dec 2006 19:47:04 +0000 (11:47 -0800)]
USB: omap_udc build fixes (sync with linux-omap)

Resync the omap_udc driver with the latest from the Linux-OMAP tree.
Changes include DMA API updates (it builds again!), clock/pm updates,
minor bugfixes, whitespace.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: funsoft is borken on sparc
Andrew Morton [Fri, 15 Dec 2006 06:28:29 +0000 (22:28 -0800)]
USB: funsoft is borken on sparc

drivers/usb/serial/funsoft.c: In function `funsoft_ioctl':
drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer
drivers/usb/serial/funsoft.c:35: error: request for member `c_iflag' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_iflag' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_iflag' in something not a structure or union
drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name'
drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer
drivers/usb/serial/funsoft.c:35: error: request for member `c_oflag' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_oflag' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_oflag' in something not a structure or union
drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name'
drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer
drivers/usb/serial/funsoft.c:35: error: request for member `c_cflag' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_cflag' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_cflag' in something not a structure or union
drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name'
drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer
drivers/usb/serial/funsoft.c:35: error: request for member `c_lflag' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_lflag' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_lflag' in something not a structure or union
drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name'
drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer
drivers/usb/serial/funsoft.c:35: error: request for member `c_line' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_line' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_line' in something not a structure or union
drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name'
drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer
drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union
drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer
drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union
drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name'
drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer
drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union
drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name'
drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer
drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union
drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name'
drivers/usb/serial/funsoft.c:35: warning: dereferencing `void *' pointer
drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union
drivers/usb/serial/funsoft.c:35: error: request for member `c_cc' in something not a structure or union
drivers/usb/serial/funsoft.c:35: warning: type defaults to `int' in declaration of `type name'

Cc: David Clare <david@funsoft.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUSB: fix interaction between different interfaces in an "Option" usb device
Miguel Angel Alvarez [Thu, 14 Dec 2006 18:49:35 +0000 (19:49 +0100)]
USB: fix interaction between different interfaces in an "Option" usb device

Just the serial port in the first interface should control DTR and RTS
lines. This way, the closing of the rest of the ports does not produce a=
hangup in the communication.

Signed-off-by: Miguel Angel Alvarez <ma.alvarez@ziv.es>
Signed-off-by: Matthias Urlichs <matthias@urlichs.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUHCI: support device_may_wakeup
Alan Stern [Fri, 15 Dec 2006 21:08:13 +0000 (16:08 -0500)]
UHCI: support device_may_wakeup

This patch (as831) adds device_may_wakeup() support to uhci-hcd; it
has been lacking for a long time.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoUHCI: make test for ASUS motherboard more specific
Alan Stern [Fri, 15 Dec 2006 21:06:25 +0000 (16:06 -0500)]
UHCI: make test for ASUS motherboard more specific

Instead of matching all motherboards whose name contains "A7V8X" for a
remote-wakeup hardware bug, this patch (as829) matches only those
boards whose name is exactly equal to "A7V8X".  Later motherboards
don't seem to have the bug.

(In fact, it's possible that only one motherboard in the world has the
bug.  With only one user reporting problems, it's hard to tell.)

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoi2c/m41t00: Do not forget to write year
Philippe De Muyter [Fri, 5 Jan 2007 16:54:05 +0000 (17:54 +0100)]
i2c/m41t00: Do not forget to write year

m41t00.c forgets to set the year field in set_rtc_time; fix that.

Signed-off-by: Philippe De Muyter <phdm@macqel.be>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Acked-by: Mark A. Greer <mgreer@mvista.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
17 years agoi2c-mv64xxx: Fix random oops at boot
Maxime Bizon [Fri, 5 Jan 2007 16:54:05 +0000 (17:54 +0100)]
i2c-mv64xxx: Fix random oops at boot

I have a Marvell board which has the same i2c hw block than mv64xxx, so
I'm trying to use i2c-mv64xxx driver.

But I get the following random oops at boot:

Unable to handle kernel NULL pointer dereference at virtual address 00000002
Backtrace:
[<c0397e4c>] (mv64xxx_i2c_intr+0x0/0x2b8) from [<c02879c4>] (__do_irq+0x4c/0x8c)
[<c0287978>] (__do_irq+0x0/0x8c) from [<c0287c0c>] (do_level_IRQ+0x68/0xc0)
 r8 = C0501E08  r7 = 00000005  r6 = C0501E08  r5 = 00000005
 r4 = C048BB78
[<c0287ba4>] (do_level_IRQ+0x0/0xc0) from [<c02885f8>] (asm_do_IRQ+0x50/0x134)
 r6 = C0449C78  r5 = F1020000  r4 = FFFFFFFF
[<c02885a8>] (asm_do_IRQ+0x0/0x134) from [<c02869c4>] (__irq_svc+0x24/0x100)
 r8 = C1CAC400  r7 = 00000005  r6 = 00000002  r5 = F1020000
 r4 = FFFFFFFF
[<c0287efc>] (setup_irq+0x0/0x124) from [<c02880d0>] (request_irq+0xb0/0xd0)
 r7 = C041B2AC  r6 = C0397E4C  r5 = 00000000  r4 = 00000005
[<c0288020>] (request_irq+0x0/0xd0) from [<c03985f4>] (mv64xxx_i2c_probe+0x148/0x244)
[<c03984ac>] (mv64xxx_i2c_probe+0x0/0x244) from [<c038bedc>] (platform_drv_probe+0x20/0x24)

The oops is caused by a spurious interrupt that occurs when request_irq
is called. mv64xxx_i2c_fsm() tries to read drv_data->msg, which is NULL.

I noticed that hardware init is done after requesting irq. Thus any
pending irq from previous hardware usage may cause this.

The following patch fixes it:

Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
Acked-by: Mark A. Greer <mgreer@mvista.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Thu, 4 Jan 2007 20:55:56 +0000 (12:55 -0800)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SOUND] Sparc CS4231: Use 64 for period_bytes_min
  [SOUND] Sparc CS4231: Fix IRQ return value and initialization.

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Thu, 4 Jan 2007 20:55:26 +0000 (12:55 -0800)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
  [IPV4/IPV6]: Fix inet{,6} device initialization order.
  [TCP]: Use old definition of before
  [NETFILTER]: ebtables: don't compute gap before checking struct type
  [NETFILTER]: nf_nat: fix MASQUERADE crash on device down
  [NETFILTER]: New connection tracking is not EXPERIMENTAL anymore
  [NETFILTER]: Fix routing of REJECT target generated packets in output chain
  [NETFILTER]: compat offsets size change
  [SUNGEM]: PHY updates & pause fixes (#2)
  [X25]: proper prototype for x25_init_timers()
  [AF_NETLINK]: module_put cleanup
  [XFRM_USER]: avoid pointless void ** casts
  [NETFILTER] xt_hashlimit.c: fix typo
  [NET] drivers/net/loopback.c: convert to module_init()
  [PKTGEN]: Convert to kthread API.
  [NET]: ifb double-counts packets

17 years ago[IPV4/IPV6]: Fix inet{,6} device initialization order.
David L Stevens [Thu, 4 Jan 2007 20:31:14 +0000 (12:31 -0800)]
[IPV4/IPV6]: Fix inet{,6} device initialization order.

It is important that we only assign dev->ip{,6}_ptr
only after all portions of the inet{,6} are setup.

Otherwise we can receive packets before the multicast
spinlocks et al. are initialized.

Signed-off-by: David L Stevens <dlstevens@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[TCP]: Use old definition of before
Gerrit Renker [Thu, 4 Jan 2007 20:25:16 +0000 (12:25 -0800)]
[TCP]: Use old definition of before

This reverts the new (unambiguous) definition of the TCP `before'
relation. As pointed out in an example by Herbert Xu, there is
existing code which implicitly requires the old definition in order
to work correctly.

Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NETFILTER]: ebtables: don't compute gap before checking struct type
Chuck Ebbert [Thu, 4 Jan 2007 20:17:44 +0000 (12:17 -0800)]
[NETFILTER]: ebtables: don't compute gap before checking struct type

We cannot compute the gap until we know we have a 'struct ebt_entry' and
not 'struct ebt_entries'.  Failure to check can cause crash.

Tested-by: Santiago Garcia Mantinan <manty@manty.net>
Acked-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NETFILTER]: nf_nat: fix MASQUERADE crash on device down
Martin Josefsson [Thu, 4 Jan 2007 20:16:54 +0000 (12:16 -0800)]
[NETFILTER]: nf_nat: fix MASQUERADE crash on device down

Check the return value of nfct_nat() in device_cmp(), we might very well
have non NAT conntrack entries as well (Netfilter bugzilla #528).

Signed-off-by: Martin Josefsson <gandalf@wlug.westbo.se>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NETFILTER]: New connection tracking is not EXPERIMENTAL anymore
Patrick McHardy [Thu, 4 Jan 2007 20:16:06 +0000 (12:16 -0800)]
[NETFILTER]: New connection tracking is not EXPERIMENTAL anymore

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NETFILTER]: Fix routing of REJECT target generated packets in output chain
Patrick McHardy [Thu, 4 Jan 2007 20:15:34 +0000 (12:15 -0800)]
[NETFILTER]: Fix routing of REJECT target generated packets in output chain

Packets generated by the REJECT target in the output chain have a local
destination address and a foreign source address. Make sure not to use
the foreign source address for the output route lookup.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NETFILTER]: compat offsets size change
Dmitry Mishin [Thu, 4 Jan 2007 20:14:41 +0000 (12:14 -0800)]
[NETFILTER]: compat offsets size change

Used by compat code offsets of entries should be 'unsigned int' as entries
array size has this dimension.

Signed-off-by: Dmitry Mishin <dim@openvz.org>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoMerge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux...
Linus Torvalds [Thu, 4 Jan 2007 16:55:57 +0000 (08:55 -0800)]
Merge branch 'release' of git://git./linux/kernel/git/lenb/linux-acpi-2.6

* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6:
  ACPI: asus_acpi: new MAINTAINER
  ACPI: fix section mis-match build warning
  ACPI: increase ACPI_MAX_REFERENCE_COUNT for larger systems
  ACPI: EC: move verbose printk to debug build only
  backlight: fix backlight_device_register compile failures

17 years agoi2c: Migration aids for i2c_adapter.dev removal
David Brownell [Thu, 4 Jan 2007 12:07:04 +0000 (13:07 +0100)]
i2c: Migration aids for i2c_adapter.dev removal

Flag i2c_adapter.dev for removal after userspace tools get upgraded, and
include a near-term code migration aid to facilitate this:

 - The class device gets the name attribute it should have had.  This
   was previously (wrongly) associated with the i2c_adapter.dev node.
   Sysfs based tools and libraries can start converting right away.

 - Issue a warning for legacy adapter drivers that don't provide any
   physical device node; so systems with those drivers will know to
   fix this problem earlier.

This is one of a series of patches to help the I2C stack become a better
citizen of the Linux Driver Model world.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
17 years agoi2c-pnx: Add entry to MAINTAINERS
Vitaly Wool [Thu, 4 Jan 2007 12:07:03 +0000 (13:07 +0100)]
i2c-pnx: Add entry to MAINTAINERS

Add me to MAINTAINERS for i2c-pnx.

Signed-off-by: Vitaly Wool <vitalywool@gmail.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
17 years agoi2c-pnx: Fix interrupt handler, get rid of EARLY config option
Vitaly Wool [Thu, 4 Jan 2007 12:07:03 +0000 (13:07 +0100)]
i2c-pnx: Fix interrupt handler, get rid of EARLY config option

This fixes two issues raised by David Brownell on the i2c list:

<< Someone needs to update i2c-pnx.c to handle the IRQ handler doesn't
expect pt_regs (gone now for a while), and so it doesn't try to
reference "mudule_init()" if I2C isn't initialized "early".  For
that matter, to get rid of that _option_ to initialize then, and
always init that driver with subsystem_init() ... it's common with
embedded systems to need I2C access to tweak a GPIO expander or
do some other work when bringing up drivers, that's not specific
to USB stacks. >>

Signed-off-by: Vitaly Wool <vitalywool@gmail.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
17 years agoHID: fix help texts in Kconfig
Jiri Kosina [Wed, 3 Jan 2007 22:03:14 +0000 (23:03 +0100)]
HID: fix help texts in Kconfig

The help text for CONFIG_HID might imply for someone that
it's necessary to enable it for any keyboard or mouse
attached to the system. This is obviously not correct, so
fix it to avoid confusing the users.

Signed-off-by: Jiri Kosina <jkosina@suse.cz>
17 years agoFix some ARM builds due to HID brokenness
Russell King [Fri, 22 Dec 2006 17:09:16 +0000 (17:09 +0000)]
Fix some ARM builds due to HID brokenness

HID it defaults to 'y'.  When you have input deselected, this
causes the kernel to fail to link.
Fix it by making it depend on INPUT.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
17 years ago[SUNGEM]: PHY updates & pause fixes (#2)
Benjamin Herrenschmidt [Thu, 4 Jan 2007 02:54:43 +0000 (18:54 -0800)]
[SUNGEM]: PHY updates & pause fixes (#2)

This patch adds support for a few more PHYs used by Apple and fixes
advertising and detecting of Pause (we were missing setting the bit in
MII_ADVERTISE and weren't testing in LPA for all PHYs).

Note that I currently only advertise pause, not asymetric pause. I
don't know for sure the details there, I suppose I should read a bit
more 802.3 references, and I don't now what sungem is capable of, but
I noticed the PCS code (originated from you) does the same.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SOUND] Sparc CS4231: Use 64 for period_bytes_min
David S. Miller [Thu, 4 Jan 2007 02:51:54 +0000 (18:51 -0800)]
[SOUND] Sparc CS4231: Use 64 for period_bytes_min

This matches what the ISA cs4231 driver uses.

Tested by Georg Chini.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[X25]: proper prototype for x25_init_timers()
Adrian Bunk [Thu, 4 Jan 2007 02:48:13 +0000 (18:48 -0800)]
[X25]: proper prototype for x25_init_timers()

This patch adds a proper prototype for x25_init_timers() in
include/net/x25.h

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[AF_NETLINK]: module_put cleanup
Mariusz Kozlowski [Tue, 2 Jan 2007 23:24:30 +0000 (15:24 -0800)]
[AF_NETLINK]: module_put cleanup

This patch removes redundant argument check for module_put().

Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[XFRM_USER]: avoid pointless void ** casts
Christoph Hellwig [Tue, 2 Jan 2007 23:22:30 +0000 (15:22 -0800)]
[XFRM_USER]: avoid pointless void ** casts

All ->doit handlers want a struct rtattr **, so pass down the right
type.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NETFILTER] xt_hashlimit.c: fix typo
Alexey Dobriyan [Tue, 2 Jan 2007 08:42:00 +0000 (00:42 -0800)]
[NETFILTER] xt_hashlimit.c: fix typo

Signed-off-by: Alexey Dobriyan <adobriyan@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NET] drivers/net/loopback.c: convert to module_init()
Adrian Bunk [Tue, 2 Jan 2007 08:35:48 +0000 (00:35 -0800)]
[NET] drivers/net/loopback.c: convert to module_init()

This patch converts drivers/net/loopback.c to using module_init().

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[PKTGEN]: Convert to kthread API.
David S. Miller [Tue, 2 Jan 2007 04:51:53 +0000 (20:51 -0800)]
[PKTGEN]: Convert to kthread API.

Based upon a suggestion from Christoph Hellwig.

This fixes various races in module load/unload handling
too.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NET]: ifb double-counts packets
dean gaudet [Tue, 2 Jan 2007 03:39:09 +0000 (19:39 -0800)]
[NET]: ifb double-counts packets

Signed-off-by: dean gaudet <dean@arctic.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SOUND] Sparc CS4231: Fix IRQ return value and initialization.
Georg Chini [Wed, 3 Jan 2007 05:28:17 +0000 (21:28 -0800)]
[SOUND] Sparc CS4231: Fix IRQ return value and initialization.

SBUS: Change IRQ-handler return value from 0 to IRQ_HANDLED and
fix some initialisation problems.

Change period_bytes_min from 4096 to 256 to allow driver to work with
low latency (VOIP) applications. Hope this does not break EBUS.

Signed-off-by: Georg Chini <georg.chini@triaton-webhosting.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart
Linus Torvalds [Thu, 4 Jan 2007 01:34:54 +0000 (17:34 -0800)]
Merge /pub/scm/linux/kernel/git/davej/agpgart

* master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart:
  [AGPGART] drivers/char/agp/sgi-agp.c: check kmalloc() return value
  [AGPGART] Fix PCI-posting flush typo.
  [AGPGART] fix detection of aperture size versus GTT size on G965
  [AGPGART] Remove unnecessary flushes when inserting and removing pages.
  [AGPGART] K8M890 support for amd-k8.

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq
Linus Torvalds [Thu, 4 Jan 2007 01:34:12 +0000 (17:34 -0800)]
Merge /pub/scm/linux/kernel/git/davej/cpufreq

* master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq:
  [CPUFREQ] longhaul: Kill off warnings introduced by recent changes.
  [CPUFREQ] Uninitialized use of cmd.val in arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.c:acpi_cpufreq_target()
  [CPUFREQ] Longhaul - Always guess FSB
  [CPUFREQ] Longhaul - Fix up powersaver assumptions.
  [CPUFREQ] longhaul: Fix up unreachable code.
  [CPUFREQ] speedstep-centrino: missing space and bracket
  [CPUFREQ] Bug fix for acpi-cpufreq and cpufreq_stats oops on frequency change notification
  [CPUFREQ] select consistently

17 years ago[PATCH] ide-cd maintainer
Jens Axboe [Wed, 3 Jan 2007 17:15:20 +0000 (18:15 +0100)]
[PATCH] ide-cd maintainer

Alan agreed to take over casual maintenance of the ide-cd atapi cdrom
driver, so I'm happy to sign it over to him. Alan, I hope the address is
the one you want to use. I also changed the list to linux-ide as that
seems more appropriate.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] cdrom: set default timeout to 7 seconds
Jens Axboe [Wed, 3 Jan 2007 07:10:35 +0000 (08:10 +0100)]
[PATCH] cdrom: set default timeout to 7 seconds

It's a known fact that Windows times out commands after 7 seconds, so
drives generally try and respond if they can before that happens.  We
default to 5 seconds, which sometimes is a bit too short.

Jeremy Higdon reported here:

http://lkml.org/lkml/2007/1/1/145

that his drive takes longer than 5 seconds for a "read track
information" command, later confirming that it is about 6.7 seconds.

So just do the sane thing and change the default command timeout to 7
seconds to avoid other surprises.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] x86_64: Fix dump_trace()
OGAWA Hirofumi [Wed, 3 Jan 2007 16:21:28 +0000 (01:21 +0900)]
[PATCH] x86_64: Fix dump_trace()

If caller passed the tsk, we should use it to validate a stack ptr.
Otherwise, sysrq-t and other debugging stuff doesn't work.

Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[CPUFREQ] longhaul: Kill off warnings introduced by recent changes.
Dave Jones [Wed, 3 Jan 2007 04:42:16 +0000 (23:42 -0500)]
[CPUFREQ] longhaul: Kill off warnings introduced by recent changes.

Bunch of unused vars + one case where gcc isn't smart enough.

Signed-off-by: Dave Jones <davej@redhat.com>
17 years ago[CPUFREQ] Uninitialized use of cmd.val in arch/i386/kernel/cpu/cpufreq/acpi-cpufreq...
Guillaume Chazarain [Tue, 2 Jan 2007 18:58:13 +0000 (19:58 +0100)]
[CPUFREQ] Uninitialized use of cmd.val in arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.c:acpi_cpufreq_target()

cmd.val was used uninitialized on the line below.

Signed-off-by: Guillaume Chazarain <guichaz@yahoo.fr>
Acked-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Dave Jones <davej@redhat.com>
17 years ago[CPUFREQ] Longhaul - Always guess FSB
Rafa³ Bilski [Mon, 1 Jan 2007 22:49:34 +0000 (23:49 +0100)]
[CPUFREQ] Longhaul - Always guess FSB

This is patch that solves Ebox mini PC issue and make
FSB code more specification compilant. At start guess_fsb
function is guessing 200MHz FSB too. It is better to
make it in this way because, thanks to this function, driver
will fail for bogus FSB values caused by bogus multiplier
value. For PowerSaver processors we can't depend on Max /
MinMHzFSB because these values are only used for
PowerSaver 2.0 and 3.0. Most processors on which Longhaul
is used are PowerSaver 1.0 only. I'm changing code for older
CPU's too, but not so much as previously, and this code was
already used for Ezra. Using MinMHzBR for Ezra-T is outside
spec. It is for voltage scaling purpose and don't have to
be equal to minmult (but it is). Same for Nehemiah (it
isn't for sure). Added mult - current multiplier value.

Signed-off-by: Rafa³ Bilski <rafalbilski@interia.pl>
Signed-off-by: Dave Jones <davej@redhat.com>
17 years ago[AGPGART] drivers/char/agp/sgi-agp.c: check kmalloc() return value
akpm@osdl.org [Tue, 2 Jan 2007 22:44:31 +0000 (14:44 -0800)]
[AGPGART] drivers/char/agp/sgi-agp.c: check kmalloc() return value

drivers/char/agp/sgi-agp.c: check kmalloc() return value

Signed-off-by: Amit Choudhary <amit2030@gmail.com>
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
17 years agoMerge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Wed, 3 Jan 2007 02:50:57 +0000 (18:50 -0800)]
Merge branch 'for-linus' of /home/rmk/linux-2.6-arm

* 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] 4081/1: Add definition for TI Sync Serial Protocol
  [ARM] 4080/1: Fix for the SSCR0_SlotsPerFrm macro
  [ARM] Fix VFP initialisation issue for SMP systems
  [ARM] 4078/1: Fix ARM copypage cache coherency problems
  [ARM] 4077/1: iop13xx: fix __io() macro
  [ARM] 4074/1: Flat loader stack alignment
  [ARM] 4073/1: Prevent s3c24xx drivers from including asm/arch/hardware.h and asm/arch/irqs.h
  [ARM] 4071/1: S3C24XX: Documentation update
  [ARM] 4066/1: correct a comment about PXA's sched_clock range
  [ARM] 4065/1: S3C24XX: dma printk fixes
  [ARM] 4064/1: make pxa_get_cycles() static
  [ARM] 4063/1: ep93xx: fix IRQ_EP93XX_GPIO?MUX numbering

17 years ago[ARM] 4081/1: Add definition for TI Sync Serial Protocol
Philipp Zabel [Tue, 2 Jan 2007 20:06:57 +0000 (21:06 +0100)]
[ARM] 4081/1: Add definition for TI Sync Serial Protocol

Of the possible SSP frame formats (FRF bits in SSCR0), only SSCR0_PSP is defined. Other possible formats are Motorola SPI (0<<4), TI SSP (1<<4) and Microwire (2<<4). Attached patch adds a definition SSCR0_TISSP.
This mode is used for the sound codec attached to the PXA272 SSP1 of some HTC PDA phones.

Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years ago[ARM] 4080/1: Fix for the SSCR0_SlotsPerFrm macro
Philipp Zabel [Tue, 2 Jan 2007 19:59:38 +0000 (20:59 +0100)]
[ARM] 4080/1: Fix for the SSCR0_SlotsPerFrm macro

The SSCR0_SlotsPerFrm macro writes a 3-bit value to bits [2:0], while the correct location of FRDC in SSCR0 is at bits [26:24]. This patch adds the missing "<< 24".

Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years ago[ARM] Fix VFP initialisation issue for SMP systems
Russell King [Tue, 2 Jan 2007 23:40:30 +0000 (23:40 +0000)]
[ARM] Fix VFP initialisation issue for SMP systems

When we install the handlers for context switching, we must enable
VFP on all CPU cores, otherwise undefined (and random) effects
occur.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
17 years ago[PATCH] Fix insta-reboot with "i386: Relocatable kernel support"
Segher Boessenkool [Tue, 2 Jan 2007 06:11:47 +0000 (11:41 +0530)]
[PATCH] Fix insta-reboot with "i386: Relocatable kernel support"

Commit 968de4f02621db35b8ae5239c8cfc6664fb872d8 ("i386: Relocatable
kernel support") caused problems for people with old binutils versions
that didn't mark ".text.*" sections automatically allocated.

So we should use .section command to specifically mark .text.head
section as AX (allocatable and executable) to solve the problem.

This should be unnecessary with binutils 2.15 and later, which is
already three years old, but it doesn't hurt supporting older toolchains
where possible.

Signed-off-by: Vivek Goyal <vgoyal@in.ibm.com>
Acked-by: Jean Delvare <khali@linux-fr.org>
Cc: Eric W. Biederman <ebiederm@xmission.com>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] selinux: fix selinux_netlbl_inode_permission() locking
Parag Warudkar [Tue, 2 Jan 2007 20:09:31 +0000 (21:09 +0100)]
[PATCH] selinux: fix selinux_netlbl_inode_permission() locking

do not call a sleeping lock API in an RCU read section.
lock_sock_nested can sleep, its BH counterpart doesn't.
selinux_netlbl_inode_permission() needs to use the BH counterpart
unconditionally.

Compile tested.

From: Ingo Molnar <mingo@elte.hu>

added BH disabling, because this function can be called from non-atomic
contexts too, so a naked bh_lock_sock() would be deadlock-prone.

Boot-tested the resulting kernel.

Signed-off-by: Parag Warudkar <paragw@paragw.zapto.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] cfq-iosched: merging problem
Jens Axboe [Tue, 2 Jan 2007 17:32:11 +0000 (18:32 +0100)]
[PATCH] cfq-iosched: merging problem

Two issues:

- The final return 1 should be a return 0, otherwise comparing cfqq is
  a noop.

- bio_sync() only checks the sync flag, while rq_is_sync() checks both
  for READ and sync. The latter is what we want. Expand the bio check
  to include reads, and relax the restriction to allow merging of async
  io into sync requests.

In the future we want to clean up the SYNC logic, right now it means
both sync request (such as READ and O_DIRECT WRITE) and unplug-on-issue.
Leave that for later.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] libata: fix combined mode
Alan [Tue, 2 Jan 2007 11:58:34 +0000 (11:58 +0000)]
[PATCH] libata: fix combined mode

This is a slight variant on the patch I posted December 16th to fix
libata combined mode handling. The only real change is that we now
correctly also reserve BAR1,2,4. That is basically a neatness issue.

Jeff was unhappy about two things

1. That it didn't work in the case of one channel native one channel
legacy.

This is a silly complaint because the SFF layer in libata doesn't handle
this case yet anyway.

2. The case where combined mode is in use and IDE=n.

In this case the libata quirk code reserves the resources in question
correctly already.

Once the combined mode stuff is redone properly (2.6.21) then the entire
mess turns into a single pci_request_regions() for all cases and all the
ugly resource hackery goes away.

I'm sending this now rather than after running full test suites so that
it can get the maximal testing in a short time. I'll be running tests on
this after lunch.

Signed-off-by: Alan Cox <alan@redhat.com>
Cc: Jeff Garzik <jgarzik@pobox.com>
Acked-by: Alessandro Suardi <alessandro.suardi@gmail.com>
Acked-by: Theodore Tso <tytso@mit.edu>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years agoACPI: asus_acpi: new MAINTAINER
Len Brown [Sat, 23 Dec 2006 02:18:56 +0000 (21:18 -0500)]
ACPI: asus_acpi: new MAINTAINER

Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoACPI: fix section mis-match build warning
Len Brown [Thu, 21 Dec 2006 06:29:59 +0000 (01:29 -0500)]
ACPI: fix section mis-match build warning

Dunno why this pops out in only in the allmodconfig build.
Though the warning is accurate, all the callers of the flagged
non __init function are __init, this is not a functional change.

WARNING: vmlinux - Section mismatch: reference to .init.data:acpi_sci_flags from .text between 'acpi_sci_ioapic_setup' (at offset 0xc010f0a
6) and 'acpi_gsi_to_irq'                                                                                                                   WARNING: vmlinux - Section mismatch: reference to .init.text:mp_override_legacy_irq from .text between 'acpi_sci_ioapic_setup' (at offset 0
xc010f0de) and 'acpi_gsi_to_irq'                                                                                                           WARNING: vmlinux - Section mismatch: reference to .init.data:acpi_sci_override_gsi from .text between 'acpi_sci_ioapic_setup' (at offset 0x
c010f0e4) and 'acpi_gsi_to_irq'

Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoACPI: increase ACPI_MAX_REFERENCE_COUNT for larger systems
Doug Chapman [Thu, 21 Dec 2006 17:11:43 +0000 (12:11 -0500)]
ACPI: increase ACPI_MAX_REFERENCE_COUNT for larger systems

We have some new larger ia64 systems in HP that trip over the
ACPI_MAX_REFERENCE_COUNT limit which triggers a large number of these
debug messages:

ACPI Warning (utdelete-0397): Large Reference Count (XXX) in object e0000a0ff6797ab0  [20060707]

This was increased once in the past as described in this very brief thread:

http://www.mail-archive.com/linux-acpi@vger.kernel.org/msg00890.html

Signed-off-by: Doug Chapman <doug.chapman@hp.com>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoACPI: EC: move verbose printk to debug build only
Guillaume Chazarain [Sun, 24 Dec 2006 21:19:02 +0000 (22:19 +0100)]
ACPI: EC: move verbose printk to debug build only

The recent EC cleanup left a printk enabled on handler evaluation
resulting in a bunch of messages on normal operation, like so:

ACPI: EC: evaluating _Q60

Signed-off-by: Len Brown <len.brown@intel.com>
17 years agobacklight: fix backlight_device_register compile failures
Richard Purdie [Sat, 30 Dec 2006 15:40:11 +0000 (15:40 +0000)]
backlight: fix backlight_device_register compile failures

Fix breakage from commit 519ab5f2be65b72cf12ae99c89752bbe79b44df6 which
didn't update all references to backlight_device_register causing
compile failures.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years ago[PATCH] sound: hda: detect ALC883 on MSI K9A Platinum motherboards (MS-7280)
Leonard Norrgård [Mon, 1 Jan 2007 17:00:54 +0000 (19:00 +0200)]
[PATCH] sound: hda: detect ALC883 on MSI K9A Platinum motherboards (MS-7280)

Recognize the Realtek ALC883 chip on MSI K9A Platinum motherboards
(model no. MS-7280), enabling full sound capabilities.

Signed-off-by: Leonard Norrgård <leonard.norrgard@refactor.fi>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years agoRevert "[PATCH] x86_64: fix boot hang caused by CALGARY_IOMMU_ENABLED_BY_DEFAULT"
Linus Torvalds [Mon, 1 Jan 2007 18:55:45 +0000 (10:55 -0800)]
Revert "[PATCH] x86_64: fix boot hang caused by CALGARY_IOMMU_ENABLED_BY_DEFAULT"

This reverts commit a9622f6219ce58faba1417743bf3078501eb3434.  Now that
the Calgary code apparently detects itself properly, it's not needed any
more.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years agoLinux 2.6.20-rc3 v2.6.20-rc3
Linus Torvalds [Mon, 1 Jan 2007 00:53:20 +0000 (16:53 -0800)]
Linux 2.6.20-rc3

...because it's always a good idea to cut a release *before* you go out
to party and get drunk.

Remember kids: "Don't Drink and Release!"

17 years ago[PATCH] restore ->pdeath_signal behaviour
Oleg Nesterov [Sun, 24 Dec 2006 20:30:44 +0000 (23:30 +0300)]
[PATCH] restore ->pdeath_signal behaviour

Commit b2b2cbc4b2a2f389442549399a993a8306420baf introduced a user-
visible change: ->pdeath_signal is sent only when the entire thread
group exits.

While this change is imho good, it may break things.  So restore the
old behaviour for now.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
To: Albert Cahalan <acahalan@gmail.com>
Cc: Eric W. Biederman <ebiederm@xmission.com>
Cc: Andrew Morton <akpm@osdl.org>
Cc: Linus Torvalds <torvalds@osdl.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Qi Yong <qiyong@fc-cn.com>
Cc: Roland McGrath <roland@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Sun, 31 Dec 2006 22:24:58 +0000 (14:24 -0800)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SPARC64]: Handle ISA devices with no 'regs' property.
  [SPARC64]: Update defconfig.
  [SPARC64]: Fix of_iounmap() region release.
  [SPARC64]: Fix "mem=xxx" handling.

17 years ago[XFRM]: Algorithm lookup using .compat name
Martin Willi [Fri, 29 Dec 2006 05:27:48 +0000 (21:27 -0800)]
[XFRM]: Algorithm lookup using .compat name

Installing an IPsec SA using old algorithm names (.compat) does not work
if the algorithm is not already loaded. When not using the PF_KEY
interface, algorithms are not preloaded in xfrm_probe_algs() and
installing a IPsec SA fails.

Signed-off-by: Martin Willi <martin@strongswan.org>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NET]: Don't export linux/random.h outside __KERNEL__.
David Woodhouse [Fri, 29 Dec 2006 05:21:55 +0000 (21:21 -0800)]
[NET]: Don't export linux/random.h outside __KERNEL__.

Don't add it there please; add it lower down inside the existing #ifdef
__KERNEL__. You just made the _userspace_ net.h include random.h, which
then fails to compile unless <asm/types.h> was already included.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[NET]: Add memory barrrier to netif_poll_enable()
David S. Miller [Fri, 29 Dec 2006 05:14:52 +0000 (21:14 -0800)]
[NET]: Add memory barrrier to netif_poll_enable()

When a driver writer calls this, they generally expect that
all previous stores and modifications they've made will be
visible before netif_poll_enable() executes, so ensure this.

Noticed by Ben H.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC64]: Handle ISA devices with no 'regs' property.
David S. Miller [Fri, 29 Dec 2006 05:43:51 +0000 (21:43 -0800)]
[SPARC64]: Handle ISA devices with no 'regs' property.

And this points out that the return value from
isa_dev_get_resource() and the 'pregs' arg to
isa_dev_get_irq() are totally unused.

Based upon a patch from Richard Mortimer <richm@oldelvet.org.uk>

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC64]: Update defconfig.
David S. Miller [Fri, 29 Dec 2006 05:16:40 +0000 (21:16 -0800)]
[SPARC64]: Update defconfig.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC64]: Fix of_iounmap() region release.
David S. Miller [Fri, 29 Dec 2006 05:01:32 +0000 (21:01 -0800)]
[SPARC64]: Fix of_iounmap() region release.

We need to pass in the resource otherwise we cannot
release the region properly.  We must know whether it is
an I/O or MEM resource.

Spotted by Eric Brower.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC64]: Fix "mem=xxx" handling.
David S. Miller [Fri, 29 Dec 2006 05:00:23 +0000 (21:00 -0800)]
[SPARC64]: Fix "mem=xxx" handling.

We were not being careful enough.  When we trim the physical
memory areas, we have to make sure we don't remove the kernel
image or initial ramdisk image ranges.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoMerge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfashe...
Linus Torvalds [Sat, 30 Dec 2006 20:02:53 +0000 (12:02 -0800)]
Merge branch 'upstream-linus' of git://git./linux/kernel/git/mfasheh/ocfs2

* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2:
  ocfs2: export heartbeat thread pid via configfs
  ocfs2: always unmap in ocfs2_data_convert_worker()
  ocfs2: ignore NULL vfsmnt in ocfs2_should_update_atime()
  ocfs2: Allow direct I/O read past end of file
  ocfs2: don't print error in ocfs2_permission()

17 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394...
Linus Torvalds [Sat, 30 Dec 2006 19:40:40 +0000 (11:40 -0800)]
Merge branch 'for-linus' of git://git./linux/kernel/git/ieee1394/linux1394-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
  ieee1394: sbp2: fix bogus dma mapping
  ieee1394: sbp2: pass REQUEST_SENSE through to the target

17 years ago[PATCH] fuse: fix typo
Alexey Dobriyan [Sat, 30 Dec 2006 00:50:08 +0000 (16:50 -0800)]
[PATCH] fuse: fix typo

Signed-off-by: Thomas Hisch <t.hisch@gmail.com>
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Cc: Miklos Szeredi <miklos@szeredi.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] sparc32: add offset in pci_map_sg()
Jan Andersson [Sat, 30 Dec 2006 00:50:04 +0000 (16:50 -0800)]
[PATCH] sparc32: add offset in pci_map_sg()

Add sg->offset to sg->dvma_address in pci_map_sg() on sparc32.  Without the
offset, transfers to buffers that do not begin on a page boundary will not
work as expected.

Signed-off-by: Jan Andersson <jan.andersson@ieee.org>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: William Lee Irwin III <wli@holomorphy.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] kvm: fix GFP_KERNEL allocation in atomic section in kvm_dev_ioctl_create_vcpu()
Ingo Molnar [Sat, 30 Dec 2006 00:50:01 +0000 (16:50 -0800)]
[PATCH] kvm: fix GFP_KERNEL allocation in atomic section in kvm_dev_ioctl_create_vcpu()

fix an GFP_KERNEL allocation in atomic section: kvm_dev_ioctl_create_vcpu()
called kvm_mmu_init(), which calls alloc_pages(), while holding the vcpu.

The fix is to set up the MMU state in two phases: kvm_mmu_create() and
kvm_mmu_setup().

(NOTE: free_vcpus does an kvm_mmu_destroy() call so there's no need for any
extra teardown branch on allocation/init failure here.)

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Cc: Avi Kivity <avi@qumranet.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] KVM: Fix oops on oom
Avi Kivity [Sat, 30 Dec 2006 00:49:58 +0000 (16:49 -0800)]
[PATCH] KVM: Fix oops on oom

__free_page() doesn't like a NULL argument, so check before calling it.  A
NULL can only happen if memory is exhausted during allocation of a memory
slot.

Signed-off-by: Avi Kivity <avi@qumranet.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] KVM: Rename some msrs
Nguyen Anh Quynh [Sat, 30 Dec 2006 00:49:54 +0000 (16:49 -0800)]
[PATCH] KVM: Rename some msrs

No need to append _MSR to msr names, a prefix should suffice.

Signed-off-by: Nguyen Anh Quynh <aquynh@gmail.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] KVM: More msr misery
Avi Kivity [Sat, 30 Dec 2006 00:49:51 +0000 (16:49 -0800)]
[PATCH] KVM: More msr misery

These msrs are referenced by benchmarking software when pretending to be an
Intel cpu.

Signed-off-by: Avi Kivity <avi@qumranet.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] KVM: Move common msr handling to arch independent code
Avi Kivity [Sat, 30 Dec 2006 00:49:48 +0000 (16:49 -0800)]
[PATCH] KVM: Move common msr handling to arch independent code

Signed-off-by: Avi Kivity <avi@qumranet.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] KVM: Implement a few system configuration msrs
Avi Kivity [Sat, 30 Dec 2006 00:49:45 +0000 (16:49 -0800)]
[PATCH] KVM: Implement a few system configuration msrs

Resolves sourceforge bug 1622229 (guest crashes running benchmark software).

Signed-off-by: Avi Kivity <avi@qumranet.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] KVM: Initialize kvm_arch_ops on unload
Yoshimi Ichiyanagi [Sat, 30 Dec 2006 00:49:41 +0000 (16:49 -0800)]
[PATCH] KVM: Initialize kvm_arch_ops on unload

The latest version of kvm doesn't initialize kvm_arch_ops in kvm_init(), which
causes an error with the following sequence.

1. Load the supported arch's module.
2. Load the unsupported arch's module.\e$B!!\e(B(loading error)
3. Unload the unsupported arch's module.

You'll get the following error message after step 3.  "BUG: unable to handle
to handle kernel paging request at virtual address xxxxxxxx"

The problem here is that the unsupported arch's module overwrites kvm_arch_ops
of the supported arch's module at step 2.

This patch initializes kvm_arch_ops upon loading architecture specific kvm
module, and prevents overwriting kvm_arch_ops when kvm_arch_ops is already set
correctly.

Signed-off-by: Avi Kivity <avi@qumranet.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] KVM: Simplify is_long_mode()
Avi Kivity [Sat, 30 Dec 2006 00:49:37 +0000 (16:49 -0800)]
[PATCH] KVM: Simplify is_long_mode()

Instead of doing tricky stuff with the arch dependent virtualization
registers, take a peek at the guest's efer.

This simlifies some code, and fixes some confusion in the mmu branch.

Signed-off-by: Avi Kivity <avi@qumranet.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] KVM: Use boot_cpu_data instead of current_cpu_data
Avi Kivity [Sat, 30 Dec 2006 00:49:34 +0000 (16:49 -0800)]
[PATCH] KVM: Use boot_cpu_data instead of current_cpu_data

current_cpu_data invokes smp_processor_id(), which is inadvisable when
preemption is enabled.  Switch to boot_cpu_data instead.

Resolves sourceforge bug 1621401.

Signed-off-by: Avi Kivity <avi@qumranet.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
17 years ago[PATCH] Update CREDITS and MAINTAINERS entries for Lennert Buytenhek
Lennert Buytenhek [Sat, 30 Dec 2006 00:49:30 +0000 (16:49 -0800)]
[PATCH] Update CREDITS and MAINTAINERS entries for Lennert Buytenhek

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>