linux-2.6
17 years agoPCI: Run k8t_sound_hostbridge quirk only when needed
Jean Delvare [Sun, 19 Aug 2007 10:03:07 +0000 (12:03 +0200)] 
PCI: Run k8t_sound_hostbridge quirk only when needed

The k8t_sound_hostbridge PCI quick fires on my motherboard (Jetway
K8M8MS) while it shouldn't: the on-board sound chip is not disabled
and is working just fine. Looking at the code, I see that we are
running the quirk for two distinct register values (0x88 and 0xc8)
and then clear bit 6 (0x40). However value 0x88 already has bit 6
cleared so this is a no-op. This is what happens on my board. Thus I
believe that the quirk should only be run for register value 0xc8.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoPCI: disable MSI on RX790
Tejun Heo [Tue, 21 Aug 2007 05:33:01 +0000 (14:33 +0900)] 
PCI: disable MSI on RX790

RX790 can't do MSI like its predecessors.  Disable MSI on RX790.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoPCI: disable MSI on RD580
Tejun Heo [Fri, 17 Aug 2007 18:03:10 +0000 (03:03 +0900)] 
PCI: disable MSI on RD580

RD580 can't do MSI like its predecessors.  Disable MSI on RD580.

Signed-off-by: Tejun Heo <teheo@suse.de>
CC: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoPCI: disable MSI on RS690
Tejun Heo [Thu, 16 Aug 2007 05:34:42 +0000 (14:34 +0900)] 
PCI: disable MSI on RS690

RS690 can't do MSI like its predecessors.  Disable MSI on RS690.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Cc: Henry Su <henry.su@amd.com>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoPCI: make pcie_get_readrq visible in pci.h
Brice Goglin [Tue, 14 Aug 2007 10:43:48 +0000 (12:43 +0200)] 
PCI: make pcie_get_readrq visible in pci.h

[PATCH] PCI: make pcie_get_readrq visible in pci.h

pcie_get_readrq() is EXPORT_SYMBOL'ed, but its prototype is not
visible in pci.h, add it there.

This is needed by some network drivers.

Signed-off-by: Brice Goglin <brice@myri.com>
Acked-by: Peter Oruba <peter.oruba@amd.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoPCI: lets kill the 'PCI hidden behind bridge' message
Bernhard Kaindl [Mon, 30 Jul 2007 18:35:13 +0000 (20:35 +0200)] 
PCI: lets kill the 'PCI hidden behind bridge' message

Adrian Bunk wrote:
> Alois Nešpor wrote
>> PCI: Bus #0b (-#0e) is hidden behind transparent bridge #0a (-#0b) (try 'pci=assign-busses')
>> Please report the result to linux-kernel to fix this permanently"
>>
>> dmesg:
>> "Yenta: Raising subordinate bus# of parent bus (#0a) from #0b to #0e"
>> without pci=assign-busses and nothing with pci=assign-busses.
>
> Bernhard?

Ok, lets kill the message. As Alois Nešpor also saw, that's fixed up by Yenta,
so PCI does not have to warn about it. PCI could still warn about it if
is_cardbus is 0 in that instance of pci_scan_bridge(), but so far I have
not seen a report where this would have been the case so I think we can
spare the kernel of that check (removes ~300 lines of asm) unless debugging
is done.

History: The whole check was added in the days before we had the fixup
for this in Yenta and pci=assign-busses was the only way to get CardBus
cards detected on many (not all) of the machines which give this warning.

In theory, there could be cases when this warning would be triggered and
it's not cardbus, then the warning should still apply, but I think this
should only be the case when working on a completely broken PCI setup,
but one may have already enabled the debug code in drivers/pci and the
patched check would then trigger.

I do not sign this off yet because it's completely untested so far, but
everyone is free to test it (with the #ifdef DEBUG replaced by #if 1 and
pr_debug( changed to printk(.

We may also dump the whole check (remove everything within the #ifdef from
the source) if that's perferred.

On Alois Nešpor's machine this would then (only when debugging) this message:

"PCI: Bus #0b (-#0e) is partially hidden behind transparent bridge #0a (-#0b)"

"partially" should be in the message on his machine because #0b of #0b-#0e
is reachable behind #0a-#0b, but not #0c-#0e.

But that differentiation is now moot anyway because the fixup in Yenta takes
care of it as far as I could see so far, which means that unless somebody
is debugging a totally broken PCI setup, this message is not needed anymore,
not even for debugging PCI.

Ok, here the patch with the following changes:

* Refined to say that the bus is only partially hidden when the parent
  bus numbers are not totally way off (outside of) the child bus range
* remove the reference to pci=assign-busses and the plea to report it

We could add a pure source code-only comment to keep a reference to
pci=assign-busses the in case when this is triggered by someone who
is debugging the cause of this message and looking the way to solve it.

From: Bernhard Kaindl <bk@suse.de>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agopci/hotplug/cpqphp_ctrl.c: remove stale BKL use
Ingo Molnar [Tue, 24 Jul 2007 09:16:37 +0000 (11:16 +0200)] 
pci/hotplug/cpqphp_ctrl.c: remove stale BKL use

remove stale BKL use from drivers/pci/hotplug/cpqphp_ctrl.c.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoPCI: Document pci_iomap()
Rolf Eike Beer [Fri, 20 Jul 2007 00:48:44 +0000 (17:48 -0700)] 
PCI: Document pci_iomap()

This useful interface is hardly mentioned anywhere in the in-tree
documentation.

Signed-off-by: Rolf Eike Beer <eike-kernel@sf-tec.de>
Cc: Tejun Heo <htejun@gmail.com>
Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoPCI: quirk_e100_interrupt() called too early
Marian Balakowicz [Tue, 3 Jul 2007 09:03:18 +0000 (11:03 +0200)] 
PCI: quirk_e100_interrupt() called too early

quirk_e100_interrupts() is called after PCI controller is initialized
and before PCI bus enumeration is performed. On some powerpc platforms
which modify PCI controller configuration and set different MEM and IO
windows than those set by firmware quirk_e100_interrupt() is causing
kernel panic as it tries to read from device BAR0 offets which at this
time points to a invalid PCI window (set by firmware).

This patch delays the quirk_100_interrupt() to pci_fixup_final phase,
which happens after bus enumeration and before PCI enable and
device driver initialization.

Signed-off-by: Marian Balakowicz <m8@semihalf.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoPCI: Move prototypes for pci_bus_find_capability to include/linux/pci.h
Kumar Gala [Tue, 17 Jul 2007 04:27:10 +0000 (23:27 -0500)] 
PCI: Move prototypes for pci_bus_find_capability to include/linux/pci.h

We need pci_bus_find_capability() in some arch/powerpc code so move
the prototype into a header accessible to it.

Also kill the duplicate prototype for pci_bus_alloc_resource().

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog
Linus Torvalds [Wed, 22 Aug 2007 19:06:27 +0000 (12:06 -0700)] 
Merge git://git./linux/kernel/git/wim/linux-2.6-watchdog

* git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:
  [WATCHDOG] Add support for 1533 bridge to alim1535_wdt
  [WATCHDOG] Add a 00-INDEX file to Documentation/watchdog/
  [WATCHDOG] Eurotechwdt.c - clean-up comments

17 years agoMerge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Wed, 22 Aug 2007 18:13:22 +0000 (11:13 -0700)] 
Merge branch 'master' of /linux/kernel/git/davem/sparc-2.6

* 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SPARC32]: Revert f642b263800e6e57c377d630be6d2a999683b579.
  [SPARC64]: Need to clobber global reg vars in switch_to().

17 years agoMerge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Wed, 22 Aug 2007 18:13:00 +0000 (11:13 -0700)] 
Merge branch 'master' of /linux/kernel/git/davem/net-2.6

* 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
  [IRDA] irda_nl_get_mode: always results in failure
  [PPP]: Fix output buffer size in ppp_decompress_frame().
  [IRDA]: Avoid a label defined but not used warning in irda_init()
  [IPV6]: Fix kernel panic while send SCTP data with IP fragments
  [SNAP]: Check packet length before reading
  [DCCP]: Allocation in atomic context

