commit b0cbc861a3c05e634520b049b5cc27ad6febb51f Author: Linus Torvalds Date: Sat Apr 11 12:45:20 2009 -0700 Revert "ACPI battery: fix async boot oops" This reverts commit 5d38258ec026921a7b266f4047ebeaa75db358e5, since the underlying problem got fixed properly in the previous commit ("async: Fix module loading async-work regression"). Cc: Arkadiusz Miskiewicz Cc: Vegard Nossum Cc: Len Brown Signed-off-by: Linus Torvalds commit d6de2c80e9d758d2e36c21699117db6178c0f517 Author: Linus Torvalds Date: Fri Apr 10 12:17:41 2009 -0700 async: Fix module loading async-work regression Several drivers use asynchronous work to do device discovery, and we synchronize with them in the compiled-in case before we actually try to mount root filesystems etc. However, when compiled as modules, that synchronization is missing - the module loading completes, but the driver hasn't actually finished probing for devices, and that means that any user mode that expects to use the devices after the 'insmod' is now potentially broken. We already saw one case of a similar issue in the ACPI battery code, where the kernel itself expected the module to be all done, and unmapped the init memory - but the async device discovery was still running. That got hacked around by just removing the "__init" (see commit 5d38258ec026921a7b266f4047ebeaa75db358e5 "ACPI battery: fix async boot oops"), but the real fix is to just make the module loading wait for all async work to be completed. It will slow down module loading, but since common devices should be built in anyway, and since the bug is really annoying and hard to handle from user space (and caused several S3 resume regressions), the simple fix to wait is the right one. This fixes at least http://bugzilla.kernel.org/show_bug.cgi?id=13063 but probably a few other bugzilla entries too (12936, for example), and is confirmed to fix Rafael's storage driver breakage after resume bug report (no bugzilla entry). We should also be able to now revert that ACPI battery fix. Reported-and-tested-by: Rafael J. Wysocki Tested-by: Heinz Diehl Acked-by: Arjan van de Ven Signed-off-by: Linus Torvalds commit 7933a3cfba017330ebb25f9820cb25ec9cdd67cc Author: Linus Torvalds Date: Fri Apr 10 14:07:51 2009 -0700 Remove stale include/asm-mn10300/.gitignore file Requested-by: Sam Ravnborg Signed-off-by: Linus Torvalds commit 1e17d774db837fe1a536066cbe971114405d2ba1 Merge: d848223... 0ce49d6... Author: Linus Torvalds Date: Fri Apr 10 12:01:22 2009 -0700 Merge git://git.infradead.org/~dwmw2/firmware-2.6 * git://git.infradead.org/~dwmw2/firmware-2.6: qla1280: Fix off-by-some error in firmware loading. Add README.AddingFirmware file. Basically telling people not to. firmware: Remove newly-added slicoss and sxg firmware images firmware/WHENCE: Add missing origin information for Ambassador atmsar11.fw ALSA: wavefront - Always use request_firmware() Remove fdump tool for av7110 firmware firmware: convert av7110 driver to request_firmware() Partially revert "V4L/DVB (9533): cx88: Add support for TurboSight TBS8910 DVB-S PCI card" Revert "fix modules_install via NFS" Add-add conflicts in firmware/WHENCE fixed manually commit d848223808c5d21e1b3cea090047e34722c6254b Merge: 5de4c51... 2f2a213... Author: Linus Torvalds Date: Fri Apr 10 10:01:49 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-2.6-mn10300 * git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-2.6-mn10300: Separate out the proc- and unit-specific header directories from the general Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. commit 5de4c51d2a859a1556b7d20ae1278c3e2d70a79b Merge: 6594d0b... e69cc92... Author: Linus Torvalds Date: Fri Apr 10 07:47:13 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-2.6-frv * git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-2.6-frv: FRV: Move to arch/frv/include/asm/ FRV: Fix indentation errors to keep git-am happy when moving arch header files commit 2f2a2132ff056bb45697dc855eb4fd95b70b38cb Author: David Howells Date: Fri Apr 10 14:33:48 2009 +0100 Separate out the proc- and unit-specific header directories from the general MN10300 arch headers and place them instead in the same directories as contain the .c files for the processor and unit implementations. This permits the symlinks include/asm/proc and include/asm/unit to be dispensed with. This does, however, require that #include be converted to #include and similarly for asm/unit -> unit. Signed-off-by: David Howells commit da7616610c8d2ec16a8ada44216e836e5fcbd08b Author: David Howells Date: Fri Apr 10 14:19:03 2009 +0100 Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/. Signed-off-by: David Howells commit e69cc9278831139660cb99bde52908f145338d77 Author: David Howells Date: Fri Apr 10 01:48:06 2009 +0100 FRV: Move to arch/frv/include/asm/ Move arch headers from include/asm-frv/ to arch/frv/include/asm/. Signed-off-by: David Howells commit 187934655fa0637d4ef3967d4543c6dcccf33058 Author: David Howells Date: Fri Apr 10 01:48:01 2009 +0100 FRV: Fix indentation errors to keep git-am happy when moving arch header files Fix indentation errors to keep git-am happy when moving arch header files. Signed-off-by: David Howells commit 6594d0b1cdfd9058f5b766e490ea1c94ae5e0ed4 Merge: 0534c8c... f0edef8... Author: Linus Torvalds Date: Thu Apr 9 16:43:30 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (27 commits) xsysace: Fix dereferencing of cf_id after hd_driveid removal at91_ide: turn on PIO 6 support at91_ide: remove unused ide_mm_{outb,inb} ide-cd: reverse NOT_READY sense key logic ide: refactor tf_read() method ide: refactor tf_load() method ide: call write_devctl() method from tf_read() method ide: move common code out of tf_load() method ide: simplify 'struct ide_taskfile' ide: replace IDE_TFLAG_* flags by IDE_VALID_* ide-cd: fix intendation in cdrom_decode_status() ide-cd: unify handling of fs and pc requests in cdrom_decode_status() ide-cd: convert cdrom_decode_status() to use switch statements ide-cd: update debugging support ide-cd: respect REQ_QUIET for fs requests in cdrom_decode_status() ide: remove unused #include tx4939ide: Fix tx4939ide_{in,out}put_data_swap argument tx493[89]ide: Remove big endian version of tx493[89]ide_tf_{load,read} ide-cd: carve out an ide_cd_breathe()-helper for fs write requests ide-cd: move status checking into the IRQ handler ... commit 0534c8cb5c8a8a954751fa01eef7831a475a9ec5 Merge: 54f93b7... 07306c0... Author: Linus Torvalds Date: Thu Apr 9 16:42:26 2009 -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/nes: Add support for new SFP+ PHY RDMA/nes: Add wide_ppm_offset parm for switch compatibility RDMA/nes: Fix SFP+ PHY initialization RDMA/nes: Fix nes_nic_cm_xmit() error handling RDMA/nes: Fix error handling issues RDMA/nes: Fix incorrect casts on 32-bit architectures IPoIB: Document newish features RDMA/cma: Create cm id even when IB port is down RDMA/cma: Use rate from IPoIB broadcast when joining IPoIB multicast groups IPoIB: Avoid free_netdev() BUG when destroying a child interface mlx4_core: Don't leak mailbox for SET_PORT on Ethernet ports RDMA/cxgb3: Release dependent resources only when endpoint memory is freed. RDMA/cxgb3: Handle EEH events IB/mlx4: Use pgprot_writecombine() for BlueFlame pages commit 54f93b74cf8c575bb89f9bf32a40a39b83ace1e9 Merge: 3b3809a... 0f2ddca... Author: Linus Torvalds Date: Thu Apr 9 16:42:05 2009 -0700 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: ext4: check block device size on mount ext4: Fix off-by-one-error in ext4_valid_extent_idx() ext4: Fix big-endian problem in __ext4_check_blockref() commit 3b3809ac5375f614bbf8671cddeae3c693aa584e Author: Masami Hiramatsu Date: Thu Apr 9 10:55:33 2009 -0700 x86: fix set_fixmap to use phys_addr_t Use phys_addr_t for receiving a physical address argument instead of unsigned long. This allows fixmap to handle pages higher than 4GB on x86-32. Signed-off-by: Masami Hiramatsu Cc: Ingo Molnar Acked-by: Mathieu Desnoyers Signed-off-by: Linus Torvalds commit 62b8e680e61d3f48f2a12ee248ca03ea8f376926 Author: David Howells Date: Thu Apr 9 18:41:23 2009 +0100 MN10300: Kill MN10300's own profiling Kconfig Kill MN10300's own profiling Kconfig as this is superfluous given that the profiling options have moved to init/Kconfig and arch/Kconfig. Not only is this now superfluous, but the dependencies are not correct. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 6fde836b54f1f0ca3d3c8b7aaf44165a08fe0f9f Author: David Howells Date: Thu Apr 9 17:32:55 2009 +0100 FRV: Use in NOMMU mode asm-frv/pgtable.h could just #include in NOMMU mode rather than #defining macros for lazy MMU and CPU stuff. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 34574dd10b6d0697b86703388d6d6af9cbf4bb48 Author: David Howells Date: Thu Apr 9 17:14:05 2009 +0100 keys: Handle there being no fallback destination keyring for request_key() When request_key() is called, without there being any standard process keyrings on which to fall back if a destination keyring is not specified, an oops is liable to occur when construct_alloc_key() calls down_write() on dest_keyring's semaphore. Due to function inlining this may be seen as an oops in down_write() as called from request_key_and_link(). This situation crops up during boot, where request_key() is called from within the kernel (such as in CIFS mounts) where nobody is actually logged in, and so PAM has not had a chance to create a session keyring and user keyrings to act as the fallback. To fix this, make construct_alloc_key() not attempt to cache a key if there is no fallback key if no destination keyring is given specifically. Signed-off-by: David Howells Tested-by: Jeff Layton Signed-off-by: Linus Torvalds commit 11ff5f6affe9b75f115a900a5584db339d46002b Author: Stoyan Gaydarov Date: Thu Apr 9 17:10:28 2009 +0100 afs: BUG to BUG_ON changes Signed-off-by: Stoyan Gaydarov Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit e66dd19092497f566e4dda1664688e28fa667265 Merge: c2ea122... f20ab9c... Author: Linus Torvalds Date: Thu Apr 9 10:38:23 2009 -0700 Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: cpu_debug remove execute permission x86: smarten /proc/interrupts output for new counters x86: DMI match for the Dell DXP061 as it needs BIOS reboot x86: make 64 bit to use default_inquire_remote_apic x86, setup: un-resequence mode setting for VGA 80x34 and 80x60 modes x86, intel-iommu: fix X2APIC && !ACPI build failure commit c2ea122cd7c4a094be71641f3961796398035513 Merge: 17b2e9b... 66bb748... Author: Linus Torvalds Date: Thu Apr 9 10:37:46 2009 -0700 Merge branch 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: tracing: consolidate documents blktrace: pass the right pointer to kfree() tracing/syscalls: use a dedicated file header tracing: append a comma to INIT_FTRACE_GRAPH commit 17b2e9bf27d417bc186cc922b4d6d5eaa048f9d8 Merge: 422a253... e3c8ca8... Author: Linus Torvalds Date: Thu Apr 9 10:37:28 2009 -0700 Merge branch 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: sched: do not count frozen tasks toward load sched: refresh MAINTAINERS entry sched: Print sched_group::__cpu_power in sched_domain_debug cpuacct: add per-cgroup utime/stime statistics posixtimers, sched: Fix posix clock monotonicity sched_rt: don't allocate cpumask in fastpath cpuacct: make cpuacct hierarchy walk in cpuacct_charge() safe when rcupreempt is used -v2 commit 422a253483aa5de71a2bcdc27b0aa023053f97f8 Merge: 91e58b6... 022624a... 9756b15... 8f2e586... Author: Linus Torvalds Date: Thu Apr 9 10:35:30 2009 -0700 Merge branches 'core-fixes-for-linus', 'irq-fixes-for-linus' and 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: printk: fix wrong format string iter for printk futex: comment requeue key reference semantics * 'irq-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: irq: fix cpumask memory leak on offstack cpumask kernels * 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: posix-timers: fix RLIMIT_CPU && setitimer(CPUCLOCK_PROF) posix-timers: fix RLIMIT_CPU && fork() timers: add missing kernel-doc commit 91e58b6e95a9c6b9efd928ae352eae5e75ae598c Author: Thomas Gleixner Date: Thu Apr 9 18:18:47 2009 +0100 MN10300: Convert obsolete no_irq_type to no_irq_chip Convert the last remaining users to no_irq_chip. Signed-off-by: Thomas Gleixner Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit df5529297ec4c32d57dd149398e3add6c37bc054 Merge: 97c18e2... 340cd44... Author: Linus Torvalds Date: Thu Apr 9 08:01:21 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm * git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm: dm kcopyd: fix callback race dm kcopyd: prepare for callback race fix dm: implement basic barrier support dm: remove dm_request loop dm: rework queueing and suspension dm: simplify dm_request loop dm: split DMF_BLOCK_IO flag into two dm: rearrange dm_wq_work dm: remove limited barrier support dm: add integrity support commit 97c18e2c7a8e36d2d83d50ee070314aadac73a11 Author: Herbert Xu Date: Thu Apr 9 10:35:47 2009 +0800 module: try_then_request_module must wait Since the whole point of try_then_request_module is to retry the operation after a module has been loaded, we must wait for the module to fully load. Otherwise all sort of things start breaking, e.g., you won't be able to read your encrypted disks on the first attempt. Signed-off-by: Herbert Xu Tested-by: Maciej Rutecki Tested-by: Patrick McHardy Signed-off-by: Linus Torvalds commit e3c8ca8336707062f3f7cb1cd7e6b3c753baccdd Author: Nathan Lynch Date: Wed Apr 8 19:45:12 2009 -0500 sched: do not count frozen tasks toward load Freezing tasks via the cgroup freezer causes the load average to climb because the freezer's current implementation puts frozen tasks in uninterruptible sleep (D state). Some applications which perform job-scheduling functions consult the load average when making decisions. If a cgroup is frozen, the load average does not provide a useful measure of the system's utilization to such applications. This is especially inconvenient if the job scheduler employs the cgroup freezer as a mechanism for preempting low priority jobs. Contrast this with using SIGSTOP for the same purpose: the stopped tasks do not count toward system load. Change task_contributes_to_load() to return false if the task is frozen. This results in /proc/loadavg behavior that better meets users' expectations. Signed-off-by: Nathan Lynch Acked-by: Andrew Morton Acked-by: Nigel Cunningham Tested-by: Nigel Cunningham Cc: Cc: containers@lists.linux-foundation.org Cc: linux-pm@lists.linux-foundation.org Cc: Matt Helsley LKML-Reference: <20090408194512.47a99b95@manatee.lan> Signed-off-by: Ingo Molnar commit 66bb74888eb4bef4ba7c87c931ecb7ecca3a240c Author: Li Zefan Date: Thu Apr 9 11:40:27 2009 +0800 tracing: consolidate documents Move kmemtrace.txt, tracepoints.txt, ftrace.txt and mmiotrace.txt to the new trace/ directory. I didnt find any references to those documents in both source files and documents, so no extra work needs to be done. Signed-off-by: Li Zefan Acked-by: Pekka Paalanen Cc: Steven Rostedt Cc: Frederic Weisbecker Cc: Mathieu Desnoyers LKML-Reference: <49DD6E2B.6090200@cn.fujitsu.com> Signed-off-by: Ingo Molnar commit f20ab9c38fb85b4dde8b4139788ab9e735a35279 Author: Jaswinder Singh Rajput Date: Wed Apr 8 22:49:46 2009 +0530 x86: cpu_debug remove execute permission It seems by mistake these files got execute permissions so removing it. Signed-off-by: Jaswinder Singh Rajput LKML-Reference: <1239211186.9037.2.camel@ht.satnam> Signed-off-by: Ingo Molnar commit 9eb85125ce218a8b8d9a7c982510388e227adbec Author: Li Zefan Date: Thu Apr 9 11:19:40 2009 +0800 blktrace: pass the right pointer to kfree() Impact: fix kfree crash with non-standard act_mask string If passing a string with leading white spaces to strstrip(), the returned ptr != the original ptr. This bug was introduced by me. Signed-off-by: Li Zefan Cc: Jens Axboe Cc: Arnaldo Carvalho de Melo LKML-Reference: <49DD694C.8020902@cn.fujitsu.com> Signed-off-by: Ingo Molnar commit 47788c58e66c050982241d9a05eb690daceb05a9 Author: Frederic Weisbecker Date: Wed Apr 8 20:40:59 2009 +0200 tracing/syscalls: use a dedicated file header Impact: fix build warnings and possibe compat misbehavior on IA64 Building a kernel on ia64 might trigger these ugly build warnings: CC arch/ia64/ia32/sys_ia32.o In file included from arch/ia64/ia32/sys_ia32.c:55: arch/ia64/ia32/ia32priv.h:290:1: warning: "elf_check_arch" redefined In file included from include/linux/elf.h:7, from include/linux/module.h:14, from include/linux/ftrace.h:8, from include/linux/syscalls.h:68, from arch/ia64/ia32/sys_ia32.c:18: arch/ia64/include/asm/elf.h:19:1: warning: this is the location of the previous definition [...] sys_ia32.c includes linux/syscalls.h which in turn includes linux/ftrace.h to import the syscalls tracing prototypes. But including ftrace.h can pull too much things for a low level file, especially on ia64 where the ia32 private headers conflict with higher level headers. Now we isolate the syscall tracing headers in their own lightweight file. Reported-by: Tony Luck Tested-by: Tony Luck Signed-off-by: Frederic Weisbecker Acked-by: Tony Luck Signed-off-by: Steven Rostedt Cc: Peter Zijlstra Cc: Jason Baron Cc: "Frank Ch. Eigler" Cc: Mathieu Desnoyers Cc: KOSAKI Motohiro Cc: Lai Jiangshan Cc: Jiaying Zhang Cc: Michael Rubin Cc: Martin Bligh Cc: Michael Davidson LKML-Reference: <20090408184058.GB6017@nowhere> Signed-off-by: Ingo Molnar commit f4efdd65b754ebbf41484d3a2255c59282720650 Merge: d831220... 6b44003... Author: Linus Torvalds Date: Wed Apr 8 18:00:55 2009 -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: work_on_cpu(): rewrite it to create a kernel thread on demand kthread: move sched-realeted initialization from kthreadd context kthread: Don't looking for a task in create_kthread() #2 commit d8312204768861d77ec868265b2c1a36a1bf078f Merge: 3d4d4c8... 5bf2b99... Author: Linus Torvalds Date: Wed Apr 8 17:45:02 2009 -0700 Merge git://git.infradead.org/battery-2.6 * git://git.infradead.org/battery-2.6: pda_power: Add optional OTG transceiver and voltage regulator support pcf50633_charger: Remove unused mbc_set_status function pcf50633_charger: Enable periodic charging restart commit 3d4d4c8bb63a705d95a46d299469d8a10b8b229c Merge: c71d9ca... 5bf37ec... Author: Linus Torvalds Date: Wed Apr 8 17:44:28 2009 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6: cap_prctl: don't set error to 0 at 'no_change' commit c71d9caf6cfdee56da2924a054cc84cbe91d82b6 Merge: a219ee8... 2a3abf6... Author: Linus Torvalds Date: Wed Apr 8 17:43:58 2009 -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: igb: remove sysfs entry that was used to set the number of vfs igbvf: add new driver to support 82576 virtual functions drivers/net/eql.c: Fix a dev leakage. niu: Fix unused variable warning. r6040: set MODULE_VERSION bnx2: Don't use reserved names FEC driver: add missing #endif niu: Fix error handling mv643xx_eth: don't reset the rx coal timer on interface up smsc911x: correct debugging message on mii read timeout ethoc: fix library build errors netfilter: ctnetlink: fix regression in expectation handling netfilter: fix selection of "LED" target in netfilter netfilter: ip6tables regression fix commit a219ee88b679c275863b882a0bb7b3330763e609 Merge: a7b334d... 018ef96... Author: Linus Torvalds Date: Wed Apr 8 17:43:39 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: sparc: Hook up sys_preadv and sys_pwritev sparc64: add_node_ranges() must be __init serial: sunsu: sunsu_kbd_ms_init needs to be __devinit sparc: Fix section mismatch warnings in cs4231 sound driver. sparc64: Fix section mismatch warnings in PCI controller drivers. sparc64: Fix section mismatch warnings in power driver. sparc64: get_cells() can't be marked __init commit a7b334de4d3651491ccd8c52c744af88d48785b9 Merge: 72ae9e0... 430db32... Author: Linus Torvalds Date: Wed Apr 8 17:42:32 2009 -0700 Merge branch 'ext3-latency-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 * 'ext3-latency-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: ext3: Try to avoid starting a transaction in writepage for data=writepage block_write_full_page: switch synchronous writes to use WRITE_SYNC_PLUG commit 6b44003e5ca66a3fffeb5bc90f40ada2c4340896 Author: Andrew Morton Date: Thu Apr 9 09:50:37 2009 -0600 work_on_cpu(): rewrite it to create a kernel thread on demand Impact: circular locking bugfix The various implemetnations and proposed implemetnations of work_on_cpu() are vulnerable to various deadlocks because they all used queues of some form. Unrelated pieces of kernel code thus gained dependencies wherein if one work_on_cpu() caller holds a lock which some other work_on_cpu() callback also takes, the kernel could rarely deadlock. Fix this by creating a short-lived kernel thread for each work_on_cpu() invokation. This is not terribly fast, but the only current caller of work_on_cpu() is pci_call_probe(). It would be nice to find some other way of doing the node-local allocations in the PCI probe code so that we can zap work_on_cpu() altogether. The code there is rather nasty. I can't think of anything simple at this time... Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Rusty Russell commit 1c99315bb36b5d776210546d438ca928dc9b1f22 Author: Oleg Nesterov Date: Thu Apr 9 09:50:36 2009 -0600 kthread: move sched-realeted initialization from kthreadd context kthreadd is the single thread which implements ths "create" request, move sched_setscheduler/etc from create_kthread() to kthread_create() to improve the scalability. We should be careful with sched_setscheduler(), use _nochek helper. Signed-off-by: Oleg Nesterov Cc: Christoph Hellwig Cc: "Eric W. Biederman" Cc: Ingo Molnar Cc: Pavel Emelyanov Cc: Vitaliy Gusev Signed-off-by: Rusty Russell commit 3217ab97f14c5c8f9f975ed8c40c351164b0b10e Author: Vitaliy Gusev Date: Thu Apr 9 09:50:35 2009 -0600 kthread: Don't looking for a task in create_kthread() #2 Remove the unnecessary find_task_by_pid_ns(). kthread() can just use "current" to get the same result. Signed-off-by: Vitaliy Gusev Acked-by: Oleg Nesterov Signed-off-by: Rusty Russell commit 340cd44451fb0bfa542365e6b4b565bbd44836e2 Author: Mikulas Patocka Date: Thu Apr 9 00:27:17 2009 +0100 dm kcopyd: fix callback race If the thread calling dm_kcopyd_copy is delayed due to scheduling inside split_job/segment_complete and the subjobs complete before the loop in split_job completes, the kcopyd callback could be invoked from the thread that called dm_kcopyd_copy instead of the kcopyd workqueue. dm_kcopyd_copy -> split_job -> segment_complete -> job->fn() Snapshots depend on the fact that callbacks are called from the singlethreaded kcopyd workqueue and expect that there is no racing between individual callbacks. The racing between callbacks can lead to corruption of exception store and it can also mean that exception store callbacks are called twice for the same exception - a likely reason for crashes reported inside pending_complete() / remove_exception(). This patch fixes two problems: 1. job->fn being called from the thread that submitted the job (see above). - Fix: hand over the completion callback to the kcopyd thread. 2. job->fn(read_err, write_err, job->context); in segment_complete reports the error of the last subjob, not the union of all errors. - Fix: pass job->write_err to the callback to report all error bits (it is done already in run_complete_job) Cc: stable@kernel.org Signed-off-by: Mikulas Patocka Signed-off-by: Alasdair G Kergon commit 73830857bca6f6c9dbd48e906daea50bea42d676 Author: Mikulas Patocka Date: Thu Apr 9 00:27:16 2009 +0100 dm kcopyd: prepare for callback race fix Use a variable in segment_complete() to point to the dm_kcopyd_client struct and only release job->pages in run_complete_job() if any are defined. These changes are needed by the next patch. Cc: stable@kernel.org Signed-off-by: Mikulas Patocka Signed-off-by: Alasdair G Kergon commit af7e466a1acededbc10beaba9eec8531d561c566 Author: Mikulas Patocka Date: Thu Apr 9 00:27:16 2009 +0100 dm: implement basic barrier support Barriers are submitted to a worker thread that issues them in-order. The thread is modified so that when it sees a barrier request it waits for all pending IO before the request then submits the barrier and waits for it. (We must wait, otherwise it could be intermixed with following requests.) Errors from the barrier request are recorded in a per-device barrier_error variable. There may be only one barrier request in progress at once. For now, the barrier request is converted to a non-barrier request when sending it to the underlying device. This patch guarantees correct barrier behavior if the underlying device doesn't perform write-back caching. The same requirement existed before barriers were supported in dm. Bottom layer barrier support (sending barriers by target drivers) and handling devices with write-back caches will be done in further patches. Signed-off-by: Mikulas Patocka Signed-off-by: Alasdair G Kergon commit 92c639021ca6e962645114f02e356e7feb131d0b Author: Mikulas Patocka Date: Thu Apr 9 00:27:15 2009 +0100 dm: remove dm_request loop Remove queue_io return value and a loop in dm_request. IO may be submitted to a worker thread with queue_io(). queue_io() sets DMF_QUEUE_IO_TO_THREAD so that all further IO is queued for the thread. When the thread finishes its work, it clears DMF_QUEUE_IO_TO_THREAD and from this point on, requests are submitted from dm_request again. This will be used for processing barriers. Remove the loop in dm_request. queue_io() can submit I/Os to the worker thread even if DMF_QUEUE_IO_TO_THREAD was not set. Signed-off-by: Mikulas Patocka Signed-off-by: Alasdair G Kergon commit 3b00b2036fac7a7667d0676a0f80eee575b8c32b Author: Mikulas Patocka Date: Thu Apr 9 00:27:15 2009 +0100 dm: rework queueing and suspension Rework shutting down on suspend and document the associated rules. Drop write lock in __split_and_process_bio to allow more processing concurrency. Signed-off-by: Mikulas Patocka Signed-off-by: Alasdair G Kergon commit 54d9a1b4513b96cbd835ca6866c6a604d194b2ae Author: Alasdair G Kergon Date: Thu Apr 9 00:27:14 2009 +0100 dm: simplify dm_request loop Refactor the code in dm_request(). Require the new DMF_BLOCK_FOR_SUSPEND flag on readahead bios we will discard so we don't drop such bios while processing a barrier. Signed-off-by: Alasdair G Kergon commit 1eb787ec183d1267cac95aae632e92dee05ed50a Author: Alasdair G Kergon Date: Thu Apr 9 00:27:14 2009 +0100 dm: split DMF_BLOCK_IO flag into two Split the DMF_BLOCK_IO flag into two. DMF_BLOCK_IO_FOR_SUSPEND is set when I/O must be blocked while suspending a device. DMF_QUEUE_IO_TO_THREAD is set when I/O must be queued to a worker thread for later processing. Signed-off-by: Alasdair G Kergon commit df12ee996378a5917e9555169fe278ecca0612d4 Author: Alasdair G Kergon Date: Thu Apr 9 00:27:13 2009 +0100 dm: rearrange dm_wq_work Refactor dm_wq_work() to make later patch more readable. Signed-off-by: Alasdair G Kergon commit 692d0eb9e02cf81fb387ff891f53840db2f3110a Author: Mikulas Patocka Date: Thu Apr 9 00:27:13 2009 +0100 dm: remove limited barrier support Prepare for full barrier implementation: first remove the restricted support. Signed-off-by: Mikulas Patocka Signed-off-by: Alasdair G Kergon commit 9c47008d13add50ec4597a8b9eee200c515282c8 Author: Martin K. Petersen Date: Thu Apr 9 00:27:12 2009 +0100 dm: add integrity support This patch provides support for data integrity passthrough in the device mapper. - If one or more component devices support integrity an integrity profile is preallocated for the DM device. - If all component devices have compatible profiles the DM device is flagged as capable. - Handle integrity metadata when splitting and cloning bios. Signed-off-by: Martin K. Petersen Signed-off-by: Alasdair G Kergon commit 5bf37ec3e0f5eb79f23e024a7fbc8f3557c087f0 Author: Serge E. Hallyn Date: Wed Apr 8 16:55:58 2009 -0500 cap_prctl: don't set error to 0 at 'no_change' One-liner: capsh --print is broken without this patch. In certain cases, cap_prctl returns error > 0 for success. However, the 'no_change' label was always setting error to 0. As a result, for example, 'prctl(CAP_BSET_READ, N)' would always return 0. It should return 1 if a process has N in its bounding set (as by default it does). I'm keeping the no_change label even though it's now functionally the same as 'error'. Signed-off-by: Serge Hallyn Acked-by: David Howells Signed-off-by: James Morris commit 2a3abf6d17b6026a59e5cf7452d70ec1ad6a69fa Author: Alexander Duyck Date: Tue Apr 7 14:37:52 2009 +0000 igb: remove sysfs entry that was used to set the number of vfs This patch removes the sysfs entry num_vfs which was added to support enabling pci virtual functions for 82576. To prevent VFs from loading automatically a module parameter "max_vfs" was added so that the number of VFs per PF can be limited. This is especially useful when 4 or more 82576 ports are on the system because otherwise to load all VFs would result in 8 interface per physical port. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit d4e0fe01a38a073568aee541a0247fe734095979 Author: Alexander Duyck Date: Tue Apr 7 14:37:34 2009 +0000 igbvf: add new driver to support 82576 virtual functions This adds an igbvf driver to handle virtual functions provided by the igb driver when SR-IOV has been enabled. A virtual function is a lightweight pci-e function that supports a single queue and shares resources with the 82576 physical function contained within the igb driver. To spawn virtual functions from the igb driver all that is needed is to enable CONFIG_PCI_IOV and have an 82576 Ethernet adapter on a system that supports SR-IOV in the BIOS. The virtual functions will appear after the interface is loaded. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 93889d7574ec90bb4455929ad0536d8df74bc730 Author: Yang Hongyang Date: Wed Apr 8 15:56:33 2009 -0700 drivers/net/eql.c: Fix a dev leakage. After dev_get_by_name(), we should follow a dev_put(). Signed-off-by: Yang Hongyang Signed-off-by: David S. Miller commit efb6c736da8f9c455c22bcbf717dbcf1889d0325 Author: David S. Miller Date: Wed Apr 8 15:52:16 2009 -0700 niu: Fix unused variable warning. Don't strain gcc's tiny mind. Signed-off-by: David S. Miller commit bc4de26040d3bdc170aaa47044adf9d318a06772 Author: Florian Fainelli Date: Wed Apr 8 15:50:43 2009 -0700 r6040: set MODULE_VERSION This patch sets MODULE_VERSION in order to help users track changes to this module. Signed-off-by: Florian Fainelli Signed-off-by: David S. Miller commit 5ee1c32628e4baa0d99146a8adc594220f947aad Author: Bastian Blank Date: Wed Apr 8 15:50:07 2009 -0700 bnx2: Don't use reserved names The mips identifier is reserved by gcc on mips plattforms. Don't use it in the code. Signed-off-by: Bastian Blank Tested-by: Martin Michlmayr Signed-off-by: David S. Miller commit fb922b0de60d64473f68515a90a7df603267d245 Author: Sascha Hauer Date: Wed Apr 8 15:44:45 2009 -0700 FEC driver: add missing #endif Signed-off-by: Sascha Hauer Signed-off-by: David S. Miller commit 58f3e0a864c46dadbeadf682e6bbdcab14ba19d3 Author: Dan Carpenter Date: Wed Apr 8 15:44:04 2009 -0700 niu: Fix error handling platform_device_register_simple() returns ERR_PTR(), not NULL, if an error occurs. Found by smatch (http://repo.or.cz/w/smatch.git). Compile tested. Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit b5e86db4c7f6397ef86ab5e4a3fbece966935577 Author: Lennert Buytenhek Date: Wed Apr 8 15:42:46 2009 -0700 mv643xx_eth: don't reset the rx coal timer on interface up Move SDMA configuration from interface up to port probe, to prevent overwriting the receive coalescing timer value on interface up. Signed-off-by: Lennert Buytenhek Signed-off-by: David S. Miller commit 150899d29367eb60302bcb710e779617d04aceea Author: Steve Glendinning Date: Wed Apr 8 15:42:15 2009 -0700 smsc911x: correct debugging message on mii read timeout the warning printed when a mii READ times out currently says "Timed out waiting for MII write to finish". This patch corrects this. Signed-off-by: Steve Glendinning Signed-off-by: David S. Miller commit c5cacb3bf91b0841e5a721ca303658a407d5c34f Author: Randy Dunlap Date: Wed Apr 8 15:41:25 2009 -0700 ethoc: fix library build errors ethoc indirectly uses crc32_le() and bitrev32(), so select those library functions to be built. drivers/built-in.o: In function `ethoc_set_multicast_list': ethoc.c:(.text+0x6226f): undefined reference to `crc32_le' ethoc.c:(.text+0x62276): undefined reference to `bitrev32' Signed-off-by: Randy Dunlap Signed-off-by: David S. Miller commit 72ae9e092c8a62ef60a364ec812f5f88eb6442fc Merge: 7b85a88... 8851d37... Author: Linus Torvalds Date: Wed Apr 8 15:36:42 2009 -0700 Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6: [IA64] wire up preadv/pwritev system calls commit 7b85a88ca7760d6d5f34bdaa793c71d921a3e853 Merge: 139ef17... 8897c18... Author: Linus Torvalds Date: Wed Apr 8 15:32:06 2009 -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: x86 ACPI: Add support for Always Running APIC timer ACPI x86: Make aperf/mperf MSR access in acpi_cpufreq read_only ACPI x86: Cleanup acpi_cpufreq structures related to aperf/mperf ACPICA: delete check for AML access to port 0x81-83 ACPI: WMI: use .notify method instead of installing handler directly sony-laptop: use .notify method instead of installing handler directly panasonic-laptop: use .notify method instead of installing handler directly fujitsu-laptop: use .notify method instead of installing hotkey handler directly fujitsu-laptop: use .notify method instead of installing handler directly ACPI: video: use .notify method instead of installing handler directly ACPI: thermal: use .notify method instead of installing handler directly ACPI battery: fix async boot oops ACPI: delete acpi_device.g_list NULL noise: drivers/platform/x86/panasonic-laptop.c ACPI: cpufreq: remove dupilcated #include ACPI: Adjust Kelvin offset to match local implementation ACPI: convert acpi_device_lock spinlock to mutex commit 139ef17a464a222aadf7b543d734a4001d06b720 Merge: d2e2d7c... 3d6fdf7... Author: Linus Torvalds Date: Wed Apr 8 15:24:09 2009 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-arm * master.kernel.org:/home/rmk/linux-2.6-arm: [ARM] 5446/1: ohci-at91: Limit vbus_pin assignment to the size of the array [ARM] 5445/1: AT91: Remove flexible array from USBH platform data [ARM] 5447/1: Add SZ_32K [ARM] omap: fix omap1 clock usecount decrement bug [ARM] pxa: register AC97 controller devices [ARM] pxa/csb701: do not register devices on non-csb726 boads [ARM] pxa/colibri: get rid of set_irq_type() [ARM] pxa/colibri: provide MAC address from ATAG_SERIAL [ARM] pxa/cm-x2xx: fix ucb1400 not being registered [ARM] pxa: Add support for suspend on PalmTX, T5 and LD [ARM] pxa: PalmTE2 support for battery, UDC, IrDA and backlight [ARM] pxa: Palm Tungsten E2 basic support [ARM] pxa/em-x270: add libertas device registration [ARM] pxa/magician: Enable bq24022 regulator for gpio_vbus and pda_power commit d2e2d7ca14f123cb1d03408c2bc6db8d402f416d Merge: 7831d56... ab5a643... Author: Linus Torvalds Date: Wed Apr 8 14:33:59 2009 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc: mmc_spi: support for non-byte-aligned cards omap_hsmmc: Do not expect cmd/data to be non-null when CC/TC occurs mmc: Fix compile for omap_hsmmc.c mmc_spi: convert timeout handling to jiffies and avoid busy waiting mmc_spi: do not check CID and CSD blocks with CRC16 omap_hsmmc: Flush posted write to IRQ New mail address for Pierre Ossman imxmmc: move RSSR BLR imxmmc: init-exit rework mmc: Accept EXT_CSD rev 1.3 since it is backwards compatible with 1.2 commit 7831d56b0a3544cbb6f82f76c34ca95e24d5b676 Author: Alan Cox Date: Wed Apr 8 20:13:16 2009 +0100 tty: MAX3100 Thou shalt remember to use 'git add' or errors shall be visited on your downloads and there shall be wrath from on list and much gnashing of teeth. Thou shalt remember to use git status or there shall be catcalls and much embarrasment shall come to pass. Signed-off-by: Alan "I'm hiding" Cox Signed-off-by: Linus Torvalds commit 07306c0b98a9a0399bff1b91229b4c3b55912189 Merge: d2ca39f... 874d8df... 6a3335b... 352b09e... 4303565... Author: Roland Dreier Date: Wed Apr 8 14:28:21 2009 -0700 Merge branches 'cma', 'cxgb3', 'ipoib', 'mlx4' and 'nes' into for-next commit 4303565df4eb425851ddd22136fec69bdfeede61 Author: Chien Tung Date: Wed Apr 8 14:27:56 2009 -0700 RDMA/nes: Add support for new SFP+ PHY Add new register settings for new SFP+ PHY/firmware. Add new PHY to to nes_netdev_get/set_settings. Signed-off-by: Chien Tung Signed-off-by: Roland Dreier commit a4849fc157cdbe4fb68cfe37e7222697f003deb5 Author: Chien Tung Date: Wed Apr 8 14:27:18 2009 -0700 RDMA/nes: Add wide_ppm_offset parm for switch compatibility We have observed unstable link with a new BNT switch. Add wide_ppm_offset parameter to allow the user to control the clock ppm offset on the CX4 interface for better compatibility. Default is 100ppm, setting it to 1 will increase it to 300ppm. Change default SerDes1 reference clock to external source. Signed-off-by: Chien Tung Signed-off-by: Roland Dreier commit 1b9493248cf5e9f1ecc045488100cbf3ccd91be1 Author: Chien Tung Date: Wed Apr 8 14:27:09 2009 -0700 RDMA/nes: Fix SFP+ PHY initialization SFP+ PHY initialization has very long delays, incorrect settings for direct attach copper cables, and inconsistent link detection. Adjust delays to the minimum required by the PHY. Worst case is now less than 4 seconds. Add new register settings for direct attach cables. Change link detection logic to use two new registers for more consistent link state detection. Reorganize code to shorten line length. Signed-off-by: Chien Tung Signed-off-by: Roland Dreier commit 5962c2c8036b4dcf10ec6c481be656ae4700b664 Author: Faisal Latif Date: Wed Apr 8 14:23:55 2009 -0700 RDMA/nes: Fix nes_nic_cm_xmit() error handling We are getting crash or hung situation when we are running network cable pull tests during RDMA traffic. In schedule_nes_timer(), we return an error if nes_nic_cm_xmit() returns failure. This is changed to success as skb is being put on the timer routines to be processed later. In send_syn() case, we are indicating connect failure once from nes_connect() and the other when the rexmit retries expires. The other issue is skb->users which we are incrementing before calling nes_nic_cm_xmit() which calls dev_queue_xmit() but in case of failure we are decrementing the skb->users at the same time putting the skb on the rexmit path. Even if dev_queue_xmit() fails, the skb->users is decremented already. We are removing the decrement of skb->users in case of failure from both schedule_nes_timer() as well as from nes_cm_timer_tick(). There is also extra check in nes_cm_timer_tick() for rexmit failure which does a break from the loop is removed. This causes problem as the other nodes have their cm_node->ref_count incremented and are not processed. Signed-off-by: Faisal Latif Signed-off-by: Roland Dreier commit 79fc3d7410c861c8ced5b81a5c3759f6bbf891dc Author: Faisal Latif Date: Wed Apr 8 14:22:20 2009 -0700 RDMA/nes: Fix error handling issues Fix issues found by static code analysis: (1) Check if cm_node was successfully created for loopback connection. (2) schedule_nes_timer() does not free up allocated memory after encountering an error. There is a WARN_ON() for this condition. (3) there is a cm_node->freed flag which is set but not used. Reported-by: Dan Carpenter Signed-off-by: Faisal Latif Signed-off-by: Roland Dreier commit 7a5efb62f6ae366cefac6be475434906c5061e15 Author: Don Wood Date: Wed Apr 8 14:21:02 2009 -0700 RDMA/nes: Fix incorrect casts on 32-bit architectures The were some incorrect casts to unsigned long that caused 64-bit values to be truncated on 32-bit architectures and made the driver pass invalid adresses and lengths to the hardware. The problems were primarily seen with kernels with highmem configured but some could show up in non-highmem kernels, too. Signed-off-by: Don Wood Signed-off-by: Roland Dreier commit 6a3335b43342b42dd6c69b4bbbde15d622cb49ca Author: Or Gerlitz Date: Wed Apr 8 13:52:01 2009 -0700 IPoIB: Document newish features Update the documentation to include connected mode, stateless offloads and interrupt moderation, and add a reference to the connected mode RFC. Signed-off-by: Or Gerlitz Signed-off-by: Roland Dreier commit 8851d3712a73649e1ae0d4620e7690c8db8742df Author: Tony Luck Date: Wed Apr 8 13:46:14 2009 -0700 [IA64] wire up preadv/pwritev system calls Gerd Hoffmann added these to Linux. Let ia64 use them. Signed-off-by: Tony Luck commit d2ca39f262806aa2f035f680a14aa55ff9e3d889 Author: Yossi Etigin Date: Wed Apr 8 13:42:33 2009 -0700 RDMA/cma: Create cm id even when IB port is down When doing rdma_resolve_addr(), if the relevant IB port is down, the function fails and the cm_id is not bound to the correct device. Therefore, application does not have a device handle and cannot wait for the port to become active. The function fails because the underlying IPoIB interface is not joined to the broadcast group and therefore the SA does not have a multicast record to take a Q_Key from. The fix is to use lazy Q_Key resolution - cma_set_qkey() will set id_priv->qkey if it was not set, and will be called just before the Q_Key is really required. Signed-off-by: Yossi Etigin Acked-by: Sean Hefty Signed-off-by: Roland Dreier commit fd1cc4802482d13ba1dbc44b390c5a6b16411a03 Merge: 577c9c4... 8373167... Author: David S. Miller Date: Wed Apr 8 13:39:54 2009 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6 commit 3d6fdf7563d0a67c6973cf421f7405524ed8bdaf Author: Justin Waters Date: Fri Apr 3 21:06:53 2009 +0100 [ARM] 5446/1: ohci-at91: Limit vbus_pin assignment to the size of the array Currently, the vbus_pin assignment loop is limited by the value of the "ports" variable in the platform data. Now that the vbus_pin array is no longer flexible, we can use its actual size. Signed-off-by: Justin Waters Acked-by: Andrew Victor Signed-off-by: Russell King commit d0176f612f5c3edca00b9d0cc65555ad34843ec7 Author: Justin Waters Date: Fri Apr 3 21:03:59 2009 +0100 [ARM] 5445/1: AT91: Remove flexible array from USBH platform data The flexible array in the USBH platform data is not safe to copy. The compiler will not allocate any extra memory for the non-init platform data structure (in the *_devices.c files) since it isn't given any defaults at compile time. When the probe function attempts to address that array, it will actually attempt to access data in an adjacent structure. Since there are currently no (known) implementations of the at91 USBH IP with more than 2 vbus pins, I am capping the value at 2. If somebody tries to assign more, then the compiler will produce a warning. Signed-off-by: Justin Waters Acked-by: David Brownell Acked-by: Andrew Victor Signed-off-by: Russell King commit 8bd239d2ef00ed3319bf7384acd19c8253f0bb68 Author: Linus Walleij Date: Wed Apr 8 01:32:20 2009 +0100 [ARM] 5447/1: Add SZ_32K This adds a SZ_32K define to the available sizes. I need it for an upcoming platform support. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit ab5a643cf597f2214feb6ff7288c72589661bde1 Author: Wolfgang Muees Date: Wed Apr 8 09:48:58 2009 +0100 mmc_spi: support for non-byte-aligned cards A very large subset of SD cards in the market send their responses and data non-byte-aligned. So add logic to the mmc spi driver to handle this mess. Signed-off-by: Wolfgang Muees Signed-off-by: Pierre Ossman commit a8fe29d8bcdfbf85ba26c7f3522c4bdfbc83e71d Author: Jarkko Lavinen Date: Wed Apr 8 11:18:32 2009 +0300 omap_hsmmc: Do not expect cmd/data to be non-null when CC/TC occurs With spurious interrupt cmd can be null even when we have CC set in irq status. Fixes: NB#106295 - prevent potential kernel crash in the MMC driver Signed-off-by: Jarkko Lavinen Signed-off-by: Adrian Hunter Signed-off-by: Pierre Ossman commit d31f65e8464927f2cfdee6b0b01b9e3a8ce5db9c Author: Tony Lindgren Date: Tue Apr 7 17:04:33 2009 -0700 mmc: Fix compile for omap_hsmmc.c This fixes the issue noted by Russell King: drivers/mmc/host/omap_hsmmc.c: In function 'mmc_omap_xfer_done': drivers/mmc/host/omap_hsmmc.c:301: error: implicit declaration of function 'mmc_omap_fclk_lazy_disable' This got broken by 4a694dc915c9a223044ce21fc0d99e63facd1d64. Signed-off-by: Tony Lindgren Signed-off-by: Pierre Ossman commit 56e303ebeec7ef43dbd9d7998f8ad1a9f75d59bc Author: Wolfgang Muees Date: Tue Apr 7 15:26:30 2009 +0100 mmc_spi: convert timeout handling to jiffies and avoid busy waiting SD/MMC card timeouts can be very high. So avoid busy-waiting, using the scheduler. Calculate all timeouts in jiffies units, because this will give us the correct sign when to involve the scheduler. Signed-off-by: Wolfgang Muees Signed-off-by: Pierre Ossman commit 9d9f25c036dd584db175552a7d162403d3ab54b3 Author: Wolfgang Muees Date: Tue Apr 7 14:48:16 2009 +0100 mmc_spi: do not check CID and CSD blocks with CRC16 Some cards are not able to calculate a valid CRC16 value for CID and CSD reads (CRC for 512 byte data blocks is OK). By moving the CRC enable after the read of CID and CSD, these cards can be used. This patch was tested with a faulty 8 GByte takeMS Class 6 SDHC card. This patch was suggested by Pierre Ossman. Signed-off-by: Wolfgang Muees Signed-off-by: Pierre Ossman commit 00adadc12196c7b3e8923729e728162267e98ff7 Author: Kevin Hilman Date: Mon Apr 6 15:01:19 2009 +0300 omap_hsmmc: Flush posted write to IRQ Spurious IRQs seen on MMC after 2.6.29. Flush posted write in IRQ handler. The interrupt line is released by clearing the error status bits in the MMCHS_STAT register, which must occur before the interrupt handler returns to avoid unwanted irqs. Hence the need to flush the posted write. Signed-off-by: Kevin Hilman Signed-off-by: Adrian Hunter Acked-by: Tony Lindgen Signed-off-by: Pierre Ossman commit 32710e8fd537adeb53f98dec92e4a77caac512f5 Author: Pierre Ossman Date: Wed Apr 8 20:14:54 2009 +0200 New mail address for Pierre Ossman Signed-off-by: Pierre Ossman commit 34b28950168abd7ad55fe3493ea21f1340c7294a Author: Paulius Zaleckas Date: Wed Mar 25 11:18:50 2009 +0200 imxmmc: move RSSR BLR DMA request source (RSSR) needs to be set only once (in probe). DMA burst length (BLR) need to be set only in set_ios() This cleans up imxmci_setup_data() and should make it a little bit faster :) Signed-off-by: Paulius Zaleckas Signed-off-by: Pierre Ossman commit b513b6cc0fcbb0ef733eec487618da7ea2d7cc61 Author: Paulius Zaleckas Date: Wed Mar 25 11:17:42 2009 +0200 imxmmc: init-exit rework Add __init __exit for appropriate probe and remove functions. Conver to platform_driver_probe() Signed-off-by: Paulius Zaleckas Acked-by: Sascha Hauer Signed-off-by: Pierre Ossman commit 3e44ddd44ea59354221b811605745ec453130c06 Author: Jarkko Lavinen Date: Thu Nov 27 14:30:32 2008 +0200 mmc: Accept EXT_CSD rev 1.3 since it is backwards compatible with 1.2 Signed-off-by: Jarkko Lavinen Signed-off-by: Pierre Ossman commit 3a709703538c471530405556dda136fd0d82b0dc Author: Roland McGrath Date: Tue Apr 7 23:21:06 2009 -0700 ptrace: some checkpatch fixes This fixes all the checkpatch --file complaints about kernel/ptrace.c and also removes an unused #include. I've verified that there are no changes to the compiled code on x86_64. Signed-off-by: Roland McGrath [ Removed the parts that just split a line - Linus ] Signed-off-by: Linus Torvalds commit 4c967291fc875a53de7126d256ad5e48f42a6521 Author: Nobuhiro Iwamatsu Date: Tue Apr 7 21:21:43 2009 -0700 nommu: fix typo vma->pg_off to vma->vm_pgoff 6260a4b0521a41189b2c2a8119096c1e21dbdf2c ("/proc/pid/maps: don't show pgoff of pure ANON VMAs" had a typo. fs/proc/task_nommu.c:138: error: 'struct vm_area_struct' has no member named 'pg_off' distcc[21484] ERROR: compile fs/proc/task_nommu.c on sprygo/32 failed Signed-off-by: Nobuhiro Iwamatsu Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2b3fffefea993a94c386b2d96de2d09469c343d1 Author: Alexander Beregalov Date: Tue Apr 7 21:21:42 2009 -0700 befs: fix build on parisc fs/befs/super.c:85: error: 'PAGE_SIZE' undeclared Signed-off-by: Alexander Beregalov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 430db323fae7665da721768949ade6304811c648 Author: Jan Kara Date: Tue Apr 7 18:25:01 2009 -0400 ext3: Try to avoid starting a transaction in writepage for data=writepage This does the same as commit 9e80d407736161d9b8b0c5a0d44f786e44c322ea (avoid starting a transaction when no block allocation is needed) but for data=writeback mode of ext3. We also cleanup the data=ordered case a bit to stick to coding style... Signed-off-by: Jan Kara Signed-off-by: "Theodore Ts'o" commit 6e34eeddf7deec1444bbddab533f03f520d8458c Author: Theodore Ts'o Date: Tue Apr 7 18:12:43 2009 -0400 block_write_full_page: switch synchronous writes to use WRITE_SYNC_PLUG Now that we have a distinction between WRITE_SYNC and WRITE_SYNC_PLUG, use WRITE_SYNC_PLUG in __block_write_full_page() to avoid unplugging the block device I/O queue between each page that gets flushed out. Otherwise, when we run sync() or fsync() and we need to write out a large number of pages, the block device queue will get unplugged between for every page that is flushed out, which will be a pretty serious performance regression caused by commit a64c8610. Signed-off-by: "Theodore Ts'o" commit 59d138120d18930ba9a5466662d45a2bd2223455 Author: Hidetoshi Seto Date: Wed Mar 25 10:50:34 2009 +0900 x86: smarten /proc/interrupts output for new counters Now /proc/interrupts of tip tree has new counters: PLT: Platform interrupts Format change of output, as like that by commit: commit 7a81d9a7da03d2f27840d659f97ef140d032f609 x86: smarten /proc/interrupts output should be applied to these new counters too. Signed-off-by: Hidetoshi Seto Cc: Jan Beulich LKML-Reference: <49C98DEA.8060208@jp.fujitsu.com> Signed-off-by: Ingo Molnar commit 280ff388b1b7a818a64af4c789299e62c0d3c094 Merge: c5da9a2... 577c9c4... Author: Ingo Molnar Date: Wed Apr 8 18:04:48 2009 +0200 Merge commit 'v2.6.30-rc1' into x86/urgent Merge reason: fix to be queued up depends on upstream facilities Signed-off-by: Ingo Molnar commit c5da9a2bb24a7928c39495cdabf98d3f7931bde5 Author: Alan Cox Date: Thu Mar 26 20:45:28 2009 +0000 x86: DMI match for the Dell DXP061 as it needs BIOS reboot Closes http://bugzilla.kernel.org/show_bug.cgi?12901 Signed-off-by: Alan Cox LKML-Reference: <20090326204524.4454.8776.stgit@localhost.localdomain> Signed-off-by: Ingo Molnar commit 8f2e586567b1bad72dac7c3810fe9a2ef7117506 Author: Oleg Nesterov Date: Fri Mar 27 01:06:10 2009 +0100 posix-timers: fix RLIMIT_CPU && setitimer(CPUCLOCK_PROF) update_rlimit_cpu() tries to optimize out set_process_cpu_timer() in case when we already have CPUCLOCK_PROF timer which should expire first. But it uses cputime_lt() instead of cputime_gt(). Test case: int main(void) { struct itimerval it = { .it_value = { .tv_sec = 1000 }, }; assert(!setitimer(ITIMER_PROF, &it, NULL)); struct rlimit rl = { .rlim_cur = 1, .rlim_max = 1, }; assert(!setrlimit(RLIMIT_CPU, &rl)); for (;;) ; return 0; } Without this patch, the task is not killed as RLIMIT_CPU demands. Signed-off-by: Oleg Nesterov Acked-by: Peter Zijlstra Cc: Peter Lojkin Cc: Roland McGrath Cc: stable@kernel.org LKML-Reference: <20090327000610.GA10108@redhat.com> Signed-off-by: Ingo Molnar commit 6279a751fe096a21dc7704e918d570d3ff06e769 Author: Oleg Nesterov Date: Fri Mar 27 01:06:07 2009 +0100 posix-timers: fix RLIMIT_CPU && fork() See http://bugzilla.kernel.org/show_bug.cgi?id=12911 copy_signal() copies signal->rlim, but RLIMIT_CPU is "lost". Because posix_cpu_timers_init_group() sets cputime_expires.prof_exp = 0 and thus fastpath_timer_check() returns false unless we have other expired cpu timers. Change copy_signal() to set cputime_expires.prof_exp if we have RLIMIT_CPU. Also, set cputimer.running = 1 in that case. This is not strictly necessary, but imho makes sense. Reported-by: Peter Lojkin Signed-off-by: Oleg Nesterov Acked-by: Peter Zijlstra Cc: Peter Lojkin Cc: Roland McGrath Cc: stable@kernel.org LKML-Reference: <20090327000607.GA10104@redhat.com> Signed-off-by: Ingo Molnar commit 08d63b10db943d4e1ff5ae3abc33467f037477f3 Author: Yinghai Lu Date: Wed Apr 8 08:00:01 2009 -0700 x86: make 64 bit to use default_inquire_remote_apic Impact: restore old behavior for flat and phys_flat Signed-off-by: Yinhai Lu Signed-off-by: Ingo Molnar commit 01fad98a1f1d3b38adcbab4bd97f7f4cb983ffb5 Author: Ingo Molnar Date: Wed Apr 8 17:27:59 2009 +0200 sched: refresh MAINTAINERS entry Peter has become a co-maintainer of the scheduler during the last year, and Robert has become inactive - update the MAINTAINERS entry. Acked-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 5af8c4e0fac9838428bd718040b664043a05f37c Merge: 46e0bb9... 577c9c4... Author: Ingo Molnar Date: Wed Apr 8 17:25:42 2009 +0200 Merge commit 'v2.6.30-rc1' into sched/urgent Merge reason: update to latest upstream to queue up fix Signed-off-by: Ingo Molnar commit 022624a758dc9489388a99ad29577b4c8c09237c Author: Zhaolei Date: Fri Mar 27 17:09:10 2009 +0800 printk: fix wrong format string iter for printk printk("%Q"); Output before patch: %QQ Output after patch: %Q Signed-off-by: Zhao Lei Acked-by: Lai Jiangshan Acked-by: Frederic Weisbecker Cc: torvalds@linux-foundation.org Cc: Steven Rostedt LKML-Reference: <49CC97B6.7040809@cn.fujitsu.com> Signed-off-by: Ingo Molnar commit ff96e612cba32510e263e17b213235fe5746397e Merge: cd84a42... 577c9c4... Author: Ingo Molnar Date: Wed Apr 8 17:02:50 2009 +0200 Merge commit 'v2.6.30-rc1' into core/urgent Merge reason: need latest upstream to queue up dependent fix Signed-off-by: Ingo Molnar commit f0edef8c8b35f04b89311590dd6f1249f07fab3a Author: Grant Likely Date: Wed Apr 8 14:13:04 2009 +0200 xsysace: Fix dereferencing of cf_id after hd_driveid removal Commit 4aaf2fec718f6fbf38668edf733a0ab09a49cab1 (xsysace: make it 'struct hd_driveid'-free) converted the cf_id member of 'struct ace_device' from a 'struct hd_driveid' to a u16 array. However, references to the base of the structure were still using the '&' operator. When the address was used with the ata_id_u32() macro, the compiler used the size of the entire array instead of sizeof(u16) to calculate the offset from the base address. This patch removes the use of the '&' operator from all references of cf_id to fix the bug and remove future confusion. Signed-off-by: Grant Likely Signed-off-by: Bartlomiej Zolnierkiewicz commit fb4252e59452c18b88af014a2c4ee697bbf8cbc6 Author: Stanislaw Gruszka Date: Wed Apr 8 14:13:04 2009 +0200 at91_ide: turn on PIO 6 support As we have already PIO 6 transfer mode supported in IDE layer, we can turn it on in the driver. Signed-off-by: Stanislaw Gruszka Tested-by: "Steve Wootton" Cc: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 55c590b64e70cb9922ff56703578ec271eaaca02 Author: Stanislaw Gruszka Date: Wed Apr 8 14:13:04 2009 +0200 at91_ide: remove unused ide_mm_{outb,inb} Cc: Sergei Shtylyov Signed-off-by: Stanislaw Gruszka commit 3c8a48e9a94be1e063f2f8d7d5f6f691423a3e71 Author: Borislav Petkov Date: Wed Apr 8 14:13:03 2009 +0200 ide-cd: reverse NOT_READY sense key logic Make the case of flushing the drive's cache explicit. There should be no functional change resulting from this patch. Signed-off-by: Borislav Petkov Signed-off-by: Bartlomiej Zolnierkiewicz commit 3153c26b54230d025c6d536e8d3015def4524906 Author: Sergei Shtylyov Date: Wed Apr 8 14:13:03 2009 +0200 ide: refactor tf_read() method Simplify tf_read() method, making it deal only with 'struct ide_taskfile' and the validity flags that the upper layer passes, and factoring out the code that deals with the high order bytes into ide_tf_readback() to be called from the only two functions interested, ide_complete_cmd() and ide_dump_sector(). This should stop the needless code duplication in this method and so make it about twice smaller than it was; along with simplifying the setup for the method call, this should save both time and space... Signed-off-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit c9ff9e7b64138d87023b733e618f29a1d58543f7 Author: Sergei Shtylyov Date: Wed Apr 8 14:13:03 2009 +0200 ide: refactor tf_load() method Simplify tf_load() method, making it deal only with 'struct ide_taskfile' and the validity flags that the upper layer passes, and moving the code that deals with the high order bytes into the only function interested, do_rw_taskfile(). This should stop the needless code duplication in this method and so make it about twice smaller than it was; along with simplifying the setup for the method call, this should save both time and space... Signed-off-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 30881b9ac91e7c23e0ceb8414ab7de1961809bdd Author: Sergei Shtylyov Date: Wed Apr 8 14:13:02 2009 +0200 ide: call write_devctl() method from tf_read() method Use write_devctl() method to clear/set the HOB bit in tf_read() method. Signed-off-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 4109d19af73826aa6fee1a1b951670381be88f8b Author: Sergei Shtylyov Date: Wed Apr 8 14:13:02 2009 +0200 ide: move common code out of tf_load() method Move device register masking (and setting drive->select) out of tf_load() method and into the only function that needs to use this code, do_rw_taskfile()... Signed-off-by: Sergei Shtylyov [bart: fix whitespace error] Signed-off-by: Bartlomiej Zolnierkiewicz commit 745483f10c6cefb303007c6873e2bfce54efa8ed Author: Sergei Shtylyov Date: Wed Apr 8 14:13:02 2009 +0200 ide: simplify 'struct ide_taskfile' Make 'struct ide_taskfile' cover only 8 register values and thus put two such fields ('tf' and 'hob') into 'struct ide_cmd', dropping unnecessary 'tf_array' field from it. This required changing the prototype of ide_get_lba_addr() and ide_tf_dump(). Signed-off-by: Sergei Shtylyov [bart: fix setting of ATA_LBA bit for LBA48 commands in __ide_do_rw_disk()] Signed-off-by: Bartlomiej Zolnierkiewicz commit 60f85019c6c8c1aebf3485a313e0da094bc95d07 Author: Sergei Shtylyov Date: Wed Apr 8 14:13:01 2009 +0200 ide: replace IDE_TFLAG_* flags by IDE_VALID_* Replace IDE_TFLAG_{IN|OUT}_* flags meaning to the taskfile register validity on input/output by the IDE_VALID_* flags and introduce 4 symmetric 8-bit register validity indicator subfields, 'valid.{input/output}.{tf|hob}', into the 'struct ide_cmd' instead of using the 'tf_flags' field for that purpose (this field can then be turned from 32-bit into 8-bit one). Signed-off-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 674f0ea111bc9bff1b4e4841d7da38933c5e3b59 Author: Bartlomiej Zolnierkiewicz Date: Wed Apr 8 14:12:54 2009 +0200 ide-cd: fix intendation in cdrom_decode_status() Based on earlier work by Borislav Petkov. Fix intendation in cdrom_decode_status(), no real code changes. While at it: - beautify comments There should be no functional changes caused by this patch. Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: Borislav Petkov Signed-off-by: Bartlomiej Zolnierkiewicz commit 1920c48d796ce7240ba267cb0be85c51895258f8 Author: Bartlomiej Zolnierkiewicz Date: Wed Apr 8 14:12:54 2009 +0200 ide-cd: unify handling of fs and pc requests in cdrom_decode_status() Based on earlier work by Borislav Petkov. Unify handling of fs and pc requests in cdrom_decode_status(). While at it: - remove unreachable code The only change in functionality is that for pc requests more detailed error message will be printed for following sense keys: * ILLEGAL_REQUEST * DATA_PROTECT * MEDIUM_ERROR * BLANK_CHECK Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: Borislav Petkov Signed-off-by: Bartlomiej Zolnierkiewicz commit e01f251fd09fa7cb3d352eac7de17bb5d5bd1f9d Author: Bartlomiej Zolnierkiewicz Date: Wed Apr 8 14:12:53 2009 +0200 ide-cd: convert cdrom_decode_status() to use switch statements Based on earlier work by Borislav Petkov. Convert cdrom_decode_status() to use switch statements in preparation to unify handling of fs and pc requests. While at it: - remove superfluous comments and do minor CodingStyle fixups There should be no functional changes caused by this patch. Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: Borislav Petkov Signed-off-by: Bartlomiej Zolnierkiewicz commit 98036abf31994244cb5772ecc291f4293a52c20b Author: Borislav Petkov Date: Wed Apr 8 14:12:53 2009 +0200 ide-cd: update debugging support Signed-off-by: Borislav Petkov [bart: extracted from "ide-cd: cleanup cdrom_decode_status" patch] Signed-off-by: Bartlomiej Zolnierkiewicz commit dfa4411cc3a690011cab90e9a536938795366cf9 Author: Borislav Petkov Date: Wed Apr 8 14:12:53 2009 +0200 ide-cd: respect REQ_QUIET for fs requests in cdrom_decode_status() There should be no functional change resulting from this patch. Suggested-by: Bartlomiej Zolnierkiewicz Signed-off-by: Borislav Petkov Signed-off-by: Bartlomiej Zolnierkiewicz commit 1597cd82504174c816c39cefabacd8a27b993ce0 Author: Huang Weiyi Date: Wed Apr 8 14:12:53 2009 +0200 ide: remove unused #include Remove unused #include in drivers/ide/at91_ide.c. Signed-off-by: Huang Weiyi Signed-off-by: Bartlomiej Zolnierkiewicz commit aa24d9783d1dcba1a25451dadb6fb0ee092bd8df Author: Atsushi Nemoto Date: Wed Apr 8 14:12:52 2009 +0200 tx4939ide: Fix tx4939ide_{in,out}put_data_swap argument The commit adb1af9 ("ide: pass command instead of request to ide_pio_datablock()") missed tx4939ide driver. Signed-off-by: Atsushi Nemoto Cc: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit d68bab503e64e87c464c5a27a56877a04e4404b5 Author: Atsushi Nemoto Date: Wed Apr 8 14:12:52 2009 +0200 tx493[89]ide: Remove big endian version of tx493[89]ide_tf_{load,read} Now tx493[89]ide_tf_{load,read} do not contain word I/O operations. They are endian-free now. Signed-off-by: Atsushi Nemoto Cc: Sergei Shtylyov , Signed-off-by: Bartlomiej Zolnierkiewicz commit 805ec58ad7fd1f65eeb75ed38f11bd08fbd3b988 Author: Borislav Petkov Date: Wed Apr 8 14:12:52 2009 +0200 ide-cd: carve out an ide_cd_breathe()-helper for fs write requests There should be no functional change resulting from this patch. Signed-off-by: Borislav Petkov Signed-off-by: Bartlomiej Zolnierkiewicz commit 8e59bfde31e69fb1f630ec0efd24a50c5a51b0bf Author: Borislav Petkov Date: Wed Apr 8 14:12:51 2009 +0200 ide-cd: move status checking into the IRQ handler There should be no functional change resulting from this patch. Signed-off-by: Borislav Petkov Signed-off-by: Bartlomiej Zolnierkiewicz commit cfd30daa0d6cbdb0bbc2bc40a10097231b23b204 Author: Sergei Shtylyov Date: Wed Apr 8 14:12:51 2009 +0200 ide-h8300: remove custom tf_{read|load}() methods Since tf_{read|load}() methods of this driver have now become identical to their standard counterparts using I/O port accesses, there's no need to override those anymore... Signed-off-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 7636e455ea00755b863340570eb47a3652624da3 Author: Sergei Shtylyov Date: Wed Apr 8 14:12:51 2009 +0200 at91_ide: remove custom tf_{read|load}() methods Since tf_{read|load}() methods of this driver have now become identical to their standard counterparts using MMIO accesses, there's no need to override those anymore... Signed-off-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit add4d9a9838fc9a3b3d1886b6ce96cfc08386e9b Author: Sergei Shtylyov Date: Wed Apr 8 14:12:50 2009 +0200 ide-h8300: remove mm_{inw|outw}() Remove two no longer used functions that I've overlooked... Signed-off-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 253275c52c8f5848df63f140977ef19800f2dfca Author: Atsushi Nemoto Date: Wed Apr 8 14:12:49 2009 +0200 tx4939ide: remove wmb() * define CHECK_DMA_MASK * remove use of wmb() Reported-by: Grant Grundler Reviewed-by: Grant Grundler Signed-off-by: Atsushi Nemoto commit edafcf73dca2f9531c78eec130df84a8c9654b3b Author: Grant Grundler Date: Wed Apr 8 14:12:49 2009 +0200 ide: remove wmb() from ide-dma-sff.c and scc_pata.c This patch: o replaces "mask" variable in ide_dma_end() with #define. o removes use of wmb() in ide-dma-sff.c and scc_pata.c. o is not tested - I don't have (or want) the HW. Signed-off-by: Grant Grundler Cc: KOBAYASHI Yoshitake Signed-off-by: Bartlomiej Zolnierkiewicz commit d18812070efc658267f7573eec5ce7810128bfeb Author: Geert Uytterhoeven Date: Wed Apr 8 14:12:48 2009 +0200 ide: falconide/q40ide - Use __ide_mm_{in,out}sw() for data Both of commits f94116aeec7a299640dd692128e1d22178affa8d ("ide: cleanup ") and 15a453a955f89f6545118770c669b52e925368bd ("ide: include only when needed") break falconide: | Uniform Multi-Platform E-IDE driver | ide: Falcon IDE controller | Probing IDE interface ide0... | hda: Sarge m68k, ATA DISK drive | ide0 at 0xfff00000 on irq 15 (serialized) | ide-gd driver 1.18 | hda: max request size: 128KiB | hda: 2118816 sectors (1084 MB) w/256KiB Cache, CHS=2102/16/63 | hda:<4>hda: lost interrupt This happens because falconide relies on {in,out}sw() being redefined in , as included by , which is no longer the case. Use __ide_mm_{in,out}sw() from instead, just like ide_{in,out}put_data() do. The same problem seems to exist in q40ide. Signed-off-by: Geert Uytterhoeven Signed-off-by: Bartlomiej Zolnierkiewicz commit aa07573b2bd0fee5a7537cb663fbb2de60278801 Author: Geert Uytterhoeven Date: Wed Apr 8 14:12:47 2009 +0200 ide: Fix host drivers that need IRQF_SHARED commit 255115fb35f80735c21a1cbe9809e9795a3af26e ("ide: allow host drivers to specify IRQ flags") added irq_flags fields to struct ide_port_info and struct ide_host. Drivers can now set ide_port_info.irq_flags = IRQF_SHARED, while init_irq() passes ide_host.irq_flags to request_irq(). Unfortunately ide_host.irq_flags is never set, causing (on ARAnyM): | Uniform Multi-Platform E-IDE driver | ide: Falcon IDE controller | Probing IDE interface ide0... | hda: Sarge m68k, ATA DISK drive | init_irq: sa = 0 | ide0: disabled, unable to get IRQ 15 | ide0: failed to initialize IDE interface | ide0: disabling port Solve this by copying ide_port_info.irq_flags to ide_host.irq_flags in ide_host_alloc(). This bug probably affects the following IDE host drivers: - buddha - delkin_cb - falconide - gayle - ide-cs - macide - q40ide - scc_pata - sgiioc4 Signed-off-by: Geert Uytterhoeven Signed-off-by: Bartlomiej Zolnierkiewicz commit 018ef96969098487ea3fdabd904d775a4cd93975 Author: David S. Miller Date: Wed Apr 8 03:55:30 2009 -0700 sparc: Hook up sys_preadv and sys_pwritev Signed-off-by: David S. Miller commit 01c4538158051768ecb7953396d10af8ae8a2518 Author: David S. Miller Date: Tue Apr 7 01:05:22 2009 -0700 sparc64: add_node_ranges() must be __init Signed-off-by: David S. Miller commit f5d378ace9a5bd08cef344df096ea0c871e99c18 Author: David S. Miller Date: Tue Apr 7 01:08:09 2009 -0700 serial: sunsu: sunsu_kbd_ms_init needs to be __devinit Signed-off-by: David S. Miller commit 7816238a539bf56311f04e7ff17076f66d5c902a Author: David S. Miller Date: Tue Apr 7 00:45:51 2009 -0700 sparc: Fix section mismatch warnings in cs4231 sound driver. Signed-off-by: David S. Miller commit 9a2ed5cc9ef6cb60abd3ea66d7be549d8023581a Author: David S. Miller Date: Tue Apr 7 01:03:58 2009 -0700 sparc64: Fix section mismatch warnings in PCI controller drivers. Signed-off-by: David S. Miller commit 19ab6db66ce1b32de54ecb474f16ade3247f8323 Author: David S. Miller Date: Tue Apr 7 00:47:44 2009 -0700 sparc64: Fix section mismatch warnings in power driver. Signed-off-by: David S. Miller commit 6bbc0b08db0750c2564578bd1be909bc8f7dee1a Author: David S. Miller Date: Tue Apr 7 00:54:27 2009 -0700 sparc64: get_cells() can't be marked __init Signed-off-by: David S. Miller commit f876d346e3807647b1de411de6a86c44821896ca Author: Tetsuo Handa Date: Wed Apr 8 14:05:43 2009 +0900 tracing: append a comma to INIT_FTRACE_GRAPH Impact: dont break future extensions of INIT_TASK While not a problem right now, due to lack of a comma, build fails if elements are appended to INIT_TASK() macro in development code: arch/x86/kernel/init_task.c:33: error: request for member `XXXXXXXXXX' in something not a structure or union arch/x86/kernel/init_task.c:33: error: initializer element is not constant arch/x86/kernel/init_task.c:33: error: (near initialization for `init_task.ret_stack') make[1]: *** [arch/x86/kernel/init_task.o] Error 1 make: *** [arch/x86/kernel] Error 2 Signed-off-by: Tetsuo Handa Cc: srostedt@redhat.com LKML-Reference: <200904080505.n3855hcn017109@www262.sakura.ne.jp> Signed-off-by: Ingo Molnar commit 0ce49d6da993adf8b17b7f3ed9805ade14a6a6f3 Author: David Woodhouse Date: Wed Apr 8 01:22:36 2009 -0700 qla1280: Fix off-by-some error in firmware loading. We were calculating the wrong address for the start of the data. Signed-off-by: David Woodhouse Tested-by: Jeremy Higdon commit 8897c1859521cf33077256725b2377164b130c75 Merge: 18b2646... db954b5... fdbdc7f... 13614e3... 33b5715... f61bb93... Author: Len Brown Date: Tue Apr 7 18:18:42 2009 -0400 Merge branches 'release', 'APERF', 'ARAT', 'misc', 'kelvin', 'device-lock' and 'bjorn.notify' into release commit db954b5898dd3ef3ef93f4144158ea8f97deb058 Author: Venkatesh Pallipadi Date: Mon Apr 6 18:51:29 2009 -0700 x86 ACPI: Add support for Always Running APIC timer Add support for Always Running APIC timer, CPUID_0x6_EAX_Bit2. This bit means the APIC timer continues to run even when CPU is in deep C-states. The advantage is that we can use LAPIC timer on these CPUs always, and there is no need for "slow to read and program" external timers (HPET/PIT) and the timer broadcast logic and related code in C-state entry and exit. Signed-off-by: Venkatesh Pallipadi Acked-by: H. Peter Anvin Signed-off-by: Len Brown commit 18b2646fe3babeb40b34a0c1751e0bf5adfdc64c Author: Venkatesh Pallipadi Date: Mon Apr 6 11:26:08 2009 -0700 ACPI x86: Make aperf/mperf MSR access in acpi_cpufreq read_only Do not write zeroes to APERF and MPERF by ondemand governor. With this change, other users can share these MSRs for reads. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Len Brown commit e4f6937222dbb61b8b8e62caca3d32e648b3b14b Author: Venkatesh Pallipadi Date: Mon Apr 6 11:26:07 2009 -0700 ACPI x86: Cleanup acpi_cpufreq structures related to aperf/mperf Change structure name to make the code cleaner and simpler. No functionality change in this patch. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Len Brown commit fdbdc7fc79c02ae4ede869d514179a2c65633d28 Author: Len Brown Date: Tue Apr 7 17:33:58 2009 -0400 ACPICA: delete check for AML access to port 0x81-83 Sony laptops apparently write 4-bytes (rather than 1 byte) to debug port 0x80, which spews error messages: Denied AML access to port 0x00000080/4 (DMA1 0x0081-0x0083) [20090320] http://bugzilla.kernel.org/show_bug.cgi?id=13036 Signed-off-by: Len Brown commit f61bb93927fbc2933abe870813daba9d331aa121 Author: Bjorn Helgaas Date: Tue Apr 7 15:37:37 2009 +0000 ACPI: WMI: use .notify method instead of installing handler directly This patch adds a .notify() method. The presence of .notify() causes Linux/ACPI to manage event handlers and notify handlers on our behalf, so we don't have to install and remove them ourselves. Signed-off-by: Bjorn Helgaas CC: Carlos Corbacho Signed-off-by: Len Brown commit 8037d6e67709cf497134bbabd77b07dfc7c31fd6 Author: Bjorn Helgaas Date: Tue Apr 7 15:37:32 2009 +0000 sony-laptop: use .notify method instead of installing handler directly This patch adds a .notify() method. The presence of .notify() causes Linux/ACPI to manage event handlers and notify handlers on our behalf, so we don't have to install and remove them ourselves. Signed-off-by: Bjorn Helgaas CC: Mattia Dongili Signed-off-by: Len Brown commit cddd1f71d972a43c88f0ef91e1b71023539cd6e0 Author: Bjorn Helgaas Date: Tue Apr 7 15:37:27 2009 +0000 panasonic-laptop: use .notify method instead of installing handler directly This patch adds a .notify() method. The presence of .notify() causes Linux/ACPI to manage event handlers and notify handlers on our behalf, so we don't have to install and remove them ourselves. Signed-off-by: Bjorn Helgaas CC: Harald Welte Signed-off-by: Len Brown commit b4ec0275464756f4fd4108b4a4ca7aff61358ad3 Author: Bjorn Helgaas Date: Tue Apr 7 15:37:22 2009 +0000 fujitsu-laptop: use .notify method instead of installing hotkey handler directly This patch adds a .notify() method. The presence of .notify() causes Linux/ACPI to manage event handlers and notify handlers on our behalf, so we don't have to install and remove them ourselves. Tested by Tony on Fujitsu-Siemens Lifebook S6420 [FJNB1E6] with BIOS 1.18 (01/09/2009). Tested by Jonathan on Fujitsu S7020. Signed-off-by: Bjorn Helgaas Acked-By: Tony Vroon Tested-By: Tony Vroon Acked-by: Jonathan Woithe Tested-by: Jonathan Woithe Signed-off-by: Len Brown commit 700b6721cd1b891b67c2dcee046be12154a21fd6 Author: Bjorn Helgaas Date: Tue Apr 7 15:37:16 2009 +0000 fujitsu-laptop: use .notify method instead of installing handler directly This patch adds a .notify() method. The presence of .notify() causes Linux/ACPI to manage event handlers and notify handlers on our behalf, so we don't have to install and remove them ourselves. Tested by Tony on Fujitsu-Siemens Lifebook S6420 [FJNB1E6] with BIOS 1.18 (01/09/2009). Tested by Jonathan on Fujitsu S7020. Signed-off-by: Bjorn Helgaas Acked-By: Tony Vroon Tested-By: Tony Vroon Acked-by: Jonathan Woithe Tested-by: Jonathan Woithe Signed-off-by: Len Brown commit 7015558fca5ee82fc17227b61d88ddaa02d82242 Author: Bjorn Helgaas Date: Tue Apr 7 15:37:11 2009 +0000 ACPI: video: use .notify method instead of installing handler directly This patch adds a .notify() method. The presence of .notify() causes Linux/ACPI to manage event handlers and notify handlers on our behalf, so we don't have to install and remove them ourselves. Signed-off-by: Bjorn Helgaas CC: Zhang Rui Signed-off-by: Len Brown commit 342d550db1bc0b879007a8cdb38645558e839680 Author: Bjorn Helgaas Date: Tue Apr 7 15:37:06 2009 +0000 ACPI: thermal: use .notify method instead of installing handler directly This patch adds a .notify() method. The presence of .notify() causes Linux/ACPI to manage event handlers and notify handlers on our behalf, so we don't have to install and remove them ourselves. Signed-off-by: Bjorn Helgaas CC: Zhang Rui Signed-off-by: Len Brown commit 5d38258ec026921a7b266f4047ebeaa75db358e5 Author: Vegard Nossum Date: Tue Apr 7 10:55:38 2009 +0200 ACPI battery: fix async boot oops > BUG: unable to handle kernel NULL pointer dereference at (null) What happens is that the battery module's init sections are being freed before the async callback (which was marked __init) has run. This theory is supported by the fact that the bad RIP value is a vmalloc address. The immediate fix is to make this a non-init call. (A better long-term fix is of course to wait with init-section unloading until a module's async initcalls have been run, which would allow us to discard this function which is still only run once, after all. Perhaps a new async_initcall() function for the async/module API, if this is needed for other modules in the future?) Reported-by: Arkadiusz Miskiewicz Signed-off-by: Vegard Nossum Tested-by: Alessandro Suardi Tested-by: Rafael J. Wysocki Signed-off-by: Len Brown commit 0f2ddca66d70c8ccba7486cf2d79c6b60e777abd Author: From: Thiemo Nagel Date: Tue Apr 7 14:07:47 2009 -0400 ext4: check block device size on mount Signed-off-by: Thiemo Nagel Signed-off-by: "Theodore Ts'o" commit 1e274a582710e95d93b86e8d47e9fcce4ca09d01 Author: H. Peter Anvin Date: Tue Apr 7 10:59:25 2009 -0700 x86, setup: un-resequence mode setting for VGA 80x34 and 80x60 modes Impact: Fixes these modes on at least one system The rewrite of the setup code into C resequenced the font setting and register reprogramming phases of configuring nonstandard VGA modes which use 480 scan lines in text mode. However, there exists at least one board (Micro-Star MS-7383 version 2.0) on which this resequencing causes an unusable display. Revert to the original sequencing: set up 480-line mode, install the font, and then adjust the vertical end register appropriately. This failure was masked by the fact that the 480-line setup was broken until checkin 5f641356127712fbdce0eee120e5ce115860c17f (therefore this is not a -stable candidate bug fix.) Reported-by: Andi Kleen Signed-off-by: H. Peter Anvin commit f7d7f866baacc283967ce82ebdfe5d2801059a11 Author: David Woodhouse Date: Mon Apr 6 23:04:40 2009 -0700 x86, intel-iommu: fix X2APIC && !ACPI build failure This build failure: | drivers/pci/dmar.c:47: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘dmar_tbl_size’ | drivers/pci/dmar.c:62: warning: ‘struct acpi_dmar_device_scope’ declared inside parameter list | drivers/pci/dmar.c:62: warning: its scope is only this definition or declaration, which is probably not what you want Triggers due to this commit: d0b03bd: x2apic/intr-remap: decouple interrupt remapping from x2apic Which exposed a pre-existing but dormant fragility of the 'select X86_X2APIC' it moved around and turned that fragility into a build failure. Replace it with a proper 'depends on' construct. Signed-off-by: David Woodhouse LKML-Reference: <1239084280.22733.404.camel@macbook.infradead.org> Signed-off-by: Ingo Molnar commit 33b571501553ceb008c0aef8b89e932d4efda2a2 Author: Len Brown Date: Mon Dec 15 22:09:26 2008 -0500 ACPI: delete acpi_device.g_list unused Signed-off-by: Len Brown commit a3c270561ea4455cbcea0ac2b53335655d9fc805 Author: Hannes Eder Date: Thu Mar 5 20:15:44 2009 +0100 NULL noise: drivers/platform/x86/panasonic-laptop.c Fix this sparse warning: drivers/platform/x86/panasonic-laptop.c:273:70: warning: Using plain integer as NULL pointer Signed-off-by: Hannes Eder Signed-off-by: Len Brown commit d22616942804798105e61428afa41a9132421bb9 Author: Huang Weiyi Date: Mon Apr 6 17:16:46 2009 +0800 ACPI: cpufreq: remove dupilcated #include Remove dupilicated #include in arch/x86/kernel/cpu/cpufreq/longhaul.c. Signed-off-by: Huang Weiyi Signed-off-by: Len Brown commit 13614e37e94da4606a300ee6fe25c8c4a19ee670 Author: Jean Delvare Date: Mon Apr 6 16:01:46 2009 +0200 ACPI: Adjust Kelvin offset to match local implementation The exact offset between Kelvin and degree Celsius is 273.15. However ACPI handles temperature values with a single decimal place. As a consequence, some implementations use an offset of 273.1 and others use an offset of 273.2. Try to find out which one is being used, to present the most accurate and visually appealing number. Tested on a Sony Vaio PGC-GR214EP (which uses 273.1) and a Lenovo Thinkpad T60p (which uses 273.2). Signed-off-by: Jean Delvare Acked-by: Zhang Rui Signed-off-by: Len Brown commit 0f8e5c298fc801e8eca69e1409604c05d36e0cc4 Author: David Woodhouse Date: Mon Apr 6 17:41:48 2009 -0700 Add README.AddingFirmware file. Basically telling people not to. Signed-off-by: David Woodhouse commit cec20f36d6e5a10db315714c6c3da90792368382 Author: David Woodhouse Date: Mon Apr 6 17:24:16 2009 -0700 firmware: Remove newly-added slicoss and sxg firmware images These are available elsewhere (for example in the linux-firmware.git repository); they have no business being added to the kernel source tree. We are only putting stuff in the firmware/ directory of the kernel source when it's extracted from long-standing drivers which used to include it directly. We didn't intend to open the floodgates to including megabytes of new firmware which was previously being distributed separately. Signed-off-by: David Woodhouse commit 9090589d87506c578ea1523ffd7ae7fd9424fb28 Author: Shaohua Li Date: Tue Apr 7 10:24:29 2009 +0800 ACPI: convert acpi_device_lock spinlock to mutex Convert acpi_device_lock to a mutex to avoid a potential race upon access to /proc/acpi/wakeup Delete the lock entirely in wakeup.c since it is not necessary (and can not sleep) Found-by: Linus Torvalds Signed-off-by: Shaohua Li Signed-off-by: Len Brown commit 14fa86f7c7f46abc3a1c2f18d9cea859e8e700c0 Author: David Woodhouse Date: Mon Apr 6 17:06:51 2009 -0700 firmware/WHENCE: Add missing origin information for Ambassador atmsar11.fw Looks like we forgot to update WHENCE when we converted this driver. Signed-off-by: David Woodhouse commit 7c7cae17e04765692aa3d2bda5c771f909219f27 Author: Takashi Iwai Date: Mon Apr 6 14:38:43 2009 -0700 ALSA: wavefront - Always use request_firmware() Always use request_firmware() for loading yss225_registers image. Signed-off-by: Takashi Iwai Signed-off-by: David Woodhouse commit 4f8d182513690b42b20fb81e487be4cd4729e27c Author: Jaswinder Singh Date: Sun Jun 22 18:24:19 2008 +0530 Remove fdump tool for av7110 firmware There's no point in this, since the user can use the BUILTIN_FIRMWARE option to include arbitrary firmware files directly in the kernel image. Thanks to David Woodhouse for help. Signed-off-by: Jaswinder Singh Signed-off-by: David Woodhouse commit 9137f05f7e72517d44b6b0c15b11b419ecb5d201 Author: Jaswinder Singh Date: Mon Apr 6 14:34:12 2009 -0700 firmware: convert av7110 driver to request_firmware() Signed-off-by: Jaswinder Singh Signed-off-by: David Woodhouse commit 4528e429009325790d94cd4f816b386bea8e8291 Author: David Woodhouse Date: Sat Jan 10 14:54:48 2009 +0000 Partially revert "V4L/DVB (9533): cx88: Add support for TurboSight TBS8910 DVB-S PCI card" This reverts a hunk of commit 4b29631db33292d416dc395c56122ea865e7635c which seems to have been an accident, and which re-introduced a previously fixed bug. Signed-off-by: David Woodhouse commit 556b0f58bbcdc96ba8ed67001b4e57c50198da89 Author: David Woodhouse Date: Sat Jan 10 14:53:15 2009 +0000 Revert "fix modules_install via NFS" This reverts commit 8b249b6856f16f09b0e5b79ce5f4d435e439b9d6. This 'fix' is not necessary; we just need to undo the damage caused accidentally by Igor/Mauro in 4b29631db33292d416dc395c56122ea865e7635c ("V4L/DVB (9533): cx88: Add support for TurboSight TBS8910 DVB-S PCI card") Signed-off-by: David Woodhouse commit 83731671d9e6878c0a05d309c68fb71c16d3235a Author: Pablo Neira Ayuso Date: Mon Apr 6 17:47:20 2009 +0200 netfilter: ctnetlink: fix regression in expectation handling This patch fixes a regression (introduced by myself in commit 19abb7b: netfilter: ctnetlink: deliver events for conntracks changed from userspace) that results in an expectation re-insertion since __nf_ct_expect_check() may return 0 for expectation timer refreshing. This patch also removes a unnecessary refcount bump that pretended to avoid a possible race condition with event delivery and expectation timers (as said, not needed since we hold a reference to the object since until we finish the expectation setup). This also merges nf_ct_expect_related_report() and nf_ct_expect_related() which look basically the same. Reported-by: Patrick McHardy Signed-off-by: Pablo Neira Ayuso Signed-off-by: Patrick McHardy commit 3ae16f13027c26cb4c227392116c2027524a6444 Author: Alex Riesen Date: Mon Apr 6 17:09:43 2009 +0200 netfilter: fix selection of "LED" target in netfilter It's plural, not LED_TRIGGERS. Signed-off-by: Alex Riesen Signed-off-by: Patrick McHardy commit 49a88d18a1721ac14dbc67cd390db18ee1f3a42f Author: Eric Dumazet Date: Mon Apr 6 17:06:55 2009 +0200 netfilter: ip6tables regression fix Commit 7845447 (netfilter: iptables: lock free counters) broke ip6_tables by unconditionally returning ENOMEM in alloc_counters(), Reported-by: Graham Murray Signed-off-by: Eric Dumazet Signed-off-by: Patrick McHardy commit 89de3820c7ae615345c093ae6fddac01f326fdc4 Merge: 3ef48fa... 80748fb... Author: Russell King Date: Mon Apr 6 09:57:38 2009 +0100 Merge branch 'devel' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6 commit 3ef48fac6e8e2362a4e6ef31dd043c89fe107875 Author: Russell King Date: Sun Apr 5 12:27:24 2009 +0100 [ARM] omap: fix omap1 clock usecount decrement bug Same fix as per a7f8c59, but for OMAP1 instead. Signed-off-by: Russell King commit e44543b83bf4ab84dc6bd5b88158c78b1ed1c208 Author: Thiemo Nagel Date: Sat Apr 4 23:30:44 2009 -0400 ext4: Fix off-by-one-error in ext4_valid_extent_idx() Signed-off-by: Thiemo Nagel Signed-off-by: "Theodore Ts'o" commit f73953c0656f2db9073c585c4df2884a8ecd101e Author: Thiemo Nagel Date: Tue Apr 7 18:46:47 2009 -0400 ext4: Fix big-endian problem in __ext4_check_blockref() Commit fe2c8191 introduced a regression on big-endian system, because the checks to make sure block references in non-extent inodes are valid failed to use le32_to_cpu(). Reported-by: Alexander Beregalov Signed-off-by: Thiemo Nagel Tested-by: Alexander Beregalov Signed-off-by: "Theodore Ts'o" Cc: stable@kernel.org commit 80748fb8ff3bc068dccacb690cd2eb417b034ec7 Author: Mark Brown Date: Fri Apr 3 12:45:49 2009 +0100 [ARM] pxa: register AC97 controller devices The tosa, e740, e750, e800 and mioa701 all use AC97 audio codecs but does not register the platform device for the AC97 controller. Doing so is now required by ASoC. Signed-off-by: Mark Brown Acked-by: Dmitry Eremin-Solenikov Acked-by: Ian Molton Signed-off-by: Robert Jarzmik Signed-off-by: Eric Miao commit 675b5d869fe8f6f9cdb3c6758228f211fb1773e6 Author: Dmitry Eremin-Solenikov Date: Wed Apr 1 03:40:05 2009 +0400 [ARM] pxa/csb701: do not register devices on non-csb726 boads csb701 driver can currently only be used on csb726 boards, limit the csb701 devices registration to csb726 board. Signed-off-by: Dmitry Eremin-Solenikov Signed-off-by: Eric Miao commit 8a28b10e915fff4a4e8be4f152a8e8695d0cb044 Author: Daniel Mack Date: Thu Apr 2 08:33:15 2009 +0200 [ARM] pxa/colibri: get rid of set_irq_type() In commit 47cb035560a41bd1bd3db506eeab93088815203e, the ax88796 driver learned to take IRQ flags from platform_device definition. Use that here to get rid of the set_irq_type() hack. Signed-off-by: Daniel Mack Signed-off-by: Eric Miao commit 22a0200b18b8526043d3014efdaf839b01767111 Author: Daniel Mack Date: Thu Apr 2 08:33:14 2009 +0200 [ARM] pxa/colibri: provide MAC address from ATAG_SERIAL In 67fca028f1535e510689d2e444b0289e264e05c1, the ax88796 ethernet driver learned a way to let the platform data hand in the MAC address. Use it here as the original Colibri bootloader passes in a MAC address via ATAG_SERIAL. Reported-by: Matthias Meier Signed-off-by: Daniel Mack Signed-off-by: Eric Miao commit 50f6bb0ab75794ad02cb5db503cc8c99465ceaf4 Author: Marek Vasut Date: Wed Apr 1 22:30:07 2009 +0800 [ARM] pxa/cm-x2xx: fix ucb1400 not being registered This patch fixes cm-x2xx not registering the ucb1400. This is because of the splitting of ucb1400 driver half year ago. Signed-off-by: Marek Vasut Acked-by: Mike Rapoport Signed-off-by: Eric Miao commit 81854f82c5c1a203b2f5c94f6aa2ed8b8e19f025 Author: Marek Vasut Date: Sat Mar 28 12:37:42 2009 +0100 [ARM] pxa: Add support for suspend on PalmTX, T5 and LD Signed-off-by: Marek Vasut Signed-off-by: Eric Miao commit 8c8aa5fa3060abc17e8a07d15f575485f6a0c0b8 Author: Marek Vasut Date: Tue Mar 24 21:23:39 2009 +0100 [ARM] pxa: PalmTE2 support for battery, UDC, IrDA and backlight Signed-off-by: Marek Vasut Signed-off-by: Eric Miao commit 54088bf50f31e5f20e005922dae8948f9f856b79 Author: Marek Vasut Date: Tue Mar 24 00:29:29 2009 +0100 [ARM] pxa: Palm Tungsten E2 basic support This contains support for keypad, MMC, AC97, LCD and backlight. Signed-off-by: Marek Vasut Signed-off-by: Eric Miao commit c9be0e39618984b925ec758c1384853db4435ea8 Author: Mike Rapoport Date: Tue Feb 3 09:15:30 2009 +0200 [ARM] pxa/em-x270: add libertas device registration Signed-off-by: Mike Rapoport Signed-off-by: Eric Miao commit eb650b9ed0f69be075a5a86ef9c4fc2cf7915293 Author: Philipp Zabel Date: Sat Jan 31 12:13:57 2009 +0100 [ARM] pxa/magician: Enable bq24022 regulator for gpio_vbus and pda_power With this patch, the bq24022 battery charger is controlled by the USB gadget framework (via gpio_vbus) when connected to USB. To compile, this patch depends on the "regulator: Allow init data to be supplied for bq24022" patch (queued for next in the regulator tree) to add the init_data field to struct bq24022_mach_info. It also depends on the "add optional OTG transceiver and voltage regulator support to pda_power" patch (queued for next in the power supply tree) to enable charging when connected to the AC charger. Signed-off-by: Philipp Zabel Signed-off-by: Eric Miao commit 9756b15e1b58453a6fd54b85c1ad8515209e10bb Author: Yinghai Lu Date: Mon Mar 30 20:37:20 2009 -0700 irq: fix cpumask memory leak on offstack cpumask kernels Need to free the old cpumask for affinity and pending_mask. Signed-off-by: Yinghai Lu Acked-by: Rusty Russell LKML-Reference: <49D18FF0.50707@kernel.org> Signed-off-by: Ingo Molnar commit cd84a42f315e50edd454c27a3da3951ccd3d735a Author: Darren Hart Date: Thu Apr 2 14:19:38 2009 -0700 futex: comment requeue key reference semantics We've tripped over the futex_requeue drop_count refering to key2 instead of key1. The code is actually correct, but is non-intuitive. This patch adds an explicit comment explaining the requeue. Signed-off-by: Darren Hart Cc: Peter Zijlstra Cc: Nick Piggin Cc: Rusty Russell Signed-off-by: Andrew Morton Signed-off-by: Ingo Molnar commit 633fe795b80693a8198e7d82f66538a72d2bbba2 Author: Randy Dunlap Date: Wed Apr 1 17:47:23 2009 -0700 timers: add missing kernel-doc Add missing kernel-doc parameter notation and change function name to its new name: Warning(kernel/timer.c:543): No description found for parameter 'name' Warning(kernel/timer.c:543): No description found for parameter 'key' Signed-off-by: Randy Dunlap Cc: akpm Cc: Johannes Berg LKML-Reference: <20090401174723.f0bea0eb.randy.dunlap@oracle.com> Signed-off-by: Ingo Molnar commit 84adeee9aaa0d81712de1e0ea74caed3398e4a1d Author: Yossi Etigin Date: Wed Apr 1 13:55:32 2009 -0700 RDMA/cma: Use rate from IPoIB broadcast when joining IPoIB multicast groups When joining an IPoIB multicast group, use the same rate as in the broadcast group. Otherwise, if the RDMA CM creates this group before IPoIB does, it might get a different rate. This will cause IPoIB to fail joining to the same group later on, because IPoIB uses strict rate selection. Signed-off-by: Yossi Etigin Signed-off-by: Roland Dreier commit 46e0bb9c12f4bab539736f1714cbf16600f681ec Author: Gautham R Shenoy Date: Mon Mar 30 10:25:20 2009 +0530 sched: Print sched_group::__cpu_power in sched_domain_debug Impact: extend debug info /proc/sched_debug If the user changes the value of the sched_mc/smt_power_savings sysfs tunable, it'll trigger a rebuilding of the whole sched_domain tree, with the SD_POWERSAVINGS_BALANCE flag set at certain levels. As a result, there would be a change in the __cpu_power of sched_groups in the sched_domain hierarchy. Print the __cpu_power values for each sched_group in sched_domain_debug to help verify this change and correlate it with the change in the load-balancing behavior. Signed-off-by: Gautham R Shenoy Cc: Peter Zijlstra LKML-Reference: <20090330045520.2869.24777.stgit@sofia.in.ibm.com> Signed-off-by: Ingo Molnar commit ef12fefabf94b6a902ad3abd3eb124b00560c445 Author: Bharata B Rao Date: Tue Mar 31 10:02:22 2009 +0530 cpuacct: add per-cgroup utime/stime statistics Add per-cgroup cpuacct controller statistics like the system and user time consumed by the group of tasks. Changelog: v7 - Changed the name of the statistic from utime to user and from stime to system so that in future we could easily add other statistics like irq, softirq, steal times etc easily. v6 - Fixed a bug in the error path of cpuacct_create() (pointed by Li Zefan). v5 - In cpuacct_stats_show(), use cputime64_to_clock_t() since we are operating on a 64bit variable here. v4 - Remove comments in cpuacct_update_stats() which explained why rcu_read_lock() was needed (as per Peter Zijlstra's review comments). - Don't say that percpu_counter_read() is broken in Documentation/cpuacct.txt as per KAMEZAWA Hiroyuki's review comments. v3 - Fix a small race in the cpuacct hierarchy walk. v2 - stime and utime now exported in clock_t units instead of msecs. - Addressed the code review comments from Balbir and Li Zefan. - Moved to -tip tree. v1 - Moved the stime/utime accounting to cpuacct controller. Earlier versions - http://lkml.org/lkml/2009/2/25/129 Signed-off-by: Bharata B Rao Signed-off-by: Balaji Rao Cc: Dhaval Giani Cc: Paul Menage Cc: Andrew Morton Cc: KAMEZAWA Hiroyuki Reviewed-by: Li Zefan Acked-by: Peter Zijlstra Acked-by: Balbir Singh Tested-by: Balbir Singh LKML-Reference: <20090331043222.GA4093@in.ibm.com> Signed-off-by: Ingo Molnar commit c5f8d99585d7b5b7e857fabf8aefd0174903a98c Author: Hidetoshi Seto Date: Tue Mar 31 16:56:03 2009 +0900 posixtimers, sched: Fix posix clock monotonicity Impact: Regression fix (against clock_gettime() backwarding bug) This patch re-introduces a couple of functions, task_sched_runtime and thread_group_sched_runtime, which was once removed at the time of 2.6.28-rc1. These functions protect the sampling of thread/process clock with rq lock. This rq lock is required not to update rq->clock during the sampling. i.e. The clock_gettime() may return ((accounted runtime before update) + (delta after update)) that is less than what it should be. v2 -> v3: - Rename static helper function __task_delta_exec() to do_task_delta_exec() since -tip tree already has a __task_delta_exec() of different version. v1 -> v2: - Revises comments of function and patch description. - Add note about accuracy of thread group's runtime. Signed-off-by: Hidetoshi Seto Acked-by: Peter Zijlstra Cc: stable@kernel.org [2.6.28.x][2.6.29.x] LKML-Reference: <49D1CC93.4080401@jp.fujitsu.com> Signed-off-by: Ingo Molnar commit 13b8bd0a5713bdf05659019badd7c0407984ece1 Author: Rusty Russell Date: Wed Mar 25 15:01:22 2009 +1030 sched_rt: don't allocate cpumask in fastpath Impact: cleanup As pointed out by Steven Rostedt. Since the arg in question is unused, we simply change cpupri_find() to accept NULL. Reported-by: Steven Rostedt Signed-off-by: Rusty Russell LKML-Reference: <200903251501.22664.rusty@rustcorp.com.au> Signed-off-by: Ingo Molnar commit edb5abb1e2a84fd8802a3577d95eac84fe1405ab Author: Roland Dreier Date: Tue Mar 31 10:22:32 2009 -0700 IPoIB: Avoid free_netdev() BUG when destroying a child interface We have to release the RTNL before calling free_netdev() so that the device state has a chance to become NETREG_UNREGISTERED. Otherwise when removing a child interface, we hit the BUG() that tests the device state in free_netdev(). Reported-by: Yossi Etigin Signed-off-by: Roland Dreier commit 352b09edd7fa8145bfc9e5db0cc0fed971b69440 Author: Roland Dreier Date: Tue Mar 31 09:54:15 2009 -0700 mlx4_core: Don't leak mailbox for SET_PORT on Ethernet ports Commit 793730bf ("mlx4_core: Don't perform SET_PORT command for Ethernet ports") introduced a leak of mailbox buffers when SET_PORT was called for Ethernet ports, since it added a return after the mailbox was allocated. Fix this by checking the port type and returning *before* allocating the mailbox. Signed-off-by: Roland Dreier commit a18b83b7ef3c98cd8b4bb885e4a649a8f30fb7b0 Author: Bharata B Rao Date: Mon Mar 23 10:02:53 2009 +0530 cpuacct: make cpuacct hierarchy walk in cpuacct_charge() safe when rcupreempt is used -v2 Impact: fix cgroups race under rcu-preempt cpuacct_charge() obtains task's ca and does a hierarchy walk upwards. This can race with the task's movement between cgroups. This race can cause an access to freed ca pointer in cpuacct_charge() or access to invalid cgroups pointer of the task. This will not happen with rcu or tree rcu as cpuacct_charge() is called with preemption disabled. However if rcupreempt is used, the race is seen. Thanks to Li Zefan for explaining this. Fix this race by explicitly protecting ca and the hierarchy walk with rcu_read_lock(). Changes for v2: - Update patch descrition (as per Li Zefan's review comments). - Remove comments in cpuacct_charge() which explained why rcu_read_lock() was needed (as per Peter Zijlstra's review comments). Signed-off-by: Bharata B Rao Cc: Dhaval Giani Cc: Li Zefan Cc: Paul Menage Cc: KAMEZAWA Hiroyuki Acked-by: Peter Zijlstra Acked-by: Balbir Singh Tested-by: Balbir Singh Signed-off-by: Ingo Molnar commit 874d8df5ed6e36fed07b524c266f6a96dd6d10d9 Author: Steve Wise Date: Mon Mar 30 08:37:59 2009 -0700 RDMA/cxgb3: Release dependent resources only when endpoint memory is freed. The cxgb3 l2t entry, hwtid, and dst entry were being released before all the iwch_ep references were released. This can cause a crash in t3_l2t_send_slow() and other places where the l2t entry is used. The fix is to defer releasing these resources until all endpoint references are gone. Details: - move flags field to the iwch_ep_common struct. - add a flag indicating resources are to be released. - release resources at endpoint free time instead of close/abort time. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit 04b5d028f50ff05a8f9ae049ee71f8fdfcf1f5de Author: Steve Wise Date: Mon Mar 30 08:37:56 2009 -0700 RDMA/cxgb3: Handle EEH events - wrap calls into cxgb3 and fail them if we're in the middle of a PCI EEH event. - correctly unwind and release endpoint and other resources when we are in an EEH event. - dispatch IB_EVENT_DEVICE_FATAL event when cxgb3 notifies iw_cxgb3 of a fatal error. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit e1d60ec6699f19b760df8261e922ae236ea7bb31 Author: Roland Dreier Date: Mon Mar 30 08:31:05 2009 -0700 IB/mlx4: Use pgprot_writecombine() for BlueFlame pages The PAT work on x86 has finally made pgprot_writecombine() a usable API for modular drivers. As the comment indicates, this is exactly what we want to use in mlx4_ib to map BlueFlame pages up to userspace, since using WC for these pages improves small message latency significantly. Signed-off-by: Roland Dreier commit 5bf2b994bfe11bfe86231050897b2d881ca544d9 Author: Philipp Zabel Date: Sun Jan 18 17:40:27 2009 +0100 pda_power: Add optional OTG transceiver and voltage regulator support This patch allows machines to use an OTG transceiver driver instead of supplying a custom is_usb_online callback to check USB power. Also, in the case that the OTG transceiver handles charger control when connected to USB, a regulator named "ac_draw" can be supplied instead of the custom set_charge callback to control the charger when connected to AC. The check for (transceiver->state == OTG_STATE_B_PERIPHERAL) in otg_is_usb_online is probably too simple, I'm just using this with a peripheral only device and gpio_vbus + bq24022. I'm not sure which other OTG states can supply power. Signed-off-by: Philipp Zabel Signed-off-by: Anton Vorontsov commit cc52a29e6245acd9032fcfa0ffcab4cc612de986 Author: Balaji Rao Date: Tue Jan 27 19:22:55 2009 +0530 pcf50633_charger: Remove unused mbc_set_status function The 'pcf50633_mbc_set_status' function is unused, so remove it. Signed-off-by: Balaji Rao Cc: Andy Green Signed-off-by: Anton Vorontsov commit 9705ecc5c1f8f34f756164a711b4cc61110c0283 Author: Balaji Rao Date: Tue Jan 27 19:23:12 2009 +0530 pcf50633_charger: Enable periodic charging restart The battery charger state machine switches into charging mode when the battery voltage falls below 96% of a battery float voltage. But the voltage drop in Li-ion batteries is marginal(1~2 %) till about 80% of its capacity - which means, after a BATFULL, charging won't be restarted until 80%. This work_struct function restarts charging at regular intervals to make sure the battery doesn't discharge too much. Signed-off-by: Balaji Rao Cc: Andy Green Signed-off-by: Anton Vorontsov