commit a978b30af3bab0dd9af9350eeda25e76123fa28e Author: Linus Torvalds Date: Sun Mar 16 16:32:14 2008 -0700 Linux 2.6.25-rc6 commit 69d1d523cc961b6f3c2fe313694263fc81ada231 Merge: 9a9e0d6... 56ee0cf... Author: Linus Torvalds Date: Sun Mar 16 10:48:23 2008 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6 * 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6: [PARISC] make ptr_to_pide() static [PARISC] head.S: section mismatch fixes [PARISC] add back Crestone Peak cpu [PARISC] futex: special case cmpxchg NULL in kernel space [PARISC] clean up show_stack [PARISC] add pa8900 CPUs to hardware inventory [PARISC] clean up include/asm-parisc/elf.h [PARISC] move defconfig to arch/parisc/configs/ [PARISC] add back AD1889 MAINTAINERS entry [PARISC] pdc_console: fix bizarre panic on boot [PARISC] dump_stack in show_regs [PARISC] pdc_stable: fix compile errors [PARISC] remove unused pdc_iodc_printf function [PARISC] bump __NR_syscalls [PARISC] unbreak pgalloc.h [PARISC] move VMALLOC_* definitions to fixmap.h [PARISC] wire up timerfd syscalls [PARISC] remove old timerfd syscall commit 56ee0cfd095eab246c0ecd4398c4f30a546663f7 Author: FUJITA Tomonori Date: Mon Mar 10 20:43:24 2008 +0900 [PARISC] make ptr_to_pide() static Signed-off-by: FUJITA Tomonori Signed-off-by: Kyle McMartin commit 0c634cc6299b55279fa2d3a7a5964ae45a642498 Author: Helge Deller Date: Wed Dec 26 18:07:01 2007 +0100 [PARISC] head.S: section mismatch fixes - move boot_args[] into the init section - move $global$ into the read_mostly section - fix the following two section mismatches: WARNING: vmlinux.o(.text+0x9c): Section mismatch: reference to .init.text:start_kernel (between '$pgt_fill_loop' and '$is_pa20') WARNING: vmlinux.o(.text+0xa0): Section mismatch: reference to .init.text:start_kernel (between '$pgt_fill_loop' and '$is_pa20') Signed-off-by: Helge Deller SIgned-off-by: Kyle McMartin commit ab86adb41f5afd75555aad907488f8f26138c549 Author: Kyle McMartin Date: Sat Mar 1 11:40:43 2008 -0800 [PARISC] add back Crestone Peak cpu Crestone Peak Slow is the 800MHz PA-8800 cpu in the C8000. 0x88B is probably the Crestone Peak Fast. Signed-off-by: Kyle McMartin commit c20a84c91048c76c1379011c96b1a5cee5c7d9a0 Author: Kyle McMartin Date: Sat Mar 1 10:25:52 2008 -0800 [PARISC] futex: special case cmpxchg NULL in kernel space Commit a0c1e9073ef7428a14309cba010633a6cd6719ea added code to futex.c to detect whether futex_atomic_cmpxchg_inatomic was implemented at run time: + curval = cmpxchg_futex_value_locked(NULL, 0, 0); + if (curval == -EFAULT) + futex_cmpxchg_enabled = 1; This is bogus on parisc, since page zero in kernel virtual space is the gateway page for syscall entry, and should not be read from the kernel. (That, and we really don't like the kernel faulting on its own address space...) Signed-off-by: Kyle McMartin commit dc39455e7948ec9bc5f3f2dced5c2f5ac8a8dfd9 Author: Kyle McMartin Date: Sat Mar 1 10:30:19 2008 -0800 [PARISC] clean up show_stack When we show_regs, we obviously have a struct pt_regs of the calling frame. Use these in show_stack so we don't have the entire bogus call trace up to the show_stack call. Signed-off-by: Kyle McMartin commit b23f5baab393a36ea560182fc9f9005d47a15050 Author: James Bottomley Date: Wed Feb 20 15:53:02 2008 -0600 [PARISC] add pa8900 CPUs to hardware inventory This patch adds the known pa8900 CPUs to the inventory list and removes the Crestone Peak one which apparently never escaped into the wild. Signed-off-by: James Bottomley Signed-off-by: Kyle McMartin commit fd5d3f6a32984ea6cd551030b82fb44a43197ba0 Author: Randolph Chung Date: Sun Feb 24 10:44:21 2008 -0800 [PARISC] clean up include/asm-parisc/elf.h Cleanup some cruft. No functionality changes. Signed-off-by: Randolph Chung Signed-off-by: Kyle McMartin commit c04f7ae2dab9f934a41901b093b6b928f11ccd56 Author: Adrian Bunk Date: Tue Feb 26 21:55:17 2008 +0200 [PARISC] move defconfig to arch/parisc/configs/ This patch moves the default parisc defconfig to arch/parisc/configs/generic_defconfig where it belongs and selects it as the default defconfig through KBUILD_DEFCONFIG. Signed-off-by: Adrian Bunk Signed-off-by: Kyle McMartin commit 2f39d51981e20d4c81d9b2d374ae823f591c6407 Author: Thibaut VARENE Date: Wed Feb 20 21:05:56 2008 +0100 [PARISC] add back AD1889 MAINTAINERS entry Signed-off-by: Thibaut VARENE Signed-off-by: Kyle McMartin commit ef1afd4d79f0479960ff36bb5fe6ec6eba1ebff2 Author: Kyle McMartin Date: Mon Feb 18 23:34:34 2008 -0800 [PARISC] pdc_console: fix bizarre panic on boot Commit 721fdf34167580ff98263c74cead8871d76936e6 introduced a subtle bug by accidently removing the "static" from iodc_dbuf. This resulted in, what appeared to be, a trap without *current set to a task. Probably the result of a trap in real mode while calling firmware. Also do other misc clean ups. Since the only input from firmware is non blocking, share iodc_dbuf between input and output, and spinlock the only callers. Signed-off-by: Kyle McMartin commit d0347b49c9a877a33c59f80de1a9dbabd5244205 Author: Kyle McMartin Date: Mon Feb 18 23:26:46 2008 -0800 [PARISC] dump_stack in show_regs Originally, show_stack was used in BUG() output. However, a recent commit changed it to print register state (no idea what that's supposed to help, really...) and parisc was missing a backtrace because of it. Signed-off-by: Kyle McMartin commit ff451d70593040df1a7c3df80a38e9ce530e12e0 Author: Joel Soete Date: Mon Feb 18 18:26:11 2008 -0800 [PARISC] pdc_stable: fix compile errors Signed-off-by: Joel Soete Signed-off-by: Kyle McMartin commit 179183bf1fcff3830f0c05058ec0fc4d0878c67c Author: Kyle McMartin Date: Mon Feb 18 14:26:41 2008 -0800 [PARISC] remove unused pdc_iodc_printf function Signed-off-by: Kyle McMartin commit e2be75ae21ea13ca19d4f2c3ff5a8df3f0e6c38e Author: Kyle McMartin Date: Mon Feb 18 14:21:17 2008 -0800 [PARISC] bump __NR_syscalls oops, forgot this in the previous commit. Signed-off-by: Kyle McMartin commit 9aa150b8d8af2532b6ce9ea36374cb997ac55807 Author: Kyle McMartin Date: Mon Feb 18 14:16:26 2008 -0800 [PARISC] unbreak pgalloc.h Commit 2f569afd9ced9ebec9a6eb3dbf6f83429be0a7b4 broke the compile rather spectacularly. Fix code errors. Signed-off-by: Kyle McMartin commit d912e1dc8bb5718c3603beb43d0770dac0271374 Author: Kyle McMartin Date: Mon Feb 18 14:13:43 2008 -0800 [PARISC] move VMALLOC_* definitions to fixmap.h They make way more sense here, really... Signed-off-by: Kyle McMartin commit ff80c66ab637df825122558d1f3f3cbdd830f962 Author: Kyle McMartin Date: Mon Feb 18 14:00:18 2008 -0800 [PARISC] wire up timerfd syscalls Signed-off-by: Kyle McMartin commit 0cb845ec3719c4cc13cedb3f86002c37c50aff0a Author: Kyle McMartin Date: Mon Feb 18 13:57:26 2008 -0800 [PARISC] remove old timerfd syscall Signed-off-by: Kyle McMartin commit 9a9e0d685553af76cb6ae2af93cca4913e7fcd47 Author: Linus Torvalds Date: Sat Mar 15 11:53:32 2008 -0700 ACPI: Remove ACPI_CUSTOM_DSDT_INITRD option This essentially reverts commit 71fc47a9adf8ee89e5c96a47222915c5485ac437 ("ACPI: basic initramfs DSDT override support"), because the code simply isn't ready. It did ugly things to the init sequence to populate the rootfs image early, but that just ended up showing other problems with the whole approach. The fact is, the VFS layer simply isn't initialized this early, and the relevant ACPI code should either run much later, or this shouldn't be done at all. For 2.6.25, we'll just pick the latter option. We can revisit this concept later if necessary. Cc: Dave Hansen Cc: Tilman Schmidt Cc: Andrew Morton Cc: Thomas Renninger Cc: Eric Piel Cc: Len Brown Cc: Christoph Hellwig Cc: Markus Gaugusch Signed-off-by: Linus Torvalds commit ce636452343af0522d2666157dab9c2096f4f996 Author: Roel Kluin <12o3l@tiscali.nl> Date: Sat Mar 15 16:00:38 2008 +0100 tifm_sd: DATA_CARRY is not boolean in tifm_sd_transfer_data() DATA_CARRY is not boolean Signed-off-by: Roel Kluin <12o3l@tiscali.nl> Signed-off-by: Pierre Ossman Signed-off-by: Linus Torvalds commit afbf331ed1252c85753ac6790356c11e171f3d0b Merge: 6a6029b... f1dd9c3... Author: Linus Torvalds Date: Sat Mar 15 09:21:04 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: [NET]: Fix tbench regression in 2.6.25-rc1 commit 6a6029b8cefe0ca7e82f27f3904dbedba3de4e06 Author: Ingo Molnar Date: Fri Mar 14 22:17:08 2008 +0100 sched: simplify sched_slice() Use the existing calc_delta_mine() calculation for sched_slice(). This saves a divide and simplifies the code because we share it with the other /cfs_rq->load users. It also improves code size: text data bss dec hex filename 42659 2740 144 45543 b1e7 sched.o.before 42093 2740 144 44977 afb1 sched.o.after Signed-off-by: Ingo Molnar Signed-off-by: Peter Zijlstra commit e22ecef1d2658ba54ed7d3fdb5d60829fb434c23 Author: Ingo Molnar Date: Fri Mar 14 22:16:08 2008 +0100 sched: fix fair sleepers Fair sleepers need to scale their latency target down by runqueue weight. Otherwise busy systems will gain ever larger sleep bonus. Signed-off-by: Ingo Molnar Signed-off-by: Peter Zijlstra commit aa2ac25229cd4d0280f6174c42712744ad61b140 Author: Peter Zijlstra Date: Fri Mar 14 21:12:12 2008 +0100 sched: fix overload performance: buddy wakeups Currently we schedule to the leftmost task in the runqueue. When the runtimes are very short because of some server/client ping-pong, especially in over-saturated workloads, this will cycle through all tasks trashing the cache. Reduce cache trashing by keeping dependent tasks together by running newly woken tasks first. However, by not running the leftmost task first we could starve tasks because the wakee can gain unlimited runtime. Therefore we only run the wakee if its within a small (wakeup_granularity) window of the leftmost task. This preserves fairness, but does alternate server/client task groups. Signed-off-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 27d117266097101dcf79c4576903cdcdd0eabffc Author: Ingo Molnar Date: Fri Mar 14 22:20:01 2008 +0100 sched: fix calc_delta_mine() lw->weight can be 0 for a short time during bootup. Signed-off-by: Ingo Molnar Signed-off-by: Peter Zijlstra commit e89996ae3f9e88d4fd75751a15c10b19d197e702 Author: Ingo Molnar Date: Fri Mar 14 23:48:28 2008 +0100 sched: fix update_load_add()/sub() Clear the cached inverse value when updating load. This is needed for calc_delta_mine() to work correctly when using the rq load. Signed-off-by: Ingo Molnar Signed-off-by: Peter Zijlstra commit 3fe69747dab906cd6a8523230276a9820d6a514f Author: Peter Zijlstra Date: Fri Mar 14 20:55:51 2008 +0100 sched: min_vruntime fix Current min_vruntime tracking is incorrect and will cause serious problems when we don't run the leftmost task for some reason. min_vruntime does two things; 1) it's used to determine a forward direction when the u64 vruntime wraps, 2) it's used to track the leftmost vruntime to position newly enqueued tasks from. The current logic advances min_vruntime whenever the current task's vruntime advance. Because the current task may pass the leftmost task still waiting we're failing the second goal. This causes new tasks to be placed too far ahead and thus penalizes their runtime. Fix this by making min_vruntime the min_vruntime of the waiting tasks by tracking it in enqueue/dequeue, and compare against current's vruntime to obtain the absolute minimum when placing new tasks. Signed-off-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 0e1f34833bd9170ccc93ab759e48e695917fa48f Author: Hiroshi Shimamoto Date: Mon Mar 10 11:01:20 2008 -0700 sched: fix race in schedule() Fix a hard to trigger crash seen in the -rt kernel that also affects the vanilla scheduler. There is a race condition between schedule() and some dequeue/enqueue functions; rt_mutex_setprio(), __setscheduler() and sched_move_task(). When scheduling to idle, idle_balance() is called to pull tasks from other busy processor. It might drop the rq lock. It means that those 3 functions encounter on_rq=0 and running=1. The current task should be put when running. Here is a possible scenario: CPU0 CPU1 | schedule() | ->deactivate_task() | ->idle_balance() | -->load_balance_newidle() rt_mutex_setprio() | | --->double_lock_balance() *get lock *rel lock * on_rq=0, ruuning=1 | * sched_class is changed | *rel lock *get lock : | : ->put_prev_task_rt() ->pick_next_task_fair() => panic The current process of CPU1(P1) is scheduling. Deactivated P1, and the scheduler looks for another process on other CPU's runqueue because CPU1 will be idle. idle_balance(), load_balance_newidle() and double_lock_balance() are called and double_lock_balance() could drop the rq lock. On the other hand, CPU0 is trying to boost the priority of P1. The result of boosting only P1's prio and sched_class are changed to RT. The sched entities of P1 and P1's group are never put. It makes cfs_rq invalid, because the cfs_rq has curr and no leaf, but pick_next_task_fair() is called, then the kernel panics. Signed-off-by: Hiroshi Shimamoto Signed-off-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 4faa8496650f9417189dacce8f933e8ec61dc032 Merge: b663c6f... f5101d5... Author: Linus Torvalds Date: Fri Mar 14 16:49:41 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6: firewire: fw-ohci: shut up false compiler warning on PPC32 firewire: fw-ohci: use dma_alloc_coherent for ar_buffer ieee1394: sbp2: fix for SYM13FW500 bridge (Datafab disk) firewire: fw-sbp2: fix for SYM13FW500 bridge (Datafab disk) firewire: update Kconfig help text firewire: warn on fatal condition in topology code firewire: fw-sbp2: set single-phase retry_limit firewire: fw-ohci: Apple UniNorth 1st generation support firewire: fw-ohci: PPC PMac platform code firewire: endianess annotations firewire: endianess fix commit b663c6fd98c9cf586279db03cec3257c413efd00 Author: J. Bruce Fields Date: Fri Mar 14 19:37:11 2008 -0400 nfsd: fix oops on access from high-numbered ports This bug was always here, but before my commit 6fa02839bf9412e18e77 ("recheck for secure ports in fh_verify"), it could only be triggered by failure of a kmalloc(). After that commit it could be triggered by a client making a request from a non-reserved port for access to an export marked "secure". (Exports are "secure" by default.) The result is a struct svc_export with a reference count one too low, resulting in likely oopses next time the export is accessed. The reference counting here is not straightforward; a later patch will clean up fh_verify(). Thanks to Lukas Hejtmanek for the bug report and followup. Signed-off-by: J. Bruce Fields Cc: Lukas Hejtmanek Signed-off-by: Linus Torvalds commit 9b89ca7a3847c0d5b1e86e83f4860a866f28a89b Author: Marc Dionne Date: Fri Mar 14 13:11:29 2008 +0000 struct export_operations: adjust comments to match current members The comments in the definition of struct export_operations don't match the current members. Add a comment for the 2 new functions and remove 2 comments for unused ones. Signed-off-by: Marc Dionne Acked-by: David Howells Acked-by: Christoph Hellwig Signed-off-by: Linus Torvalds commit f5101d58afc528c1d0c863fe03cd2d607766c4a1 Author: Stefan Richter Date: Fri Mar 14 00:27:49 2008 +0100 firewire: fw-ohci: shut up false compiler warning on PPC32 Shut up "may be used uninitialised in this function" warnings due to PPC32's implementation of dma_alloc_coherent(). Signed-off-by: Stefan Richter commit bde1709aaa98f5004ab1580842c422be18eb4bc3 Author: Jarod Wilson Date: Wed Mar 12 17:43:26 2008 -0400 firewire: fw-ohci: use dma_alloc_coherent for ar_buffer Currently, we do nothing to guarantee we have a consistent DMA buffer for asynchronous receive packets. Rather than doing several sync's following a dma_map_single() to get consistent buffers, just switch to using dma_alloc_coherent(). Resolves constant buffer failures on my own x86_64 laptop w/4GB of RAM and likely to fix a number of other failures witnessed on x86_64 systems with 4GB of RAM or more. Signed-off-by: Jarod Wilson Signed-off-by: Stefan Richter commit 6e45ef4c7aeefbf97df748866cd1b24f73b86160 Author: Stefan Richter Date: Tue Mar 11 22:32:52 2008 +0100 ieee1394: sbp2: fix for SYM13FW500 bridge (Datafab disk) Fix I/O errors due to SYM13FW500's inability to handle larger request sizes. Reported by Piergiorgio Sartor for firewire-sbp2 in https://bugzilla.redhat.com/show_bug.cgi?id=436879 This fix is necessary because sbp2's default request size limit has been lifted since 2.6.25-rc1. Signed-off-by: Stefan Richter Signed-off-by: Jarod Wilson commit 2aa9ff7fc5bc41d4b77c2da02086259a86f3d472 Author: Stefan Richter Date: Tue Mar 11 22:32:03 2008 +0100 firewire: fw-sbp2: fix for SYM13FW500 bridge (Datafab disk) Fix I/O errors due to SYM13FW500's inability to handle larger request sizes. Reported by Piergiorgio Sartor in https://bugzilla.redhat.com/show_bug.cgi?id=436879 Signed-off-by: Stefan Richter Signed-off-by: Jarod Wilson commit 0a8da30dc7bd6828f42d9f0585367731f634a0c8 Author: Stefan Richter Date: Sun Mar 9 00:27:20 2008 +0100 firewire: update Kconfig help text Remove some less necessary information, point out that video1394 and dv1394 should be blacklisted along with ohci1394. Signed-off-by: Stefan Richter commit a2cdebe33f4c40a1bc7f66522303df89d5026cb4 Author: Stefan Richter Date: Sat Mar 8 22:38:16 2008 +0100 firewire: warn on fatal condition in topology code If this ever happens to anybody, we want to have it in his log. Signed-off-by: Stefan Richter commit 51f9dbef5be41f3ff6000c874741a3a357f9bad7 Author: Jarod Wilson Date: Fri Mar 7 01:43:01 2008 -0500 firewire: fw-sbp2: set single-phase retry_limit Per the SBP-2 specification, all SBP-2 target devices must have a BUSY_TIMEOUT register. Per the 1394-1995 specification, the retry_limt portion of the register should be set to 0x0 initially, and set on the target by a logged in initiator (i.e., a Linux host w/firewire controller(s)). Well, as it turns out, lots of devices these days have actually moved on to starting to implement SBP-3 compliance, which says that retry_limit should default to 0xf instead (yes, SBP-3 stomps directly on 1394-1995, oops). Prior to this change, the firewire driver stack didn't touch retry_limit, and any SBP-3 compliant device worked fine, while SBP-2 compliant ones were unable to retransmit when the host returned an ack_busy_X, which resulted in stalled out I/O, eventually causing the SCSI layer to give up and offline the device. The simple fix is for us to set retry_limit to 0xf in the register for all devices (which actually matches what the old ieee1394 stack did). Prior to this change, a hard disk behind an SBP-2 Prolific PL-3507 bridge chip would routinely encounter buffer I/O errors and wind up offlined by the SCSI layer. With this change, I've encountered zero I/O failures moving tens of GB of data around. Signed-off-by: Jarod Wilson Signed-off-by: Stefan Richter commit 11bf20ad028880a56689f086bfbabfd88b2af38b Author: Stefan Richter Date: Sat Mar 1 02:47:15 2008 +0100 firewire: fw-ohci: Apple UniNorth 1st generation support Mostly copied from ohci1394.c. Necessary for some older Macs, e.g. PowerBook G3 Pismo and early PowerBook G4 Titanium. Signed-off-by: Stefan Richter commit ea8d006b91ac58ec5a0862d09e0b629db399517f Author: Stefan Richter Date: Sat Mar 1 02:42:56 2008 +0100 firewire: fw-ohci: PPC PMac platform code Copied from ohci1394.c. This code is necessary to prevent machine check exceptions when reloading or resuming the driver. Tested on a 1st generation PowerBook G4 Titanium, which also needs the pci_probe() hunk. Signed-off-by: Stefan Richter I was able to reproduce the system exception on resume with a 3rd-gen Titanium PowerBook G4 667, and this patch does let the system resume successfully now. Not quite clear if there was possibly an updated version coming using pci_enable_device() instead of the pair of pmac_call_feature() calls, but either way, this is a definite must-have, at least for older ppc macs -- my Aluminum PowerBook G4/1.67 suspends and resumes without this patch just fine. Signed-off-by: Jarod Wilson Acked-by: Benjamin Herrenschmidt commit efbf390a2d940315efff174455243e61f23c03b9 Author: Stefan Richter Date: Sat Feb 23 12:24:57 2008 +0100 firewire: endianess annotations Kills warnings from 'make C=1 CHECKFLAGS="-D__CHECK_ENDIAN__" modules': drivers/firewire/fw-transaction.c:771:10: warning: incorrect type in assignment (different base types) drivers/firewire/fw-transaction.c:771:10: expected unsigned int [unsigned] [usertype] drivers/firewire/fw-transaction.c:771:10: got restricted unsigned int [usertype] drivers/firewire/fw-transaction.h:93:10: warning: incorrect type in assignment (different base types) drivers/firewire/fw-transaction.h:93:10: expected unsigned int [unsigned] [usertype] drivers/firewire/fw-transaction.h:93:10: got restricted unsigned int [usertype] drivers/firewire/fw-ohci.c:1490:8: warning: restricted degrades to integer drivers/firewire/fw-ohci.c:1490:35: warning: restricted degrades to integer drivers/firewire/fw-ohci.c:1516:5: warning: cast to restricted type Signed-off-by: Stefan Richter Signed-off-by: Jarod Wilson commit 25df287dc7434edf8dda10ce85e43f88e834a494 Author: Stefan Richter Date: Sat Feb 23 12:24:17 2008 +0100 firewire: endianess fix The generation of incoming requests was filled in in wrong byte order on machines with big endian CPU. Signed-off-by: Stefan Richter Signed-off-by: Jarod Wilson commit dba92d3bc49c036056a48661d2d8fefe4c78375a Merge: b1881fb... 10313cb... Author: Linus Torvalds Date: Thu Mar 13 13:25:32 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: IPoIB: Allocate priv->tx_ring with vmalloc() IPoIB/cm: Set tx_wr.num_sge in connected mode post_send() IPoIB: Don't drop multicast sends when they can be queued IB/ipath: Reset the retry counter for RDMA_READ_RESPONSE_MIDDLE packets IB/ipath: Fix error completion put on send CQ instead of recv CQ IB/ipath: Fix RC QP initialization IB/ipath: Fix potentially wrong RNR retry counter returned in ipath_query_qp() IB/ipath: Fix IB compliance problems with link state vs physical state commit b1881fb148a67a5b694ac9701672ce6b359abfa4 Merge: ebe168d... 3280ab3... Author: Linus Torvalds Date: Thu Mar 13 13:17:25 2008 -0700 Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx: async_tx: checkpatch says s/__FUNCTION__/__func__/g iop-adma.c: replace remaining __FUNCTION__ occurrences fsldma: Add a completed cookie updated action in DMA finish interrupt. fsldma: Add device_prep_dma_interrupt support to fsldma.c dmaengine: Fix a bug about BUG_ON() on DMA engine capability DMA_INTERRUPT. fsldma: Fix fsldma.c warning messages when it's compiled under PPC64. commit ebe168d52c6255cfaf701b488e9e9ed0f548da19 Merge: b15a389... cc74d96... Author: Linus Torvalds Date: Thu Mar 13 13:16:22 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/pci-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/pci-2.6: PCI: fix issue with busses registering multiple times in sysfs commit b15a3891c916f32a29832886a053a48be2741d4d Author: Jan Beulich Date: Thu Mar 13 09:13:30 2008 +0000 avoid endless loops in lib/swiotlb.c Commit 681cc5cd3efbeafca6386114070e0bfb5012e249 ("iommu sg merging: swiotlb: respect the segment boundary limits") introduced two possibilities for entering an endless loop in lib/swiotlb.c: - if max_slots is zero (possible if mask is ~0UL) - if the number of slots requested fits into a swiotlb segment, but is too large for the part of a segment which remains after considering offset_slots This fixes them Signed-off-by: Jan Beulich Cc: FUJITA Tomonori Cc: Andrew Morton Signed-off-by: Linus Torvalds commit 96e31022a1b6e7cb173cbb3dce1fde7ba548860a Merge: f2005e1... 29ea517... Author: Linus Torvalds Date: Thu Mar 13 13:13:47 2008 -0700 Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (32 commits) ACPI: thermal: show temperature in millidegree Celsius thermal: fix generic thermal I/F for hwmon acer-wmi: build depends on i8042 documentation: Move power-related files to Documentation/power/ ACPI: buffer array too short in drivers/acpi/system.c acer-wmi: Add DMI quirk for mail LED support on Acer Aspire 3610/ 5610 acer-wmi: Fix DSDT path in documentation acer-wmi: Make device detection error messages more descriptive laptops: move laptop-mode.txt to Documentation/laptops/ ACPICA: Warn if packages with invalid references are evaluated ACPI: add _PRT quirks to work around broken firmware Hibernation: Fix mark_nosave_pages() ACPI: Ignore _BQC object when registering backlight device ACPI: WMI: Clean up handling of spec violating data blocks acer-wmi: Don't warn if mail LED cannot be detected acer-wmi: Rename mail LED correctly & remove hardcoded colour ACPI: use ACPI_DEBUG_PRINT instead of printk in acpi_processor_hotplug_notify() ACPI: button: make real parent for input devices in device tree toshiba_acpi: Enable autoloading ACPI: EC: Handle IRQ storm on Acer laptops ... commit f2005e1777614b65d1970924ca1b61e4caccb0d3 Author: Jiri Slaby Date: Thu Mar 13 12:32:43 2008 -0700 block: floppy: fix rmmod lockup Floppy rmmod locks up when no such hardware was initialized, since there is nobody to wake the remove code up. Remove the completion, because release is called during platform_unregister anyway. Signed-off-by: Jiri Slaby Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bd0e88e5174035d69204636289a21dc4c14238ec Author: Randy Dunlap Date: Thu Mar 13 12:32:43 2008 -0700 kernel-doc: set verbose mode via environment Honor the environment variable "KBUILD_VERBOSE=1" (as set by make V=1) to enable verbose mode in scripts/kernel-doc. Useful for getting more info and warnings from kernel-doc. Signed-off-by: Randy Dunlap Cc: Sam Ravnborg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fd28841d2d0b1468b03288b331692769ad024b5e Author: FUJITA Tomonori Date: Thu Mar 13 12:32:40 2008 -0700 alpha: use iommu_is_span_boundary helper function iommu_is_span_boundary in lib/iommu-helper.c was exported for PARISC IOMMUs (commit 3715863aa142c4f4c5208f5f3e5e9bac06006d2f). Alpha's IOMMU can use it. This removes the check on the boundary size alignment because iommu_is_span_boundary does. Signed-off-by: FUJITA Tomonori Cc: Richard Henderson Acked-by: Ivan Kokshaysky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9efda797d60adbbe77aaf33cda0dfee161ac712c Author: Jiri Slaby Date: Thu Mar 13 12:32:39 2008 -0700 char: riscom, fix rc_board indexing In riscom8_init_module, rc_board should be indexed by i, not by 0, otherwise the loop is useless. Signed-off-by: Jiri Slaby Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2cfb8ce8c87802181ade74f5dadb3dded9bb4c7e Author: Jan Nikitenko Date: Thu Mar 13 12:32:39 2008 -0700 spi_bitbang: short transfer status fix SPI controller drivers return number of bytes actually transfered from bitbang->txrx_bufs() method. This updates handling of short transfers (where the transfer size is less than requested): - Even zero byte short transfers should report errors; - Include short transfers in the total of transferred bytes; - Use EREMOTEIO (like USB) not EMSGSIZE to report short transfers Short transfers don't normally mean invalid message sizes, but if the underlying controller driver needs to use EMSGSIZE it can still do so. [db: fix two more minor issues] Signed-off-by: Jan Nikitenko Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 40369e1cdb71287662213ae214842899e77a0544 Author: Jan Nikitenko Date: Thu Mar 13 12:32:38 2008 -0700 au1550_spi: fix prototype of irq handler Remove struct pt_regs *regs from prototype of au1550_spi_irq handler to avoid warning in request_irq(). Also fix comment type leadin. Signed-off-by: Jan Nikitenko Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 12d48739d0b5d96efe6b7d26107f5572c6215f4a Author: Yoshinori Sato Date: Thu Mar 13 12:32:37 2008 -0700 h8300: fix recent uaccess breakage Al Viro wrote: > > After that commit in asm-h8300/uaccess.h we have > > #define get_user(x, ptr) \ > ({ \ > int __gu_err = 0; \ > uint32_t __gu_val = 0; \ > ^^^^^^^^^^^^^^^^^ > switch (sizeof(*(ptr))) { \ > case 1: \ > case 2: \ > case 4: \ > __gu_val = *(ptr); \ > break; \ > case 8: \ > memcpy(&__gu_val, ptr, sizeof (*(ptr))); \ > ^^^^^^^^^^^^^^^^ > > which, of course, is FUBAR whenever we actually hit that case - memcpy of > 8 bytes into uint32_t is obviously wrong. Why don't we simply do Cc: Al Viro Signed-off-by: Yoshinori Sato Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fb39380b8d683b55630ba5ba381f4e43e417420e Author: Marcelo Tosatti Date: Thu Mar 13 12:32:35 2008 -0700 pagemap: proper read error handling Fix pagemap_read() error handling by releasing acquired resources and checking for get_user_pages() partial failure. Signed-off-by: Marcelo Tosatti Acked-by: Matt Mackall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b500ce8d24d1f14426643da5f6fada28c1f60533 Author: Ahmed S. Darwish Date: Thu Mar 13 12:32:34 2008 -0700 smackfs: do not trust `count' in inodes write()s Smackfs write() implementation does not put a higher bound on the number of bytes to copy from user-space. This may lead to a DOS attack if a malicious `count' field is given. Assure that given `count' is exactly the length needed for a /smack/load rule. In case of /smack/cipso where the length is relative, assure that `count' does not exceed the size needed for a buffer representing maximum possible number of CIPSO 2.2 categories. Signed-off-by: Ahmed S. Darwish Acked-by: Casey Schaufler Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3280ab3e8815d60cea483d49b21261972e2785d6 Author: Dan Williams Date: Thu Mar 13 17:45:28 2008 -0700 async_tx: checkpatch says s/__FUNCTION__/__func__/g Signed-off-by: Dan Williams commit 3d9b525b69bc3302d8355e5f5cf081a856c211e0 Author: Harvey Harrison Date: Thu Mar 13 17:45:28 2008 -0700 iop-adma.c: replace remaining __FUNCTION__ occurrences __FUNCTION__ is gcc-specific, use __func__ Signed-off-by: Harvey Harrison Signed-off-by: Dan Williams commit 9c98718e7371fa781043d5a2e70cecebec048091 Author: Zhang Wei Date: Thu Mar 13 17:45:28 2008 -0700 fsldma: Add a completed cookie updated action in DMA finish interrupt. The patch 'fsldma: do not cleanup descriptors in hardirq context' (commit 222ccf9ab838a1ca7163969fabd2cddc10403fb5) removed descriptors cleanup function to tasklet but the completed cookie do not updated. Thus, the DMA controller will get lots of duplicated transfer interrupts. Just make a completed cookie update in interrupt handler. And keep other cleanup jobs in tasklet function. Tested-by: Sebastian Siewior Signed-off-by: Zhang Wei Signed-off-by: Dan Williams commit 2187c269ad29510f1d65ec684133d1d3426d0eed Author: Zhang Wei Date: Thu Mar 13 17:45:28 2008 -0700 fsldma: Add device_prep_dma_interrupt support to fsldma.c This is a bug that I assigned DMA_INTERRUPT capability to fsldma but missing device_prep_dma_interrupt function. For a bug in dmaengine.c the driver passed BUG_ON() checking. The patch fixes it. Signed-off-by: Zhang Wei Signed-off-by: Dan Williams commit 9b941c6660bae673e27c207f1d20d98ef8ecd450 Author: Zhang Wei Date: Thu Mar 13 17:45:28 2008 -0700 dmaengine: Fix a bug about BUG_ON() on DMA engine capability DMA_INTERRUPT. The device->device_prep_dma_interrupt function is used by DMA_INTERRUPT capability, not DMA_ZERO_SUM. Signed-off-by: Zhang Wei Acked-by: Maciej Sosnowski Signed-off-by: Dan Williams commit 56822843ff99c88c778a614851328fcbb1503d10 Author: Zhang Wei Date: Thu Mar 13 10:45:27 2008 -0700 fsldma: Fix fsldma.c warning messages when it's compiled under PPC64. There are warning messages reported by Stephen Rothwell with ARCH=powerpc allmodconfig build: drivers/dma/fsldma.c: In function 'fsl_dma_prep_memcpy': drivers/dma/fsldma.c:439: warning: comparison of distinct pointer types lacks a cast drivers/dma/fsldma.c: In function 'fsl_chan_xfer_ld_queue': drivers/dma/fsldma.c:584: warning: format '%016llx' expects type 'long long unsigned int', but argument 4 has type 'dma_addr_t' drivers/dma/fsldma.c: In function 'fsl_dma_chan_do_interrupt': drivers/dma/fsldma.c:668: warning: format '%x' expects type 'unsigned int', but argument 5 has type 'dma_addr_t' drivers/dma/fsldma.c:684: warning: format '%016llx' expects type 'long long unsigned int', but argument 4 has type 'dma_addr_t' drivers/dma/fsldma.c:684: warning: format '%016llx' expects type 'long long unsigned int', but argument 5 has type 'dma_addr_t' drivers/dma/fsldma.c:701: warning: format '%02x' expects type 'unsigned int', but argument 4 has type 'dma_addr_t' drivers/dma/fsldma.c: In function 'fsl_dma_self_test': drivers/dma/fsldma.c:840: warning: format '%d' expects type 'int', but argument 5 has type 'size_t' drivers/dma/fsldma.c: In function 'of_fsl_dma_probe': drivers/dma/fsldma.c:1010: warning: format '%08x' expects type 'unsigned int', but argument 5 has type 'resource_size_t' This patch fixed the above warning messages. Signed-off-by: Zhang Wei Signed-off-by: Dan Williams commit cc74d96f47b0d916840f92092595e3be9731e047 Author: Greg Kroah-Hartman Date: Wed Mar 12 21:48:03 2008 -0700 PCI: fix issue with busses registering multiple times in sysfs PCI busses can be registered multiple times, so we need to detect if we have registered our bus structure in sysfs already. If so, don't do it again. Thanks to Guennadi Liakhovetski for reporting the problem, and to Linus for poking me to get me to believe that it was a real problem. Cc: Linus Torvalds Cc: Guennadi Liakhovetski Signed-off-by: Greg Kroah-Hartman commit 29ea5171cbd08a7ef37e543cbf02447033f0e289 Merge: b4de123... 5347112... Author: Len Brown Date: Thu Mar 13 01:59:53 2008 -0400 Merge branches 'release' and 'doc' into release commit b4de123a0bc4a3f0c90899864d51299628729952 Merge: c523aef... 3b5fee5... d399d13... 07d31ee... Author: Len Brown Date: Thu Mar 13 01:59:52 2008 -0400 Merge branches 'release', 'ejd', 'sony' and 'wmi' into release commit c523aef0f7284970463ebd77a54bca9069711d4a Merge: 160ff06... 3b34e52... c8dc9de... b5678a3... 7ce9573... 4db42c5... Author: Len Brown Date: Thu Mar 13 01:59:49 2008 -0400 Merge branches 'release', 'button-sysfs', 'misc', 'mismatch', 'randconfig' and 'toshiba' into release commit 160ff06b1848a01913611950b05963e3315f759b Merge: 1ca721c... 5e01276... Author: Len Brown Date: Thu Mar 13 01:59:46 2008 -0400 Merge branches 'release' and 'thermal' into release commit 1ca721cdb748ba72c47e9c661d54696db3cde796 Merge: 93d7446... d0ce46f... a82f711... 2c81ce4... 4af8e10... c8d16e2... 391df5d... 7c0ea45... Author: Len Brown Date: Thu Mar 13 01:59:45 2008 -0400 Merge branches 'release', 'bugzilla-8570', 'bugzilla-9966', 'bugzilla-9998', 'bugzilla-10100', 'bugzilla-10132', 'bugzilla-10138' and 'bugzilla-10206' into release commit f1dd9c379cac7d5a76259e7dffcd5f8edc697d17 Author: Zhang Yanmin Date: Wed Mar 12 22:52:37 2008 -0700 [NET]: Fix tbench regression in 2.6.25-rc1 Comparing with kernel 2.6.24, tbench result has regression with 2.6.25-rc1. 1) On 2 quad-core processor stoakley: 4%. 2) On 4 quad-core processor tigerton: more than 30%. bisect located below patch. b4ce92775c2e7ff9cf79cca4e0a19c8c5fd6287b is first bad commit commit b4ce92775c2e7ff9cf79cca4e0a19c8c5fd6287b Author: Herbert Xu Date: Tue Nov 13 21:33:32 2007 -0800 [IPV6]: Move nfheader_len into rt6_info The dst member nfheader_len is only used by IPv6. It's also currently creating a rather ugly alignment hole in struct dst. Therefore this patch moves it from there into struct rt6_info. Above patch changes the cache line alignment, especially member __refcnt. I did a testing by adding 2 unsigned long pading before lastuse, so the 3 members, lastuse/__refcnt/__use, are moved to next cache line. The performance is recovered. I created a patch to rearrange the members in struct dst_entry. With Eric and Valdis Kletnieks's suggestion, I made finer arrangement. 1) Move tclassid under ops in case CONFIG_NET_CLS_ROUTE=y. So sizeof(dst_entry)=200 no matter if CONFIG_NET_CLS_ROUTE=y/n. I tested many patches on my 16-core tigerton by moving tclassid to different place. It looks like tclassid could also have impact on performance. If moving tclassid before metrics, or just don't move tclassid, the performance isn't good. So I move it behind metrics. 2) Add comments before __refcnt. On 16-core tigerton: If CONFIG_NET_CLS_ROUTE=y, the result with below patch is about 18% better than the one without the patch; If CONFIG_NET_CLS_ROUTE=n, the result with below patch is about 30% better than the one without the patch. With 32bit 2.6.25-rc1 on 8-core stoakley, the new patch doesn't introduce regression. Thank Eric, Valdis, and David! Signed-off-by: Zhang Yanmin Acked-by: Eric Dumazet Signed-off-by: David S. Miller commit 5e012760dfd5ec24c41b9eab9e654a88360bb026 Author: Zhang, Rui Date: Thu Feb 28 07:51:30 2008 +0800 ACPI: thermal: show temperature in millidegree Celsius as now required by the generic thermal I/F Signed-off-by: Zhang Rui Acked-by: Jean Delvare Signed-off-by: Len Brown commit 3152fb9f11cdd2fd8688c2c5cb805e5c09b53dd9 Author: Zhang, Rui Date: Wed Feb 27 08:37:50 2008 +0800 thermal: fix generic thermal I/F for hwmon Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit 07d31ee5597dadfd621840e2404b086fa94ef0c6 Author: Jiri Kosina Date: Mon Mar 10 22:29:37 2008 +0100 acer-wmi: build depends on i8042 Signed-off-by: Jiri Kosina Acked-by: Randy Dunlap Signed-off-by: Carlos Corbacho Signed-off-by: Len Brown commit 93d74463d018ddf05c169ad399e62e90e0f82fc0 Merge: c463be3... 4c91363... Author: Linus Torvalds Date: Wed Mar 12 17:56:37 2008 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-arm * master.kernel.org:/home/rmk/linux-2.6-arm: (26 commits) [ARM] 4856/1: Orion: initialise the sixth PCIe MBUS mapping window as well [ARM] 4855/1: Orion: use correct ethernet unit address range [ARM] 4853/1: include uImage target in make help [ARM] 4851/1: ns9xxx: fix size of gpiores [ARM] AT91: correct at91sam9263ek LCD power gpio pin [ARM] replace remaining __FUNCTION__ occurrences [ARM] 4850/1: include generic pgtable.h for !CONFIG_MMU case [ARM] 4849/1: move ATAGS asm definitions [ARM] 4848/1: at91: remove false lockdep warnings [ARM] 4847/1: kprobes: fix compilation with CONFIG_DEBUG_FS=y [ARM] include/asm-arm - use angle brackets for includes [ARM] 4845/1: Orion: Ignore memory tags with invalid data ARM: OMAP2: Register the L4 io bus to boot OMAP2 ARM: OMAP1: Compile in other 16xx boards to OSK defconfig ARM: OMAP1: Refresh H2 defconfig ARM: OMAP1: Refresh OSK defconfig ARM: OMAP: gpio lockdep updates ARM: OMAP1: omap1/pm.c build fix ARM: OMAP1: omap h2 regression fix ARM: OMAP1: Fix compile for boards depending on old gpio expander ... commit c463be3520065ef8c05e3cbdf946c69604e91ceb Merge: 609eb39... 31bf111... Author: Linus Torvalds Date: Wed Mar 12 17:00:35 2008 -0700 Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: (22 commits) [POWERPC] Fix large hash table allocation on Cell blades [POWERPC] Export empty_zero_page [POWERPC] Fix viodasd driver with scatterlist debug [POWERPC] Fix arch/powerpc/platforms/powermac/pic.c when !CONFIG_ADB_PMU [POWERPC] Fix drivers/macintosh/mediabay.c when !CONFIG_ADB_PMU [POWERPC] Fix undefined pmu_sys_suspended compilation error [POWERPC] Fix build of modular drivers/macintosh/apm_emu.c [POWERPC] Fix sleep on some powerbooks [POWERPC] Fix bogus test for unassigned PCI resources [POWERPC] Fix zImage-dtb.initrd build error [POWERPC] Add __ucmpdi2 for 64-bit comparisons in 32-bit kernels [POWERPC] spufs: fix rescheduling of non-runnable contexts [POWERPC] spufs: don't (ab)use SCHED_IDLE [POWERPC] QE: Make qe_get_firmware_info reentrant [POWERPC] 83xx: Make 83xx perfmon support selectable [PPC] 8xx: swap bug-fix [POWERPC] 85xx: sbc8548 - Fix incorrect PCI-X and PCI interrupt map [POWERPC] QE: Fix QE firmware uploading limit [POWERPC] 8xx: Fix wrapper platform for adder875, and combine defconfigs. [POWERPC] 8xx: fix swap ... commit 31bf111944e31b64a7b692f9d660f71c5ff3d419 Author: Michael Ellerman Date: Wed Mar 12 18:03:24 2008 +1100 [POWERPC] Fix large hash table allocation on Cell blades My recent hack to allocate the hash table under 1GB on cell was poorly tested, *cough*. It turns out on blades with large amounts of memory we fail to allocate the hash table at all. This is because RTAS has been instantiated just below 768MB, and 0-x MB are used by the kernel, leaving no areas that are both large enough and also naturally-aligned. For the cell IOMMU hack the page tables must be under 2GB, so use that as the limit instead. This has been tested on real hardware and boots happily. Signed-off-by: Michael Ellerman Signed-off-by: Paul Mackerras commit 07dc42f632e335a03c0e780805dc9dc141f83e63 Author: Theodore Ts'o Date: Thu Mar 13 07:24:31 2008 +1100 [POWERPC] Export empty_zero_page Once again, this time with feeling.... - Ted >From c91cfaabc17f8a53807a2f31f067a732e34a1550 Mon Sep 17 00:00:00 2001 From: Theodore Ts'o Date: Wed, 12 Mar 2008 11:50:39 -0400 Subject: Export empty_zero_page The empty_zero_page symbol is exported by most other architectures (s390, ia64, x86, um), and an upcoming ext4 patch needs it because ZERO_PAGE() references empty_zero_page, and we need it to zero out an unitialized extents in ext4 files. Signed-off-by: "Theodore Ts'o" Signed-off-by: Paul Mackerras commit 25c0a7b83297f10186a7a1ee5c563f005dfabc44 Author: Benjamin Herrenschmidt Date: Wed Mar 12 17:23:56 2008 +1100 [POWERPC] Fix viodasd driver with scatterlist debug The iSeries viodasd drivers does some very strange things with scatterlists, one of these causing a BUG_ON to trigger when scatterlist debugging is enabled due to initializing the scatterlist with memset instead of sg_init_table(). This fixes it by using sg_init_table(). The rest of the stuff it does to that poor list is still pretty awful but it will work. I may look into fixing things in a nicer way some other time. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 98cddbfb3218925c35697562f7d9df692bf6a436 Author: Tony Breeds Date: Wed Mar 12 10:48:48 2008 +1100 [POWERPC] Fix arch/powerpc/platforms/powermac/pic.c when !CONFIG_ADB_PMU When building arch/powerpc/platforms/powermac/pic.c when !CONFIG_ADB_PMU we get the following warnings: arch/powerpc/platforms/powermac/pic.c: In function 'pmacpic_find_viaint': arch/powerpc/platforms/powermac/pic.c:623: warning: label 'not_found' defined but not used This fixes it. Signed-off-by: Tony Breeds Signed-off-by: Paul Mackerras commit a99d9a6ebdf8328d5c61ca9f1038f4815e25720e Author: Tony Breeds Date: Wed Mar 12 10:48:48 2008 +1100 [POWERPC] Fix drivers/macintosh/mediabay.c when !CONFIG_ADB_PMU When building drivers/macintosh/mediabay.c if CONFIG_ADB_PMU isn't defined we get: drivers/built-in.o: In function `media_bay_step': mediabay.c:(.text+0x92b84): undefined reference to `pmu_suspend' mediabay.c:(.text+0x92c08): undefined reference to `pmu_resume' Create empty place holders in that scenario. Signed-off-by: Tony Breeds Signed-off-by: Paul Mackerras commit 07c941d00087581c9553661c2c4fb593da37f525 Author: Tony Breeds Date: Wed Mar 12 10:48:48 2008 +1100 [POWERPC] Fix undefined pmu_sys_suspended compilation error pmu_sys_suspended is declared extern when: defined(CONFIG_PM_SLEEP) && defined(CONFIG_PPC32) but only defined when: defined(CONFIG_SUSPEND) && defined(CONFIG_PPC32) which is wrong. Let's fix that. Signed-off-by: Tony Breeds Signed-off-by: Paul Mackerras commit 620a245978d007279bc5c7c64e15f5f63af9af98 Author: Guido Guenther Date: Sun Mar 9 06:20:17 2008 +1100 [POWERPC] Fix build of modular drivers/macintosh/apm_emu.c Currently, if drivers/macintosh/apm_emu is a module and the config doesn't have CONFIG_SUSPEND we get: ERROR: "pmu_batteries" [drivers/macintosh/apm_emu.ko] undefined! ERROR: "pmu_battery_count" [drivers/macintosh/apm_emu.ko] undefined! ERROR: "pmu_power_flags" [drivers/macintosh/apm_emu.ko] undefined! on PPC32. The variables aren't wrapped in '#if defined(CONFIG_SUSPEND)' so we probably shouldn't wrap the exports either. This removes the CONFIG_SUSPEND part of the export, which fixes compilation on ppc32. Signed-off-by: Guido Guenther Signed-off-by: Paul Mackerras commit fa19d63488bd108a308f575064779bb69123efbc Author: Benjamin Herrenschmidt Date: Mon Mar 3 17:27:46 2008 +1100 [POWERPC] Fix sleep on some powerbooks The PMU backlight code would kick in during sleep/resume even on machines that use a different backlight method. This breaks sleep on some PowerBooks. This fixes it by adding a flag to indicate whether the backlight is controlled by the PMU, and testing that before trying to use the PMU to turn off the backlight during sleep. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 7f172890a8f8744c4005c267ae9e228411ab173f Author: Benjamin Herrenschmidt Date: Fri Feb 29 14:58:03 2008 +1100 [POWERPC] Fix bogus test for unassigned PCI resources A bogus test for unassigned resources that came from our 32-bit PCI code ended up being "merged" by my previous patch series, breaking some 64-bit setups where devices have legal resources ending at 0xffffffff. This fixes it by completely changing the test. We now test for res->start == 0, as the generic code expects, and we also only do so on platforms that don't have the PPC_PCI_PROBE_ONLY flag set, as there are cases of pSeries and iSeries where it could be a valid value and those can't reassign devices. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 595be948cce574ff2d5dde5d0426a636a4363c70 Author: Grant Likely Date: Fri Feb 22 05:57:07 2008 +1100 [POWERPC] Fix zImage-dtb.initrd build error The pattern substitution rules were failing when used with zImage-dtb targets. If zImage-dtb.initrd was selected, the pattern substitution would generate "zImage.initrd-dtb" instead of "zImage-dtb.initrd" which caused the build to fail. This renames zImage-dtb to dtbImage to avoid the problem entirely. By not using the zImage prefix then is no potential for namespace collisions. Signed-off-by: Grant Likely Acked-by: Geoff Levand Signed-off-by: Paul Mackerras commit 95ff54f5176a36f65522e46c670a571728328b10 Author: Paul Mackerras Date: Thu Mar 13 09:39:55 2008 +1100 [POWERPC] Add __ucmpdi2 for 64-bit comparisons in 32-bit kernels Some drivers (such as V4L2) have code that causes gcc to generate calls to __ucmpdi2 when compiling for 32-bit powerpc, which results in either a link-time error or a module that can't be loaded, as we don't currently have a __ucmpdi2. This adds one so these drivers can be used. Signed-off-by: Paul Mackerras commit 53471121a8aad3f0b590bfce7c95a1f5f52150f3 Author: Randy Dunlap Date: Wed Mar 12 18:10:51 2008 -0400 documentation: Move power-related files to Documentation/power/ Move 00-INDEX entries to power/00-INDEX (and add entry for pm_qos_interface.txt). Update references to moved filenames. Fix some trailing whitespace. Signed-off-by: Randy Dunlap Signed-off-by: Len Brown commit c8dc9de10951609492f0d0282a61e2b2eec385c8 Author: Johann Felix Soden Date: Tue Mar 11 16:44:26 2008 +0100 ACPI: buffer array too short in drivers/acpi/system.c Since "ff_gbl_lock" has a length of 11 chars and is copied with sprintf to char buffer[10], there is a problem. We need char buffer[12] because of the closing zero byte. Signed-off-by: Johann Felix Soden Signed-off-by: Len Brown commit ed9cfe98050be635ff780678d166e7c7bf578818 Author: Carlos Corbacho Date: Wed Mar 12 20:13:00 2008 +0000 acer-wmi: Add DMI quirk for mail LED support on Acer Aspire 3610/ 5610 Signed-off-by: Carlos Corbacho Signed-off-by: Len Brown commit 08816465894f46fc559301c22686939c3c9c138b Author: Carlos Corbacho Date: Wed Mar 12 20:12:55 2008 +0000 acer-wmi: Fix DSDT path in documentation Signed-off-by: Carlos Corbacho Signed-off-by: Len Brown commit 8d039bc7f3d2330787eaa7a392f5e6489f1544d5 Author: Carlos Corbacho Date: Wed Mar 12 20:12:50 2008 +0000 acer-wmi: Make device detection error messages more descriptive The current device detection error messages are all copy & pasted - make them more descriptive so it's easier to see where in the code a problem occurs. Signed-off-by: Carlos Corbacho Signed-off-by: Len Brown commit 609eb39c8d8a8d2930780428f6cbe2f63eb84734 Merge: 123d43a... 2262621... Author: Linus Torvalds Date: Wed Mar 12 13:08:09 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (47 commits) [SCTP]: Fix local_addr deletions during list traversals. net: fix build with CONFIG_NET=n [TCP]: Prevent sending past receiver window with TSO (at last skb) rt2x00: Add new D-Link USB ID rt2x00: never disable multicast because it disables broadcast too libertas: fix the 'compare command with itself' properly drivers/net/Kconfig: fix whitespace for GELIC_WIRELESS entry [NETFILTER]: nf_queue: don't return error when unregistering a non-existant handler [NETFILTER]: nfnetlink_queue: fix EPERM when binding/unbinding and instance 0 exists [NETFILTER]: nfnetlink_log: fix EPERM when binding/unbinding and instance 0 exists [NETFILTER]: nf_conntrack: replace horrible hack with ksize() [NETFILTER]: nf_conntrack: add \n to "expectation table full" message [NETFILTER]: xt_time: fix failure to match on Sundays [NETFILTER]: nfnetlink_log: fix computation of netlink skb size [NETFILTER]: nfnetlink_queue: fix computation of allocated size for netlink skb. [NETFILTER]: nfnetlink: fix ifdef in nfnetlink_compat.h [NET]: include into linux/ethtool.h for __u* typedef [NET]: Make /proc/net a symlink on /proc/self/net (v3) RxRPC: fix rxrpc_recvmsg()'s returning of msg_name net/enc28j60: oops fix ... commit 123d43acd2e55cd7db792d17c7e906db42cada42 Merge: 299601c... 3d706d9... Author: Linus Torvalds Date: Wed Mar 12 13:07:12 2008 -0700 Merge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6 * 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6: i2c: chips subdirectory is deprecated i2c: Keep client->driver and client->dev.driver in sync i2c-amd756: Fix off-by-one commit 299601cfc0aabbabf82fca50652b7290cce7eb00 Merge: 0509ad5... 69e634f... Author: Linus Torvalds Date: Wed Mar 12 13:04:11 2008 -0700 Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: [MIPS] Clocksource: Only install r4k counter as clocksource if present. [MIPS] Lasat: fix LASAT_CASCADE_IRQ [MIPS] Delete leftovers of old pcspeaker support. [MIPS] BCM1480: Init pci controller io_map_base [MIPS] Yosemite: Fix a few more section reference bugs. [MIPS] Fix yosemite build error [MIPS] Fix loads of section missmatches [MIPS] IP27: Tighten up CPU description to fix warnings. [MIPS] Fix plat_ioremap for JMR3927 [MIPS] Export __ucmpdi2 to modules. [MIPS] Fix typo in comment [MIPS] Use KBUILD_DEFCONFIG [MIPS] Allow 48Hz to be selected if CONFIG_SYS_SUPPORTS_ARBIT_HZ is set. [MIPS] Added missing cases for rdhwr emulation [MIPS] Alchemy: Fix ids in Alchemy db dma device table commit 0509ad5e1a7d9220f09edd5be114bf3bd51a7023 Author: Bjorn Helgaas Date: Tue Mar 11 15:24:41 2008 -0600 PNP: disable PNP motherboard resources that overlap PCI BARs Some BIOSes have PNP motherboard devices with resources that partially overlap PCI BARs. The PNP system driver claims these motherboard resources, which prevents the normal PCI driver from requesting them later. This patch disables the PNP resources that conflict with PCI BARs so they won't be claimed by the PNP system driver. Of course, this only works if PCI devices have already been enumerated. Currently this is the case because PCI devices are discovered before any PNP init via this path: acpi_pci_root_init() -> acpi_pci_root_add() -> pci_acpi_scan_root() -> pci_scan_bus_parented() -> pci_scan_child_bus() -> ... Avuton Olrich tested this and confirmed that it fixes his ALSA sound card (see http://lkml.org/lkml/2008/1/27/168). References: https://bugzilla.redhat.com/show_bug.cgi?id=280641 https://bugzilla.redhat.com/show_bug.cgi?id=313491 http://lkml.org/lkml/2008/1/9/449 http://thread.gmane.org/gmane.linux.acpi.devel/27312 http://lkml.org/lkml/2008/1/27/168 Signed-off-by: Bjorn Helgaas Signed-off-by: Linus Torvalds commit e0aca2330b59752193877da49c6e6b07df78690a Author: Bjorn Helgaas Date: Tue Mar 11 15:24:40 2008 -0600 PNP: revert Supermicro H8DCE motherboard quirk There are other systems with similar problems (http://lkml.org/lkml/2008/1/27/168), so we need a more generic quirk. Remove the Supermicro-specific one first. Signed-off-by: Bjorn Helgaas Signed-off-by: Linus Torvalds commit 3fedb3c5a80595d94f7cbe47a6dba9184d869eb8 Author: Tom Tucker Date: Tue Mar 11 14:31:40 2008 -0400 SVCRDMA: Fix erroneous BUG_ON in send_write The assertion that checks for sge context overflow is incorrectly hard-coded to 32. This causes a kernel bug check when using big-data mounts. Changed the BUG_ON to use the computed value RPCSVC_MAXPAGES. Signed-off-by: Tom Tucker Signed-off-by: J. Bruce Fields Signed-off-by: Linus Torvalds commit c48cbb405c4f338ce3263c44d621eff41d9a95fc Author: Tom Tucker Date: Tue Mar 11 14:31:39 2008 -0400 SVCRDMA: Add xprt refs to fix close/unmount crash RDMA connection shutdown on an SMP machine can cause a kernel crash due to the transport close path racing with the I/O tasklet. Additional transport references were added as follows: - A reference when on the DTO Q to avoid having the transport deleted while queued for I/O. - A reference while there is a QP able to generate events. - A reference until the DISCONNECTED event is received on the CM ID Signed-off-by: Tom Tucker Signed-off-by: J. Bruce Fields Signed-off-by: Linus Torvalds commit ee27a558ae0ff5063ccd6c47ca102c0bb0e3ba27 Author: Roland McGrath Date: Tue Mar 11 17:13:15 2008 -0700 genhd must_check warning fix Fixes: block/genhd.c:361: warning: ignoring return value of ‘class_register’, declared with attribute warn_unused_result Signed-off-by: Roland McGrath Acked-by: Jeff Garzik Signed-off-by: Linus Torvalds commit a8ae50ba9336ff77d0df0943ac27b79ba0a5a521 Author: David Woodhouse Date: Wed Mar 12 17:52:56 2008 +0100 Remove from user-visible headers. It was all wrapped in '#ifdef CONFIG_BLOCK' anyway, so userspace was getting nothing useful out of it. And the special #ifndef __KERNEL__ version of 'struct partition' makes me inclined to promote an attitude of violence... Stick some comments on some of the #endifs too, while we're at it. Signed-off-by: David Woodhouse Signed-off-by: Linus Torvalds commit 0738c4bb8f2a8bf15178f852494643b0981f578b Author: Paul Mundt Date: Wed Mar 12 16:51:31 2008 +0900 nommu: Provide is_vmalloc_addr() stub. Introduced in commit-id 9e2779fa281cfda13ac060753d674bbcaa23367e and ifdef'ed out for nommu in 8ca3ed87db062201e1fa15b64a9214e193fc3a8a, both approaches end up breaking the nommu build in different ways. An impressive feat for a 2-liner. Current is_vmalloc_addr() users fall in to two camps: - Determining whether to use vfree()/kfree() - Whether to do vmlist traversal (only /proc/kcore). Since we don't support /proc/kcore on nommu, that leaves the vfree()/kfree() determination use cases. nommu vfree() happens to be a wrapper to kfree() anyways, so is_vmalloc_addr() can always return 0 and end up with the right behaviour. Signed-off-by: Paul Mundt Signed-off-by: Linus Torvalds commit 10313cbb92206450b450e14f2b3f6ccde42d9a34 Author: Roland Dreier Date: Wed Mar 12 07:51:03 2008 -0700 IPoIB: Allocate priv->tx_ring with vmalloc() Commit 7143740d ("IPoIB: Add send gather support") made struct ipoib_tx_buf significantly larger, since the mapping member changed from a single u64 to an array with MAX_SKB_FRAGS + 1 entries. This means that allocating tx_rings with kzalloc() may fail because there is not enough contiguous memory for the new, much bigger size. Fix this regression by allocating the rings with vmalloc() instead. Signed-off-by: Roland Dreier commit 69e634f1e27c8e5b954ea4be2d05dd744cabc0bc Author: Ralf Baechle Date: Wed Mar 12 13:58:10 2008 +0000 [MIPS] Clocksource: Only install r4k counter as clocksource if present. Signed-off-by: Ralf Baechle commit 127f1668617ae638f90f113a32f956887acbb94a Author: Yoichi Yuasa Date: Wed Feb 20 23:11:53 2008 +0900 [MIPS] Lasat: fix LASAT_CASCADE_IRQ Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit 131b02c459db2de3aff6b213d317a6f2fa6c5d96 Author: Ralf Baechle Date: Mon Mar 10 16:20:00 2008 +0000 [MIPS] Delete leftovers of old pcspeaker support. Signed-off-by: Ralf Baechle commit e790a46429e93384eee5df426bd99995ae12da27 Author: Thomas Bogendoerfer Date: Sat Mar 8 19:51:55 2008 +0100 [MIPS] BCM1480: Init pci controller io_map_base Signed-off-by: Thomas Bogendoerfer Signed-off-by: Ralf Baechle commit 41d1f19a31824605ec98fda7458f9108e490fce5 Author: Ralf Baechle Date: Mon Mar 10 12:11:48 2008 +0000 [MIPS] Yosemite: Fix a few more section reference bugs. Signed-off-by: Ralf Baechle commit 2ac7401d11370b7a8e3a1c74aac03a021fd61048 Author: Ralf Baechle Date: Mon Mar 10 09:31:50 2008 +0000 [MIPS] Fix yosemite build error didn't pickup the definition of PKMAP_BASE from fixmap.h, ugh. Signed-off-by: Ralf Baechle commit 234fcd1484a66158b561b36b421547f0ab85fee9 Author: Ralf Baechle Date: Sat Mar 8 09:56:28 2008 +0000 [MIPS] Fix loads of section missmatches Signed-off-by: Ralf Baechle commit 1af0eea21431bed5d07dffc0fefab57fd72f7e90 Author: Ralf Baechle Date: Sat Mar 8 09:44:37 2008 +0000 [MIPS] IP27: Tighten up CPU description to fix warnings. Signed-off-by: Ralf Baechle commit 308a163931928332b57dfdfb3520c1924a337ef5 Author: Atsushi Nemoto Date: Sat Jan 26 14:08:02 2008 +0900 [MIPS] Fix plat_ioremap for JMR3927 TX39XX's "reserved" segment in CKSEG3 area is 0xff000000-0xfffeffff. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 4177017d5bdf4456da022d4c82e48ac99cd65426 Author: Ralf Baechle Date: Tue Mar 4 09:03:09 2008 +0000 [MIPS] Export __ucmpdi2 to modules. Signed-off-by: Ralf Baechle commit a7c2996e41ada10d504050863bbc318f5ed2a0c2 Author: Thiemo Seufer Date: Fri Feb 29 00:43:47 2008 +0000 [MIPS] Fix typo in comment We support now other page sizes as well. Signed-off-by: Thiemo Seufer Signed-off-by: Ralf Baechle commit de0c16985dbc04c11bf3c44df30030df5d060963 Author: Adrian Bunk Date: Tue Feb 26 21:54:54 2008 +0200 [MIPS] Use KBUILD_DEFCONFIG With KBUILD_DEFCONFIG we don't have to ship a second copy of ip22_defconfig. Signed-off-by: Adrian Bunk Signed-off-by: Ralf Baechle commit 0f87358587ad8326b589edb42dcf6e07afbab6de Author: Ralf Baechle Date: Mon Feb 25 16:55:29 2008 +0000 [MIPS] Allow 48Hz to be selected if CONFIG_SYS_SUPPORTS_ARBIT_HZ is set. This allows a 48Hz clock to be selected on Malta and other systems. Note this not normally a sensible option as it results in rather high latencies for some kernel stuff. Signed-off-by: Ralf Baechle commit 1f5826bd0ed6c0abec3da28dfffb8d12f0c2cb81 Author: Chris Dearman Date: Mon May 8 18:02:16 2006 +0100 [MIPS] Added missing cases for rdhwr emulation Some of these are architecturally required for R2 processors so lets try to be bit closer to the real thing. This also provides access to the CPU cycle timer, even on multiprocessors. In that aspect its currently bug compatible to what would happen on a R2-based SMP. Signed-off-by: Chris Dearman Signed-off-by: Ralf Baechle commit 0ec734c2b8b005667ffdaef8610d1024630683b0 Author: Wolfgang Ocker Date: Sun Feb 10 20:31:33 2008 +0100 [MIPS] Alchemy: Fix ids in Alchemy db dma device table 0 is a valid device id (DSCR_CMD0_UART0_TX), so we can't use it to mark an empty entry in the device table. Use ~0 instead and search for id ~0 when looking for a free entry. Signed-off-by: Wolfgang Ocker Signed-off-by: Ralf Baechle commit 3d706d952cf238a60c5571e33329448b453a2ab9 Author: Jean Delvare Date: Wed Mar 12 14:15:00 2008 +0100 i2c: chips subdirectory is deprecated Let driver authors know that drivers/i2c/chips is usually the wrong place for new drivers. Signed-off-by: Jean Delvare commit 50c3304a5e1e5217fc6b58fb686edc7d1114f2fa Author: Hans Verkuil Date: Wed Mar 12 14:15:00 2008 +0100 i2c: Keep client->driver and client->dev.driver in sync Ensure that client->driver is set to NULL if the probe() returns an error (this keeps client->driver and client->dev.driver in sync). Signed-off-by: Hans Verkuil Acked-by: David Brownell Signed-off-by: Jean Delvare commit 5edc68b8530ff1b3133d057350da98c93cca5a82 Author: Adrian Bunk Date: Wed Mar 12 14:15:00 2008 +0100 i2c-amd756: Fix off-by-one This patch fixes an off-by-one error spotted by the Coverity checker. Signed-off-by: Adrian Bunk Signed-off-by: Jean Delvare commit a09a20b526fde0611b49b76521e3c546a47216a5 Author: Randy Dunlap Date: Tue Mar 4 13:41:26 2008 -0800 laptops: move laptop-mode.txt to Documentation/laptops/ Move laptop-mode.txt into the laptops/ sub-directory to consolidate laptop doc files there. Update references to the file's location. Signed-off-by: Randy Dunlap Signed-off-by: Len Brown commit 9cf7f7fac8c36e54e4869fc01e1bad0d3b4de53b Merge: 86f4e5d... c368392... Author: Paul Mackerras Date: Wed Mar 12 17:13:57 2008 +1100 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/jk/spufs into merge commit b6a163875935ce8e8e85901a7f2b68f7a314d914 Author: Thomas Renninger Date: Wed Mar 12 01:06:24 2008 +0100 ACPICA: Warn if packages with invalid references are evaluated And return an error to avoid NULL pointer access by the caller Lin Ming's patch avoids corrupted mem access when BIOS has invalid references included, the handle is now zero instead of corrupted. Signed-off-by: Thomas Renninger Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 391df5dce30a5aab477b9e55ea65a3e83bae96b1 Author: Bjorn Helgaas Date: Tue Mar 11 13:45:15 2008 -0700 ACPI: add _PRT quirks to work around broken firmware This patch works around incorrect _PRT (PCI interrupt routing) information from firmware. This does not fix any regressions and can wait for the next kernel release. On the Medion MD9580-F laptop, the BIOS says the builtin RTL8139 NIC interrupt at 00:09.0[A] is connected to \_SB.PCI0.ISA.LNKA, but it's really connected to \_SB.PCI0.ISA.LNKB. Before this patch, the workaround was to use "pci=routeirq". More details at http://bugzilla.kernel.org/show_bug.cgi?id=4773. On the Dell OptiPlex GX1, the BIOS says the PCI slot interrupt 00:0d[A] is connected to LNKB, but it's really connected to LNKA. Before this patch, the workaround was to use "pci=routeirq". Pierre Ossman tested a previous version of this patch and confirmed that it fixed the problem. More details at http://bugzilla.kernel.org/show_bug.cgi?id=5044. On the HP t5710 thin client, the BIOS says the builtin Radeon video interrupt at 01:00[A] is connected to LNK1, but it's really connected to LNK3. The previous workaround was to use a custom DSDT. I tested this patch and verified that it fixes the problem. More details at http://bugzilla.kernel.org/show_bug.cgi?id=10138. Signed-off-by: Bjorn Helgaas Signed-off-by: Len Brown commit a82f7119fd940c1505fc9fdf93d835fa52bc075d Author: Rafael J. Wysocki Date: Wed Mar 12 00:34:57 2008 +0100 Hibernation: Fix mark_nosave_pages() There is a problem in the hibernation code that triggers on some NUMA systems on which pfn_valid() returns 'true' for some PFNs that don't belong to any zone. Namely, there is a BUG_ON() in memory_bm_find_bit() that triggers for PFNs not belonging to any zone and passing the pfn_valid() test. On the affected systems it triggers when we mark PFNs reported by the platform as not saveable, because the PFNs in question belong to a region mapped directly using iorepam() (i.e. the ACPI data area) and they pass the pfn_valid() test. Modify memory_bm_find_bit() so that it returns an error if given PFN doesn't belong to any zone instead of crashing the kernel and ignore the result returned by it in mark_nosave_pages(), while marking the "nosave" memory regions. This doesn't affect the hibernation functionality, as we won't touch the PFNs in question anyway. http://bugzilla.kernel.org/show_bug.cgi?id=9966 . Signed-off-by: Rafael J. Wysocki Signed-off-by: Len Brown commit 7c0ea45be4f114d85ee35caeead8e1660699c46f Author: Zhao Yakui Date: Tue Mar 11 16:56:47 2008 +0800 ACPI: Ignore _BQC object when registering backlight device According to acpi spec , the objects of _BCL and _BCM are required if integrated LCD is present and supports brightness level .The _BQC is the optional object. So the _BQC object is ignored when the backlight device is registered in ACPI video driver. http://bugzilla.kernel.org/show_bug.cgi?id=10206 Signed-off-by: Zhao Yakui Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit 4200406b8fbbf309f4fffb339bd16c4553ae0c30 Author: Roland Dreier Date: Tue Mar 11 18:35:20 2008 -0700 IPoIB/cm: Set tx_wr.num_sge in connected mode post_send() Commit 7143740d ("IPoIB: Add send gather support") made it possible for tx_wr.num_sge to be != 1 -- this happens if send gather support is enabled. However, the code in the connected mode post_send() function assumes the old invariant, namely that tx_wr.num_sge is always 1. Fix this by explicitly setting tx_wr.num_sge to 1 in the CM post_send(). Signed-off-by: Roland Dreier commit 22626216c46f2ec86287e75ea86dd9ac3df54265 Author: Chidambar 'ilLogict' Zinnoury Date: Tue Mar 11 18:05:02 2008 -0700 [SCTP]: Fix local_addr deletions during list traversals. Since the lists are circular, we need to explicitely tag the address to be deleted since we might end up freeing the list head instead. This fixes some interesting SCTP crashes. Signed-off-by: Chidambar 'ilLogict' Zinnoury Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit b2211a361a4289c83971f89da53fe2eb9e72769d Author: Andrew Morton Date: Tue Mar 11 18:03:35 2008 -0700 net: fix build with CONFIG_NET=n fs/built-in.o:(.rodata+0x1134): undefined reference to `proc_net_inode_operations' fs/built-in.o:(.rodata+0x1138): undefined reference to `proc_net_operations' Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 5ea3a7480606cef06321cd85bc5113c72d2c7c68 Author: Ilpo Järvinen Date: Tue Mar 11 17:55:27 2008 -0700 [TCP]: Prevent sending past receiver window with TSO (at last skb) With TSO it was possible to send past the receiver window when the skb to be sent was the last in the write queue while the receiver window is the limiting factor. One can notice that there's a loophole in the tcp_mss_split_point that lacked a receiver window check for the tcp_write_queue_tail() if also cwnd was smaller than the full skb. Noticed by Thomas Gleixner in form of "Treason uncloaked! Peer ... shrinks window .... Repaired." messages (the peer didn't actually shrink its window as the message suggests, we had just sent something past it without a permission to do so). Signed-off-by: Ilpo Järvinen Tested-by: Thomas Gleixner Signed-off-by: David S. Miller commit a527f2d7fe58ce95bfec998f3dc6f658c777a2f2 Author: Carlos Corbacho Date: Sun Feb 24 13:34:34 2008 +0000 ACPI: WMI: Clean up handling of spec violating data blocks Acer violate the ACPI-WMI spec by declaring some of their data blocks as expensive, but with no corresponding WCxx method. There is already some workaround code in to handle the initial WCxx call (we just ignore a failure here); but we need to properly check if the second, "clean up", WCxx call is actually needed or not, rather than fail simply because it isn't there. Signed-off-by: Carlos Corbacho Signed-off-by: Len Brown commit 9b963c40306ba6967650dce99f4e823f1da49a60 Author: Carlos Corbacho Date: Sun Feb 24 13:34:29 2008 +0000 acer-wmi: Don't warn if mail LED cannot be detected This warning confuses users, who think it is an error. Not detecting the mail LED simply means it isn't there, so let's not unduly panic users. Signed-off-by: Carlos Corbacho Signed-off-by: Len Brown commit 343c00422d3296838927016750b18ead8aa8bf9a Author: Carlos Corbacho Date: Sun Feb 24 13:34:18 2008 +0000 acer-wmi: Rename mail LED correctly & remove hardcoded colour The mail LED name for acer-wmi currently hardcodes in the colour as green. This is wrong, since many of the newer laptops now come with an orange LED, and we have no way of telling what colour is used on a given system. Also, rename the mail LED to be inline with the current recommendations of the LED class documentation. Signed-off-by: Carlos Corbacho Signed-off-by: Len Brown commit b3e2749bf32f61e7beb259eb7cfb066d2ec6ad65 Author: Or Gerlitz Date: Tue Mar 11 16:10:02 2008 +0200 IPoIB: Don't drop multicast sends when they can be queued When set_multicast_list() is called the multicast task is restarted and the IPOIB_MCAST_STARTED bit is cleared. As a result for some window of time, multicast packets are not transmitted nor queued but rather dropped by ipoib_mcast_send(). These dropped packets are painful in two cases: - bonding fail-over which both calls set_multicast_list() on the new active slave and sends Gratuitous ARP through that slave. - IP_DROP_MEMBERSHIP code which both calls set_multicast_list() on the device and issues IGMP leave. In both these cases, depending on the scheduling of the IPoIB multicast task, the packets would be dropped. As a result, in the bonding case, the failover would not be detected by the peers until their neighbour is renewed the neighbour (which takes a few tens of seconds). In the IGMP case, the IP router doesn't get an IGMP leave and would only learn on that from further probes on the group (also a delay of at least a few tens of seconds). Fix this by allowing transmission (or queuing) depending on the IPOIB_FLAG_OPER_UP flag instead of the IPOIB_MCAST_STARTED flag. Signed-off-by: Olga Shern Signed-off-by: Or Gerlitz Signed-off-by: Roland Dreier commit 450bb3875f5f5ab3679823c941d6045d16967370 Author: Patrick Marchand Latifi Date: Wed Feb 20 19:08:10 2008 -0800 IB/ipath: Reset the retry counter for RDMA_READ_RESPONSE_MIDDLE packets Reset the retry counter when we get a good RDMA_READ_RESPONSE_MIDDLE packet. This fix will prevent the requester from reporting a retry exceeded error too early. Signed-off-by: Patrick Marchand Latifi commit 2a049e514b890c8b70b965bbd9f4e3c963af69c9 Author: Patrick Marchand Latifi Date: Thu Jan 31 00:24:37 2008 -0800 IB/ipath: Fix error completion put on send CQ instead of recv CQ A work completion entry could be placed on the wrong completion queue when an RC QP is placed in the error state. Signed-off-by: Patrick Marchand Latifi Acked-by: Ralph Campbell Signed-off-by: Roland Dreier commit 4cd5060cf7c2207c31e2e368f8a6343355362e51 Author: Patrick Marchand Latifi Date: Fri Jan 18 20:10:48 2008 -0800 IB/ipath: Fix RC QP initialization This patch fixes the initialization of RC QPs, since we would rely on the queue pair type (ibqp->qp_type) being set, but this field is only initialized when we return from ipath_create_qp (it is initialized by the user-level verbs library). The fix is to not depend on this field to initialize the send and the receive state of the RC QP. Signed-off-by: Patrick Marchand Latifi Signed-off-by: Roland Dreier commit 87d5aed85b2d79e4075ad2ca1449e9b98f657a09 Author: Patrick Marchand Latifi Date: Mon Jan 7 23:43:04 2008 -0800 IB/ipath: Fix potentially wrong RNR retry counter returned in ipath_query_qp() There can be a case where the requester's rnr retry counter (s_rnr_retry) is less than the number of rnr retries allowed per QP (s_rnr_retry_cnt). This can happen if the s_rnr_retry counter is being decremented and an ipath_query_qp call is issued during that time frame. The fix is to always return the number of rnr retries allowed per QP instead of the requester's rnr counter. Found by code review. Signed-off-by: Patrick Marchand Latifi Acked-by: Ralph Campbell Signed-off-by: Roland Dreier commit 140277e9a710202608914b5b731948d2769399bc Author: Ralph Campbell Date: Fri Dec 14 01:53:56 2007 -0800 IB/ipath: Fix IB compliance problems with link state vs physical state Subnet manager SetPortinfo messages distingush between changing the link state (DOWN, ARM, ACTIVE) and the link physical state (POLL, SLEEP, DISABLED). These are somewhat independent commands and affect when link width and speed changes take effect. Without this patch, a link DOWN physical state NOP command was causing the link width and speed settings to take effect which should only happen when the link physical state is goes down (either by a SMP or some link physical error like link errors exceeding the threshold). Signed-off-by: Ralph Campbell Signed-off-by: Roland Dreier commit 445815d7ea4f59baf103f28b45f7dd45f21ff75d Author: Ivo van Doorn Date: Sun Mar 9 22:42:32 2008 +0100 rt2x00: Add new D-Link USB ID Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit fbb0a27a8ad56f822f479ee85446d9c29483a3d1 Author: Adam Baker Date: Sun Mar 9 22:40:40 2008 +0100 rt2x00: never disable multicast because it disables broadcast too On rt73 and rt61 disabling reception of multicast packets also disables broadcast traffic which we never want to do. Therefore we should never disable multicast. Signed-off-by: Adam Baker Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 5f0547c2813d4677908fa6de02f9911d25996515 Author: Sebastian Siewior Date: Thu Mar 6 10:30:21 2008 +0100 libertas: fix the 'compare command with itself' properly |libertas: Invalid CMD_RESP 8012 to command 50! The special case got mixed up in 8a96df80b3. Signed-off-by: Sebastian Siewior Signed-off-by: John W. Linville commit 97ed83905e5f8547a94a8066441351c6920728a1 Author: John W. Linville Date: Thu Mar 6 13:08:09 2008 -0500 drivers/net/Kconfig: fix whitespace for GELIC_WIRELESS entry Signed-off-by: John W. Linville commit d6f882e10442c1ea6ed5f93365f48be4cb520be7 Author: Glauber Costa Date: Tue Mar 4 15:06:36 2008 -0800 ACPI: use ACPI_DEBUG_PRINT instead of printk in acpi_processor_hotplug_notify() For consistency, use ACPI_DEBUG_PRINT instead of printk in acpi_processor_hotplug_notify() for BUS_CHECK and DEVICE_CHECK events Signed-off-by: Glauber Costa Signed-off-by: Andrew Morton Signed-off-by: Len Brown commit 3b34e5232fa9776e9a4b3f539cd9fee7609c900e Author: Andrey Borzenkov Date: Tue Mar 4 15:06:35 2008 -0800 ACPI: button: make real parent for input devices in device tree Signed-off-by: Andrey Borzenkov Cc: Dmitry Torokhov Signed-off-by: Andrew Morton Signed-off-by: Len Brown commit 4db42c51ce0033f409fc3a2742e7aa2efa03f7c3 Author: arvidjaar@mail.ru Date: Tue Mar 4 15:06:34 2008 -0800 toshiba_acpi: Enable autoloading This adds aliases to enable autoloading of toishiba_acpi. Two aliases are defined - TOS6200 (for \\_SB_.VALD.GHCI) and TSO1900 (for \\_SB_.VALZ.GHCI). This allows toishiba_acpi to be autoloaded on systems that provide those devices. Signed-off-by: Andrey Borzenkov Cc: Olivier Blin Signed-off-by: Andrew Morton Signed-off-by: Len Brown commit 2c81ce4c9c37b910210f2640c28e98a0c398dc26 Author: Alexey Starikovskiy Date: Tue Mar 11 13:30:00 2008 -0400 ACPI: EC: Handle IRQ storm on Acer laptops On some Acer systems, the HW fails to clear the GPE source, causing an interrupt storm. So in EC interrupt mode, we count how many interrupts we receive when waiting. If we get more than 5, we give up on interrupt mode and revert to polling mode. Also, for polling mode to work on Acers, we need to insert a delay. Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit baadac8b10c5ac15ce3d26b68fa266c8889b163f Merge: 051a82f... 985a34b... Author: Linus Torvalds Date: Tue Mar 11 09:47:28 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86: x86: remove quicklists x86: ia32 syscall restart fix x86: ioremap, remove WARN_ON() commit 051a82fc0c450f6ca649acf684586477aa6d5c6a Merge: 6c47d77... 08f503b... Author: Linus Torvalds Date: Tue Mar 11 09:18:56 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-devel * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-devel: keep rd->online and cpu_online_map in sync Revert "cpu hotplug: adjust root-domain->online span in response to hotplug event" commit 6c47d773e7d8f784996d9027f035379baa19ded7 Merge: 2f44bbb... d7c1fbd... Author: Linus Torvalds Date: Tue Mar 11 09:14:34 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: RDMA/iwcm: Don't access a cm_id after dropping reference IB/iser: Handle iser_device allocation error gracefully IB/iser: Fix list iteration bug RDMA/cxgb3: Fix iwch_create_cq() off-by-one error RDMA/cxgb3: Return correct max_inline_data when creating a QP IB/fmr_pool: Flush all dirty FMRs from ib_fmr_pool_flush() Revert "IB/fmr_pool: ib_fmr_pool_flush() should flush all dirty FMRs" IB/cm: Flush workqueue when removing device MAINTAINERS: update ipath owner commit 985a34bd75cc8c96e43f00dcdda7c3fdb51a3026 Author: Thomas Gleixner Date: Sun Mar 9 13:14:37 2008 +0100 x86: remove quicklists quicklists cause a serious memory leak on 32-bit x86, as documented at: http://bugzilla.kernel.org/show_bug.cgi?id=9991 the reason is that the quicklist pool is a special-purpose cache that grows out of proportion. It is not accounted for anywhere and users have no way to even realize that it's the quicklists that are causing RAM usage spikes. It was supposed to be a relatively small pool, but as demonstrated by KOSAKI Motohiro, they can grow as large as: Quicklists: 1194304 kB given how much trouble this code has caused historically, and given that Andrew objected to its introduction on x86 (years ago), the best option at this point is to remove them. [ any performance benefits of caching constructed pgds should be implemented in a more generic way (possibly within the page allocator), while still allowing constructed pages to be allocated by other workloads. ] Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 40f0933d51f4cba26a5c009a26bb230f4514c1b6 Author: Roland McGrath Date: Thu Feb 28 19:57:07 2008 -0800 x86: ia32 syscall restart fix The code to restart syscalls after signals depends on checking for a negative orig_ax, and for particular negative -ERESTART* values in ax. These fields are 64 bits and for a 32-bit task they get zero-extended. The syscall restart behavior is lost, a regression from a native 32-bit kernel and from 64-bit tasks' behavior. This patch fixes the problem by doing sign-extension where it matters. For orig_ax, the only time the value should be -1 but winds up as 0x0ffffffff is via a 32-bit ptrace call. So the patch changes ptrace to sign-extend the 32-bit orig_eax value when it's stored; it doesn't change the checks on orig_ax, though it uses the new current_syscall() inline to better document the subtle importance of the used of signedness there. The ax value is stored a lot of ways and it seems hard to get them all sign-extended at their origins. So for that, we use the current_syscall_ret() to sign-extend it only for 32-bit tasks at the time of the -ERESTART* comparisons. Signed-off-by: Roland McGrath Signed-off-by: Ingo Molnar commit 9a46d7e5b63903a70cd96c2c1391a7a26a8dbec9 Author: Ingo Molnar Date: Tue Feb 26 09:30:32 2008 +0100 x86: ioremap, remove WARN_ON() Signed-off-by: Ingo Molnar commit 08f503b0c089968b2542659a89dfd50c5c59bb0b Author: Gregory Haskins Date: Mon Mar 10 17:59:11 2008 -0400 keep rd->online and cpu_online_map in sync It is possible to allow the root-domain cache of online cpus to become out of sync with the global cpu_online_map. This is because we currently trigger removal of cpus too early in the notifier chain. Other DOWN_PREPARE handlers may in fact run and reconfigure the root-domain topology, thereby stomping on our own offline handling. The end result is that rd->online may become out of sync with cpu_online_map, which results in potential task misrouting. So change the offline handling to be more tightly coupled with the global offline process by triggering on CPU_DYING intead of CPU_DOWN_PREPARE. Signed-off-by: Gregory Haskins Cc: Gautham R Shenoy Cc: "Siddha, Suresh B" Cc: "Rafael J. Wysocki" Cc: Andrew Morton Signed-off-by: Ingo Molnar commit 1f94ef598e8d29b92b9fc85d43c832e03721d3cb Author: Gregory Haskins Date: Mon Mar 10 16:52:41 2008 -0400 Revert "cpu hotplug: adjust root-domain->online span in response to hotplug event" This reverts commit 393d94d98b19089ec172566e23557997931b137e. Lets fix this right. Signed-off-by: Gregory Haskins Cc: Gautham R Shenoy Cc: "Siddha, Suresh B" Cc: "Rafael J. Wysocki" Cc: Andrew Morton Signed-off-by: Ingo Molnar commit 96b2dd1f1fdb9a131b7f2e79e5c7b2e4282cfcbf Author: Harvey Harrison Date: Wed Mar 5 18:24:51 2008 -0800 ACPI: replace remaining __FUNCTION__ occurrences __FUNCTION__ is gcc-specific, use __func__ Signed-off-by: Harvey Harrison Signed-off-by: Len Brown commit bd12935f04066df31903eaf74b1cec03319ecd2e Author: Jean Delvare Date: Wed Feb 27 20:56:01 2008 +0100 ACPI: Fix a duplicate log level Signed-off-by: Jean Delvare Signed-off-by: Len Brown commit 4af8e10a6c57e7292862bd1703712f0565c7e429 Author: Len Brown Date: Tue Mar 11 00:27:16 2008 -0400 Revert "ACPI: EC: Use proper handle for boot EC" This reverts commit 208c70a45624400fafd7511b96bc426bf01f8f5e. http://bugzilla.kernel.org/show_bug.cgi?id=10100 Signed-off-by: Len Brown commit d7c1fbd6606085dbf95e47068d6bd2db8a180e38 Author: Steve Wise Date: Tue Mar 4 16:44:52 2008 -0600 RDMA/iwcm: Don't access a cm_id after dropping reference cm_work_handler() can access cm_id_priv after it drops its reference by calling iwch_deref_id(), which might cause it to be freed. The fix is to look at whether IWCM_F_CALLBACK_DESTROY is set _before_ dropping the reference. Then if it was set, free the cm_id on this thread. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit d33ed425c6cc14370d8c418b504328d2c3db58b4 Author: Arne Redlich Date: Tue Mar 4 14:11:54 2008 +0200 IB/iser: Handle iser_device allocation error gracefully "iser_device" allocation failure is "handled" with a BUG_ON() right before dereferencing the NULL-pointer - fix this! Signed-off-by: Arne Redlich Signed-off-by: Erez Zilber commit 9a378270c085080b2f38dee6308de4d8413b5141 Author: Arne Redlich Date: Tue Mar 4 14:07:22 2008 +0200 IB/iser: Fix list iteration bug The iteration through the list of "iser_device"s during device lookup/creation is broken -- it might result in an infinite loop if more than one HCA is used with iSER. Fix this by using list_for_each_entry() instead of the open-coded flawed list iteration code. Signed-off-by: Arne Redlich Signed-off-by: Erez Zilber Signed-off-by: Roland Dreier commit c8d16e27a3601d1cbcdfe657eb4ff5e762019e8d Author: Lin Ming Date: Fri Feb 29 07:38:54 2008 +0800 ACPI: fix boot oops regression in thermal Fix a memory overflow bug when copying NULL internal package element object to external. http://bugzilla.kernel.org/show_bug.cgi?id=10132 Signed-off-by: Lin Ming Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit c368392a9951e6e25e2e2f9268153f1e9365e2c2 Author: Jeremy Kerr Date: Tue Mar 11 12:46:18 2008 +1100 [POWERPC] spufs: fix rescheduling of non-runnable contexts At present, we can hit the BUG_ON in __spu_update_sched_info by reading the regs file of a context between two calls to spu_run. The spu_release_saved called by spufs_regs_read() is resulting in the (now non-runnable) context being placed back on the run queue, so the next call to spu_run ends up in the bug condition. This change uses the SPU_SCHED_SPU_RUN flag to only reschedule a context if it's still in spu_run(). Signed-off-by: Jeremy Kerr commit 2f44bbb495dd3e6d0209eff2257438ab9c570e5b Merge: 2b752ac... 3db691d... Author: Linus Torvalds Date: Mon Mar 10 18:45:51 2008 -0700 Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: [libata] Add support for the RB500 PATA CompactFlash ahci: logical-bitwise and confusion in ahci_save_initial_config() libata: don't allow sysfs read access to force param ahci: add the Device IDs for nvidia MCP7B AHCI libata-sff: handle controllers w/o ctl register libata: allow LLDs w/o any reset method ata: replace remaining __FUNCTION__ occurrences commit 2b752acd91ecee926483b5f64a8f8bfe06e081fb Merge: f5dbb55... 15c4a4e... Author: Linus Torvalds Date: Mon Mar 10 18:45:23 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: USB:Update mailing list information in documentation USB: fix ehci unlink regressions USB: new ftdi_sio device id USB: Remove __KERNEL__ check from non-exported gadget.h. USB: g_printer.h does not need to be "unifdef"ed. USB: fsl_usb2_udc: fix broken Kconfig USB: option: add novatel device ids USB: usbaudio: handle kcalloc failure USB: cypress_m8: add UPS Powercom (0d9f:0002) USB: drivers/usb/storage/sddr55.c: fix uninitialized var warnings USB: fix usb-serial generic recursive lock commit ce7c191bca88aa2f942f70a6d6c6315739a81a32 Author: Jeremy Kerr Date: Tue Mar 4 20:17:02 2008 +1100 [POWERPC] spufs: don't (ab)use SCHED_IDLE commit 4ef11014 introduced a usage of SCHED_IDLE to detect when a context is within spu_run. Instead of SCHED_IDLE (which has other meaning), add a flag to sched_flags to tell if a context should be running. Signed-off-by: Jeremy Kerr commit f5dbb55b995b77d396fe2204495a0af3e24d28c2 Author: Ingo Molnar Date: Mon Mar 10 18:04:34 2008 +0100 fix BIOS PCI config cycle buglet causing ACPI boot regression I figured out another ACPI related regression today. randconfig testing triggered an early boot-time hang on a laptop of mine (32-bit x86, config attached) - the screen was scrolling ACPI AML exceptions [with no serial port and no early debugging available]. v2.6.24 works fine on that laptop with the same .config, so after a few hours of bisection (had to restart it 3 times - other regressions interacted), it honed in on this commit: | 10270d4838bdc493781f5a1cf2e90e9c34c9142f is first bad commit | | Author: Linus Torvalds | Date: Wed Feb 13 09:56:14 2008 -0800 | | acpi: fix acpi_os_read_pci_configuration() misuse of raw_pci_read() reverting this commit ontop of -rc5 gave a correctly booting kernel. But this commit fixes a real bug so the real question is, why did it break the bootup? After quite some head-scratching, the following change stood out: - pci_id->bus = tu8; + pci_id->bus = val; pci_id->bus is defined as u16: struct acpi_pci_id { u16 segment; u16 bus; ... and 'tu8' changed from u8 to u32. So previously we'd unconditionally mask the return value of acpi_os_read_pci_configuration() (raw_pci_read()) to 8 bits, but now we just trust whatever comes back from the PCI access routines and only crop it to 16 bits. But if the high 8 bits of that result contains any noise then we'll write that into ACPI's PCI ID descriptor and confuse the heck out of the rest of ACPI. So lets check the PCI-BIOS code on that theory. We have this codepath for 8-bit accesses (arch/x86/pci/pcbios.c:pci_bios_read()): switch (len) { case 1: __asm__("lcall *(%%esi); cld\n\t" "jc 1f\n\t" "xor %%ah, %%ah\n" "1:" : "=c" (*value), "=a" (result) : "1" (PCIBIOS_READ_CONFIG_BYTE), "b" (bx), "D" ((long)reg), "S" (&pci_indirect)); Aha! The "=a" output constraint puts the full 32 bits of EAX into *value. But if the BIOS's routines set any of the high bits to nonzero, we'll return a value with more set in it than intended. The other, more common PCI access methods (v1 and v2 PCI reads) clear out the high bits already, for example pci_conf1_read() does: switch (len) { case 1: *value = inb(0xCFC + (reg & 3)); which explicitly converts the return byte up to 32 bits and zero-extends it. So zero-extending the result in the PCI-BIOS read routine fixes the regression on my laptop. ( It might fix some other long-standing issues we had with PCI-BIOS during the past decade ... ) Both 8-bit and 16-bit accesses were buggy. Signed-off-by: Ingo Molnar Signed-off-by: Linus Torvalds commit effe008d276f52674d5352deefb68ec409a5ef9b Merge: ee215ca... b91aac2... Author: Linus Torvalds Date: Mon Mar 10 18:05:47 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/pci-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/pci-2.6: PCI Hotplug: Fix small mem leak in IBM Hot Plug Controller Driver PCI: rename DECLARE_PCI_DEVICE_TABLE to DEFINE_PCI_DEVICE_TABLE commit ee215ca3b21dd73bec95dcaaa8c89e64cff6cbf8 Merge: aeb24d2... e88a0c2... Author: Linus Torvalds Date: Mon Mar 10 18:04:00 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6: drivers: fix dma_get_required_mask firmware: provide stubs for the FW_LOADER=n case nozomi: fix initialization and early flow control access sysdev: fix problem with sysdev_class being re-registered commit aeb24d2fb08653a39abb50281b1ffa2d2a6879ab Merge: 5c0dea0... 1ef36fa... Author: Linus Torvalds Date: Mon Mar 10 18:03:20 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus: lguest: Do not append space to guests kernel command line lguest: Revert 1ce70c4fac3c3954bd48c035f448793867592bc0, fix real problem. lguest: Sanitize the lguest clock. lguest: fix __get_vm_area usage. lguest: make sure cpu is initialized before accessing it commit 5c0dea0959356d77d985ecfb2911e7a9e23b95e3 Merge: dae311b... cdef59a... Author: Linus Torvalds Date: Mon Mar 10 18:02:59 2008 -0700 Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2 * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2: ocfs2: Fix NULL pointer dereferences in o2net ocfs2/dlm: dlm_thread should not sleep while holding the dlm_spinlock ocfs2/dlm: Print message showing the recovery master ocfs2/dlm: Add missing dlm_lockres_put()s ocfs2/dlm: Add missing dlm_lockres_put()s in migration path ocfs2/dlm: Add missing dlm_lock_put()s ocfs2: Fix an endian bug in online resize. [PATCH] [OCFS2]: constify function pointer tables ocfs2: Fix endian bug in o2dlm protocol negotiation. ocfs2: Use dlm_print_one_lock_resource for lock resource print [PATCH] fs/ocfs2/dlm/dlmdomain.c: fix printk warning commit dae311b42fcad5d236dc6539b02c7560fc6fc721 Merge: 99eeed4... 8b1266f... Author: Linus Torvalds Date: Mon Mar 10 18:02:16 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog * git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog: [WATCHDOG] make watchdog/hpwdt.c:asminline_call() static [WATCHDOG] Remove volatiles from watchdog device structures [WATCHDOG] replace remaining __FUNCTION__ occurrences [WATCHDOG] hpwdt: Use dmi_walk() instead of own copy [WATCHDOG] Fix return value warning in hpwdt [WATCHDOG] Fix declaration of struct smbios_entry_point in hpwdt [WATCHDOG] it8712f_wdt support for 16-bit timeout values, WDIOC_GETSTATUS commit 99eeed47a1ee26fbce49c878788a6882bf90d8f2 Author: Michael Hennerich Date: Mon Mar 10 11:44:04 2008 -0700 fbdev: add BF52x EZkit Display driver Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu Cc: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5e9e4ad0a55b4dddb770ffac9322c460bd3c4a3f Author: Michael Hennerich Date: Mon Mar 10 11:44:03 2008 -0700 BF54x LQ043 Framebuffer driver: Update copyright on previously modified files Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b3544ea97041d86ed78e5889724ca784042178f3 Author: Bryan Wu Date: Mon Mar 10 11:44:03 2008 -0700 BF54x LQ043 Framebuffer driver: fix bug lcd_device_register API breakage Signed-off-by: Bryan Wu Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fdcc53587fd2754ba87b0607b3f889520178a7af Author: Michael Hennerich Date: Mon Mar 10 11:44:02 2008 -0700 BF54x LQ043 Framebuffer driver: fix bug NULL for gpio_request label is not allowed Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 62347218243179a6ab03fe9f965a5819c4714bf8 Author: Helge Deller Date: Mon Mar 10 11:44:01 2008 -0700 stifb: fix crash A1439A CRX (Rattler) graphics card Fix kernel crash when stifb driver is used with a A1439A CRX (Rattler) graphics card. (Reference: http://thread.gmane.org/gmane.linux.ports.hppa/1834) Signed-off-by: Helge Deller Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1039edc98a80aece735b0c6d8b4e5f9dcec2cc32 Author: Krzysztof Helt Date: Mon Mar 10 11:44:00 2008 -0700 mbxfb: fix incorrect argument type Fix wrong pointer type passed into the dev_dbg() function. Signed-off-by: Krzysztof Helt Acked-by: Mike Rapoport Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f7009264c519603b8ec67c881bd368a56703cfc9 Author: Nick Piggin Date: Mon Mar 10 11:43:59 2008 -0700 iov_iter_advance() fix iov_iter_advance() skips over zero-length iovecs, however it does not properly terminate at the end of the iovec array. Fix this by checking against i->count before we skip a zero-length iov. The bug was reproduced with a test program that continually randomly creates iovs to writev. The fix was also verified with the same program and also it could verify that the correct data was contained in the file after each writev. Signed-off-by: Nick Piggin Tested-by: "Kevin Coffman" Cc: "Alexey Dobriyan" Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 21bbb39c376ce6beeeb549d155f0d53dc76ed000 Author: Paul E. McKenney Date: Mon Mar 10 11:43:57 2008 -0700 rcu: move PREEMPT_RCU config option back under PREEMPT The original preemptible-RCU patch put the choice between classic and preemptible RCU into kernel/Kconfig.preempt, which resulted in build failures on machines not supporting CONFIG_PREEMPT. This choice was therefore moved to init/Kconfig, which worked, but placed the choice between classic and preemptible RCU at the top level, a very obtuse choice indeed. This patch changes from the Kconfig "choice" mechanism to a pair of booleans, only one of which (CONFIG_PREEMPT_RCU) is user-visible, and is located in kernel/Kconfig.preempt, where one would expect it to be. The other (CONFIG_CLASSIC_RCU) is in init/Kconfig so that it is available to all architectures, hopefully avoiding build breakage. Thanks to Roman Zippel for suggesting this approach. Signed-off-by: Paul E. McKenney Cc: Ingo Molnar Acked-by: Steven Rostedt Cc: Dipankar Sarma Cc: Josh Triplett Cc: Thomas Gleixner Cc: Peter Zijlstra Cc: Roman Zippel Cc: Sam Ravnborg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f47831fabaf0206abc56ee5a33fd006fe29b6dc6 Author: Thomas Bogendoerfer Date: Mon Mar 10 11:43:54 2008 -0700 i8042: use SGI_HAS_I8042 to select SGI i8042 handlinig Use SGI_HAS_I8042 to select SGI i8042 handling Signed-off-by: Thomas Bogendoerfer Cc: Dmitry Torokhov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e24e2e64c468c8060bb7173abecdf11d00ed5751 Author: Alexey Dobriyan Date: Mon Mar 10 11:43:53 2008 -0700 modules: warn about suspicious return values from module's ->init() hook Return value convention of module's init functions is 0/-E. Sometimes, e.g. during forward-porting mistakes happen and buggy module created, where result of comparison "workqueue != NULL" is propagated all the way up to sys_init_module. What happens is that some other module created workqueue in question, our module created it again and module was successfully loaded. Or it could be some other bug. Let's make such mistakes much more visible. In retrospective, such messages would noticeably shorten some of my head-scratching sessions. Note, that dump_stack() is just a way to get attention from user. Sample message: sys_init_module: 'foo'->init suspiciously returned 1, it should follow 0/-E convention sys_init_module: loading module anyway... Pid: 4223, comm: modprobe Not tainted 2.6.24-25f666300625d894ebe04bac2b4b3aadb907c861 #5 Call Trace: [] sys_init_module+0xe5/0x1d0 [] system_call_after_swapgs+0x7b/0x80 Signed-off-by: Alexey Dobriyan Cc: Rusty Russell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6c5db22d280302c33dafb309c25bf2841fb99c37 Author: Rusty Russell Date: Mon Mar 10 11:43:52 2008 -0700 modules: fix module waiting for dependent modules' init Commit c9a3ba55 (module: wait for dependent modules doing init.) didn't quite work because the waiter holds the module lock, meaning that the state of the module it's waiting for cannot change. Fortunately, it's fairly simple to update the state outside the lock and do the wakeup. Thanks to Jan Glauber for tracking this down and testing (qdio and qeth). Signed-off-by: Rusty Russell Cc: Jan Glauber Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2668db9111bb1a6ab5a54f41f703179f35c7d098 Author: Adam Litke Date: Mon Mar 10 11:43:50 2008 -0700 hugetlb: correct page count for surplus huge pages Free pages in the hugetlb pool are free and as such have a reference count of zero. Regular allocations into the pool from the buddy are "freed" into the pool which results in their page_count dropping to zero. However, surplus pages can be directly utilized by the caller without first being freed to the pool. Therefore, a call to put_page_testzero() is in order so that such a page will be handed to the caller with a correct count. This has not affected end users because the bad page count is reset before the page is handed off. However, under CONFIG_DEBUG_VM this triggers a BUG when the page count is validated. Thanks go to Mel for first spotting this issue and providing an initial fix. Signed-off-by: Adam Litke Cc: Mel Gorman Cc: Dave Hansen Cc: William Lee Irwin III Cc: Andy Whitcroft Cc: Mel Gorman Cc: David Gibson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 842078054da2d754c6b998b116d7c468abbfaaca Author: Arnaud Patard Date: Mon Mar 10 11:43:48 2008 -0700 gpio/pca953x bugfix: mark as can_sleep The pca953x driver is an I2C driver so gpio_chip->can_sleep should be set. This lets upper layers know they should use the gpio_*_cansleep() calls to access values, and may not access them from nonsleeping contexts. Signed-off-by: Arnaud Patard Signed-off-by: David Brownell Acked-by: "eric miao" Cc: Jean Delvare Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7be3dfec4724c51e890455fe48fe188ad7c18b88 Author: NeilBrown Date: Mon Mar 10 11:43:48 2008 -0700 md: reduce CPU wastage on idle md array with a write-intent bitmap Recent patch titled Reduce CPU wastage on idle md array with a write-intent bitmap. would sometimes leave the array with dirty bitmap bits that stay dirty. A subsequent write would sort things out so it isn't a big problem, but should be fixed nonetheless. We need to make sure that when the bitmap becomes not "allclean", the daemon_sleep really does get set to a sensible value. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 52720ae77d392d3f4c12281c37304edbc8cb51f1 Author: NeilBrown Date: Mon Mar 10 11:43:47 2008 -0700 md: fix formatting error in /proc/mdstat If an md array is "auto-read-only", then this appears in /proc/mdstat as /dev/md0: active(auto-read-only) whereas if it is truely readonly, it appears as /dev/md0: active (read-only) The difference being a space. One program known to parse this file expects the space and gets badly confused. It will be fixed, but it would be best if what the kernel generates is more consistent too. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 69682d852f5c94ee94e21174b3e8b719626c98db Author: Lee Schermerhorn Date: Mon Mar 10 11:43:45 2008 -0700 mempolicy: fix reference counting bugs Address 3 known bugs in the current memory policy reference counting method. I have a series of patches to rework the reference counting to reduce overhead in the allocation path. However, that series will require testing in -mm once I repost it. 1) alloc_page_vma() does not release the extra reference taken for vma/shared mempolicy when the mode == MPOL_INTERLEAVE. This can result in leaking mempolicy structures. This is probably occurring, but not being noticed. Fix: add the conditional release of the reference. 2) hugezonelist unconditionally releases a reference on the mempolicy when mode == MPOL_INTERLEAVE. This can result in decrementing the reference count for system default policy [should have no ill effect] or premature freeing of task policy. If this occurred, the next allocation using task mempolicy would use the freed structure and probably BUG out. Fix: add the necessary check to the release. 3) The current reference counting method assumes that vma 'get_policy()' methods automatically add an extra reference a non-NULL returned mempolicy. This is true for shmem_get_policy() used by tmpfs mappings, including regular page shm segments. However, SHM_HUGETLB shm's, backed by hugetlbfs, just use the vma policy without the extra reference. This results in freeing of the vma policy on the first allocation, with reuse of the freed mempolicy structure on subsequent allocations. Fix: Rather than add another condition to the conditional reference release, which occur in the allocation path, just add a reference when returning the vma policy in shm_get_policy() to match the assumptions. Signed-off-by: Lee Schermerhorn Cc: Greg KH Cc: Andi Kleen Cc: Christoph Lameter Cc: Mel Gorman Cc: David Rientjes Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9afa802ff568d935dab33dd207dc25d9849f35d4 Author: Masatake YAMATO Date: Mon Mar 10 11:43:43 2008 -0700 Typo in Documentation/scheduler/sched-stats.txt I have found a very small typo in Documentation/scheduler/sched-stats.txt. See the end of this mail. Signed-off-by: Masatake YAMATO Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 60fdd931d577fcca351930fda4cde26ce07d35af Author: Alex Dubov Date: Mon Mar 10 11:43:43 2008 -0700 memstick: add support for JMicron jmb38x MemoryStick host controller Signed-off-by: Alex Dubov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 593672582e71a688cf8c3fc1c59ec7c44d3799e5 Author: Alex Dubov Date: Mon Mar 10 11:43:42 2008 -0700 memstick: try harder to recover from unsuccessful interface mode switch Signed-off-by: Alex Dubov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 251cc9b9df065cb2c170ea45f566c0d9456186c2 Author: Alex Dubov Date: Mon Mar 10 11:43:42 2008 -0700 memstick: fix parsing of "assembly_da