17 years agoMerge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6
Linus Torvalds [Wed, 22 Aug 2007 18:12:08 +0000 (11:12 -0700)] 
Merge branch 'for-linus' of git://git390.osdl.marist.edu/linux-2.6

* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6:
  [S390] Change atomic_read/set to inline functions with barrier semantics.
  [S390] kprobes: fix instruction length calculation
  [S390] hypfs: inode corruption due to missing locking
  [S390] disassembler: fix b2 opcodes like srst, bsg, and others
  [S390] vmur: fix reference counting for vmur device structure
  [S390] vmur: fix diag14 exceptions with addresses > 2GB.
  [S390] qdio: Refresh buffer states for IQDIO Asynchronous output queue
  [S390] qdio: fix EQBS handling on CCQ96
  [S390] cio: change confusing message in cmf.
  [S390] cio: dont forget to set last slot to NULL in ccw_uevent().

17 years agoFix lazy mode vmalloc synchronization for paravirt
Zachary Amsden [Wed, 22 Aug 2007 01:30:36 +0000 (18:30 -0700)] 
Fix lazy mode vmalloc synchronization for paravirt

Touching vmalloc memory in the middle of a lazy mode update can generate
a kernel PDE update, which must be flushed immediately.  The fix is to
leave lazy mode when doing a vmalloc sync.

Signed-off-by: Zachary Amsden <zach@vmware.com>
Acked-by: Jeremy Fitzhardinge <jeremy@goop.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[S390] Change atomic_read/set to inline functions with barrier semantics.
Heiko Carstens [Wed, 22 Aug 2007 11:51:45 +0000 (13:51 +0200)] 
[S390] Change atomic_read/set to inline functions with barrier semantics.

After doing some tests this seems to be the best variant for s390 and
should be correct as well. With gcc 4.2.1 we get the following kernel
image sizes using the default configuration:

atomic_t type volatile, atomic_read/set defines   5311824 bytes
atomic_t type int, atomic_read/set defines        5270864 bytes
atomic_t type int, atomic_read/set inline asm     5279056 bytes
atomic_t type int, atomic_read/set inline barrier 5270864 bytes

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
17 years ago[S390] kprobes: fix instruction length calculation
David Wilder [Wed, 22 Aug 2007 11:51:44 +0000 (13:51 +0200)] 
[S390] kprobes: fix instruction length calculation

Placing a kprobe on "bc" instruction (s390/s390x) can cause an oops.
The instruction length is encoded into the first two bits of the s390
instruction. Kprobe is incorrectly computing the instruction length.
The instruction length is used for determining what type of "fix-up" is
needed for conditional branch instruction. The problem can bee seen by
placing a kprobe on a "bc" instruction that will not branch. The
results is that Kprobe incorrectly computes the new instruction
pointer (psw.addr) after single stepping the instruction. The problem
is corrected with this patch.

Signed-off-by: David Wilder <dwilder@us.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
17 years ago[S390] hypfs: inode corruption due to missing locking
Michael Holzheu [Wed, 22 Aug 2007 11:51:43 +0000 (13:51 +0200)] 
[S390] hypfs: inode corruption due to missing locking

hypfs removes the whole hypfs directory tree and creates a new one, when a
process triggers an update by writing to the "update" attribute. When removing
and creating files, it is necessary to lock the inode of the parent directory
where the files live. Currently hypfs does not lock the parent inode, which
can lead to inode corruption. This patch:
 * Introduces correct locking
 * Fixes i_nlink reference counting for inodes, when creating directories
 * Adds info printk, when hypfs filesystem has been mounted

Signed-off-by: Michael Holzheu <holzheu@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
17 years ago[S390] disassembler: fix b2 opcodes like srst, bsg, and others
Christian Borntraeger [Wed, 22 Aug 2007 11:51:42 +0000 (13:51 +0200)] 
[S390] disassembler: fix b2 opcodes like srst, bsg, and others

The instruction table for b2 opcodes was missing an opfrag value
for the cpya instruction. All instructions specified after cpya
were not considered by the disassembler. The fix is simple and
obvious - add the opfrag field to the cpya instruction.

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
17 years ago[S390] vmur: fix reference counting for vmur device structure
Michael Holzheu [Wed, 22 Aug 2007 11:51:41 +0000 (13:51 +0200)] 
[S390] vmur: fix reference counting for vmur device structure

When a vmur device is removed due to a detach of the device, currently the
ur device structure is freed. Unfortunately it can happen, that there is
still a user of the device structure, when the character device is open
during the detach process. To fix this, reference counting for the vmur
structure is introduced.
In addition to that, the online, offline, probe and remove functions are
serialized now using a global mutex.

Signed-off-by: Michael Holzheu <holzheu@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
17 years ago[S390] vmur: fix diag14 exceptions with addresses > 2GB.
Michael Holzheu [Wed, 22 Aug 2007 11:51:40 +0000 (13:51 +0200)] 
[S390] vmur: fix diag14 exceptions with addresses > 2GB.

There are several s390 diagnose calls, which must be executed below the
2GB memory boundary. In order to enforce this, those diagnoses must be
compiled into the kernel. Currently diag 14 can be called within the
vmur kernel module from addresses above 2GB. This leads to specification
exceptions. This patch moves diag10, diag14 and diag210 into the new
diag.c file.

Signed-off-by: Michael Holzheu <holzheu@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
17 years ago[S390] qdio: Refresh buffer states for IQDIO Asynchronous output queue
Klaus D. Wacker [Wed, 22 Aug 2007 11:51:39 +0000 (13:51 +0200)] 
[S390] qdio: Refresh buffer states for IQDIO Asynchronous output queue

Hipersocket Multicast queue works asynchronously. When sending buffers,
the buffer state change may happen delayed. The tasklet for checking
changes in the outbound queue excluded IQDIO async queues from this
process. This created either a hang situation when the queue ran full,
or presented a hang situation a interface close time.
The tasklet processing is changed to include IQDIO async queues when
requesting buffer state refresh.

Signed-off-by: Klaus D. Wacker <kdwacker@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
17 years ago[S390] qdio: fix EQBS handling on CCQ96
Klaus D. Wacker [Wed, 22 Aug 2007 11:51:38 +0000 (13:51 +0200)] 
[S390] qdio: fix EQBS handling on CCQ96

QDIO returned from EQBS instruction in any case after return code
CCQ=96 was issued regardless whether buffer states for at least one
buffer were extracted or not.
This caused FCP devices to hang when running under z/VM and having
QIOASSASIST=ON and having high I/O rates.
In order to fix this qdio return code processing of EQBS instruction
after CCQ=96 is changed that buffers are returned and if no buffers
where extracted the instruction is repeated at once.

Signed-off-by: Klaus D. Wacker <kdwacker@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
17 years ago[S390] cio: change confusing message in cmf.
Cornelia Huck [Wed, 22 Aug 2007 11:51:37 +0000 (13:51 +0200)] 
[S390] cio: change confusing message in cmf.

cmf currently prints a message that more than 4096 channels are not
allowed in basic mode - however, this can only be enforced if cmf was
a module (which is no longer possible). It makes much more sense to
not check the specified number of channels and just print a message if
the block for basic mode could not be allocated (which may happen for
any number of specified channels).

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
17 years ago[S390] cio: dont forget to set last slot to NULL in ccw_uevent().
Cornelia Huck [Wed, 22 Aug 2007 11:51:36 +0000 (13:51 +0200)] 
[S390] cio: dont forget to set last slot to NULL in ccw_uevent().

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
17 years ago[IRDA] irda_nl_get_mode: always results in failure
Andy Whitcroft [Wed, 22 Aug 2007 04:23:39 +0000 (21:23 -0700)] 
[IRDA] irda_nl_get_mode: always results in failure

It seems an extraneous trailing ';' has slipped in to the error handling for a
name registration failure causing the error path to trigger unconditionally.

Signed-off-by: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Samuel Ortiz <samuel@sortiz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[PPP]: Fix output buffer size in ppp_decompress_frame().
Konstantin Sharlaimov [Tue, 21 Aug 2007 07:12:44 +0000 (00:12 -0700)] 
[PPP]: Fix output buffer size in ppp_decompress_frame().

This patch addresses the issue with "osize too small" errors in mppe
encryption.  The patch fixes the issue with wrong output buffer size
being passed to ppp decompression routine.

--------------------
As pointed out by Suresh Mahalingam, the issue addressed by
ppp-fix-osize-too-small-errors-when-decoding patch is not fully resolved yet.
The size of allocated output buffer is correct, however it size passed to
ppp->rcomp->decompress in ppp_generic.c if wrong. The patch fixes that.
--------------------

Signed-off-by: Konstantin Sharlaimov <konstantin.sharlaimov@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IRDA]: Avoid a label defined but not used warning in irda_init()
Jesper Juhl [Tue, 21 Aug 2007 07:10:50 +0000 (00:10 -0700)] 
[IRDA]: Avoid a label defined but not used warning in irda_init()

Easily avoidable compiler warnings bug me.

Building irmod without CONFIG_SYSCTL currently results in :
 net/irda/irmod.c:132: warning: label 'out_err_2' defined but not used

But that can easily be avoided by simply moving the label inside
the existing "#ifdef CONFIG_SYSCTL" one line above it.

This patch moves the label and buys us one less warning with no
ill effects.

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPV6]: Fix kernel panic while send SCTP data with IP fragments
Wei Yongjun [Wed, 22 Aug 2007 03:59:08 +0000 (20:59 -0700)] 
[IPV6]: Fix kernel panic while send SCTP data with IP fragments

If ICMP6 message with "Packet Too Big" is received after send SCTP DATA,
kernel panic will occur when SCTP DATA is send again.

This is because of a bad dest address when call to skb_copy_bits().

The messages sequence is like this:

Endpoint A                             Endpoint B
                               <-------  SCTP DATA (size=1432)
ICMP6 message ------->
(Packet Too Big pmtu=1280)
                               <-------  Resend SCTP DATA (size=1432)
------------kernel panic---------------

 printing eip:
c05be62a
*pde = 00000000
Oops: 0002 [#1]
SMP
Modules linked in: scomm l2cap bluetooth ipv6 dm_mirror dm_mod video output sbs battery lp floppy sg i2c_piix4 i2c_core pcnet32 mii button ac parport_pc parport ide_cd cdrom serio_raw mptspi mptscsih mptbase scsi_transport_spi sd_mod scsi_mod ext3 jbd ehci_hcd ohci_hcd uhci_hcd
CPU:    0
EIP:    0060:[<c05be62a>]    Not tainted VLI
EFLAGS: 00010282   (2.6.23-rc2 #1)
EIP is at skb_copy_bits+0x4f/0x1ef
eax: 000004d0   ebx: ce12a980   ecx: 00000134   edx: cfd5a880
esi: c8246858   edi: 00000000   ebp: c0759b14   esp: c0759adc
ds: 007b   es: 007b   fs: 00d8  gs: 0000  ss: 0068
Process swapper (pid: 0, ti=c0759000 task=c06d0340 task.ti=c0713000)
Stack: c0759b88 c0405867 ce12a980 c8bff838 c789c084 00000000 00000028 cfd5a880
       d09f1890 000005dc 0000007b ce12a980 cfd5a880 c8bff838 c0759b88 d09bc521
       000004d0 fffff96c 00000200 00000100 c0759b50 cfd5a880 00000246 c0759bd4
Call Trace:
 [<c0405e1d>] show_trace_log_lvl+0x1a/0x2f
 [<c0405ecd>] show_stack_log_lvl+0x9b/0xa3
 [<c040608d>] show_registers+0x1b8/0x289
 [<c0406271>] die+0x113/0x246
 [<c0625dbc>] do_page_fault+0x4ad/0x57e
 [<c0624642>] error_code+0x72/0x78
 [<d09bc521>] ip6_output+0x8e5/0xab2 [ipv6]
 [<d09bcec1>] ip6_xmit+0x2ea/0x3a3 [ipv6]
 [<d0a3f2ca>] sctp_v6_xmit+0x248/0x253 [sctp]
 [<d0a3c934>] sctp_packet_transmit+0x53f/0x5ae [sctp]
 [<d0a34bf8>] sctp_outq_flush+0x555/0x587 [sctp]
 [<d0a34d3c>] sctp_retransmit+0xf8/0x10f [sctp]
 [<d0a3d183>] sctp_icmp_frag_needed+0x57/0x5b [sctp]
 [<d0a3ece2>] sctp_v6_err+0xcd/0x148 [sctp]
 [<d09cf1ce>] icmpv6_notify+0xe6/0x167 [ipv6]
 [<d09d009a>] icmpv6_rcv+0x7d7/0x849 [ipv6]
 [<d09be240>] ip6_input+0x1dc/0x310 [ipv6]
 [<d09be965>] ipv6_rcv+0x294/0x2df [ipv6]
 [<c05c3789>] netif_receive_skb+0x2d2/0x335
 [<c05c5733>] process_backlog+0x7f/0xd0
 [<c05c58f6>] net_rx_action+0x96/0x17e
 [<c042e722>] __do_softirq+0x64/0xcd
 [<c0406f37>] do_softirq+0x5c/0xac
 =======================
Code: 00 00 29 ca 89 d0 2b 45 e0 89 55 ec 85 c0 7e 35 39 45 08 8b 55 e4 0f 4e 45 08 8b 75 e0 8b 7d dc 89 c1 c1 e9 02 03 b2 a0 00 00 00 <f3> a5 89 c1 83 e1 03 74 02 f3 a4 29 45 08 0f 84 7b 01 00 00 01
EIP: [<c05be62a>] skb_copy_bits+0x4f/0x1ef SS:ESP 0068:c0759adc
Kernel panic - not syncing: Fatal exception in interrupt

Arnaldo says:
====================
Thanks! I'm to blame for this one, problem was introduced in:

b0e380b1d8a8e0aca215df97702f99815f05c094

@@ -761,7 +762,7 @@ slow_path:
                /*
                 *      Copy a block of the IP datagram.
                 */
-               if (skb_copy_bits(skb, ptr, frag->h.raw, len))
+               if (skb_copy_bits(skb, ptr, skb_transport_header(skb),
len))
                        BUG();
                left -= len;
====================

Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
Acked-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SNAP]: Check packet length before reading
Herbert Xu [Tue, 21 Aug 2007 07:06:37 +0000 (00:06 -0700)] 
[SNAP]: Check packet length before reading

The snap_rcv code reads 5 bytes so we should make sure that
we have 5 bytes in the head before proceeding.

Based on diagnosis and fix by Evgeniy Polyakov, reported by
Alan J. Wylie.

Patch also kills the skb->sk assignment before kfree_skb
since it's redundant.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[DCCP]: Allocation in atomic context
Gerrit Renker [Mon, 20 Aug 2007 00:12:50 +0000 (17:12 -0700)] 
[DCCP]: Allocation in atomic context

This fixes the following bug reported in syslog:

[ 4039.051658] BUG: sleeping function called from invalid context at /usr/src/davem-2.6/mm/slab.c:3032
[ 4039.051668] in_atomic():1, irqs_disabled():0
[ 4039.051670] INFO: lockdep is turned off.
[ 4039.051674]  [<c0104c0f>] show_trace_log_lvl+0x1a/0x30
[ 4039.051687]  [<c0104d4d>] show_trace+0x12/0x14
[ 4039.051691]  [<c0104d65>] dump_stack+0x16/0x18
[ 4039.051695]  [<c011371e>] __might_sleep+0xaf/0xbe
[ 4039.051700]  [<c0157b66>] __kmalloc+0xb1/0xd0
[ 4039.051706]  [<f090416f>] ccid2_hc_tx_alloc_seq+0x35/0xc3 [dccp_ccid2]
[ 4039.051717]  [<f09048d6>] ccid2_hc_tx_packet_sent+0x27f/0x2d9 [dccp_ccid2]
[ 4039.051723]  [<f085486b>] dccp_write_xmit+0x1eb/0x338 [dccp]
[ 4039.051741]  [<f085603d>] dccp_sendmsg+0x113/0x18f [dccp]
[ 4039.051750]  [<c03907fc>] inet_sendmsg+0x2e/0x4c
[ 4039.051758]  [<c033a47d>] sock_aio_write+0xd5/0x107
[ 4039.051766]  [<c015abc1>] do_sync_write+0xcd/0x11c
[ 4039.051772]  [<c015b296>] vfs_write+0x118/0x11f
[ 4039.051840]  [<c015b932>] sys_write+0x3d/0x64
[ 4039.051845]  [<c0103e7c>] syscall_call+0x7/0xb
[ 4039.051848]  =======================

The problem was that GFP_KERNEL was used; fixed by using gfp_any().

Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
Signed-off-by: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agofix - ensure we don't use bootconsoles after init has been released
Robin Getz [Wed, 22 Aug 2007 03:14:58 +0000 (23:14 -0400)] 
fix - ensure we don't use bootconsoles after init has been released

Gerd Hoffmann pointed out that my patch from yesterday can lead
to a null pointer dereference if the kernel is booted with no
console, and no earlyprintk defined. This fixes that issue.

Signed-off-by: Robin Getz <rgetz@blackfin.uclinux.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[POWERPC] Fix PCI Device ID for MPC8544/8533 processors
Kumar Gala [Wed, 22 Aug 2007 00:15:31 +0000 (19:15 -0500)] 
[POWERPC] Fix PCI Device ID for MPC8544/8533 processors

The initial user manuals for MPC8544/8533 had some issues with properly
documenting the device IDs for MPC8544/8533.  These processors are almost
identical and both show up on the reference boards.

Fix up the quirks for PCIe support to handle MPC8533/E.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agosky2: don't clear phy power bits
Stephen Hemminger [Tue, 21 Aug 2007 18:10:22 +0000 (11:10 -0700)] 
sky2: don't clear phy power bits

There are special PHY settings available on Yukon EC-U chip that
should not get cleared. This should solve mysterious errors on some
motherboards (like Gigabyte DS-3).

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agohisax: update hfc_usb driver
Martin Bachem [Tue, 21 Aug 2007 12:26:21 +0000 (14:26 +0200)] 
hisax: update hfc_usb driver

This fixes handling of USB ISO completion error -EXDEV and includes
several other changes to current CVS version at isdn4linux.de (changes
in debug flags, style of code remarks, etc)

Signed-off-by: Martin Bachem <info@colognechip.com>
Acked-by: Karsten Keil <kkeil@suse.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoi386: Mark NUMA support experimental
Andi Kleen [Tue, 21 Aug 2007 12:42:40 +0000 (14:42 +0200)] 
i386: Mark NUMA support experimental

I did some testing and found quite a lot of problems (doesn't
boot at all on non NUMA and misassigns cores on Opteron systems).

Mark it as experimental and warn against its use for now.

It's still default y for SUMMIT/NUMAQ because it'll presumably
work on these systems.

Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[SPARC32]: Revert f642b263800e6e57c377d630be6d2a999683b579.
David S. Miller [Mon, 20 Aug 2007 22:52:18 +0000 (15:52 -0700)] 
[SPARC32]: Revert f642b263800e6e57c377d630be6d2a999683b579.

This causes boot failures for some people.
It looks like in fact that some SILO provided
ramdisk images should not be KERNBASE normalized.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[SPARC64]: Need to clobber global reg vars in switch_to().
David S. Miller [Sat, 18 Aug 2007 07:07:40 +0000 (00:07 -0700)] 
[SPARC64]: Need to clobber global reg vars in switch_to().

Otherwise the compiler can't see the things like the
per-cpu area base register are changing.

Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoRevert "USB: EHCI cpufreq fix"
Linus Torvalds [Tue, 21 Aug 2007 06:38:44 +0000 (23:38 -0700)] 
Revert "USB: EHCI cpufreq fix"

This reverts commit 196705c9bbc03540429b0f7cf9ee35c2f928a534.  It was
reported to cause a regression by Daniel Exner, and Arjan van de Ven
points out that we actually already have infrastructure in place for
setting limits on acceptable DMA latency that would be the much more
correct fix for the problem with some Broadcom EHCI controllers.

Fixed up trivial conflicts due to the changes to support big-endian host
controller descriptors in drivers/usb/host/{ehci-sched.c,ehci.h}.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agodio: zero struct dio with kzalloc instead of manually
Zach Brown [Tue, 21 Aug 2007 00:12:01 +0000 (17:12 -0700)] 
dio: zero struct dio with kzalloc instead of manually

This patch uses kzalloc to zero all of struct dio rather than manually
trying to track which fields we rely on being zero.  It passed aio+dio
stress testing and some bug regression testing on ext3.

This patch was introduced by Linus in the conversation that lead up to
Badari's minimal fix to manually zero .map_bh.b_state in commit:

  6a648fa72161d1f6468dabd96c5d3c0db04f598a

It makes the code a bit smaller.  Maybe a couple fewer cachelines to
load, if we're lucky:

   text    data     bss     dec     hex filename
3285925  568506 1304616 5159047  4eb887 vmlinux
3285797  568506 1304616 5158919  4eb807 vmlinux.patched

I was unable to measure a stable difference in the number of cpu cycles
spent in blockdev_direct_IO() when pushing aio+dio 256K reads at
~340MB/s.

So the resulting intent of the patch isn't a performance gain but to
avoid exposing ourselves to the risk of finding another field like
.map_bh.b_state where we rely on zeroing but don't enforce it in the
code.

Signed-off-by: Zach Brown <zach.brown@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6
Linus Torvalds [Tue, 21 Aug 2007 05:48:42 +0000 (22:48 -0700)] 
Merge git://git./linux/kernel/git/bart/ide-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6:
  ide-disk: workaround for buggy HPA support on ST340823A (take 3)
  hpt34x: fix CONFIG_HPT34X_AUTODMA=n handling
  triflex: add missing ->dma_base check
  pdc202xx_old: add missing ->dma_base check
  pdc202xx_new: add missing ->dma_base check
  cs5530: add missing ->dma_base check
  ide: ide_config_drive_speed() bugfixes
  ide: add cable detection for early UDMA66 devices (take 3)
  ide-pmac: fix drive->init_speed reporting
  ide: config_drive_for_dma() fixes
  ide-cris: fix ->set_pio_mode method to set transfer mode on the device
  ide: fix hidden dependencies on CONFIG_IDE_GENERIC
  ide: make CONFIG_IDE_GENERIC default to N

17 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb
Linus Torvalds [Tue, 21 Aug 2007 05:48:24 +0000 (22:48 -0700)] 
Merge branch 'master' of git://git./linux/kernel/git/mchehab/v4l-dvb

* 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb:
  V4L/DVB (6028): Turn an unnecessary mdelay() into msleep().
  V4L/DVB (6027): Get rid of an ill-behaved msleep in i2c write
  V4L/DVB (6026): Avoid powering up the camera on resume
  V4L/DVB (6016): get_dvb_firmware: update script for new location of tda10046 firmware
  V4L/DVB (5991): dvb-pll: Set minimum and maximum frequency properly
  V4L/DVB (5969): ivtv: report ivtv version in status log
  V4L/DVB (5967): ivtv: fix VIDIOC_S_FBUF:new OSD values where never set
  V4L/DVB (5968): videodev2.h: remove superfluous FBUF GLOBAL_INV_ALPHA support

17 years agoJFFS2 locking regression fix.
David Woodhouse [Mon, 20 Aug 2007 10:05:29 +0000 (11:05 +0100)] 
JFFS2 locking regression fix.

Commit a491486a2087ac3dfc00efb4f838c8d684afaf54 introduced a locking
problem in JFFS2 -- we up() the alloc_sem when we weren't previously
holding it. This leads to all kinds of fun behaviour later.

There was a _reason_ for the
if (1 /* alternative path needs testing */ ||
which the above-mentioned commit removed :)

Discovered and debugged by Giulio Fedel <giulio.fedel@andorsystems.com>

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge branch 'fixes-2.6.23' of git://git.kernel.org/pub/scm/linux/kernel/git/galak...
Linus Torvalds [Tue, 21 Aug 2007 05:43:18 +0000 (22:43 -0700)] 
Merge branch 'fixes-2.6.23' of git://git./linux/kernel/git/galak/powerpc

* 'fixes-2.6.23' of git://git.kernel.org/pub/scm/linux/kernel/git/galak/powerpc:
  [POWERPC] Fix 8xx compile failure
  [POWERPC] Fix FSL BookE machine check reporting
  [POWERPC] Fix interrupt routing and setup of ULI M1575 on FSL boards
  [POWERPC] Add interrupt resource for RTC CMOS driver

17 years agoensure we don't use bootconsoles after init has been released
Robin Getz [Mon, 20 Aug 2007 19:22:47 +0000 (15:22 -0400)] 
ensure we don't use bootconsoles after init has been released

This is a followup to the cleanups for earlyprintk patch from Gerd Hoffmann

http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=69331af79cf29e26d1231152a172a1a10c2df511

This ensures that a bootconsole is unregistered if it is not replaced.
The current implementation spews garbage out the bootconsole in this case,
since the bootconsole structure is normally in the init section, and is
freed, but still used.

Signed-off-by: Robin Getz <rgetz@blackfin.uclinux.org>
Acked-by: Gerd Hoffmann <kraxel@redhat.com>
Acked-by: Paul Mundt <lethal@linux-sh.org>
Cc: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoide-disk: workaround for buggy HPA support on ST340823A (take 3)
Bartlomiej Zolnierkiewicz [Mon, 20 Aug 2007 20:42:57 +0000 (22:42 +0200)] 
ide-disk: workaround for buggy HPA support on ST340823A (take 3)

This disk reports total number of sectors instead of maximum sector address
in response to READ_NATIVE_MAX_ADDRESS command and also happily accepts
SET_MAX_ADDRESS command with the bogus value.  This results in +1 sector
capacity being used and errors on attempts to use the last sector.

...
hdd: Host Protected Area detected.
  Â  Â  Â  current capacity is 78165360 sectors (40020 MB)
  Â  Â  Â  native Â capacity is 78165361 sectors (40020 MB)
hdd: Host Protected Area disabled.
...
hdd: reading: block=78165360, sectors=1, buffer=0xc1e63000
hdd: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hdd: dma_intr: error=0x10 { SectorIdNotFound }, LBAsect=78165360, sector=78165360
...

Add hpa_list[] table and workaround the issue in idedisk_check_hpa().

v2:
* Add missing export and improve patch description a bit.

v3:
* Add list termination.  (From Mikko)

Fixes kernel bugzilla bug #8816.

Thanks to Mikko for investigating the issue and helping with this patch.

Cc: Mikko Rapeli <mikko.rapeli@iki.fi>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agohpt34x: fix CONFIG_HPT34X_AUTODMA=n handling
Bartlomiej Zolnierkiewicz [Mon, 20 Aug 2007 20:42:57 +0000 (22:42 +0200)] 
hpt34x: fix CONFIG_HPT34X_AUTODMA=n handling

Programming DMA mode may destroy current PIO mode setting so if
CONFIG_HPT34X_AUTODMA=n (the default case) make ide_tune_dma() fail
early by disabling all host DMA masks and re-tune PIO mode.

This fix doesn't help with the driver being broken but is needed
for some other changes.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agotriflex: add missing ->dma_base check
Bartlomiej Zolnierkiewicz [Mon, 20 Aug 2007 20:42:56 +0000 (22:42 +0200)] 
triflex: add missing ->dma_base check

If ->dma_base is not set (== PCI BAR4 cannot be reserved) then DMA hooks
shouldn't be initialized or bad things will happen.

Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agopdc202xx_old: add missing ->dma_base check
Bartlomiej Zolnierkiewicz [Mon, 20 Aug 2007 20:42:56 +0000 (22:42 +0200)] 
pdc202xx_old: add missing ->dma_base check

If ->dma_base is not set (== PCI BAR4 cannot be reserved) then DMA hooks
shouldn't be initialized or bad things will happen.

Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agopdc202xx_new: add missing ->dma_base check
Bartlomiej Zolnierkiewicz [Mon, 20 Aug 2007 20:42:56 +0000 (22:42 +0200)] 
pdc202xx_new: add missing ->dma_base check

If ->dma_base is not set (== PCI BAR4 cannot be reserved) then DMA hooks
shouldn't be initialized or bad things will happen.

Also this host driver requires valid PCI BAR4 for normal operation so
check it in ->init_chipset and fail initialization if not set.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agocs5530: add missing ->dma_base check
Bartlomiej Zolnierkiewicz [Mon, 20 Aug 2007 20:42:56 +0000 (22:42 +0200)] 
cs5530: add missing ->dma_base check

If ->dma_base is not set (== PCI BAR4 cannot be reserved) then DMA hooks
shouldn't be initialized or bad things will happen.

Also this host driver requires valid PCI BAR4 for normal operation so
check it in ->init_chipset and fail initialization if not set.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: ide_config_drive_speed() bugfixes
Bartlomiej Zolnierkiewicz [Mon, 20 Aug 2007 20:42:56 +0000 (22:42 +0200)] 
ide: ide_config_drive_speed() bugfixes

* Use ->OUTBSYNC instead of ->OUTB when writing command register
  (needed for scc_pata and pmac host drivers).

* Don't check DRDY bit of the status register on ATAPI devices
  (ATAPI devices are free to ignore DRDY bit).

Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Kou Ishizaki <kou.ishizaki@toshiba.co.jp>
Cc: Akira Iguchi <akira2.iguchi@toshiba.co.jp>
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: add cable detection for early UDMA66 devices (take 3)
Bartlomiej Zolnierkiewicz [Mon, 20 Aug 2007 20:42:56 +0000 (22:42 +0200)] 
ide: add cable detection for early UDMA66 devices (take 3)

* Move ide_in_drive_list() from ide-dma.c to ide-iops.c.

* Add ivb_list[] table for listening early UDMA66 devices which don't conform
  to ATA4 standard wrt cable detection (bit14 is zero, only bit13 is valid)
  and use only device side cable detection for them since host side cable
  detection may be unreliable.

* Add model "QUANTUM FIREBALLlct10 05" with firwmare "A03.0900" to the list
  (from Craig's bugreport).

v2:
* Improve kernel message basing on suggestion from Sergei.

v3:
* Don't print kernel message when no device side cable detection is done,
  plus some minor fixes.  (Noticed by Sergei)

Thanks to Craig for testing this patch.

Cc: Craig Block <chblock3@yahoo.com>
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide-pmac: fix drive->init_speed reporting
Bartlomiej Zolnierkiewicz [Mon, 20 Aug 2007 20:42:55 +0000 (22:42 +0200)] 
ide-pmac: fix drive->init_speed reporting

pmac_ide_tune_chipset() don't set drive->init_speed.

Fix it by setting drive->{current,init}_speed in pmac_ide_do_setfeature()
and clean up pmac_ide_{tune_chipset,mdma_enable,udma_enable}().

Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: config_drive_for_dma() fixes
Bartlomiej Zolnierkiewicz [Mon, 20 Aug 2007 20:42:55 +0000 (22:42 +0200)] 
ide: config_drive_for_dma() fixes

* Add DMA blacklist checking (->ide_dma_on check probably can go now).

* Add ->atapi_dma flag checking and remove no longer needed
  ns87415_ide_dma_check() from ns87415 host driver.

* Remove now needless __ide_dma_check() wrapper and symbol export.

* Check drive->autodma instead of hwif->autodma (there should be no changes in
  behavior as all users of config_drive_for_dma() set both ->autodma flags).

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide-cris: fix ->set_pio_mode method to set transfer mode on the device
Bartlomiej Zolnierkiewicz [Mon, 20 Aug 2007 20:42:54 +0000 (22:42 +0200)] 
ide-cris: fix ->set_pio_mode method to set transfer mode on the device

Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: fix hidden dependencies on CONFIG_IDE_GENERIC
Bartlomiej Zolnierkiewicz [Mon, 20 Aug 2007 20:42:54 +0000 (22:42 +0200)] 
ide: fix hidden dependencies on CONFIG_IDE_GENERIC

Some host drivers depend on CONFIG_IDE_GENERIC to do the probing but their
config options lack explicit dependencies on IDE_GENERIC.  In the long-term
these host drivers should be fixed to do the probing themselves but for now
fix them by making their config options select CONFIG_IDE_GENERIC.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoide: make CONFIG_IDE_GENERIC default to N
Tejun Heo [Mon, 20 Aug 2007 20:42:53 +0000 (22:42 +0200)] 
ide: make CONFIG_IDE_GENERIC default to N

These days, CONFIG_IDE_GENERIC causes more confusion and
misconfiguration than it helps.  Especially so because libata is
linked after the generic driver.  Default to N.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Acked-by: Jeff Garzik <jeff@garzik.org>
Cc: "P.C.Chan" <pc.chan@alcatel-lucent.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
17 years agoV4L/DVB (6028): Turn an unnecessary mdelay() into msleep().
Marcelo Tosatti [Fri, 17 Aug 2007 04:03:22 +0000 (01:03 -0300)] 
V4L/DVB (6028): Turn an unnecessary mdelay() into msleep().

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (6027): Get rid of an ill-behaved msleep in i2c write
Jonathan Corbet [Fri, 17 Aug 2007 04:02:33 +0000 (01:02 -0300)] 
V4L/DVB (6027): Get rid of an ill-behaved msleep in i2c write

Configuring the OLPC camera requires something over 150 register
writes.  Unfortunately, querying the CAFE i2c controller too
soon after a write causes the hardware to flake.  The problem had
been "solved" with an msleep() call, but, between the number of
registers and how msleep() behaves, that resulted in a 3-second
delay on camera initialization.  Instead, we hand-code a wait for
the completion interrupt which avoids reading the status registers.

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (6026): Avoid powering up the camera on resume
Chris Ball [Fri, 17 Aug 2007 04:01:33 +0000 (01:01 -0300)] 
V4L/DVB (6026): Avoid powering up the camera on resume

Signed-off-by: Chris Ball <cjb@laptop.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (6016): get_dvb_firmware: update script for new location of tda10046 firmware
Andreas Arens [Wed, 15 Aug 2007 20:37:16 +0000 (17:37 -0300)] 
V4L/DVB (6016): get_dvb_firmware: update script for new location of tda10046 firmware

Update get_dvb_firmware script for the new location of the
tda10046 firmware.

The old location doesn't work anymore.

Signed-off-by: Andreas Arens <ari@goron.de>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5991): dvb-pll: Set minimum and maximum frequency properly
Trent Piepho [Fri, 17 Aug 2007 21:36:44 +0000 (18:36 -0300)] 
V4L/DVB (5991): dvb-pll: Set minimum and maximum frequency properly

The tuner maximum frequency wasn't being set, while the minimum
frequency was set to what the maximum should have been.

If a future patch were to enforce these limits, dvb-pll would be
effectively broken.

Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5969): ivtv: report ivtv version in status log
Hans Verkuil [Fri, 3 Aug 2007 12:33:38 +0000 (09:33 -0300)] 
V4L/DVB (5969): ivtv: report ivtv version in status log

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5967): ivtv: fix VIDIOC_S_FBUF:new OSD values where never set
Hans Verkuil [Tue, 31 Jul 2007 10:15:56 +0000 (07:15 -0300)] 
V4L/DVB (5967): ivtv: fix VIDIOC_S_FBUF:new OSD values where never set

ivtv: fix VIDIOC_S_FBUF support: new OSD values where never actually set.

The values set with VIDIOC_S_FBUF were not actually used until the next
VIDIOC_S_FMT. Fixed.

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5968): videodev2.h: remove superfluous FBUF GLOBAL_INV_ALPHA support
Hans Verkuil [Tue, 31 Jul 2007 15:42:22 +0000 (12:42 -0300)] 
V4L/DVB (5968): videodev2.h: remove superfluous FBUF GLOBAL_INV_ALPHA support

There is no need for a global inverted alpha capability since all the
application has to do is to pass '255-alpha' as the global alpha value.

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agomissing return in bridge sysfs code
Al Viro [Sun, 19 Aug 2007 03:51:26 +0000 (04:51 +0100)] 
missing return in bridge sysfs code

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoKVM: Avoid calling smp_call_function_single() with interrupts disabled
Avi Kivity [Sun, 19 Aug 2007 12:57:26 +0000 (15:57 +0300)] 
KVM: Avoid calling smp_call_function_single() with interrupts disabled

When taking a cpu down, we need to hardware_disable() it.
Unfortunately, the CPU_DYING notifier is called with interrupts
disabled, which means we can't use smp_call_function_single().

Fortunately, the CPU_DYING notifier is always called on the dying cpu,
so we don't need to use the function at all and can simply call
hardware_disable() directly.

Tested-by: Paolo Ornati <ornati@fastwebnet.it>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoRemove double inclusion of linux/capability.h
Christian Heim [Sun, 19 Aug 2007 11:07:59 +0000 (13:07 +0200)] 
Remove double inclusion of linux/capability.h

Remove the second inclusion of linux/capability.h, which has been
introduced with "[PATCH] move capable() to capability.h" (commit
c59ede7b78db329949d9cdcd7064e22d357560ef)

Signed-off-by: Christian Heim <phreak@gentoo.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoFix <math-emu/soft-fp.h> tpyo
Al Viro [Sun, 19 Aug 2007 00:03:07 +0000 (01:03 +0100)] 
Fix <math-emu/soft-fp.h> tpyo

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agox86: properly initialize temp insn buffer for paravirt patching
Chris Wright [Sat, 18 Aug 2007 21:31:41 +0000 (14:31 -0700)] 
x86: properly initialize temp insn buffer for paravirt patching

With commit ab144f5ec64c42218a555ec1dbde6b60cf2982d6 the patching code
now collects the complete new instruction stream into a temp buffer
before finally patching in the new insns.  In some cases the paravirt
patchers will choose to leave the patch site unpatched (length mismatch,
clobbers mismatch, etc).

This causes the new patching code to copy an uninitialized temp buffer,
i.e.  garbage, to the callsite.  Simply make sure to always initialize
the buffer with the original instruction stream.  A better fix is to
audit all the patchers and return proper length so that apply_paravirt()
can skip copies when we leave the patch site untouched.

Signed-off-by: Chris Wright <chrisw@sous-sol.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Sat, 18 Aug 2007 17:28:21 +0000 (10:28 -0700)] 
Merge master.kernel.org:/home/rmk/linux-2.6-arm

* master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] 4549/1: KS8695: Fix build errors
  [ARM] 4546/1: s3c2410: fix architecture typo for s3c2442
  [ARM] 4544/1: arm: fix section mismatch in pxa fb

17 years agox86_64: Check for .cfi_rel_offset in CFI probe
Andi Kleen [Wed, 15 Aug 2007 00:40:37 +0000 (02:40 +0200)] 
x86_64: Check for .cfi_rel_offset in CFI probe

Very old 64bit binutils have .cfi_startproc/endproc, but
no .cfi_rel_offset. Check for .cfi_rel_offset too.

Cc: Jan Beulich <jbeulich@novell.com>
Cc: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agox86_64: Change PMDS invocation to single macro
Andi Kleen [Wed, 15 Aug 2007 00:40:36 +0000 (02:40 +0200)] 
x86_64: Change PMDS invocation to single macro

Very old binutils (2.12.90...) seem to have trouble with newlines
in assembler macro invocation. They put them into the resulting
argument expansion. In this case this lead to a parse error because
a .rept expression ended up spread over multiple lines. Change the PMDS()
invocation to a single line.

Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agox86_64: Fix to keep watchdog disabled by default for i386/x86_64
Daniel Gollub [Wed, 15 Aug 2007 00:40:35 +0000 (02:40 +0200)] 
x86_64: Fix to keep watchdog disabled by default for i386/x86_64

Fixed wrong expression which enabled watchdogs even if nmi_watchdog kernel
parameter wasn't set. This regression got slightly introduced with commit
b7471c6da94d30d3deadc55986cc38d1ff57f9ca.

Introduced NMI_DISABLED (-1) which allows to switch the value of NMI_DEFAULT
without breaking the APIC NMI watchdog code (again).

Fixes:
   https://bugzilla.novell.com/show_bug.cgi?id=298084
   http://bugzilla.kernel.org/show_bug.cgi?id=7839
And likely some more nmi_watchdog=0 related issues.

Signed-off-by: Daniel Gollub <dgollub@suse.de>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agox86_64: Fail dma_alloc_coherent on dma less devices
Andi Kleen [Wed, 15 Aug 2007 00:40:34 +0000 (02:40 +0200)] 
x86_64: Fail dma_alloc_coherent on dma less devices

This should fix an oops with PCMCIA PATA devices

http://bugzilla.kernel.org/show_bug.cgi?id=8424

This is not a full fix for the problem, but probably
still the right thing to do.

[ I'm almost certain it's *not* the right thing to do, but it avoids an
  oops, and I want comments from others on what the right thing would
  actually be..  I suspect we should just remove the use of dma_mask
  entirely in this function, and just use coherent_dma_mask.  - Linus ]

Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agofix random hang in forcedeth driver when using netconsole
Timo Jantunen [Tue, 14 Aug 2007 18:56:57 +0000 (21:56 +0300)] 
fix random hang in forcedeth driver when using netconsole

If the forcedeth driver receives too much work in an interrupt, it
assumes it has a broken hardware with stuck IRQ.  It works around the
problem by disabling interrupts on the nic but makes a printk while
holding device spinlog - which isn't smart thing to do if you have
netconsole on the same nic.

This patch moves the printk's out of the spinlock protected area.

Without this patch the machine hangs hard.  With this patch everything
still works even when there is significant increase on CPU usage while
using the nic.

Signed-off-by: Timo Jantunen <jeti@iki.fi>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoi386: Fix a couple busy loops in mach_wakecpu.h:wait_for_init_deassert()
Satyam Sharma [Thu, 16 Aug 2007 00:39:25 +0000 (06:09 +0530)] 
i386: Fix a couple busy loops in mach_wakecpu.h:wait_for_init_deassert()

Use cpu_relax() in the busy loops, as atomic_read() doesn't automatically
imply volatility for i386 and x86_64. x86_64 doesn't have this issue because
it open-codes the while loop in smpboot.c:smp_callin() itself that already
uses cpu_relax().

For i386, however, smpboot.c:smp_callin() calls wait_for_init_deassert()
which is buggy for mach-default and mach-es7000 cases.

[ I test-built a kernel -- smp_callin() itself got inlined in its only
  callsite, smpboot.c:start_secondary() -- and the relevant piece of
  code disassembles to the following:

0xc1019704 <start_secondary+12>:        mov    0xc144c4c8,%eax
0xc1019709 <start_secondary+17>:        test   %eax,%eax
0xc101970b <start_secondary+19>:        je     0xc1019709 <start_secondary+17>

  init_deasserted (at 0xc144c4c8) gets fetched into %eax only once and
  then we loop over the test of the stale value in the register only,
  so these look like real bugs to me. With the fix below, this becomes:

0xc1019706 <start_secondary+14>:        pause
0xc1019708 <start_secondary+16>:        cmpl   $0x0,0xc144c4c8
0xc101970f <start_secondary+23>:        je     0xc1019706 <start_secondary+14>

  which looks nice and healthy. ]

Thanks to Heiko Carstens for noticing this.

Signed-off-by: Satyam Sharma <satyam@infradead.org>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoAdd some help texts to recently-introduced kconfig items
Jan Engelhardt [Sat, 18 Aug 2007 10:56:21 +0000 (12:56 +0200)] 
Add some help texts to recently-introduced kconfig items

Signed-off-by: Jan Engelhardt <jengelh@gmx.de>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de> (edited MACINTOSH_DRIVERS per Geert Uytterhoeven's remark)
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoEnable partitions for lguest block device
Rusty Russell [Fri, 17 Aug 2007 04:05:27 +0000 (14:05 +1000)] 
Enable partitions for lguest block device

The lguest block device only requests one minor, which means
partitions don't work (eg "root=/dev/lgba1").

Let's follow the crowd and ask for 16.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh64-2.6
Linus Torvalds [Sat, 18 Aug 2007 16:43:40 +0000 (09:43 -0700)] 
Merge /pub/scm/linux/kernel/git/lethal/sh64-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh64-2.6:
  sh64: arch/sh64/kernel/setup.c: duplicate include removal.
  sh64: arch/sh64/kernel/signal.c: duplicate include removal
  sh64: Add missing dma_sync_single_for_*().

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6.23
Linus Torvalds [Sat, 18 Aug 2007 16:42:43 +0000 (09:42 -0700)] 
Merge /pub/scm/linux/kernel/git/lethal/sh-2.6.23

* master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6.23:
  sh: remove extraneous ; on scif_sercon_putc wait loop
  sh: Add missing dma_sync_single_range_for_*().
  sh: panic on machvec section misalignment.
  sh: Fix PTRACE_PEEKTEXT/PEEKDATA fallout from generic_ptrace_peekdata().

17 years agoMerge branch 'release' of git://lm-sensors.org/kernel/mhoffman/hwmon-2.6
Linus Torvalds [Sat, 18 Aug 2007 16:41:19 +0000 (09:41 -0700)] 
Merge branch 'release' of git://lm-sensors.org/kernel/mhoffman/hwmon-2.6

* 'release' of git://lm-sensors.org/kernel/mhoffman/hwmon-2.6:
  hwmon: (smsc47m1) restore missing name attribute
  hwmon: (w83627ehf) don't assume bank 0
  hwmon: (w83627ehf) read fan_div values during probe
  hwmon: fix w83781d temp sensor type setting

17 years agoMerge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
Linus Torvalds [Sat, 18 Aug 2007 16:38:56 +0000 (09:38 -0700)] 
Merge branch 'release' of git://git./linux/kernel/git/aegl/linux-2.6

* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
  Cross-compilation between e.g. i386 -> 64bit could break -> work around it
  [IA64] Enable early console for Ski simulator
  [IA64] forbid ptrace changes psr.ri to 3
  [IA64] Failure to grow RBS
  [IA64] Fix processor_get_freq
  [IA64] SGI Altix : fix a force_interrupt bug on altix
  [IA64] Update arch/ia64/configs/* s/SLAB/SLUB/
  [IA64] get back PT_IA_64_UNWIND program header
  [IA64] need NOTES in vmlinux.lds.S
  [IA64] make unwinder stop at last frame of the bootloader
  [IA64] Clean up CPE handler registration
  [IA64] Include Kconfig.preempt
  [IA64] SN2 needs platform specific irq_to_vector() function.
  [IA64] Use atomic64_read to read an atomic64_t.
  [IA64] disable irq's and check need_resched before safe_halt

17 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris...
Linus Torvalds [Sat, 18 Aug 2007 16:38:30 +0000 (09:38 -0700)] 
Merge branch 'for-linus' of git://git./linux/kernel/git/jmorris/selinux-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/selinux-2.6:
  SELinux: correct error code in selinux_audit_rule_init

17 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland...
Linus Torvalds [Sat, 18 Aug 2007 16:38:09 +0000 (09:38 -0700)] 
Merge branch 'for-linus' of git://git./linux/kernel/git/roland/infiniband

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
  IB/mlx4: Incorrect semicolon after if statement
  mlx4_core: Wait 1 second after reset before accessing device
  IPoIB: Fix leak in ipoib_transport_dev_init() error path
  IB/mlx4: Fix opcode returned in RDMA read completion
  IB/srp: Add OUI for new Cisco targets
  IB/srp: Wrap OUI checking for workarounds in helper functions
  RDMA/cxgb3: Always call low level send function via cxgb3_ofld_send()
  IB: Move the macro IB_UMEM_MAX_PAGE_CHUNK() to umem.c
  IB: Include <linux/list.h> and <linux/rwsem.h> from <rdma/ib_verbs.h>
  IB: Include <linux/list.h> from <rdma/ib_mad.h>
  IB/mad: Fix address handle leak in mad_rmpp
  IB/mad: agent_send_response() should be void
  IB/mad: Fix memory leak in switch handling in ib_mad_recv_done_handler()
  IB/mad: Fix error path if response alloc fails in ib_mad_recv_done_handler()
  IB/sa: Don't need to check for default P_Key twice
  IB/core: Ignore membership bit in ib_find_pkey()

17 years agoMerge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Sat, 18 Aug 2007 16:34:28 +0000 (09:34 -0700)] 
Merge branch 'master' of /linux/kernel/git/davem/sparc-2.6

* 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [MATH-EMU]: Fix underflow exception reporting.
  [SPARC64]: Create a HWCAP_SPARC_N2 and report it to userspace on Niagara-2.
  [SPARC64]: SMP trampoline needs to avoid %tick_cmpr on sun4v too.
  [SPARC64]: Do not touch %tick_cmpr on sun4v cpus.
  [SPARC64]: Niagara-2 optimized copies.
  [SPARC64]: Allow userspace to get at the machine description.
  [SPARC32]: Remove superfluous 'kernel_end' alignment on sun4c.
  [SPARC32]: Fix bogus ramdisk image location check.
  [SPARC32]: Remove iommu from struct sbus_bus and use archdata like sparc64.

17 years agoMerge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Sat, 18 Aug 2007 16:34:09 +0000 (09:34 -0700)] 
Merge branch 'master' of /linux/kernel/git/davem/net-2.6

* 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
  [IPv6]: Invalid semicolon after if statement
  [NET]: Fix unbalanced rcu_read_unlock in __sock_create
  [VLAN] net/8021q/vlanproc.c: fix check-after-use
  [NET]: Unexport dev_ethtool
  [IOAT]: Remove redundant struct member to avoid descriptor cache miss
  [ECONET]: remove econet_packet_type on unload
  [AX25]: don't free pointers to statically allocated data
  [PATCH] mac80211: probe for hidden SSIDs in pre-auth scan
  [PATCH] mac80211: fix tx status frame code
  [BRIDGE]: Fix typo in net/bridge/br_stp_if.c
  [BRIDGE]: sysfs locking fix.
  [NETFILTER]: nf_nat_sip: don't drop short packets
  [NETFILTER]: nf_conntrack_sip: fix SIP-URI parsing
  [NETFILTER]: nf_conntrack_sip: check sname != NULL before calling strncmp
  [NETFILTER]: netfilter: xt_u32 bug correction

17 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hskinnemoen...
Linus Torvalds [Sat, 18 Aug 2007 16:33:43 +0000 (09:33 -0700)] 
Merge branch 'for-linus' of git://git./linux/kernel/git/hskinnemoen/avr32-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hskinnemoen/avr32-2.6:
  [AVR32] Define mmiowb()
  [AVR32] Fix bogus pte_page() definition
  [AVR32] Simplify pte_alloc_one{,_kernel}
  include/asm-avr32/pgalloc.h: kmalloc + memset conversion to kcalloc
  [AVR32] Wire up i2c-gpio on the ATNGW100 board
  [AVR32] leds-gpio for stk1000

17 years agoMerge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
Linus Torvalds [Sat, 18 Aug 2007 16:33:25 +0000 (09:33 -0700)] 
Merge branch 'merge' of git://git./linux/kernel/git/paulus/powerpc

* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
  [POWERPC] Fix invalid semicolon after if statement
  [POWERPC] ps3: Fix no storage devices found
  [POWERPC] Fix for assembler -g
  [POWERPC] Fix small race in 44x tlbie function
  [POWERPC] Remove unused code causing a compile warning
  [POWERPC] cell: Fix errno for modular spufs_create with invalid neighbour

17 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Sat, 18 Aug 2007 16:32:36 +0000 (09:32 -0700)] 
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/libata-dev

* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:
  libata: adjust libata to ignore errors after spinup
  ata_piix: add TECRA M7 to broken suspend list
  pata_hpt{37x|3x2n}: fix clock reporting (take 2)
  pata_hpt37x: actually clock HPT374 with 50 MHz DPLL (take 2)
  pata_artop: fix UDMA5 for AEC6280[R] and UDMA6 for AEC6880[R]
  ata_piix: update map 10b for ich8m
  sata_mv: PCI IDs for Hightpoint RocketRaid 1740/1742
  [libata] pata_isapnp: replace missing module device table

17 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hpa/linux...
Linus Torvalds [Sat, 18 Aug 2007 16:31:05 +0000 (09:31 -0700)] 
Merge branch 'for-linus' of git://git./linux/kernel/git/hpa/linux-2.6-x86setup

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hpa/linux-2.6-x86setup:
  [x86 setup] edd.c: make sure MBR signatures actually get reported
  [x86 setup] Don't use EDD to get the MBR signature
  [x86 setup] The current display page is returned in %bh, not %bl

17 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6
Linus Torvalds [Sat, 18 Aug 2007 16:30:07 +0000 (09:30 -0700)] 
Merge git://git./linux/kernel/git/sfrench/cifs-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:
  [CIFS] Check return code on failed alloc
  [CIFS] Update CIFS project web site
  [CIFS] Fix hang in find_writable_file

17 years agoReset current->pdeath_signal on SUID binary execution
Marcel Holtmann [Fri, 17 Aug 2007 19:47:58 +0000 (21:47 +0200)] 
Reset current->pdeath_signal on SUID binary execution

This fixes a vulnerability in the "parent process death signal"
implementation discoverd by Wojciech Purczynski of COSEINC PTE Ltd.
and iSEC Security Research.

http://marc.info/?l=bugtraq&m=118711306802632&w=2

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[CIFS] Check return code on failed alloc
Cyrill Gorcunov [Sat, 18 Aug 2007 00:15:20 +0000 (00:15 +0000)] 
[CIFS] Check return code on failed alloc

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
17 years agoCross-compilation between e.g. i386 -> 64bit could break -> work around it
Thomas Renninger [Thu, 16 Aug 2007 14:27:15 +0000 (16:27 +0200)] 
Cross-compilation between e.g. i386 -> 64bit could break -> work around it

Adrian Bunk: scripts/mod/file2alias.c is compiled with HOSTCC and ensures that
kernel_ulong_t is correct, but it can't cope with different padding on
different architectures.

Signed-off-by: Thomas Renninger <trenn@suse.de>
Signed-off-by: Tony Luck <tony.luck@intel.com>
17 years ago[IA64] Enable early console for Ski simulator
Peter Chubb [Thu, 16 Aug 2007 05:03:07 +0000 (15:03 +1000)] 
[IA64] Enable early console for Ski simulator

When using Ski to debug early startup, it's a bit of a pain not to
have printk.

This patch enables the simulated console very early.
It may be worth conditionalising on the command line... but this is
enough for now.

Signed-off-by: Peter Chubb <peterc@gelato.unsw.edu.au>
Signed-off-by: Tony Luck <tony.luck@intel.com>
17 years ago[IA64] forbid ptrace changes psr.ri to 3
Shaohua Li [Fri, 17 Aug 2007 20:43:50 +0000 (13:43 -0700)] 
[IA64] forbid ptrace changes psr.ri to 3

The "ri" field in the processor status register only has defined
values of 0, 1, 2.  Do not let ptrace set this to 3.  As with
other reserved fields in registers we silently discard the value.

Signed-off-by: Shaohua Li <shaohua.li@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
17 years ago[POWERPC] Fix 8xx compile failure
Kumar Gala [Fri, 17 Aug 2007 13:23:06 +0000 (08:23 -0500)] 
[POWERPC] Fix 8xx compile failure

  CC      arch/powerpc/sysdev/commproc.o
arch/powerpc/sysdev/fsl_soc.c: In function fsl_pcmcia_of_init:
arch/powerpc/sysdev/fsl_soc.c:1109: error: implicit declaration of function of_platform_device_create

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years ago[POWERPC] Fix FSL BookE machine check reporting
Becky Bruce [Thu, 2 Aug 2007 20:37:15 +0000 (15:37 -0500)] 
[POWERPC] Fix FSL BookE machine check reporting

Reserved MCSR bits on FSL BookE parts may have spurious values
when mcheck occurs.  Mask these off when printing the MCSR to
avoid confusion.  Also, get rid of the MCSR_GL_CI bit defined
for e500 - this bit doesn't actually have any meaning.

Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>