commit c3442e296517aee733d62fc3fe03211598902c7d Author: Ingo Molnar Date: Mon Mar 5 14:46:30 2007 +0100 [PATCH] paravirt: re-enable COMPAT_VDSO CONFIG_PARAVIRT broke old glibc bootup: it silently turned off the selectability of CONFIG_COMPAT_VDSO and thus rendered distro kernels unbootable on old-style VDSO glibc setups. the proper solution is to keep COMPAT_VDSO available - if a hypervisor needs any modification of that concept then we'll judge those changes in full context, once those changes are submitted. Signed-off-by: Ingo Molnar Signed-off-by: Linus Torvalds commit 227c5fe7993a5430e582dfd4c3acd9484004c6fc Merge: 6ebf622... 202d4e6... Author: Linus Torvalds Date: Mon Mar 5 08:25:43 2007 -0800 Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlight * 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlight: backlight: Allow enable/disable of fb backlights, fixing regressions backlight: Fix nvidia backlight initial brightness commit 6ebf622b2577c50b1f496bd6a5e8739e55ae7b1c Author: Ingo Molnar Date: Mon Mar 5 13:20:11 2007 +0100 [PATCH] disable NMI watchdog by default there's a new NMI watchdog related problem: KVM crashes on certain bzImages because ... we enable the NMI watchdog by default (even if the user does not ask for it) , and no other OS on this planet does that so KVM doesnt have emulation for that yet. So KVM injects a #GP, which crashes the Linux guest: general protection fault: 0000 [#1] PREEMPT SMP Modules linked in: CPU: 0 EIP: 0060:[] Not tainted VLI EFLAGS: 00000246 (2.6.20-rc5-rt0 #3) EIP is at setup_apic_nmi_watchdog+0x26d/0x3d3 and no, i did /not/ request an nmi_watchdog on the boot command line! Solution: turn off that darn thing! It's a debug tool, not a 'make life harder' tool!! with this patch the KVM guest boots up just fine. And with this my laptop (Lenovo T60) also stopped its sporadic hard hanging (sometimes in acpi_init(), sometimes later during bootup, sometimes much later during actual use) as well. It hung with both nmi_watchdog=1 and nmi_watchdog=2, so it's generally the fact of NMI injection that is causing problems, not the NMI watchdog variant, nor any particular bootup code. [ NMI breaks on some systems, esp in combination with SMM -Arjan ] Signed-off-by: Ingo Molnar Acked-by: Arjan van de Ven Signed-off-by: Linus Torvalds commit 0d05ad2c09af9fb33ae76f9f8d1c4e4d1a9de92c Author: Ingo Molnar Date: Mon Mar 5 13:15:40 2007 +0100 [PATCH] paravirt: let users decide whether they want VMI do not use default=y for CONFIG_VMI (we do not do that for any driver or special-hardware feature): the overwhelming majority of Linux users does not need it, and interested users and distributions can enable it as-needed. Signed-off-by: Ingo Molnar Signed-off-by: Linus Torvalds commit e9417fb324f355e8e0b5d78d3b5dc7b90693fdfb Author: Ingo Molnar Date: Mon Mar 5 13:13:46 2007 +0100 [PATCH] paravirt: clarify VMI description Clarify the description of the CONFIG_VMI option: describe the reality that VMI is a VMWare-only interface for now. Once that changes and another hypervisor adopts the VMI ABI we can change the text. As can be seen from the Xen paravirtualization patches submitted to lkml the Xen project has chosen its own, non-VMI interface between Xen and the para-Linux - so remove Xen from the description. Signed-off-by: Ingo Molnar Signed-off-by: Linus Torvalds commit 3f1a73b6dd52f1f279c05263ee79ca14f45d9d25 Author: Ingo Molnar Date: Mon Mar 5 12:29:28 2007 +0100 [PATCH] paravirt: remove NO_IDLE_HZ on x86 Temove the mistaken turning on of NO_IDLE_HZ on x86+PARAVIRT kernels. It's an obsolete, limited form of dynticks. Signed-off-by: Ingo Molnar Acked-by: Thomas Gleixner Signed-off-by: Linus Torvalds commit 8690ba446defe2e2b81803756c099d2943dfd5fd Author: David Miller Date: Mon Mar 5 01:35:36 2007 -0800 [PATCH] video/aty/mach64_ct.c: fix bogus delay loop CT based mach64 cards were reported to hang on sparc64 boxes when compiled with gcc-4.1.x and later. Looking at this piece of code, it's no surprise. A critical delay was implemented as an empty for() loop, and gcc 4.0.x and previous did not optimize it away, so we did get a delay. But gcc-4.1.x and later can optimize it away, and we get crashes. Use a real udelay() to fix this. Fix verified on SunBlade100. Signed-off-by: David S. Miller Signed-off-by: Linus Torvalds commit 8f485612231792373580e8b2fe8ceb3791549aa5 Author: Adrian Bunk Date: Mon Mar 5 00:30:56 2007 -0800 [PATCH] arch/i386/kernel/vmi.c must #include CC arch/i386/kernel/vmi.o /home/bunk/linux/kernel-2.6/linux-2.6.21-rc2-mm1/arch/i386/kernel/vmi.c: In function 'vmi_map_pt_hook': /home/bunk/linux/kernel-2.6/linux-2.6.21-rc2-mm1/arch/i386/kernel/vmi.c:387: error: 'KM_PTE0' undeclared (first use in this function) /home/bunk/linux/kernel-2.6/linux-2.6.21-rc2-mm1/arch/i386/kernel/vmi.c:387: error: (Each undeclared identifier is reported only once /home/bunk/linux/kernel-2.6/linux-2.6.21-rc2-mm1/arch/i386/kernel/vmi.c:387: error: for each function it appears in.) /home/bunk/linux/kernel-2.6/linux-2.6.21-rc2-mm1/arch/i386/kernel/vmi.c:387: error: 'KM_PTE1' undeclared (first use in this function) make[2]: *** [arch/i386/kernel/vmi.o] Error 1 Signed-off-by: Adrian Bunk Acked-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 00f8b0c1856447186f4d28a00c9ad955c566371d Author: Sam Ravnborg Date: Mon Mar 5 00:30:55 2007 -0800 [PATCH] usb-storage: do not rebuild when kernel version changes Replacing use of UTS_RELEASE with utsname()->release avoids that the usb-storage driver is recompiled each time the kernel version changes. Signed-off-by: Sam Ravnborg Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f9c99463b0cd05603d125c915e2886d55a686b82 Author: Roland Kletzing Date: Mon Mar 5 00:30:54 2007 -0800 [PATCH] Documentation for io-accounting / reporting via procfs Add some documentation for the new and very useful io-accounting feature. It's being added to Documentation/filesystems/proc.txt Signed-off-by: Roland Kletzing Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 721c04c65f5905ef64732394f6ae147be0aebf69 Author: Antonino A. Daplas Date: Mon Mar 5 00:30:54 2007 -0800 [PATCH] atyfb: Fix kconfig error Fix the following compile error: MODPOST 327 modules WARNING: "aty_st_lcd" [drivers/video/aty/atyfb.ko] undefined! WARNING: "aty_ld_lcd" [drivers/video/aty/atyfb.ko] undefined! make[1]: *** [__modpost] Error 1 make: *** [modules] Error 2 Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6346190b2fc0937bbc319b5f0e329789fb846ae6 Author: Michal Piotrowski Date: Mon Mar 5 00:30:53 2007 -0800 [PATCH] char/epca.c: remove unused function "drivers/char/epca.c:2741: warning: 'get_termio' defined but not used" Signed-off-by: Michal Piotrowski Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e81ce1f7ecdaed2844c75313b09af791d44e6373 Author: Heiko Carstens Date: Mon Mar 5 00:30:51 2007 -0800 [PATCH] timer/hrtimer: take per cpu locks in sane order Doing something like this on a two cpu system # echo 0 > /sys/devices/system/cpu/cpu0/online # echo 1 > /sys/devices/system/cpu/cpu0/online # echo 0 > /sys/devices/system/cpu/cpu1/online will give me this: ======================================================= [ INFO: possible circular locking dependency detected ] 2.6.21-rc2-g562aa1d4-dirty #7 ------------------------------------------------------- bash/1282 is trying to acquire lock: (&cpu_base->lock_key){.+..}, at: [<000000000005f17e>] hrtimer_cpu_notify+0xc6/0x240 but task is already holding lock: (&cpu_base->lock_key#2){.+..}, at: [<000000000005f174>] hrtimer_cpu_notify+0xbc/0x240 which lock already depends on the new lock. This happens because we have the following code in kernel/hrtimer.c: migrate_hrtimers(int cpu) [...] old_base = &per_cpu(hrtimer_bases, cpu); new_base = &get_cpu_var(hrtimer_bases); [...] spin_lock(&new_base->lock); spin_lock(&old_base->lock); Which means the spinlocks are taken in an order which depends on which cpu gets shut down from which other cpu. Therefore lockdep complains that there might be an ABBA deadlock. Since migrate_hrtimers() gets only called on cpu hotplug it's safe to assume that it isn't executed concurrently on a The same problem exists in kernel/timer.c: migrate_timers(). As pointed out by Christian Borntraeger one possible solution to avoid the locking order complaints would be to make sure that the locks are always taken in the same order. E.g. by taking the lock of the cpu with the lower number first. To achieve this we introduce two new spinlock functions double_spin_lock and double_spin_unlock which lock or unlock two locks in a given order. Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Roman Zippel Cc: John Stultz Cc: Christian Borntraeger Cc: Martin Schwidefsky Signed-off-by: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6bb74df481223731af6c7e0ff3adb31f6442cfcd Author: john stultz Date: Mon Mar 5 00:30:50 2007 -0800 [PATCH] clocksource init adjustments (fix bug #7426) This patch resolves the issue found here: http://bugme.osdl.org/show_bug.cgi?id=7426 The basic summary is: Currently we register most of i386/x86_64 clocksources at module_init time. Then we enable clocksource selection at late_initcall time. This causes some problems for drivers that use gettimeofday for init calibration routines (specifically the es1968 driver in this case), where durring module_init, the only clocksource available is the low-res jiffies clocksource. This may cause slight calibration errors, due to the small sampling time used. It should be noted that drivers that require fine grained time may not function on architectures that do not have better then jiffies resolution timekeeping (there are a few). However, this does not discount the reasonable need for such fine-grained timekeeping at init time. Thus the solution here is to register clocksources earlier (ideally when the hardware is being initialized), and then we enable clocksource selection at fs_initcall (before device_initcall). This patch should probably get some testing time in -mm, since clocksource selection is one of the most important issues for correct timekeeping, and I've only been able to test this on a few of my own boxes. Signed-off-by: John Stultz Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "David S. Miller" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4540768011352d38afb89d400eacb3e261507b70 Author: David Rientjes Date: Mon Mar 5 00:30:49 2007 -0800 [PATCH] x86_64: remove unusued 'flags' variable Removes unused 'flags' variable from setup_IO_APIC_irq(). Signed-off-by: David Rientjes Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4ff31d7757f57074ccfef352b9d156023914fb2b Author: Christian Krafft Date: Mon Mar 5 00:30:48 2007 -0800 [PATCH] ipmi: check, if default ports are accessible on PPC ipmi_si_intf tries to access default ports, if no device could be found elsewhere. On PPC we have a function to check, if these legacy IO ports are accessible. This patch adds a check for these ports on PPC. This patch fixes a breakage of IPMI module on PPC machines without a BMC. Signed-off-by: Christian Krafft Acked-by: Michael Ellerman Signed-off-by: Corey Minyard Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a8fa74ab529f23f812092ece8d7a4766af092332 Author: Dmitriy Monakhov Date: Mon Mar 5 00:30:47 2007 -0800 [PATCH] ecryptfs: handle AOP_TRUNCATED_PAGE better - In fact we don't have to fail if AOP_TRUNCATED_PAGE was returned from prepare_write or commit_write. It is beter to retry attempt where it is possible. - Rearange ecryptfs_get_lower_page() error handling logic, make it more clean. Signed-off-by: Dmitriy Monakhov Acked-by: Michael Halcrow Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 82b16528405131eadc18285da982d4806f6db34e Author: Dmitriy Monakhov Date: Mon Mar 5 00:30:46 2007 -0800 [PATCH] ecryptfs: lower root result must be adirectory - Currently after path_lookup succeed we dot't have any guarantie what it is DIR. This must be explicitly demanded. - path_lookup can't return negative dentry, So inode check is useless. Signed-off-by: Dmitriy Monakhov Acked-by: Michael Halcrow Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a5f5e43e2b1377392f9afe93aca29b9abf1d6a44 Author: Thomas Gleixner Date: Mon Mar 5 00:30:45 2007 -0800 [PATCH] fix "NMI appears to be stuck" Testing NMI watchdog ... CPU#0: NMI appears to be stuck (54->54)! CPU#1: NMI appears to be stuck (0->0)! Keep the PIT/HPET alive when nmi_watchdog = 1 is given on the command line. Signed-off-by: Thomas Gleixner Cc: Ingo Molnar Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6d3baf2eb8bd680b2d4f509bc3dbf4dcd6e27a40 Author: NeilBrown Date: Mon Mar 5 00:30:44 2007 -0800 [PATCH] md: fix for raid6 reshape Recent patch for raid6 reshape had a change missing that showed up in subsequent review. Many places in the raid5 code used "conf->raid_disks-1" to mean "number of data disks". With raid6 that had to be changed to "conf->raid_disk - conf->max_degraded" or similar. One place was missed. This bug means that if a raid6 reshape were aborted in the middle the recorded position would be wrong. On restart it would either fail (as the position wasn't on an appropriate boundary) or would leave a section of the array unreshaped, causing data corruption. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c6b36e9a3c57b73c7a6bdf787baa55f21195bba9 Author: Zachary Amsden Date: Mon Mar 5 00:30:43 2007 -0800 [PATCH] vmi: smp fixes Critical fixes for SMP. Fix a couple functions which needed to be __devinit and fix a bogus parameter to AP startup that just so happened to work because the low virtual mapping of memory was still established. Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 772205f62ebcce2d60bfa5166f56c78044afab7d Author: Zachary Amsden Date: Mon Mar 5 00:30:41 2007 -0800 [PATCH] vmi: apic ops Use para_fill instead of directly setting the APIC ops to the result of the vmi_get_function call - this allows one to implement a VMI ROM without implementing APIC functions, just using the native APIC functions. While doing this, I realized that there is a lot more cleanup that should have been done. Basically, we should never assume that the ROM implements a specific set of functions, and always allow fallback to the native implementation. This is critical for future compatibility. Signed-off-by: Anthony Liguori Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a9eddc952870d29aa9df96ab862327eb6afa23d9 Author: Zachary Amsden Date: Mon Mar 5 00:30:41 2007 -0800 [PATCH] vmi: fix nohz compile More goo from hrtimers integration. We do compile and run properly with NO_HZ enabled. There was a period when we didn't because of a missing export, but that was since fixed. And with the clocksource code now firmly in place, we can get rid of code that fixes up the wallclock, since this is done in the common infrastructure. This actually fixes a timer bug as well, that was caused by do_settimeofday no longer being callable with interrupts disabled due to the use of on_each_cpu(). Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e30fab3ad34aa8bfb55c9f0337d4a92a0595f41f Author: Zachary Amsden Date: Mon Mar 5 00:30:39 2007 -0800 [PATCH] vmi: pit override The time_init_hook in paravirt-ops no longer functions in the correct manner after the integration of the hrtimers code. The problem is that now the call path for time initialization is: time_init : late_time_init = hpet_time_init; late_time_init -> hpet_time_init: setup_pit_timer (BAD) do_time_init --> (via paravirt.h) time_init_hook --> (via arch_hooks.h) time_init_hook (in SUBARCH/setup.c) If this isn't confusing enough, the paravirt case goes through an indirect function pointer in the paravirt-ops table. The problem is, by the time the paravirt hook is called, the pit timer is already enabled. But paravirt guests have their own timer, and don't want to use the PIT. Rather than intensify the struggle for power going on here, just make it all nice and simple and just unconditionally do all timer setup in the late_time_init hook. This also has the advantage of enabling timers in the same place in all code paths, so everyone has the same bugs and we don't have outliers who break other code because they turn on timer too early or too late. So the paravirt-ops time init function is now by default hpet_time_init, which is the time init function used for native hardware. Paravirt guests have the chance to override this when they setup the paravirt-ops table, and should need no change. Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eda08b1befaabcdfea1a9216ae13f9065e69baa7 Author: Zachary Amsden Date: Mon Mar 5 00:30:38 2007 -0800 [PATCH] vmi: paravirt drop udelay op Not respecting udelay causes problems with any virtual hardware that is passed through to real hardware. This can be noticed by any device that interacts with the real world in real time - like AP startup, which takes real time. Or keyboard LEDs, which should blink in real-time. Or floppy drives, but only when passed through to a real floppy controller on OSes which can't sufficiently buffer the floppy commands to emulate a zero latency floppy. Or IDE drives, when connecting to a physical CDROM. This was mostly a hack to get the kernel to boot faster, but it introduced a number of misvirtualization bugs, and Alan and Pavel argued pretty strongly against it. We were the only client, and now want to clean up this cruft. Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a1c13e91f100c12dcad3a1be1b12890bf32f6ff Author: Zachary Amsden Date: Mon Mar 5 00:30:37 2007 -0800 [PATCH] vmi: fix highpte Provide a PT map hook for HIGHPTE kernels to designate where they are mapping page tables. This information is required so the physical address of PTE updates can be determined; otherwise, the mm layer would have to carry the physical address all the way to each PTE modification callsite, which is even more hideous that the macros required to provide the proper hooks. So lets not mess up arch neutral code to achieve this, but keep the horror in an #ifdef HIGHPTE in include/asm-i386/pgtable.h. I had to use macros here because some types are not yet defined in all the include paths for this header. This patch is absolutely required for HIGHPTE kernels to operate properly with VMI. Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1182d8528b620c23d043bccbbef092b42062960a Author: Zachary Amsden Date: Mon Mar 5 00:30:36 2007 -0800 [PATCH] vmi: cpu cycles fix In order to share the common code in tsc.c which does CPU Khz calibration, we need to make an accurate value of CPU speed available to the tsc.c code. This value loses a lot of precision in a VM because of the timing differences with real hardware, but we need it to be as precise as possible so the guest can make accurate time calculations with the cycle counters. Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6cb9a8350aee789100a365794272ed20cc8f2401 Author: Zachary Amsden Date: Mon Mar 5 00:30:35 2007 -0800 [PATCH] vmi: sched clock paravirt op fix The custom_sched_clock hook is broken. The result from sched_clock needs to be in nanoseconds, not in CPU cycles. The TSC is insufficient for this purpose, because TSC is poorly defined in a virtual environment, and mostly represents real world time instead of scheduled process time (which can be interrupted without notice when a virtual machine is descheduled). To make the scheduler consistent, we must expose a different nature of time, that is scheduled time. So deprecate this custom_sched_clock hack and turn it into a paravirt-op, as it should have been all along. This allows the tsc.c code which converts cycles to nanoseconds to be shared by all paravirt-ops backends. It is unfortunate to add a new paravirt-op, but this is a very distinct abstraction which is clearly different for all virtual machine implementations, and it gets rid of an ugly indirect function which I ashamedly admit I hacked in to try to get this to work earlier, and then even got in the wrong units. Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7507ba34e827ca3c6bbcd34d20a8df8ba365fca6 Author: Zachary Amsden Date: Mon Mar 5 00:30:34 2007 -0800 [PATCH] vmi: timer fixes round two Critical bugfixes for the VMI-Timer code. 1) Do not setup a one shot alarm if we are keeping the periodic alarm armed. Additionally, since the periodic alarm can be run at a lower rate than HZ, let's fixup the guard to the no-idle-hz mode appropriately. This fixes the bug where the no-idle-hz mode might have a higher interrupt rate than the non-idle case. 2) The interrupt handler can no longer adjust xtime due to nested lock acquisition. Drop this. We don't need to check for wallclock time at every tick, it can be done in userspace instead. 3) Add a bypass to disable noidle operation. This is useful as a last minute workaround, or testing measure. 4) The code to skip the IO_APIC timer testing (no_timer_check) should be conditional on IO_APIC, not SMP, since UP kernels can have this configured in as well. Signed-off-by: Dan Hecht Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0dc952dc3e6d96d554a19fa7bee3f3b1d55e3cff Author: Christoph Lameter Date: Mon Mar 5 00:30:33 2007 -0800 [PATCH] Page migration: Fix vma flag checking Currently we do not check for vma flags if sys_move_pages is called to move individual pages. If sys_migrate_pages is called to move pages then we check for vm_flags that indicate a non migratable vma but that still includes VM_LOCKED and we can migrate mlocked pages. Extract the vma_migratable check from mm/mempolicy.c, fix it and put it into migrate.h so that is can be used from both locations. Problem was spotted by Lee Schermerhorn Signed-off-by: Christoph Lameter Signed-off-by: Lee Schermerhorn Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1f2b69f9bdce8461341e5fb864568a2ee90079c8 Author: Paul Mundt Date: Mon Mar 5 00:30:31 2007 -0800 [PATCH] fb: sm501fb off-by-1 sysfs store Currently sm501fb_crtsrc_store() won't allow the routing to be changed via echos from userspace in to the sysfs file. The reason for this is that the strnicmp() for both heads uses a sizeof() for the string length, which ends up being strlen() + 1 (\0 in the normal case, but the echo gives a newline, which is where the issue occurs), this then causes a mismatch and subsequently bails with the -EINVAL. In addition to this, the hardcoded lengths were then used for the store length that was returned, which ended up being erroneous and resulting in a write error. There's also no point in returning anything but the full length since it will -EINVAL out on a mismatch well before then anyways. sizeof("string") is great for making sure you have space in your buffer, but rather less so for string comparisons :-) Signed-off-by: Paul Mundt Acked-by: Ben Dooks Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 69f7c0a1be84b10a81b6edcce2dbee0cdec26eba Author: Con Kolivas Date: Mon Mar 5 00:30:29 2007 -0800 [PATCH] sched: remove SMT nice Remove the SMT-nice feature which idles sibling cpus on SMT cpus to facilitiate nice working properly where cpu power is shared. The idling of cpus in the presence of runnable tasks is considered too fragile, easy to break with outside code, and the complexity of managing this system if an architecture comes along with many logical cores sharing cpu power will be unworkable. Remove the associated per_cpu_gain variable in sched_domains used only by this code. Also: The reason is that with dynticks enabled, this code breaks without yet further tweaks so dynticks brought on the rapid demise of this code. So either we tweak this code or kill it off entirely. It was Ingo's preference to kill it off. Either way this needs to happen for 2.6.21 since dynticks has gone in. Signed-off-by: Con Kolivas Acked-by: Ingo Molnar Cc: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 759b9775c25f5e69aaea8a75c3914019e2dc5539 Author: Hugh Dickins Date: Mon Mar 5 00:30:28 2007 -0800 [PATCH] shmem and simple const super_operations shmem's super_operations were missed from the recent const-ification; and simple_fill_super()'s, which can share with get_sb_pseudo()'s. Signed-off-by: Hugh Dickins Acked-by: Josef 'Jeff' Sipek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cc2cccaec88d422e628e6b588078e1dbdc241896 Author: Johannes Berg Date: Mon Mar 5 00:30:27 2007 -0800 [PATCH] schedule wext/rtnl for removal Since wext is being replaced as fast as we can (it'll probably stick around for legacy drivers though) and the wext/netlink stuff was never really used, this schedules it for removal. The removal schedule is tight but there are no users of the code, the main user of the wext user interface are the wireless-tools, they only have an alpha version using the netlink interface and even that is incomplete. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit de320199c0f425503eef17883a3ba90464bf35ba Author: Maciej W. Rozycki Date: Mon Mar 5 00:30:26 2007 -0800 [PATCH] dz: remove struct pt_regs references Remove remaining references to saved registers now that uart_handle_sysrq_char() does not want them. Signed-off-by: Maciej W. Rozycki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 49015bee4071d56456ef59f1f82be6531615341c Author: David Brownell Date: Mon Mar 5 00:30:22 2007 -0800 [PATCH] gpio_keys driver shouldn't be ARM-specific The gpio_keys driver is wrongly ARM-specific; it can't build on other platforms with GPIO suport. This fixes that problem. Signed-off-by: David Brownell Cc: Dmitry Torokhov Cc: pHilipp Zabel Cc: Haavard Skinnemoen Cc: Russell King Cc: Richard Purdie Cc: Ben Nizette Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0a938b9768d1fc0e12a884a6820a2e15df5a612c Author: David Brownell Date: Mon Mar 5 00:30:18 2007 -0800 [PATCH] add CONFIG_GENERIC_GPIO Most drivers using GPIOs already know they are running on a system that supports the generic GPIO calls, because of other platform dependencies. But the generic GPIO-based LED and input button drivers can't know that. So this patch adds a Kconfig hook, GENERIC_GPIO, to mark the platforms where will do the right thing. Currently that's a bunch of ARMs, and AVR32; more are on the way. It also fixes a dependency bug for the gpio button input driver; it was wrong to start with, now it covers all platforms with GENERIC_GPIO. Signed-off-by: David Brownell Acked-by: Richard Purdie Cc: Arnaud Patard Cc: Cc: Cc: pHilipp Zabel Cc: Haavard Skinnemoen Cc: Dmitry Torokhov Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1ad7c311079412541bebaf1c8436d405cc8c6b2c Author: Tony Breeds Date: Mon Mar 5 00:30:14 2007 -0800 [PATCH] Fix soft lockup with iSeries viocd driver Fix soft lockup with iSeries viocd driver, caused by eventually calling end_that_request_first() with nr_bytes 0. Some versions of hald do an SG_IO ioctl on the viocd device which becomes a request with hard_nr_sectors and hard_cur_sectors set to zero. Passing zero as the number of sectors to end_request() (which calls end_that_request_first()) causes an infinite loop when the bio is being freed. This patch makes sure that the zero is never passed. It only requires some number larger the the request size the terminate the loop. The lockup is triggered by hald, interrogating the device. Signed-off-by: Tony Breeds Signed-off-by: Jens Axboe Cc: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5fdc2abe39b76822e34e7029ca5f69fe4bea58d4 Author: David Brownell Date: Mon Mar 5 00:30:13 2007 -0800 [PATCH] parport is an orphan The writing on the wall seem to be that the parport stack is orphaned, rather than maintained by four folk ... and having a webpage that says the latest patches are based on a 2.5 kernel. Signed-off-by: David Brownell Acked-by: Jean Delvare Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ad5f1196792653dadf09c07a5fa917092b469c1c Author: Dmitriy Monakhov Date: Mon Mar 5 00:30:12 2007 -0800 [PATCH] ecryptfs: check xattr operation support fix - ecryptfs_write_inode_size_to_metadata() error code was ignored. - i_op->setxattr() must be supported by lower fs because used below. Signed-off-by: Monakhov Dmitriy Acked-by: Michael Halcrow Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 58e0543e8f355b32f0778a18858b255adb7402ae Author: Eric W. Biederman Date: Mon Mar 5 00:30:11 2007 -0800 [PATCH] msi: support masking msi irqs without a mask bit For devices that do not support msi-x we only support 1 interrupt. Therefore we can disable that one interrupt by disabling the msi capability itself. If we leave the intx interrupts disabled while we have the msi capability disabled no interrupts should be delivered from that device. Devices with just the minimal msi support (and thus hitting this code path) include things like the intel e1000 nic, so it looks like is going to be a fairly common case and thus important to get right. Signed-off-by: Eric W. Biederman Cc: Michael Ellerman Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b1cbf4e4dddd708ba268c3a2bf38383a269d490a Author: Eric W. Biederman Date: Mon Mar 5 00:30:10 2007 -0800 [PATCH] msi: fix up the msi enable/disable logic enable/disable_msi_mode have several side effects which keeps them from being generally useful. So this patch replaces them with with two much more targeted functions: msi_set_enable and msix_set_enable. This patch makes pci_dev->msi_enabled and pci_dev->msix_enabled the definitive way to test if linux has enabled the msi capability, and has the appropriate msi data structures set up. This patch ensures that while writing the msi messages in save/restore and during device initialization we have the msi capability disabled so we don't get into races. The pci spec requires that we do not have the msi capability enabled and the msi messages unmasked while we write the messages. Completely disabling the capability is overkill but it is easy :) Care has been taken so we never have both a msi capability and intx enabled simultaneously. We haven't run into a problem yet but better safe then sorry. Signed-off-by: Eric W. Biederman Cc: Michael Ellerman Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f5f2b13129a6541debf8851bae843cbbf48298b7 Author: Eric W. Biederman Date: Mon Mar 5 00:30:07 2007 -0800 [PATCH] msi: sanely support hardware level msi disabling In some cases when we are not using msi we need a way to ensure that the hardware does not have an msi capability enabled. Currently the code has been calling disable_msi_mode to try and achieve that. However disable_msi_mode has several other side effects and is only available when msi support is compiled in so it isn't really appropriate. Instead this patch implements pci_msi_off which disables all msi and msix capabilities unconditionally with no additional side effects. pci_disable_device was redundantly clearing the bus master enable flag and clearing the msi enable bit. A device that is not allowed to perform bus mastering operations cannot generate intx or msi interrupt messages as those are essentially a special case of dma, and require bus mastering. So the call in pci_disable_device to disable msi capabilities was redundant. quirk_pcie_pxh also called disable_msi_mode and is updated to use pci_msi_off. Signed-off-by: Eric W. Biederman Cc: Michael Ellerman Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 58a53b246b4aed95f3f93b45828c8d9f26b1cfcb Author: Jean Delvare Date: Mon Mar 5 00:30:06 2007 -0800 [PATCH] io_apic.h needs apicdef.h A -mm patch caused: In file included from drivers/pci/quirks.c:532: include/asm/io_apic.h:61: error: "MAX_IO_APICS" undeclared here (not in a function) So let's include the needed header. Signed-off-by: Jean Delvare Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d5dedf99e4ca9860ce8a1dd42db1cb666c360632 Author: Andrew Morton Date: Mon Mar 5 00:30:04 2007 -0800 [PATCH] cyclades: return closing_wait In http://bugzilla.kernel.org/show_bug.cgi?id=8065, Shen points out that the cyclades driver forget to return closing_wait to userspace. Cc: Alan Cox Cc: Russell King Cc: Shen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 202d4e602555e68c2bc71775228876b0356785c8 Author: Richard Purdie Date: Sat Mar 3 17:43:52 2007 +0000 backlight: Allow enable/disable of fb backlights, fixing regressions Enabling the backlight by default appears to cause problems for many users. This patch disables backlight controls unless explicitly enabled by users via a module parameter. Since PMAC users are known to work, default to enabled in that case. Signed-off-by: Richard Purdie commit 238576e12fef1d52751c6e08db2d0bdb0e248caf Author: Richard Purdie Date: Mon Feb 26 22:06:09 2007 +0000 backlight: Fix nvidia backlight initial brightness Fix a mix up when the nvidia driver was converted resulting in the backlight having an incorrect initial brightness. Signed-off-by: Richard Purdie commit 20b0f65d35ae45d43f363ace3744a775a752d265 Merge: 70077f2... 8491388... Author: Linus Torvalds Date: Sun Mar 4 13:31:00 2007 -0800 Merge master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6 * master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6: ide: make legacy IDE VLB modules check for the "probe" kernel params (v2) ide: remove some obsoleted kernel params (v2) ide/pci/delkin_cb.c: pci_module_init to pci_register_driver scc_pata: bugfix for checking DMA IRQ status ide: remove a ton of pointless #undef REALLY_SLOW_IO siimage: DRAC4 note adjust legacy IDE resource setting (v2) ide: fix pmac breakage ide-cs: Update device table ide: ide_get_best_pio_mode() returns incorrect IORDY setting (take 2) piix/slc90e66: more tuneproc() fixing (take 2) ide: fix drive side 80c cable check, take 2 cmd64x: fix PIO mode setup (take 3) alim15x3: fix PIO mode setup commit 70077f2fab35ed3d73631fc47d8c572b560ecabd Merge: 85a5d77... 527e1e1... Author: Linus Torvalds Date: Sun Mar 4 13:25:28 2007 -0800 Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev: [libata] pata_jmicron: build fix commit 85a5d77abea94c3496f63dc3ba72f5f932daa799 Merge: 6d04e3b... af70dbd... Author: Linus Torvalds Date: Sun Mar 4 13:22:12 2007 -0800 Merge master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb * master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb: V4L/DVB (5260): Cx88-blackbird: allow usage of both 376836 and 262144 sized firmware images V4L/DVB (5366): Pvrusb2: Fix compilation warning for amd64 builds (use %zu instead of %u) commit 6d04e3b04b6ab569cabeb5ca28ad1be11777e895 Merge: 4227003... 5c15bde... Author: Linus Torvalds Date: Sun Mar 4 13:16:49 2007 -0800 Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 * master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: [VLAN]: Avoid a 4-order allocation. [HDLC] Fix dev->header_cache_update having a random value. [NetLabel]: Verify sensitivity level has a valid CIPSO mapping [PPPOE]: Key connections properly on local device. [AF_UNIX]: Test against sk_max_ack_backlog properly. [NET]: Fix bugs in "Whether sock accept queue is full" checking commit 42270035c6550101f7dc742a630c2590dd2d3ae0 Merge: 2c89a8d... 8d91cba... Author: Linus Torvalds Date: Sun Mar 4 13:15:48 2007 -0800 Merge master.kernel.org:/home/rmk/linux-2.6-arm * master.kernel.org:/home/rmk/linux-2.6-arm: (30 commits) [ARM] Acorn: move the i2c bus driver into drivers/i2c [ARM] ARM SCSI: Don't try to dma_map_sg too many scatterlist entries [ARM] ARM FAS216: don't modify scsi_cmnd request_bufflen [ARM] rtc-pcf8583: Final fixes for this RTC on RiscPC [ARM] rtc-pcf8583: correct month and year offsets [ARM] rtc-pcf8583: don't use BCD_TO_BIN/BIN_TO_BCD [ARM] EBSA110: Work around build errors [ARM] 4241/1: Define mb() as compiler barrier on a uniprocessor system [ARM] 4239/1: S3C24XX: Update kconfig entries for PM [ARM] 4238/1: S3C24XX: docs: update suspend and resume [ARM] 4237/2: oprofile: Always allow backtraces on ARM [ARM] Yet more asm/apm-emulation.h stuff ARM: OMAP: Add missing get_irqnr_preamble and arch_ret_to_user for omap2 ARM: OMAP: Use linux/delay.h not asm/delay.h ARM: OMAP: Remove obsolete alsa typedefs ARM: OMAP: omap1510->15xx conversions needed for sx1 ARM: OMAP: Add missing includes to board-nokia770 ARM: OMAP: Workqueue changes for board-h4.c ARM: OMAP: dmtimer.c omap1 register fix ARM: OMAP: board-nokia770: correct lcd name ... commit 2c89a8d09f03bc569d3237d97e2293d67c36d75d Merge: e9cdb1e... 8b4ac6f... Author: Linus Torvalds Date: Sun Mar 4 13:15:00 2007 -0800 Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: [MIPS] MTX1: clear PCI errors [MIPS] MTX1: add idsel cardbus ressources [MIPS] MTX1: remove unneeded settings [MIPS] dma_sync_sg_for_cpu is a no-op except for non-coherent R10000s. [MIPS] Cobalt: update reserved resources [MIPS] SN: PCI fixup needs to include . [MIPS] DMA: Fix a bunch of warnings due to missing inline keywords. [MIPS] RM: It should be #ifdef CONFIG_FOO not #if CONFIG_FOO ... [MIPS] Fix and cleanup the mess that a dozen prom_printf variants are. [MIPS] DEC: Remove redeclarations of mips_machgroup and mips_machtype. [MIPS] No need to write c0_compare in plat_timer_setup [MIPS] Convert to RTC-class ds1742 driver [MIPS] Oprofile: Add missing break statements. [MIPS] jmr3927: build fix [MIPS] SNI: Fix mc146818_decode_year [MIPS] Replace sys32_timer_create with the generic compat_sys_timer_create. [MIPS] Replace sys32_socketcall with the generic compat_sys_socketcall. [MIPS] N32 waitid is the same as o32. commit 8d91cbad8e6fd5b37bf584740f134508709ba035 Author: Russell King Date: Sun Mar 4 20:40:50 2007 +0000 [ARM] Acorn: move the i2c bus driver into drivers/i2c Move the Acorn IOC/IOMD I2C bus driver from drivers/i2c, strip out the reminants of the platform specific parts of the old PCF8583 RTC code, and remove the old obsolete PCF8583 driver. Signed-off-by: Russell King commit 23d046f43a05155e050a68f3ad1f19b672713374 Author: Russell King Date: Sun Mar 4 20:21:38 2007 +0000 [ARM] ARM SCSI: Don't try to dma_map_sg too many scatterlist entries An off-by-one bug meant we were always trying to map one too many scatterlist entries. This was mostly harmless prior to the checks going in to consistent_sync(), but now causes the kernel to BUG. Also, powertec.c was missing an assignment to info->ec. Signed-off-by: Russell King commit 6b4df7ee1f636f0dbf3896235582559c86cb18aa Author: Russell King Date: Sun Mar 4 20:19:07 2007 +0000 [ARM] ARM FAS216: don't modify scsi_cmnd request_bufflen SCSI doesn't want drivers to modify request_bufflen, so keep a driver-private copy of this in the scsi_pointer structure instead. Signed-off-by: Russell King commit bb71f99f8daefb4a2c2441298bc127aaff9af947 Author: Russell King Date: Sun Mar 4 20:33:07 2007 +0000 [ARM] rtc-pcf8583: Final fixes for this RTC on RiscPC Replace the I2C bus address, as per drivers/acorn/char/pcf8583.c. Also, since this driver also contains Acorn RiscPC specific code for obtaining the current year from the SRAM (and updating the platform specific checksum when writing new data back) this is NOT a platform independent driver. Document it as such, and update the dependencies to reflect this fact. Signed-off-by: Russell King commit 0ed8f210e68236f2034f827596f0a8201a907a9f Author: Russell King Date: Sun Mar 4 20:13:13 2007 +0000 [ARM] rtc-pcf8583: correct month and year offsets No, today is not 4th April 3907, it's 4th March 2007. Signed-off-by: Russell King commit f5e5b734d4c9ccc1f5f68bdf545bdc4b19681d28 Author: Russell King Date: Sun Mar 4 20:12:07 2007 +0000 [ARM] rtc-pcf8583: don't use BCD_TO_BIN/BIN_TO_BCD Both BCD_TO_BIN(x) and BIN_TO_BCD(x) have an unexpected side-effect - not only do they return the value as expected, they _modify_ their argument in the process. Let's play it safe and avoid these macros. Signed-off-by: Russell King commit 8b4ac6f316b493fae511921e25c72119f7b03170 Author: Florian Fainelli Date: Fri Mar 2 22:08:01 2007 +0100 [MIPS] MTX1: clear PCI errors This patch clears PCI errors after showing more debug informations. Signed-off-by: Florian Fainelli Signed-off-by: Ralf Baechle commit baa545fddd752f46ced034bc3d95778649b67c2d Author: Florian Fainelli Date: Fri Mar 2 22:07:48 2007 +0100 [MIPS] MTX1: add idsel cardbus ressources Adds cardbus ressources for MTX1 boards which have a PCMCIA controller. Signed-off-by: Florian Fainelli Signed-off-by: Ralf Baechle commit 6fff989157aa0506520637277ec4653306689c25 Author: Florian Fainelli Date: Fri Mar 2 22:07:41 2007 +0100 [MIPS] MTX1: remove unneeded settings This patch removes unnecessary settings at setup time. Signed-off-by: Florian Fainelli Signed-off-by: Ralf Baechle commit 5b648a98db05fd0152349a11a7f7e30b80643977 Author: Ralf Baechle Date: Fri Mar 2 11:42:11 2007 +0000 [MIPS] dma_sync_sg_for_cpu is a no-op except for non-coherent R10000s. Signed-off-by: Ralf Baechle commit 47d7c44b87df91fdb5d9c2678fc90afd46c14fbe Author: Yoichi Yuasa Date: Thu Mar 1 22:50:25 2007 +0900 [MIPS] Cobalt: update reserved resources This patch has removed unused timer resource. Moreover, the name of reserved resources ware changed. Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit 3a1d8217e1f90c0b63654f25f3f2db0a1101a1e1 Author: Ralf Baechle Date: Thu Mar 1 15:35:54 2007 +0000 [MIPS] SN: PCI fixup needs to include . Signed-off-by: Ralf Baechle commit a9b6590ced1370537edad8dc60be32c044b2380e Author: Ralf Baechle Date: Thu Mar 1 15:30:01 2007 +0000 [MIPS] DMA: Fix a bunch of warnings due to missing inline keywords. Signed-off-by: Ralf Baechle commit 07c0d7437c7061fef61e35183781d126cebf138a Author: Ralf Baechle Date: Thu Mar 1 15:29:25 2007 +0000 [MIPS] RM: It should be #ifdef CONFIG_FOO not #if CONFIG_FOO ... Signed-off-by: Ralf Baechle commit 36a885306fdf7bb557c773309c993bfb2d0d693c Author: Ralf Baechle Date: Thu Mar 1 11:56:43 2007 +0000 [MIPS] Fix and cleanup the mess that a dozen prom_printf variants are. early_printk is a so much saner thing. Signed-off-by: Ralf Baechle commit ca471c86043f4a8b01cba02ba2d3431fddcaf606 Author: Ralf Baechle Date: Thu Mar 1 10:47:23 2007 +0000 [MIPS] DEC: Remove redeclarations of mips_machgroup and mips_machtype. Signed-off-by: Ralf Baechle commit 12e4396bf0b1cd62c9d71a06596914c7efa7dbaf Author: Atsushi Nemoto Date: Thu Mar 1 01:53:13 2007 +0900 [MIPS] No need to write c0_compare in plat_timer_setup If R4k counter was used for hpt_timer and interrupt source, c0_hpt_timer_init() initializes the c0_compare register. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit a0574e04807608998d4d115c07b7bc12bb499a44 Author: Atsushi Nemoto Date: Thu Mar 1 00:40:21 2007 +0900 [MIPS] Convert to RTC-class ds1742 driver The generic rtc-ds1742 driver can be used for RBTX4927 and JMR3927 (with __swizzle_addr trick). This patch also removes MIPS local DS1742 stuff. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 148171b2ac1fb6a1a9f987f8daedc146c810a8ae Author: Ralf Baechle Date: Wed Feb 28 15:34:22 2007 +0000 [MIPS] Oprofile: Add missing break statements. This was causing oprofile to fail on R10000, R12000, R14000. Signed-off-by: Ralf Baechle commit 69f282765735b1df5e27b373e64e5238caca8c49 Author: Atsushi Nemoto Date: Wed Feb 28 01:42:19 2007 +0900 [MIPS] jmr3927: build fix Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 49fa3c0869677facd846adc928c332b4c20cdc25 Author: Thomas Bogendoerfer Date: Sat Feb 3 14:06:10 2007 +0100 [MIPS] SNI: Fix mc146818_decode_year Big endian RMs uses a different mc146818_decode_year than little endian RMs Correct mc146818_decode_year for years before 2000 Signed-off-by: Thomas Bogendoerfer Signed-off-by: Ralf Baechle commit 821d313c257b9b04c3c82f0b303ee259c00dc620 Author: Ralf Baechle Date: Tue Feb 27 01:21:17 2007 +0000 [MIPS] Replace sys32_timer_create with the generic compat_sys_timer_create. Signed-off-by: Ralf Baechle commit 08274cefdc9efe709540be5d8e7c002346592d6d Author: Ralf Baechle Date: Tue Feb 27 01:11:28 2007 +0000 [MIPS] Replace sys32_socketcall with the generic compat_sys_socketcall. Signed-off-by: Ralf Baechle commit 440537ef409c7013134116a7ca155d43d25eb492 Author: Ralf Baechle Date: Tue Feb 27 00:56:37 2007 +0000 [MIPS] N32 waitid is the same as o32. Signed-off-by: Ralf Baechle commit e9cdb1e330d805f4453c1359cebe2bd6a06ce692 Author: Andrew Morton Date: Thu Mar 1 11:28:13 2007 +0200 KVM: Move kvmfs magic number to Use the standard magic.h for kvmfs. Cc: Avi Kivity Signed-off-by: Andrew Morton Signed-off-by: Avi Kivity commit 58e690e6fd47a682b49aed3510443d6797a03021 Author: Avi Kivity Date: Mon Feb 26 16:29:43 2007 +0200 KVM: Fix bogus failure in kvm.ko module initialization A bogus 'return r' can cause an otherwise successful module load to fail. This both denies users the use of kvm, and it also denies them the use of their machine, as it leaves a filesystem registered with its callbacks pointing into now-freed module memory. Fix by returning a zero like a good module. Thanks to Richard Lucassen (?) for reporting the problem and for providing access to a machine which exhibited it. Signed-off-by: Avi Kivity commit ff990d5952712c2e163b355946c39278da8407a8 Author: Uri Lublin Date: Thu Feb 22 17:37:32 2007 +0200 KVM: Remove write access permissions when dirty-page-logging is enabled Enabling dirty page logging is done using KVM_SET_MEMORY_REGION ioctl. If the memory region already exists, we need to remove write accesses, so writes will be caught, and dirty pages will be logged. Signed-off-by: Uri Lublin Signed-off-by: Avi Kivity commit 02b27c1f802bfb60cc2cb5b763dde1b6b3479a7e Author: Uri Lublin Date: Thu Feb 22 17:15:33 2007 +0200 kvm: move do_remove_write_access() up To be called from kvm_vm_ioctl_set_memory_region() Signed-off-by: Uri Lublin Signed-off-by: Avi Kivity commit cd1a4a982a78e793125db2f386e91dc7c89c9ed1 Author: Uri Lublin Date: Thu Feb 22 16:43:09 2007 +0200 KVM: Fix dirty page log bitmap size/access calculation Since dirty_bitmap is an unsigned long array, the alignment and size need to take that into account. Signed-off-by: Uri Lublin Signed-off-by: Avi Kivity commit ab51a434c5816e1ca3f033791c1cc5c6594998ec Author: Uri Lublin Date: Wed Feb 21 18:25:21 2007 +0200 KVM: Add missing calls to mark_page_dirty() A few places where we modify guest memory fail to call mark_page_dirty(), causing live migration to fail. This adds the missing calls. Signed-off-by: Uri Lublin Signed-off-by: Avi Kivity commit f7e6a45ad9224dfe9f0d76a45c43be7ccafe0b82 Author: Avi Kivity Date: Wed Feb 21 19:47:40 2007 +0200 KVM: Bump API version Signed-off-by: Avi Kivity commit bccf2150fe62dda5fb09efa2f64d2a234694eb48 Author: Avi Kivity Date: Wed Feb 21 18:04:26 2007 +0200 KVM: Per-vcpu inodes Allocate a distinct inode for every vcpu in a VM. This has the following benefits: - the filp cachelines are no longer bounced when f_count is incremented on every ioctl() - the API and internal code are distinctly clearer; for example, on the KVM_GET_REGS ioctl, there is no need to copy the vcpu number from userspace and then copy the registers back; the vcpu identity is derived from the fd used to make the call Right now the performance benefits are completely theoretical since (a) we don't support more than one vcpu per VM and (b) virtualization hardware inefficiencies completely everwhelm any cacheline bouncing effects. But both of these will change, and we need to prepare the API today. Signed-off-by: Avi Kivity commit c5ea76600653b1a242321734435cb1c54778941a Author: Avi Kivity Date: Tue Feb 20 18:41:05 2007 +0200 KVM: Move kvm_vm_ioctl_create_vcpu() around In preparation of some hacking. Signed-off-by: Avi Kivity commit 2c6f5df9793e6f928fc763af3fb535a5e28a1f8a Author: Avi Kivity Date: Tue Feb 20 18:27:58 2007 +0200 KVM: Rename some kvm_dev_ioctl_*() functions to kvm_vm_ioctl_*() This reflects the changed scope, from device-wide to single vm (previously every device open created a virtual machine). Signed-off-by: Avi Kivity commit f17abe9a44425ff9c9858bc1806cc09d6b5dad1c Author: Avi Kivity Date: Wed Feb 21 19:28:04 2007 +0200 KVM: Create an inode per virtual machine This avoids having filp->f_op and the corresponding inode->i_fop different, which is a little unorthodox. The ioctl list is split into two: global kvm ioctls and per-vm ioctls. A new ioctl, KVM_CREATE_VM, is used to create VMs and return the VM fd. Signed-off-by: Avi Kivity commit 37e29d906c6eb1ece907e509160518b2edc2c083 Author: Avi Kivity Date: Tue Feb 20 14:07:37 2007 +0200 KVM: Add internal filesystem for generating inodes The kvmfs inodes will represent virtual machines and vcpus, as necessary, reducing cacheline bouncing due to inodes and filps being shared. Signed-off-by: Avi Kivity commit 19d1408dfd683daf1c158bb8fbf54324eb4bf568 Author: Avi Kivity Date: Mon Feb 19 14:37:48 2007 +0200 KVM: More 0 -> NULL conversions Signed-off-by: Avi Kivity commit 0152527b76b72333121d5a1243f9e091b58d4580 Author: Joerg Roedel Date: Mon Feb 19 14:37:47 2007 +0200 KVM: SVM: intercept SMI to handle it at host level This patch changes the SVM code to intercept SMIs and handle it outside the guest. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit cd205625e9bf2090d9bd95848ef4b34ad3f1a8b3 Author: Avi Kivity Date: Mon Feb 19 14:37:47 2007 +0200 KVM: svm: init cr0 with the wp bit set Signed-off-by: Avi Kivity commit 270fd9b96f5fcb7df15d3ca6166545d4aa0f3ee9 Author: Avi Kivity Date: Mon Feb 19 14:37:47 2007 +0200 KVM: Wire up hypercall handlers to a central arch-independent location Signed-off-by: Avi Kivity commit 02e235bc8eebf8a6fef10d46479b3c18f3e9c4f2 Author: Avi Kivity Date: Mon Feb 19 14:37:47 2007 +0200 KVM: Add hypercall host support for svm Signed-off-by: Avi Kivity commit c21415e84334af679630f6450ceb8929a5234fad Author: Ingo Molnar Date: Mon Feb 19 14:37:47 2007 +0200 KVM: Add host hypercall support for vmx Signed-off-by: Avi Kivity commit 102d8325a1d2f266d3d0a03fdde948544e72c12d Author: Ingo Molnar Date: Mon Feb 19 14:37:47 2007 +0200 KVM: add MSR based hypercall API This adds a special MSR based hypercall API to KVM. This is to be used by paravirtual kernels and virtual drivers. Signed-off-by: Ingo Molnar Signed-off-by: Avi Kivity commit 5972e9535e94bf875eb8eab8a667ba04c7583874 Author: Markus Rechberger Date: Mon Feb 19 14:37:47 2007 +0200 KVM: Use page_private()/set_page_private() apis Besides using an established api, this allows using kvm in older kernels. Signed-off-by: Markus Rechberger Signed-off-by: Avi Kivity commit 9d8f549dc69b1fc65d0b03916c02f12ca49b3ea0 Author: Ahmed S. Darwish Date: Mon Feb 19 14:37:46 2007 +0200 KVM: Use ARRAY_SIZE macro instead of manual calculation. Signed-off-by: Ahmed S. Darwish Signed-off-by: Dor Laor Signed-off-by: Avi Kivity commit de979caacca51c929d2cc2f0f79611ee4a1bc8a5 Author: Joerg Roedel Date: Mon Feb 19 14:37:46 2007 +0200 KVM: vmx: hack set_cr0_no_modeswitch() to actually do modeswitch The whole thing is rotten, but this allows vmx to boot with the guest reboot fix. Signed-off-by: Markus Rechberger Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit d27d4aca184ac0ca6b7e32caf79e1c2b91959be9 Author: Avi Kivity Date: Mon Feb 19 14:37:46 2007 +0200 KVM: Cosmetics Signed-off-by: Avi Kivity commit 43934a38d7cb39ff33baedc7f2c40a2a891116fa Author: Jeremy Katz Date: Mon Feb 19 14:37:46 2007 +0200 KVM: Move virtualization deactivation from CPU_DEAD state to CPU_DOWN_PREPARE This gives it more chances of surviving suspend. Signed-off-by: Jeremy Katz Signed-off-by: Avi Kivity commit bf3f8e86c2e22b9bd1375be1bbbd67384dba4342 Author: Avi Kivity Date: Mon Feb 19 14:37:46 2007 +0200 KVM: mmu: add missing dirty page tracking cases We fail to mark a page dirty in three cases: - setting the accessed bit in a pte - setting the dirty bit in a pte - emulating a write into a pagetable This fix adds the missing cases. Signed-off-by: Avi Kivity commit 849138827c962589ac50496fa7feeb2a2d51b467 Author: Bartlomiej Zolnierkiewicz Date: Sat Mar 3 17:48:55 2007 +0100 ide: make legacy IDE VLB modules check for the "probe" kernel params (v2) Legacy IDE VLB host drivers didn't check for "probe" options when compiled as modules, which was obviously wrong as we don't want module to poke at random I/O ports by simply loading it. Fix it by adding "probe" module param to legacy IDE VLB host drivers. v2: * don't obsolete old "ide0=dtc2278/ht6560b/qd65xx/ali14xx/umc8672" IDE driver options yet (per Alan Cox's request) and enhance documentation Signed-off-by: Bartlomiej Zolnierkiewicz commit b6209a90eca8c9a464bf9c5b91741fb125185619 Author: Bartlomiej Zolnierkiewicz Date: Sat Mar 3 17:48:55 2007 +0100 ide: remove some obsoleted kernel params (v2) Remove * "hdx=serialize" * "idex=noautotune" * "idex=autotune" kernel params, they have been obsoleted for ages. "idex=serialize", "hdx=noautotune" and "hdx=autotune" are still available so there is no funcionality loss caused by this patch. v2: * fix CONFIG_BLK_DEV_4DRIVES=y build broken by version 1 of the patch [ /me wearing brown paper bag ] Signed-off-by: Bartlomiej Zolnierkiewicz commit e76ecf86da99383f59f4c85f594403c5c3c1fe91 Author: Richard Knutsson Date: Sat Mar 3 17:48:55 2007 +0100 ide/pci/delkin_cb.c: pci_module_init to pci_register_driver Convert pci_module_init() to pci_register_driver(). [ Compile-tested with "allyes", "allmod" & "allno" on i386. ] Signed-off-by: Richard Knutsson Cc: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit 06a9952b8379c48df972023f648014a82582c23a Author: Akira Iguchi Date: Sat Mar 3 17:48:55 2007 +0100 scc_pata: bugfix for checking DMA IRQ status On Tuesday 27 February 2007, Akira Iguchi wrote: > > But since I sent the first patch, I found a bug for checking DMA IRQ status. > (http://www.spinics.net/lists/linux-ide/msg06903.html) > Then I sent the fixed patch for libata only. So my drivers/ide patch > still has same bug and I want to fix it, too. > > The following patch fixes this bug. Please apply this patch. From: Akira Iguchi Signed-off-by: Bartlomiej Zolnierkiewicz commit 846c11abc7934a523a665a3b702358e6f2998e3e Author: Alan Cox Date: Sat Mar 3 17:48:54 2007 +0100 ide: remove a ton of pointless #undef REALLY_SLOW_IO Signed-off-by: Alan Cox Signed-off-by: Bartlomiej Zolnierkiewicz commit 8693d3e47b5cd95e1a513f90bc5e0467ce885e24 Author: Alan Cox Date: Sat Mar 3 17:48:54 2007 +0100 siimage: DRAC4 note Revised DRAC4 warning as Jeff suggested, this one includes more info about why the problem occurs Signed-off-by: Alan Cox Signed-off-by: Bartlomiej Zolnierkiewicz commit ed8ccee0918ad063a4741c0656fda783e02df627 Author: Jan Beulich Date: Sat Mar 3 17:48:54 2007 +0100 adjust legacy IDE resource setting (v2) The change to force legacy mode IDE channels' resources to fixed non-zero values confuses (at least some versions of) X, because the values reported by the kernel and those readable from PCI config space aren't consistent anymore. Therefore, this patch arranges for the respective BARs to also get updated if possible. Signed-off-by: Jan Beulich Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit 9e5755bce00bb563739aeb0f09932a1907521167 Author: Andrew Morton Date: Sat Mar 3 17:48:54 2007 +0100 ide: fix pmac breakage Fix breakage added in the IDE devel tree. Add header, then fix drivers/ide/ppc/pmac.c: In function `pmac_ide_setup_dma': drivers/ide/ppc/pmac.c:2044: warning: assignment from incompatible pointer type drivers/ide/ppc/pmac.c: In function `pmac_ide_dma_host_on': drivers/ide/ppc/pmac.c:1989: warning: control reaches end of non-void function include/linux/pci.h: In function `pmac_ide_init': drivers/ide/ppc/pmac.c:1563: warning: ignoring return value of `pci_register_driver', declared with attribute warn_unused_result Then add some apparently-long-missing error handling. Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Bartlomiej Zolnierkiewicz commit ed89616786d47093525a5dc039b1f502f5ada954 Author: Magnus Damm Date: Sat Mar 3 17:48:54 2007 +0100 ide-cs: Update device table Add CFA devices from I-O Data, Mitsubishi and Viking. Add SanDisk comment. Signed-off-by: Magnus Damm Cc: Alan Cox Signed-off-by: Bartlomiej Zolnierkiewicz commit 81d368e0e2591497106b2543918c79dd6d78277b Author: Sergei Shtylyov Date: Sat Mar 3 17:48:53 2007 +0100 ide: ide_get_best_pio_mode() returns incorrect IORDY setting (take 2) The function ide_get_best_pio_mode() fails to return the correct IORDY setting for the explicitly specified modes -- fix this along with the heading comment, and also remove the long commented out code. Also, while at it, correct the misliading comment about the PIO cycle time in -- it actually consists of only the active and recovery periods, with only some chips also including the address setup time into equation... [ bart: sl82c105 seems to be currently the only driver affected by this fix ] Signed-off-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 07af427606667c304a2e965cd51d2c03642e8cae Author: Sergei Shtylyov Date: Sat Mar 3 17:48:53 2007 +0100 piix/slc90e66: more tuneproc() fixing (take 2) The tuneproc() method in both these drivers failed to set the drive's own speed. Fix this by renaming the function and "wrapping around it" the new tuneproc() method. Switch back to calling tuneproc() in the PIO fallback code. While at it, also convert the rest of the PIO timing code into proper C. :-) Has been kind of tested on SLC90E66. I'm too lazy to reboot my box and test on ICH4... :-) [ bart: I quickly tested it on ICH4. ] Signed-off-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit fab59375b9543f84d1714f7dd00f5d11e531bd3e Author: Tejun Heo Date: Sat Mar 3 17:48:53 2007 +0100 ide: fix drive side 80c cable check, take 2 eighty_ninty_three() had word 93 validitity check but not the 80c bit test itself (bit 13). This increases the chance of incorrect wire detection especially because host side cable detection is often unreliable and we sometimes soley depend on drive side cable detection. Fix it. [ bart: fix off-by-1 bit name in the patch description ] Signed-off-by: Tejun Heo Acked-by: Alan Cox Signed-off-by: Bartlomiej Zolnierkiewicz commit f92d50e6fd14f6e4601f59aac4cffe617b7b2ce6 Author: Sergei Shtylyov Date: Sat Mar 3 17:48:53 2007 +0100 cmd64x: fix PIO mode setup (take 3) The driver's tuneproc() method fails to set the drive's own speed -- fix this by renaming the function to cmd64x_tune_pio(), making it return the mode set, and "wrapping" the new tuneproc() method around it; while at it, also get rid of the non-working prefetch control code (filtering out related argument values in the "wrapper"), remove redundant PIO5 mode limitation, make cmdprintk() give more sensible mode info, and remove mention about the obsolete /proc/ interface. Get rid of the broken config_chipset_for_pio() which always tried to set PIO4, switch to always auto-tuning PIO instead. Oh, and add the missing PIO5 support to the speedproc() method while at it. :-) Warning: compile tested only -- getting to the real hardware isn't that easy... On Tuesday 06 February 2007 22:11, Mikael Pettersson wrote: > > Worked fine on my SPARC Ultra5 with a CMD646 IDE controller. Signed-off-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 21b824771309927172247546b0bff0c4e6831875 Author: Sergei Shtylyov Date: Sat Mar 3 17:48:52 2007 +0100 alim15x3: fix PIO mode setup The driver's tuneproc() method fails to set the drive's own speed -- fix this by renaming the function to ali15x3_tune_pio() and "wrapping" the new tuneproc() method around it and making it return the mode set, update the heading comment. Also, setting PIO mode via the speedproc() method does not work due to passing to the tuneproc() method's a mode number not biased by XFER_PIO_0 -- fix this along with a typo in the heading comment... Signed-off-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 527e1e1879cb10958b7ad4e04b3877abf54df3bd Author: Jeff Garzik Date: Sat Mar 3 10:36:19 2007 -0500 [libata] pata_jmicron: build fix Signed-off-by: Jeff Garzik commit af70dbd3346999570db73b3bc3d4f7b7c004f2ea Author: Michael Krufky Date: Sat Mar 3 10:10:43 2007 -0200 V4L/DVB (5260): Cx88-blackbird: allow usage of both 376836 and 262144 sized firmware images This updates the cx88-blackbird driver to be able to use the new cx23416 firmware image released by Hauppauge Computer Works, while retaining compatibility with the older firmware images. cx2341x firmware can be downloaded at: http://dl.ivtvdriver.org/ivtv/firmware/ Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 48dc30a148b837bcfff0902011633a94789a64fa Author: Mike Isely Date: Sat Mar 3 10:13:05 2007 -0200 V4L/DVB (5366): Pvrusb2: Fix compilation warning for amd64 builds (use %zu instead of %u) Signed-off-by Mike Isely Signed-off-by Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit c5eb2a2b65fe411dcfe13264cfa84788a75341fb Author: Russell King Date: Sat Mar 3 11:54:19 2007 +0000 [ARM] EBSA110: Work around build errors Work around EBSA110 build errors by selecting NO_IOPORT. EBSA110 can't support an IO port to MMIO mapping mechanism because the MMIO and IO port spaces have quite different and complex addressing requirements. Signed-off-by: Russell King commit 5c15bdec5c38f4ccf73ef2585fc80a6164de9554 Author: Dan Aloni Date: Fri Mar 2 20:44:51 2007 -0800 [VLAN]: Avoid a 4-order allocation. This patch splits the vlan_group struct into a multi-allocated struct. On x86_64, the size of the original struct is a little more than 32KB, causing a 4-order allocation, which is prune to problems caused by buddy-system external fragmentation conditions. I couldn't just use vmalloc() because vfree() cannot be called in the softirq context of the RCU callback. Signed-off-by: Dan Aloni Acked-by: Jeff Garzik Signed-off-by: David S. Miller commit b5284e5aa94be2f88dc92b29e97aff3da0c45f9f Author: Krzysztof Halasa Date: Fri Mar 2 15:52:22 2007 -0800 [HDLC] Fix dev->header_cache_update having a random value. Switching HDLC devices from Ethernet-framing mode caused stale ethernet function assignments within net_device. Signed-off-by: Krzysztof Halasa Signed-off-by: David S. Miller commit c6387a8694506841389a6ac55175a8a984ae34e4 Author: Paul Moore Date: Fri Mar 2 13:19:02 2007 -0800 [NetLabel]: Verify sensitivity level has a valid CIPSO mapping The current CIPSO engine has a problem where it does not verify that the given sensitivity level has a valid CIPSO mapping when the "std" CIPSO DOI type is used. The end result is that bad packets are sent on the wire which should have never been sent in the first place. This patch corrects this problem by verifying the sensitivity level mapping similar to what is done with the category mapping. This patch also changes the returned error code in this case to -EPERM to better match what the category mapping verification code returns. Signed-off-by: Paul Moore Acked-by: James Morris Signed-off-by: David S. Miller commit 90719dbeafdb40a15105ff0c899485b43c2a2a55 Author: Florian Zumbiehl Date: Fri Mar 2 13:16:56 2007 -0800 [PPPOE]: Key connections properly on local device. It is based on the assumption that an interface's ifindex is basically an alias for a local MAC address, so incoming packets now are matched to sockets based on remote MAC, session id, and ifindex of the interface the packet came in on/the socket was bound to by connect(). For relayed packets, the socket that's used for relaying is selected based on destination MAC, session ID and the interface index of the interface whose name currently matches the name requested by userspace as the relaying source interface. Signed-off-by: David S. Miller commit 248f06726e866942b3d8ca8f411f9067713b7ff8 Author: David S. Miller Date: Fri Mar 2 12:49:23 2007 -0800 [AF_UNIX]: Test against sk_max_ack_backlog properly. This brings things inline with the sk_acceptq_is_full() bug fix. The limit test should be x >= sk_max_ack_backlog. Signed-off-by: David S. Miller commit 8488df894d05d6fa41c2bd298c335f944bb0e401 Author: Wei Dong Date: Fri Mar 2 12:37:26 2007 -0800 [NET]: Fix bugs in "Whether sock accept queue is full" checking when I use linux TCP socket, and find there is a bug in function sk_acceptq_is_full(). When a new SYN comes, TCP module first checks its validation. If valid, send SYN,ACK to the client and add the sock to the syn hash table. Next time if received the valid ACK for SYN,ACK from the client. server will accept this connection and increase the sk->sk_ack_backlog -- which is done in function tcp_check_req().We check wether acceptq is full in function tcp_v4_syn_recv_sock(). Consider an example: After listen(sockfd, 1) system call, sk->sk_max_ack_backlog is set to 1. As we know, sk->sk_ack_backlog is initialized to 0. Assuming accept() system call is not invoked now. 1. 1st connection comes. invoke sk_acceptq_is_full(). sk- >sk_ack_backlog=0 sk->sk_max_ack_backlog=1, function return 0 accept this connection. Increase the sk->sk_ack_backlog 2. 2nd connection comes. invoke sk_acceptq_is_full(). sk- >sk_ack_backlog=1 sk->sk_max_ack_backlog=1, function return 0 accept this connection. Increase the sk->sk_ack_backlog 3. 3rd connection comes. invoke sk_acceptq_is_full(). sk- >sk_ack_backlog=2 sk->sk_max_ack_backlog=1, function return 1. Refuse this connection. I think it has bugs. after listen system call. sk->sk_max_ack_backlog=1 but now it can accept 2 connections. Signed-off-by: Wei Dong Signed-off-by: David S. Miller commit bb648a0d22908116b4ef168935a160d7f17c4e6d Merge: 8b45339... 6ffa01d... Author: Linus Torvalds Date: Fri Mar 2 17:58:52 2007 -0800 Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev: libata: add CONFIG_PM to libata core layer libata: add missing CONFIG_PM in LLDs libata: add missing PM callbacks pata_qdi: Fix initialisation [libata] pata_cmd64x: fix driver description in comments [libata] pata_{legacy,sc1200,sl82c105}: add missing hooks [libata] change master/slave IDENTIFY order libata-core: Fix simplex handling commit 8b453397da923eae4aeb3b41e49793295e09eedf Author: Jeff Garzik Date: Fri Mar 2 20:21:56 2007 -0500 [netdrvr] tulip, de2104x: fix typo: s/__sparc_/__sparc__/ Noticed by Doug Nazar (via David Miller). Signed-off-by: Jeff Garzik commit 5ada386bad58f023686b17113496ff626f10773f Author: Dale Farnsworth Date: Thu Mar 1 16:31:48 2007 -0700 mv643xx_eth: move mac_addr inside mv643xx_eth_platform_data The information contained within platform_data should be self-contained. Replace the pointer to a MAC address with the actual MAC address in struct mv643xx_eth_platform_data. Signed-off-by: Dale Farnsworth Signed-off-by: Jeff Garzik commit 471a567144b91c8f2b7a71a1cf8babe7331590b1 Author: Dave Jones Date: Wed Feb 28 15:41:39 2007 -0500 Fix mv643xx_eth compilation. Commit 908b637fe793165b6aecdc875cdca67c4959a1ad removed ETH_DMA_ALIGN but missed a usage of it in a macro, which broke the build. Signed-off-by: Dave Jones Signed-off-by: Jeff Garzik commit 63f779261f9aa16a0196c51092bedfdd32493f9d Author: Ron Mercer Date: Wed Feb 28 16:42:17 2007 -0800 qla3xxx: bugfix for line omitted in previous patch. This missing line caused transmit errors on the Qlogic 4032 chip. Signed-off-by: Ron Mercer Signed-off-by: Jeff Garzik commit e0e20a1a0822aa64335c05013f0966de6a8fc2c6 Author: Linsys Contractor Mithlesh Thukral Date: Wed Feb 28 05:16:40 2007 -0800 NetXen: Fix second rmmod failure observed on PowerPC machines. Signed-off by: Mithlesh Thukral Signed-off-by: Jeff Garzik commit 0c25cfe18afffbc88a2bef28732be9e4846153fe Author: Linsys Contractor Mithlesh Thukral Date: Wed Feb 28 05:14:07 2007 -0800 NetXen: Updates, removal of unsupported features and minor bug fixes. Signed-off-by: Mithlesh Thukral Signed-off-by: Jeff Garzik commit d518725fa68c2a90e04bea56a399d3d1c026269d Author: Divy Le Ray Date: Tue Feb 27 19:28:14 2007 -0800 cxgb3 - Tag driver version This patch adds a "-ko" tag to the driver version. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit 4a2e612a3b0cb6502d2317fa3e9d8f22be5db434 Author: Brice Goglin Date: Tue Feb 27 17:18:40 2007 +0100 myri10ge: fix copyright and license Fix copyright and license ("regents" should not have ever been used). Signed-off-by: Brice Goglin Signed-off-by: Jeff Garzik commit c8d64f8a058d6d9fde0291348fa5ac4d29c52da2 Author: Ralf Baechle Date: Tue Feb 27 18:15:01 2007 +0000 jmr3927: do not call tc35815_killall(). No need to stop tc35815 before resetting the board. This fixes the build of tc35815 as a module. This also means there is no caller of tc35815_killall left, so remove that function also. Signed-off-by: Ralf Baechle Signed-off-by: Jeff Garzik commit db7ce76f6b3dfc119ab2f03e5e7784afc9cf2f05 Merge: 43ecf52... 357efd5... Author: Jeff Garzik Date: Fri Mar 2 19:40:24 2007 -0500 Merge branch 'upstream-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into upstream-fixes commit 6ffa01d88c9dd45e2ed917b5eeeb494d07efb1ab Author: Tejun Heo Date: Fri Mar 2 17:32:47 2007 +0900 libata: add CONFIG_PM to libata core layer Conditionalize all PM related stuff in libata core layer using CONFIG_PM. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 438ac6d5e3f8106a6bd1a5682c508d660294a85d Author: Tejun Heo Date: Fri Mar 2 17:31:26 2007 +0900 libata: add missing CONFIG_PM in LLDs Add missing #ifdef CONFIG_PM conditionals around all PM related parts in libata LLDs. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit b23ff24436c97fb26428f3a337faf189292cc307 Author: Tejun Heo Date: Fri Mar 2 17:30:01 2007 +0900 libata: add missing PM callbacks Some LLDs were missing scsi device PM callbacks while having host/port suspend support. Add missing ones. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 43ecf5295b622e9ec93f5b932949acf1c6e4150c Author: David S. Miller Date: Thu Mar 1 18:30:08 2007 -0800 [AOE]: Add get_unaligned() calls where needed. Based upon a report by Andrew Walrond. Signed-off-by: David S. Miller commit 7ab876703dcbe852652db6441f0aadb3d6b75e94 Author: David S. Miller Date: Thu Mar 1 18:29:14 2007 -0800 [RADEON]: Fix blanking return value. If you'll recall, over a year ago, I pointed out that the current Radeon driver erroneously returns -EINVAL for valid blanking codes, here is a link to that thread: http://lkml.org/lkml/2006/1/28/6 No other driver does this, and it confuses the X server into thinking that the device does not support blanking properly. I looked again and there is simply no reason for the Radeon driver to return -EINVAL for FB_BLANK_NORMAL. It claims it wants to do this in order to convince fbcon to blank in software, right here: if (fb_blank(info, blank)) fbcon_generic_blank(vc, info, blank); to software blank the screen. But it only causes that to happen in the FB_BLANK_NORMAL case. That makes no sense because the Radeon code does this: val |= CRTC_DISPLAY_DIS; in the FB_BLANK_NORMAL case so should be blanking the hardware, and there is therefore no reason to SW blank by returning -EINVAL. Signed-off-by: David S. Miller Acked-by: Antonino Daplas commit c4c31fe0e2298529afa1357ebd9dad54b44c4e19 Author: David S. Miller Date: Thu Mar 1 18:10:25 2007 -0800 [SPARC]: Provide 'get_property()' alias for of_get_property(). Another powerpc compatibility item, this will allow us to share more code with them. Signed-off-by: David S. Miller commit f6d0f9ea55277a49ef6c86a768acec021451b139 Author: David S. Miller Date: Thu Mar 1 18:09:18 2007 -0800 [SPARC]: Provide pci_device_to_OF_node() just like powerpc. Signed-off-by: David S. Miller commit 45bcca67ed6437815305fdef38f441358b6a7756 Author: David S. Miller Date: Thu Mar 1 18:08:05 2007 -0800 [SPARC]: Handle unresolvable resources better in of_device.c Just leave them as zero if we couldn't calculate it. Signed-off-by: David S. Miller commit b85cdd490ac52ee039636f809b9b98b1300fcf3d Author: David S. Miller Date: Wed Feb 28 23:20:12 2007 -0800 [SPARC]: Fix bus handling in build_device_resources(). We mistakedly modify 'bus' in the innermost loop. What should happen is that at each register index iteration, we start with the same 'bus'. So preserve it's value at the top level, and use a loop local variable 'dbus' for iteration. This bug causes registers other than the first to be decoded improperly. Signed-off-by: David S. Miller commit cc7c15ec167767b440c1de4dbd2200467b7a493b Author: Alan Cox Date: Fri Mar 2 14:56:35 2007 +0000 pata_qdi: Fix initialisation The QDI init code contains some bugs which mean it only works if you have a test setup that causes both a successful and failed probe. Fix this Found by Philip Guo (Who found it working on code analysis tools not running VLB IDE controllers) Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit fb9f8905a8865679f1fb757380b4169571def0ca Author: Jeff Garzik Date: Fri Mar 2 18:17:22 2007 -0500 [libata] pata_cmd64x: fix driver description in comments Trivial comment fix, taken out of a larger Alan Cox patch. Signed-off-by: Jeff Garzik commit bf7551c441d4b7b0de867d21b96881f3911e89b0 Author: Jeff Garzik Date: Fri Mar 2 18:09:05 2007 -0500 [libata] pata_{legacy,sc1200,sl82c105}: add missing hooks Alan Cox noticed several hooks in pata_* drivers were missing, when he authored his ->cable_detect hook patches. This patch extracts just those fixes from Alan's patches, adding the necessary hooks (usually ->freeze, ->thaw, and ->post_internal_cmd) to the drivers. Signed-off-by: Jeff Garzik commit f31f0cc2f0b7527072d94d02da332d9bb8d7d94c Author: Jeff Garzik Date: Fri Mar 2 17:47:28 2007 -0500 [libata] change master/slave IDENTIFY order 2.6.21-rc has horrible problems with libata and PATA cable types (and thus speeds). This occurs because Tejun fixed a pile of other bugs and we now do cable detect enforcement for drive side detection properly. Unfortunately we don't do the process around cable detection right. Tejun identified the problem and pointed to the right Annex in the spec, this patch implements the needed changes. The basic requirement is that we have to identify the slave before the master. The patch switches the identify order so that we can do the drive side detection correctly. [NOTE: patch and description extracted from a larger work written and signed-off-by Alan Cox] Signed-off-by: Jeff Garzik commit 032af1ce16d496b825adde0fa03948785ee16830 Author: Alan Date: Thu Mar 1 17:36:46 2007 +0000 libata-core: Fix simplex handling The initial simplex handling code is fooled if you suspend and resume. This also causes problems with some single channel controllers which claim to be simplex. The fix is fairly simple, instead of keeping a flag to remember if we gave away the simplex channel we remember the actual owner. As the owner is always part of the host_set we don't even need a refcount. Knowing the owner also means we can reassign simplex DMA channels in future hotplug code etc if we need to Signed-off-by: Alan Cox (and a signed-off for the patch I sent before while I remember) Signed-off-by: Jeff Garzik commit 6139dbbb7769c7251e04813f577454c6c9293e15 Merge: 9623b37... 1f4d177... Author: Russell King Date: Fri Mar 2 11:59:16 2007 +0000 Merge branch 'omap-fixes' of master.kernel.org:/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 commit 9623b3732d11b0a18d9af3419f680d27ea24b014 Author: Catalin Marinas Date: Wed Feb 28 12:30:38 2007 +0100 [ARM] 4241/1: Define mb() as compiler barrier on a uniprocessor system Currently, the mb() is defined as a DMB operation on ARMv6, even for UP systems. This patch defines mb() as a compiler barrier only. For the SMP case, the smp_* variants should be used anyway and the patch defines them as DMB. Signed-off-by: Catalin Marinas Signed-off-by: Russell King commit 5bfe8cb62127b5eb799f5724764abe914e49860e Author: Ben Dooks Date: Wed Feb 28 00:23:20 2007 +0100 [ARM] 4239/1: S3C24XX: Update kconfig entries for PM Update help text with location of documentation and duplicate the note on the speed of CRC Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 540988eb67f2eee80d0e44bf5f606e388b80500e Author: Ben Dooks Date: Wed Feb 28 00:16:26 2007 +0100 [ARM] 4238/1: S3C24XX: docs: update suspend and resume Remove some of the explicit use of S3C2410 where it is generic to all the S3C24XX series. Add more info on the CRC code, and add an example of using IRQ_EINT0 to resume from suspend Signed-off-by: Ben Dooks Signed-off-by: Russell King commit 1b7b56982fdcd9d85effd76f3928cf5d6eb26155 Author: Richard Purdie Date: Tue Feb 27 12:09:33 2007 +0100 [ARM] 4237/2: oprofile: Always allow backtraces on ARM Always allow backtrace when using oprofile on ARM, even if a PMU isn't present. Signed-off-by: Richard Purdie Signed-off-by: Russell King commit 14fca61a9828effbde2c284fbaa3ee22178998e0 Author: Russell King Date: Tue Feb 27 12:10:07 2007 +0000 [ARM] Yet more asm/apm-emulation.h stuff Signed-off-by: Russell King commit 1f4d1774133f596a3c4f520859890ad93769e523 Author: Tony Lindgren Date: Thu Mar 1 04:46:43 2007 -0800 ARM: OMAP: Add missing get_irqnr_preamble and arch_ret_to_user for omap2 Only entries for omap1 were added earlier. Signed-off-by: Tony Lindgren commit 04fbf6a29182eb4285bb8bb826fc34fe84a62d9c Author: Tony Lindgren Date: Mon Feb 12 10:50:53 2007 -0800 ARM: OMAP: Use linux/delay.h not asm/delay.h Use linux/delay.h not asm/delay.h Signed-off-by: Tony Lindgren commit 2f4ff76499b9d0fb877b907a7cd5a28e3356ba28 Author: Tony Lindgren Date: Mon Feb 12 10:16:43 2007 -0800 ARM: OMAP: Remove obsolete alsa typedefs Remove obsolete alsa typedefs Signed-off-by: Tony Lindgren commit 99c658a6c018a88b336dbd54d2e552db85348894 Author: Vladimir Ananiev Date: Mon Dec 11 13:30:21 2006 -0800 ARM: OMAP: omap1510->15xx conversions needed for sx1 Convert 1510->15xx in generic omap code, so that sx1 can work. Signed-off-by: Pavel Machek Signed-off-by: Tony Lindgren commit 193506106d19ad54d56740612bf1be1c68d13bb8 Author: Dirk Behme Date: Thu Jan 25 16:29:42 2007 -0800 ARM: OMAP: Add missing includes to board-nokia770 Add missing includes to board-nokia770 to make it compile again. Signed-off-by: Dirk Behme Signed-off-by: Tony Lindgren commit 060ebf97b4d0000e63f7db1c1d12cb3dca5cd446 Author: Dirk Behme Date: Thu Jan 25 16:29:17 2007 -0800 ARM: OMAP: Workqueue changes for board-h4.c Workqueue changes for board-h4.c Signed-off-by: Dirk Behme Signed-off-by: Tony Lindgren commit 53037f4c1009c9cf5e6c95a616d1952a240f6540 Author: Matthew Percival Date: Thu Jan 25 16:24:29 2007 -0800 ARM: OMAP: dmtimer.c omap1 register fix When I went to use dmtimer7 it did not seem to work. I noticed that the base addresses for dmtimers 7 and 8 were set wrong. A simple patch to correct a small error. Confirmed to fix the problem on an OSK. Signed-off-by: Matthew Percival Signed-off-by: Tony Lindgren commit e016a40cab504f6e0537fa5bdb3874a2bbefe9dc Author: Arnaud Patard Date: Wed Dec 6 17:14:06 2006 -0800 ARM: OMAP: board-nokia770: correct lcd name Some time ago, the 'lcd_lph8923' device was renamed to 'lcd_mipid' but the board-nokia770.c file was not updated accordingly, leading to not working lcd. This one-liner fixe the trouble. Signed-off-by: Arnaud Patard Signed-off-by: Tony Lindgren commit b097f494cc3def2ec39ded3b80a62b9d257e4b01 Author: David Brownell Date: Wed Dec 6 17:14:04 2006 -0800 ARM: OMAP: omap GP timer: HZ != 100 Teach OMAP2 gp timer that HZ isn't always 100. Signed-off-by: David Brownell Signed-off-by: Tony Lindgren commit 2f5c4b6f1ce6595fd977963051a3030911ae4461 Author: Dirk Behme Date: Wed Dec 6 17:14:04 2006 -0800 ARM: OMAP: Fix warning in mach-omap1 Fix warning arch/arm/mach-omap1/pm.c: In function 'omap_pm_init': arch/arm/mach-omap1/pm.c:765: warning: ignoring return value of 'subsys_create_file', declared with attribute warn_unused_result Signed-off-by: Dirk Behme Signed-off-by: Tony Lindgren commit ef772f2ee31e0993dca2d59d9ee27682d39902fa Author: Dirk Behme Date: Wed Dec 6 17:14:02 2006 -0800 ARM: OMAP: Fix CONFIG_DEBUG_LL Fix broken CONFIG_DEBUG_LL. In case of low level debugging reconfigure some clocks early. See http://source.mvista.com/git/gitweb.cgi?p=linux-omap-2.6.git;a=commitdiff;h=3bfb289ccc6c4624fd5ff0381546935e105f4093 too. Signed-off-by: Dirk Behme Signed-off-by: Tony Lindgren commit e6687290ae9ba935c1435e2ae54cf2f92e1f5f3b Author: Dirk Behme Date: Wed Dec 6 17:14:00 2006 -0800 ARM: OMAP: Fix warning in mach-omap2 Fix warning arch/arm/mach-omap2/timer-gp.c: In function 'omap2_gp_timer_init': arch/arm/mach-omap2/timer-gp.c:70: warning: implicit declaration of function 'setup_irq' Signed-off-by: Dirk Behme Signed-off-by: Tony Lindgren commit 2121880e8816b9b50b04e8b3085bbcce229c37d0 Author: Dirk Behme Date: Wed Dec 6 17:14:00 2006 -0800 ARM: OMAP: Fix warnings in plat-omap Fix warnings arch/arm/plat-omap/dmtimer.c: In function 'omap_dm_timer_modify_idlect_mask': arch/arm/plat-omap/dmtimer.c:317: warning: no return statement in function returning non-void arch/arm/plat-omap/mailbox.c: In function 'omap_mbox_init': arch/arm/plat-omap/mailbox.c:231: warning: ignoring return value of 'class_device_create_file', declared with attribute warn_unused_result Signed-off-by: Dirk Behme Signed-off-by: Tony Lindgren commit b286f7ba302816c7176efcd0d458263dd598d7bc Author: Dirk Behme Date: Wed Dec 6 17:13:57 2006 -0800 ARM: OMAP: No IRQF_TRIGGER set_type function for IRQ 353 (MPUIO) No IRQF_TRIGGER set_type function for IRQ 353 (MPUIO) Signed-off-by: Dirk Behme Signed-off-by: Tony Lindgren commit 65d873caab8a222954462e4a5a4754796d569820 Author: Marek Vašut Date: Wed Dec 6 17:13:56 2006 -0800 ARM: OMAP: OMAP310 Serial This makes serial usable also on omap310, not only 1510. (changing 1510->15xx) Signed-off-by: Marek Vašut Signed-off-by: Tony Lindgren commit 681e9940da89633bd25a6d155118fa5340260bc5 Author: Timo Teras Date: Wed Dec 6 17:13:52 2006 -0800 ARM: OMAP: Proper handling of DMA4_IRQSTATUS_L0 The register bits are reset by writing one. Remove the unneeded reads and fix writes to not clear too many bits. Signed-off-by: Timo Teras Signed-off-by: Juha Yrjola Signed-off-by: Tony Lindgren commit 6f9c92f1b9930dd400c79872036d1d8636e6e4b9 Author: Dirk Behme Date: Wed Dec 6 17:13:51 2006 -0800 ARM: OMAP: Fix warning in clock.c Fix warning: arch/arm/mach-omap1/clock.c: In function 'omap1_clk_enable_generic': arch/arm/mach-omap1/clock.c:499: warning: 'return' with no value, in function returning non-void Signed-off-by: Dirk Behme Signed-off-by: Tony Lindgren commit ef557d76dfbdf74c240f76be15fa90d62f1ae61f Author: Andrzej Zaborowski Date: Wed Dec 6 17:13:48 2006 -0800 ARM: OMAP: correct misc 15xx and non-15xx platform code Disable accesses to SOFT_REQ_REG2 and ULPD_SOFT_DISABLE_REQ_REG registers for 15xx processors that don't have these registers. Enable level 2 interrupt handler for processors that identify as OMAP 15xx (e.g 310) and not 1510 specifically. Also fix the following compiler warning (only visible with CONFIG_OMAP_RESET_CLOCKS): arch/arm/mach-omap1/clock.c: In function 'omap1_clk_disable_unused': arch/arm/mach-omap1/clock.c:634: warning: 'return' with a value, in function returning void Signed-off-by: Andrzej Zaborowski Signed-off-by: Tony Lindgren commit 562aa1d4c6a874373f9a48ac184f662fbbb06a04 Merge: b435086... afb2d55... Author: Linus Torvalds Date: Thu Mar 1 19:48:21 2007 -0800 Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev: ahci: improve spurious SDB FIS handling ahci/pata_jmicron: match class not function number jmicron ATA: reimplement jmicron ATA quirk pata_jmicron: drop unnecessary device programming in [re]init libata: blacklist FUJITSU MHT2060BH for NCQ sata_sil24: kill unused local variable idx in sil24_fill_sg() libata: clear drvdata in ata_host_release(), take#2 commit b4350861dd6d5668bb9fe18eec4227d30e9131b0 Merge: 132a69c... 2591466... Author: Linus Torvalds Date: Thu Mar 1 17:30:51 2007 -0800 Merge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jikos/hid * 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jikos/hid: HID: fix Logitech DiNovo Edge touchwheel and Logic3 /SpectraVideo middle button HID: add git tree information to MAINTAINERS HID: fix broken Logitech S510 keyboard report descriptor; make extra keys work HID: fix possible double-free on error path in hid parser HID: hid-debug.c should #include HID: fix bug in zeroing the last field byte in output reports USB HID: use CONFIG_HID_DEBUG for outputting report descriptor USB HID: Fix USB vendor and product IDs endianness for USB HID devices commit 132a69c6cc3dfa7fa354a88128acee7e6ee7082b Merge: fb7d404... 74bd7d0... Author: Linus Torvalds Date: Thu Mar 1 17:28:31 2007 -0800 Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6 * master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6: [SPARC64]: Fix parport_pc build. [SPARC64]: Update defconfig. commit fb7d4045669b3ea0e92cf45963839a9808b7650c Merge: 100b425... a9948a7... Author: Linus Torvalds Date: Thu Mar 1 17:27:01 2007 -0800 Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 * master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: [TCP]: Fix minisock tcp_create_openreq_child() typo. [TCP]: Document several sysctls. [NET]: Fix kfree(skb) [NET]: Handle disabled preemption in gfp_any() [BRIDGE]: Fix locking of set path cost. [IPV6]: /proc/net/anycast6 unbalanced inet6_dev refcnt [IPX]: Remove ancient changelog [IPX]: Remove outdated information from Kconfig [NET]: Revert socket.h/stat.h ifdef hacks. [IPV6]: anycast refcnt fix [XFRM] xfrm_user: Fix return values of xfrm_add_sa_expire. commit 100b425480d3a4c7dff4f99bead457d91ad19caf Merge: d701d8a... f3502b8... Author: Linus Torvalds Date: Thu Mar 1 17:25:23 2007 -0800 Merge master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb * master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb: V4L/DVB (5305): Mark VIDIOC_DBG_S/G_REGISTER as experimental V4L/DVB (5271): Add VIDIOC_TRY_ENCODER_CMD and VIDIOC_ENCODER_CMD ioctls. V4L/DVB (5270): Add VIDIOC_G_ENC_INDEX ioctl V4L/DVB (5276): Cxusb: fix firmware patch for big endian systems V4L/DVB (5258): Cafe_ccic: fix compiler warning V4L/DVB (5295): Digitv: open nxt6000 i2c_gate for TDED4 tuner handling V4L/DVB (5304): Improve chip matching in v4l2_register V4L/DVB (5255): Fix cx25840 firmware loading. commit d701d8a3bc1c0f56fa2759f631f86a320b66f13e Author: Ralf Baechle Date: Thu Mar 1 12:40:21 2007 +0000 [PATCH] Fix sysfs build breakage if !CONFIG_SYSFS B0rkage introduced by dfa87c824a9a5430008acd1ed2e8111ed164fcbe. Signed-off-by: Ralf Baechle Signed-off-by: Linus Torvalds commit afb2d552bc4c241c009f5947311a95de426a75d9 Author: Tejun Heo Date: Tue Feb 27 13:24:19 2007 +0900 ahci: improve spurious SDB FIS handling Spurious SDB FIS during NCQ might not contain spurious completions. It could be spurious TF update or invalid async notification. Treat as HSM violation iff a spurious SDB FIS contains spurious completions; otherwise, just whine once about it. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit e34bb370dec4919b7e8b769d51ad2bc2535b6982 Author: Tejun Heo Date: Mon Feb 26 20:24:03 2007 +0900 ahci/pata_jmicron: match class not function number Make jmiron_ata quirk update pdev->class after programming the device and update ahci and pata_jmicron such that they match class code instead of checking function number manually. For ahci, it matches for vendor and class. For pata_jmicron, it matches vendor, device and class as IDE class isn't as well defined as AHCI class. This makes jmicron device matching more conventional and script friendly. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 5ee2ae7fb2079c5775d8802cd282140d71632a2d Author: Tejun Heo Date: Mon Feb 26 20:16:13 2007 +0900 jmicron ATA: reimplement jmicron ATA quirk Reimplement jmicron ATA quirk. * renamed to quirk_jmicron_ata() * quirk is invoked only for the affected controllers * programming is stricter. e.g. conf5 bit24 is cleared if unnecessary. * code factored for readability * JMB360 and JMB368 are programmed into proper mode Verified on JMB360, 363 and 368. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 960627b7adf3645e4969b4bfaf03360caabbe76a Author: Tejun Heo Date: Mon Feb 26 20:09:02 2007 +0900 pata_jmicron: drop unnecessary device programming in [re]init Channel redirect and AHCI mode enable programmings are done via PCI quirk for both probe and resume paths. Drop duplicate and possibly unsafe device programming from pata_jmicron(). Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 516dffdcd8827a40532798602830dfcfc672294c Author: Adam Litke Date: Thu Mar 1 15:46:08 2007 -0800 [PATCH] Fix get_unmapped_area and fsync for hugetlb shm segments This patch provides the following hugetlb-related fixes to the recent stacked shm files changes: - Update is_file_hugepages() so it will reconize hugetlb shm segments. - get_unmapped_area must be called with the nested file struct to handle the sfd->file->f_ops->get_unmapped_area == NULL case. - The fsync f_op must be wrapped since it is specified in the hugetlbfs f_ops. This is based on proposed fixes from Eric Biederman that were debugged and tested by me. Without it, attempting to use hugetlb shared memory segments on powerpc (and likely ia64) will kill your box. Signed-off-by: Adam Litke Cc: Eric Biederman Cc: Andrew Morton Acked-by: William Irwin Signed-off-by: Linus Torvalds commit 09125ea6179b28790950b7ddb4daba112f6c2b73 Author: Tejun Heo Date: Wed Feb 28 15:21:23 2007 +0900 libata: blacklist FUJITSU MHT2060BH for NCQ Blacklist FUJITSU MHT2060BH for NCQ. On this drive, NCQ works iff queue depth is equal to or less than 4. Just turn it off. Signed-off-by: Tejun Heo Cc: Mike Accetta Signed-off-by: Jeff Garzik commit 4fc00cb4d520124e82fdaa5882077075b1f007cc Author: Tejun Heo Date: Mon Feb 26 16:11:00 2007 +0900 sata_sil24: kill unused local variable idx in sil24_fill_sg() Kill unused local variable idx in sil24_fill_sg(). Spotted by Jeff Garzik. Signed-off-by: Tejun Heo Cc: Jeff Garzik Signed-off-by: Jeff Garzik commit 1aa56cca5bfa396c791e93b38e4776ef39b590a7 Author: Tejun Heo Date: Tue Feb 27 22:33:21 2007 +0900 libata: clear drvdata in ata_host_release(), take#2 Clearing drvdata in ->remove_one causes NULL pointer deference. Clear drvdata only in ata_host_release() after all resources are freed. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 7b965e0884cee430ffe5dc81cdb117b9316b0549 Author: Trond Myklebust Date: Wed Feb 28 20:13:55 2007 -0800 [PATCH] VM: invalidate_inode_pages2_range() should not exit early Fix invalidate_inode_pages2_range() so that it does not immediately exit just because a single page in the specified range could not be removed. Signed-off-by: Trond Myklebust Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5a39e8c6d655b4fe8305ef8cc2d9bbe782bfee5f Author: Aristeu Sergio Rozanski Filho Date: Wed Feb 28 20:13:53 2007 -0800 [PATCH] tty_io: fix race in master pty close/slave pty close path This patch fixes a possible race that leads to double freeing an idr index. When the master begin to close, release_dev() is called and then pty_close() is called: if (tty->driver->close) tty->driver->close(tty, filp); This is done without helding any locks other than BKL. Inside pty_close(), being a master close, the devpts entry will be removed: #ifdef CONFIG_UNIX98_PTYS if (tty->driver == ptm_driver) devpts_pty_kill(tty->index); #endif But devpts_pty_kill() will call get_node() that may sleep while waiting for &devpts_root->d_inode->i_sem. When this happens and the slave is being opened, tty_open() just found the driver and index: driver = get_tty_driver(device, &index); if (!driver) { mutex_unlock(&tty_mutex); return -ENODEV; } This part of the code is already protected under tty_mute. The problem is that the slave close already got an index. Then init_dev() is called and blocks waiting for the same &devpts_root->d_inode->i_sem. When the master close resumes, it removes the devpts entry, and the relation between idr index and the tty is gone. The master then sleeps waiting for the tty_mutex on release_dev(). Slave open resumes and found no tty for that index. As result, a NULL tty is returned and init_dev() doesn't flow to fast_track: /* check whether we're reopening an existing tty */ if (driver->flags & TTY_DRIVER_DEVPTS_MEM) { tty = devpts_get_tty(idx); if (tty && driver->subtype == PTY_TYPE_MASTER) tty = tty->link; } else { tty = driver->ttys[idx]; } if (tty) goto fast_track; The result of this, is that a new tty will be created and init_dev() returns sucessfull. After returning, tty_mutex is dropped and master close may resume. Master close finds it's the only use and both sides are closing, then releases the tty and the index. At this point, the idr index is free, but slave still has it. Slave open then calls pty_open() and finds that tty->link->count is 0, because there's no master and returns error. Then tty_open() calls release_dev() which executes without any warning, as it was a case of last slave close when the master is already closed (master->count == 0, slave->count == 1). The tty is then released with the already released idr index. This normally would only issue a warning on idr_remove() but in case of a customer's critical application, it's never too simple: thread1: opens master, gets index X thread1: begin closing master thread2: begin opening slave with index X thread1: finishes closing master, index X released thread3: opens master, gets index X, just released thread2: fails opening slave, releases index X <---- thread4: opens master, gets index X, init_dev() then find an already in use and healthy tty and fails If no more indexes are released, ptmx_open() will keep failing, as the first free index available is X, and it will make init_dev() fail because you're trying to "reopen a master" which isn't valid. The patch notices when this race happens and make init_dev() fail imediately. The init_dev() function is called with tty_mutex held, so it's safe to continue with tty till the end of function because release_dev() won't make any further changes without grabbing the tty_mutex. Without the patch, on some machines it's possible get easily idr warnings like this one: idr_remove called for id=15 which is not allocated. [] idr_remove+0x139/0x170 [] release_mem+0x182/0x230 [] release_dev+0x4b7/0x700 [] tty_ldisc_enable+0x27/0x30 [] init_dev+0x254/0x580 [] check_tty_count+0x14/0xb0 [] tty_open+0x1c5/0x340 [] tty_open+0x0/0x340 [] chrdev_open+0xaf/0x180 [] open_namei+0x8c/0x760 [] chrdev_open+0x0/0x180 [] __dentry_open+0xc9/0x210 [] do_filp_open+0x5c/0x70 [] get_unused_fd+0x61/0xd0 [] do_sys_open+0x53/0x100 [] sys_open+0x27/0x30 [] syscall_call+0x7/0xb using this test application available on: http://www.ruivo.org/~aris/pty_sodomizer.c Signed-off-by: Aristeu Sergio Rozanski Filho Cc: "H. Peter Anvin" Cc: Chuck Ebbert Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3a0ee2ce8cc4f962031d7520df960431c2f26a9c Author: Yoichi Yuasa Date: Wed Feb 28 20:13:51 2007 -0800 [PATCH] fix memory leak in dma_declare_coherent_memory() When it goes to free1_out, dev->dma_mem has not been freed. Signed-off-by: Yoichi Yuasa Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 17f0cd2f350b90b28301e27fe0e39f34bfe7e730 Author: Karsten Keil Date: Wed Feb 28 20:13:50 2007 -0800 [PATCH] Fix buffer overflow and races in capi debug functions The CAPI trace debug functions were using a fixed size buffer, which can be overflowed if wrong formatted CAPI messages were sent to the kernel capi layer. The code was also not protected against multiple callers. This fix bug 8028. Additionally the patch make the CAPI trace functions optional. Signed-off-by: Karsten Keil Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 34bbd704051c9d053d69e90569a3a2365f4c7b50 Author: Oleg Nesterov Date: Wed Feb 28 20:13:49 2007 -0800 [PATCH] adapt page_lock_anon_vma() to PREEMPT_RCU page_lock_anon_vma() uses spin_lock() to block RCU. This doesn't work with PREEMPT_RCU, we have to do rcu_read_lock() explicitely. Otherwise, it is theoretically possible that slab returns anon_vma's memory to the system before we do spin_unlock(&anon_vma->lock). [ Hugh points out that this only matters for PREEMPT_RCU, which isn't merged yet, and may never be. Regardless, this patch is conceptually the right thing to do, even if it doesn't matter at this point. - Linus ] Signed-off-by: Oleg Nesterov Cc: Paul McKenney Cc: Nick Piggin Cc: Christoph Lameter Acked-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 48dba8ab9b93c3b6b57946bd45ae013402b0b054 Author: Vassili Karpov Date: Wed Feb 28 20:13:45 2007 -0800 [PATCH] Documentation: CPU load calculation description Describes how/when the information exported to `/proc/stat' is calculated, and possible problems with this approach. Signed-off-by: Vassili Karpov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7355690ead6d61f6344072ae61060f985060da29 Author: Ingo Molnar Date: Wed Feb 28 20:13:42 2007 -0800 [PATCH] sched: fix SMT scheduler bug The SMT scheduler incorrectly skips kernel threads even if they are runnable (but they are preempted by a higher-prio user-space task which got SMT-delayed by an even higher-priority task running on a sibling CPU). Fix this for now by only doing the SMT-nice optimization if the to-be-delayed task is the only runnable task. (This should cover most of the real-life cases anyway.) This bug has been in the SMT scheduler since 2.6.17 or so, but has only been noticed now by the active check in the dynticks code. Signed-off-by: Ingo Molnar Cc: Michal Piotrowski Cc: Nick Piggin Cc: Thomas Gleixner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3f555c700b6c90f9ac24bc81a4f509583d906278 Author: Geert Uytterhoeven Date: Wed Feb 28 20:13:38 2007 -0800 [PATCH] ps3: introduce CONFIG_PS3_ADVANCED ps3: Introduce CONFIG_PS3_ADVANCED, as suggested by Roman Zippel, and use it to control questions about PS3 subsystems that may not be obvious for the casual user. This gets rid of the following warning on non-powerpc platforms: | drivers/video/Kconfig:1604:warning: 'select' used by config symbol 'FB_PS3' refer to undefined symbol 'PS3_PS3AV' Signed-off-by: Geert Uytterhoeven Acked-by: Geoff Levand Cc: Paul Mackerras Cc: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8a2bfdcbfa441d8b0e5cb9c9a7f45f77f80da465 Author: Mingming Cao Date: Wed Feb 28 20:13:35 2007 -0800 [PATCH] ext[34]: EA block reference count racing fix There are race issues around ext[34] xattr block release code. ext[34]_xattr_release_block() checks the reference count of xattr block (h_refcount) and frees that xattr block if it is the last one reference it. Unlike ext2, the check of this counter is unprotected by any lock. ext[34]_xattr_release_block() will free the mb_cache entry before freeing that xattr block. There is a small window between the check for the re h_refcount ==1 and the call to mb_cache_entry_free(). During this small window another inode might find this xattr block from the mbcache and reuse it, racing a refcount updates. The xattr block will later be freed by the first inode without notice other inode is still use it. Later if that block is reallocated as a datablock for other file, then more serious problem might happen. We need put a lock around places checking the refount as well to avoid racing issue. Another place need this kind of protection is in ext3_xattr_block_set(), where it will modify the xattr block content in- the-fly if the refcount is 1 (means it's the only inode reference it). This will also fix another issue: the xattr block may not get freed at all if no lock is to protect the refcount check at the release time. It is possible that the last two inodes could release the shared xattr block at the same time. But both of them think they are not the last one so only decreased the h_refcount without freeing xattr block at all. We need to call lock_buffer() after ext3_journal_get_write_access() to avoid deadlock (because the later will call lock_buffer()/unlock_buffer () as well). Signed-off-by: Mingming Cao Cc: Andreas Gruenbacher Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1463fdbcc797dfcb8574ababbd39cf6205f6ed00 Author: Jeff Dike Date: Wed Feb 28 20:13:33 2007 -0800 [PATCH] uml: pte_mkread fix Fix the fact that pte_mkread set _PAGE_RW instead of _PAGE_USER (the logic is copied from i386 in most place, so it is really as bad as you're thinking). Thus currently page tables are more permissive than they should. Such a change may trigger other latent bugs, so be careful with this. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 14251809b1921b1216568700f1be2f91a1cbb5c7 Author: Jeff Dike Date: Wed Feb 28 20:13:31 2007 -0800 [PATCH] uml: host VDSO fix This fixes a problem seen by a number of people running UML on newer host kernels. init would hang with an infinite segfault loop. It turns out that the host kernel was providing a AT_SYSINFO_EHDR of 0xffffe000, which faked UML into believing that the host VDSO page could be reused. However, AT_SYSINFO pointed into the middle of the address space, and was unmapped as a result. Because UML was providing AT_SYSINFO_EHDR and AT_SYSINFO to its own processes, these would branch to nowhere when trying to use the VDSO. The fix is to also check the location of AT_SYSINFO when deciding whether to use the host's VDSO. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cf2775f175128fc9fd7ffb88981e068d27bc85db Author: Allan Graves Date: Wed Feb 28 20:13:29 2007 -0800 [PATCH] uml: enable RAW Add the RAW device driver options to the UML Kconfig.char file so that you may use them in UML. Signed-off-by: Allan Graves Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 77904fd64eb9131c337dd068e4196d25c2f9de7e Author: David Howells Date: Wed Feb 28 20:13:26 2007 -0800 [PATCH] FRV: Missing error defs linux/irq.h uses EINVAL but does not #include linux/errno.h. This results in the compiler spitting out errors on some files. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 232ea4d69d81169453344b7d05203425c88d973b Author: Andrew Morton Date: Wed Feb 28 20:13:21 2007 -0800 [PATCH] throttle_vm_writeout(): don't loop on GFP_NOFS and GFP_NOIO allocations throttle_vm_writeout() is designed to wait for the dirty levels to subside. But if the caller holds IO or FS locks, we might be holding up that writeout. So change it to take a single nap to give other devices a chance to clean some memory, then return. Cc: Nick Piggin Cc: OGAWA Hirofumi Cc: Kumar Gala Cc: Pete Zaitcev Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b1a316f6f9c54d668df4304ddf935595501ccb25 Author: Kristen Carlson Accardi Date: Wed Feb 28 20:13:17 2007 -0800 [PATCH] ACPI: make bay depend on dock Since the bay driver depends on the dock driver for proper notification, make this driver depend on the dock driver. Signed-off-by: Kristen Carlson Accardi Acked-by: Len Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d1af65d13f3625543916a85c86d02826df910fcf Author: David Miller Date: Wed Feb 28 20:13:13 2007 -0800 [PATCH] Bug in MM_RB debugging The code is seemingly trying to make sure that rb_next() brings us to successive increasing vma entries. But the two variables, prev and pend, used to perform these checks, are never advanced. Signed-off-by: David S. Miller Cc: Andrea Arcangeli Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 04a51e66adcdc0de6ffaa488934ce3ffb3818ecf Author: Jeff Dike Date: Wed Feb 28 20:13:11 2007 -0800 [PATCH] uml: add back accidentally removed error In the 2.6.20 hang patch, I accidentally threw out an error message. This puts it back. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit af727902212343211627da14d17c85592feb0e18 Author: Jeff Dike Date: Wed Feb 28 20:13:06 2007 -0800 [PATCH] uml: fix host LDT lookup initialization locking, try 2 Add some locking to host_ldt_entries to prevent racing when reading LDT information from the host. The locking is somewhat more careful than my previous attempt. Now, only the check of host_ldt_entries is locked. The lock is dropped immediately afterwards, and if the LDT needs initializing, that (and the memory allocations needed) proceed outside the lock. Also fixed some style violations. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dae9f8e63cbb532e8c4b9c54bda0bf511af9c01c Author: Tilman Schmidt Date: Wed Feb 28 20:13:01 2007 -0800 [PATCH] drivers/isdn/gigaset: build asyncdata.o into the gigaset module (fix) a) Remove #define acrobatics that have become unnecessary by the move of asyncdata.o into the common part. b) Correct the rule for building the common part into the kernel when some or all hardware specific parts are built as modules. Signed-off-by: Tilman Schmidt Cc: Adrian Bunk Cc: Karsten Keil Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 65dc8145711d1c20aecbb1a8a4a518f7c68611b8 Author: Michael Halcrow Date: Wed Feb 28 20:12:57 2007 -0800 [PATCH] eCryptfs: no path_release() after path_lookup() error Dmitriy Monakhov wrote: > if path_lookup() return non zero code we don't have to worry about > 'nd' parameter, but ecryptfs_read_super does path_release(&nd) after > path_lookup has failed, and dentry counter becomes negative Do not do a path_release after a path_lookup error. Signed-off-by: Michael Halcrow Cc: Dmitriy Monakhov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1ed6d896de3a57bdfb38cffaa748612f112c2a75 Author: Michael Halcrow Date: Wed Feb 28 20:12:52 2007 -0800 [PATCH] eCryptfs: remove unnecessary flush_dcache_page() Remove unnecessary flush_dcache_page() call. Thanks to Dmitriy Monakhov for pointing this out. Signed-off-by: Michael Halcrow Cc: Dmitriy Monakhov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a8d547d5cf3df447d1527f2e66ba578e88011999 Author: Michael Halcrow Date: Wed Feb 28 20:12:47 2007 -0800 [PATCH] eCryptfs: set O_LARGEFILE when opening lower file O_LARGEFILE should be set here when opening the lower file. Signed-off-by: Michael Halcrow Cc: Dmitriy Monakhov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e109ebd1eed2b91e3c9bb3b42cc27961f0dc22b3 Author: David Brownell Date: Wed Feb 28 20:12:40 2007 -0800 [PATCH] rtc_cmos oops fix Fix an oops on the rtc_device_unregister() path by waiting until the last moment before nulling the rtc->ops vector. Fix some potential oopses by having the rtc_class_open()/rtc_class_close() interface increase the RTC's reference count while an RTC handle is available outside the RTC framework. Signed-off-by: David Brownell Cc: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0478e62e8a04154b7bdc0dfd33ffbcabc5446e9c Author: Antonino A. Daplas Date: Wed Feb 28 20:12:37 2007 -0800 [PATCH] MAINTAINERS: Update email address adaplas@pol.net is still alive, but is choking on the traffic. Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 244474b216d319d7317a610fb5d6e194c5ef1460 Author: Randy Dunlap Date: Wed Feb 28 20:12:35 2007 -0800 [PATCH] add -mm testing in SubmitChecklist Add -mm testing to SubmitChecklist. Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1499993cc7bfd568f471bd697499cff394e46822 Author: Sam Ravnborg Date: Wed Feb 28 20:12:31 2007 -0800 [PATCH] fix section mismatch warning in lockdep lockdep_init() is marked __init but used in several places outside __init code. This causes following warnings: $ scripts/mod/modpost kernel/lockdep.o WARNING: kernel/built-in.o - Section mismatch: reference to .init.text:lockdep_init from .text.lockdep_init_map after 'lockdep_init_map' (at offset 0x105) WARNING: kernel/built-in.o - Section mismatch: reference to .init.text:lockdep_init from .text.lockdep_reset_lock after 'lockdep_reset_lock' (at offset 0x35) WARNING: kernel/built-in.o - Section mismatch: reference to .init.text:lockdep_init from .text.__lock_acquire after '__lock_acquire' (at offset 0xb2) The warnings are less obviously due to heavy inlining by gcc - this is not altered. Fix the section mismatch warnings by removing the __init marking, which seems obviously wrong. Signed-off-by: Sam Ravnborg Acked-by: Ingo Molnar Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5409bae07a63630ba5a40f3f00b7f3e6d7eceedd Author: Nick Piggin Date: Wed Feb 28 20:12:27 2007 -0800 [PATCH] Rename PG_checked to PG_owner_priv_1 Rename PG_checked to PG_owner_priv_1 to reflect its availablilty as a private flag for use by the owner/allocator of the page. In the case of pagecache pages (which might be considered to be owned by the mm), filesystems may use the flag. Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 93a6fefe2f6fc380870c0985b246bec7f37a06f7 Author: Adrian Bunk Date: Wed Feb 28 20:12:23 2007 -0800 [PATCH] fix the SYSCTL=n compilation /home/bunk/linux/kernel-2.6/linux-2.6.20-mm2/kernel/sysctl.c:1411: error: conflicting types for 'register_sysctl_table' /home/bunk/linux/kernel-2.6/linux-2.6.20-mm2/include/linux/sysctl.h:1042: error: previous declaration of 'register_sysctl_table' was here make[2]: *** [kernel/sysctl.o] Error 1 Caused by commit 0b4d414714f0d2f922d39424b0c5c82ad900a381. Signed-off-by: Adrian Bunk Cc: "Eric W. Biederman" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c1e16aa2792a129d8920e22210ef21eb62a0f80a Author: Thomas Gleixner Date: Wed Feb 28 20:12:19 2007 -0800 [PATCH] Fix posix-cpu-timer breakage caused by stale p->last_ran value Problem description at: http://bugzilla.kernel.org/show_bug.cgi?id=8048 Commit b18ec80396834497933d77b81ec0918519f4e2a7 [PATCH] sched: improve migration accuracy optimized the scheduler time calculations, but broke posix-cpu-timers. The problem is that the p->last_ran value is not updated after a context switch. So a subsequent call to current_sched_time() calculates with a stale p->last_ran value, i.e. accounts the full time, which the task was scheduled away. Signed-off-by: Thomas Gleixner Acked-by: Ingo Molnar Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ae73fc093a8cae4d92e22ab8b635e3590e80785d Author: Michael Halcrow Date: Wed Feb 28 20:12:16 2007 -0800 [PATCH] eCryptfs: resolve lower page unlocking problem eCryptfs lower file handling code has several issues: - Retval from prepare_write()/commit_write() wasn't checked to equality to AOP_TRUNCATED_PAGE. - In some places page wasn't unmapped and unlocked after error. Signed-off-by: Michael Halcrow Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 05fb6bf0b29552b64dc86f405a484de2514e0ac2 Author: Randy Dunlap Date: Wed Feb 28 20:12:13 2007 -0800 [PATCH] kernel-doc fixes for 2.6.20-git15 (non-drivers) Fix kernel-doc warnings in 2.6.20-git15 (lib/, mm/, kernel/, include/). Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 328d24403d6a6b856722facd39d7b6ccb429353b Author: Randy Dunlap Date: Wed Feb 28 20:12:10 2007 -0800 [PATCH] kernel-doc: allow space after __attribute__ Allow space(s) between "__attribute__" and "((blah))" so that kernel-doc does not complain like: Warning(/tester/linsrc/linux-2.6.20-git15//kernel/timer.c:939): No description found for parameter 'read_persistent_clock(void' Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9d6346311418d12e90cca9384e5fbbe2ffa18efb Author: Daniel Walker Date: Wed Feb 28 20:12:07 2007 -0800 [PATCH] update timekeeping_is_continuous comment Signed-off-by: Daniel Walker Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 28936117af849b8c2fca664a41ea7651a0d99591 Author: David Howells Date: Wed Feb 28 20:12:03 2007 -0800 [PATCH] FRV: Add some missng lazy MMU hooks for NOMMU mode Add some missing lazy MMU hooks for NOMMU mode. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fa6427542cfd2811f48186c68057273c6537f261 Author: David Howells Date: Wed Feb 28 20:11:58 2007 -0800 [PATCH] FRV: No ZONE_DMA FRV does not require a ZONE_DMA, so all DMA'able pages that aren't highmem should be in ZONE_NORMAL. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f416885ef4950501dd3858d1afa1137a0c2905c5 Author: NeilBrown Date: Wed Feb 28 20:11:53 2007 -0800 [PATCH] md: add support for reshape of a raid6 i.e. one or more drives can be added and the array will re-stripe while on-line. Most of the interesting work was already done for raid5. This just extends it to raid6. mdadm newer than 2.6 is needed for complete safety, however any version of mdadm which support raid5 reshape will do a good enough job in almost all cases (an 'echo repair > /sys/block/mdX/md/sync_action' is recommended after a reshape that was aborted and had to be restarted with an such a version of mdadm). Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b4c4c7b8095298ff4ce20b40bf180ada070812d0 Author: NeilBrown Date: Wed Feb 28 20:11:48 2007 -0800 [PATCH] md: restart a (raid5) reshape that has been aborted due to a read/write error An error always aborts any resync/recovery/reshape on the understanding that it will immediately be restarted if that still makes sense. However a reshape currently doesn't get restarted. With this patch it does. To avoid restarting when it is not possible to do work, we call into the personality to check that a reshape is ok, and strengthen raid5_check_reshape to fail if there are too many failed devices. We also break some code out into a separate function: remove_and_add_spares as the indent level for that code was getting crazy. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d1b5380c7f794da16e815c34e54ee7641db8a288 Author: NeilBrown Date: Wed Feb 28 20:11:42 2007 -0800 [PATCH] md: clean out unplug and other queue function on md shutdown The mddev and queue might be used for another array which does not set these, so they need to be cleared. Signed-off-by: NeilBrown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7dd5e7c3dbe8c4ffb507ddc0ea8fab07c8b11b0b Author: NeilBrown Date: Wed Feb 28 20:11:35 2007 -0800 [PATCH] md: move warning about creating a raid array on partitions of the one device md tries to warn the user if they e.g. create a raid1 using two partitions of the same device, as this does not provide true redundancy. However it also warns if a raid0 is created like this, and there is nothing wrong with that. At the place where the warning is currently printer, we don't necessarily know what level the array will be, so move the warning from the point where the device is added to the point where the array is started. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a723406c4aeedb9dc5d54fb81130d13c757f41bc Author: H. Peter Anvin Date: Wed Feb 28 20:11:25 2007 -0800 [PATCH] md: RAID6: clean up CPUID and FPU enter/exit code - Use kernel_fpu_begin() and kernel_fpu_end() - Use boot_cpu_has() for feature testing even in userspace Signed-off-by: H. Peter Anvin Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 64a742bc61f9115b0bb270fa081e5b5b9c35dcd0 Author: NeilBrown Date: Wed Feb 28 20:11:18 2007 -0800 [PATCH] md: fix raid10 recovery problem. There are two errors that can lead to recovery problems with raid10 when used in 'far' more (not the default). Due to a '>' instead of '>=' the wrong block is located which would result in garbage being written to some random location, quite possible outside the range of the device, causing the newly reconstructed device to fail. The device size calculation had some rounding errors (it didn't round when it should) and so recovery would go a few blocks too far which would again cause a write to a random block address and probably a device error. The code for working with device sizes was fairly confused and spread out, so this has been tided up a bit. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5a243e0e97edce27c12f87354fd987526ba1ce95 Author: NeilBrown Date: Wed Feb 28 20:11:12 2007 -0800 [PATCH] Fix failure paths in modules init in umem.c If register_blkdev() or alloc-disk fail in mm_init() after pci_register_driver() succeeds, then mm_pci_driver is not unregistered properly: Cc: Philip Guo Signed-off-by: Neil Brown Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9540f75b2bcfcc29ddcd839c3547a5f380bef323 Author: Adrian Bunk Date: Wed Feb 28 20:11:06 2007 -0800 [PATCH] drivers/video/sm501fb.c: make 4 functions static Signed-off-by: Adrian Bunk Cc: Ben Dooks Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9b83a6a8523a8a96b6353174b193c5c93e16c6c3 Author: Adrian Bunk Date: Wed Feb 28 20:11:03 2007 -0800 [PATCH] mm/{,tiny-}shmem.c cleanups shmem_{nopage,mmap} are no longer used in ipc/shm.c Signed-off-by: Adrian Bunk Cc: "Eric W. Biederman" Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit de01bad2f5dec2977143aa242e7eba71d11a4363 Author: Adrian Bunk Date: Wed Feb 28 20:11:01 2007 -0800 [PATCH] make ipc/shm.c:shm_nopage() static shm_nopage() can become static. Signed-off-by: Adrian Bunk Acked-by: Eric W. Biederman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5357fc1450bda771a4a57b82f83c14ca9f5b9221 Author: Adrian Bunk Date: Wed Feb 28 20:10:58 2007 -0800 [PATCH] arch/arm26/kernel/entry.S: remove dead code CONFIG_ALIGNMENT_TRAP is never set on arm26. Signed-off-by: Adrian Bunk Acked-by: Ian Molton Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f3502b8a1995aceb2242389aa6dbea1a6756f78b Author: Hans Verkuil Date: Fri Feb 23 21:16:01 2007 -0300 V4L/DVB (5305): Mark VIDIOC_DBG_S/G_REGISTER as experimental Move VIDIOC_DBG_S/G_REGISTER from the internal ioctl list to the public ioctls, but mark it as experimental for now. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit ada6ecd2bf1d97e1f3bac6d5af4c7c4390a0a5af Author: Hans Verkuil Date: Sun Feb 18 14:56:22 2007 -0300 V4L/DVB (5271): Add VIDIOC_TRY_ENCODER_CMD and VIDIOC_ENCODER_CMD ioctls. Add support for starting, stopping, pausing and resuming an MPEG (or similar compressed stream) encoder. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit db6eb5b334a0f095290b99096f68ff24ab6df1aa Author: Hans Verkuil Date: Sun Feb 18 14:05:02 2007 -0300 V4L/DVB (5270): Add VIDIOC_G_ENC_INDEX ioctl The VIDIOC_G_ENC_INDEX ioctl can obtain the MPEG index from an MPEG encoder. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 1d1370a48ca285ebe197ecd3197a8d5f161bc291 Author: Jin-Bong lee Date: Tue Feb 20 23:10:34 2007 -0300 V4L/DVB (5276): Cxusb: fix firmware patch for big endian systems Without this patch, the device will not be detected after firmware download on big endian systems. Signed-off-by: Jin-Bong lee Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit b9109b758231c6c7fd8a5094099e8195d43b583a Author: Jean Delvare Date: Tue Feb 13 19:31:45 2007 -0300 V4L/DVB (5258): Cafe_ccic: fix compiler warning Fix the following warning: drivers/media/video/cafe_ccic.c: In function `cafe_vidioc_reqbufs': drivers/media/video/cafe_ccic.c:1197: warning: 'ret' might be used uninitialized in this function Probably not a real bug, but the warning can be avoided easily. Signed-off-by: Jean Delvare Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 2fe22dcdc79b8dd34e61a3f1231caffd6180a626 Author: Michael Krufky Date: Wed Feb 21 21:47:15 2007 -0300 V4L/DVB (5295): Digitv: open nxt6000 i2c_gate for TDED4 tuner handling dvb-pll normally opens the i2c gate before attempting to communicate with the pll, but the code for this device is not using dvb-pll. This should be cleaned up in the future, but for now, just open the i2c gate at the appropriate place in order to fix this driver bug. Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit f3d092b84a855c44914fea0648695bef7d751266 Author: Hans Verkuil Date: Fri Feb 23 20:55:14 2007 -0300 V4L/DVB (5304): Improve chip matching in v4l2_register The chip matching in struct v4l2_register for VIDIOC_DBG_G/S_REGISTER was rather primitive. It could not be extended to other busses besides i2c and it lacked a way to. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit d55c7aec666658495e5b57a6b194c8c2a1ac255f Author: Hans Verkuil Date: Thu Feb 15 03:40:34 2007 -0300 V4L/DVB (5255): Fix cx25840 firmware loading. Due to changes in the i2c handling in 2.6.20 this cx25840 bug surfaced, causing the firmware load to fail for the ivtv driver. The correct sequence is to first attach the i2c client, then use the client's device to load the firmware. Acked-by: Mike Isely Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 25914662b7e86f8cf8abdde0497e7fe8bdddf2ae Author: Jiri Kosina Date: Thu Mar 1 09:54:44 2007 +0100 HID: fix Logitech DiNovo Edge touchwheel and Logic3 /SpectraVideo middle button Dongle shipped with Logitech DiNovo Edge (0x046d/0xc714) behaves in a weird non-standard way - it contains multiple reports with the same usage, which results in remapping of GenericDesktop.X and GenericDesktop.Y usages to GenericDesktop.Z and GenericDesktop.RX respectively, thus rendering the touchwheel unusable. The commit 35068976916fdef82d6e69ef1f8c9a1c47732759 solved this in a way that it didn't remap certain usages. This however breaks (at least) middle button of Logic3 / SpectraVideo (0x1267/0x0210), which in contrary requires the remapping. To make both of the harware work, allow remapping of these usages again, and introduce a quirk for Logitech DiNovo Edge "touchwheel" instead - we disable remapping for key, abs and rel events only for this hardware. Signed-off-by: Jiri Kosina commit a4dff3980697fc374008d005f56da3d8bab8c316 Author: Jiri Kosina Date: Tue Feb 27 17:40:09 2007 +0100 HID: add git tree information to MAINTAINERS Update MAITAINERS entry for HID and USB HID, adding location of HID git tree. Signed-off-by: Jiri Kosina commit b55fd23ccdf32f969a7b4180c6e52d62d8e99972 Author: Jiri Kosina Date: Wed Feb 21 19:27:49 2007 +0100 HID: fix broken Logitech S510 keyboard report descriptor; make extra keys work This patch makes extra keys (F1-F12 in special mode, zooming, rotate, shuffle) on Logitech S510 keyboard work. Logitech S510 keyboard sends in report no. 3 keys which are far above the logical maximum described in descriptor for given report. This patch introduces a HID quirk for this wireless USB receiver/keyboard in order to fix the report descriptor before it's being parsed - the logical maximum and the number of usages is bumped up to 0x104d). The values are in the "Reserved" area of consumer HUT, so HID_MAX_USAGE had to be changed too. In addition to proper extracting of the values from report descriptor, proper HID-input mapping is introduced for them. Signed-off-by: Jiri Kosina commit 776c0e96edecf77f827a62d2a1641cc2ca479043 Author: Jiri Kosina Date: Wed Feb 21 17:18:03 2007 +0100 HID: fix possible double-free on error path in hid parser Freeing of device->collection is properly done in hid_free_device() (as this function is supposed to free all the device resources and could be called from transport specific code, e.g. usb_hid_configure()). Remove all kfree() calls preceeding the hid_free_device() call. Signed-off-by: Jiri Kosina commit 4330eb2e5fb6d3c9c0a0be8ed14793f72334d1d4 Author: Adrian Bunk Date: Wed Feb 21 12:57:30 2007 +0100 HID: hid-debug.c should #include Every file should include the headers containing the prototypes for it's global functions. Signed-off-by: Adrian Bunk Signed-off-by: Jiri Kosina commit 4237081e573b99a48991aa71364b0682c444651c Author: Jiri Kosina Date: Tue Feb 20 01:33:39 2007 +0100 HID: fix bug in zeroing the last field byte in output reports d4ae650a904612ffb7edd3f28b69b022988d2466 introduced zeroing of the last field byte in output reports in order to make sure the unused bits are set to 0. This is done in a wrong way, resulting in a wrong bits being zeroed out (not properly shifted by the field offset in the report). Fix this. Signed-off-by: Jiri Kosina commit fdc9c566161c119febe4fab0f7c382416681fd8f Author: Jiri Kosina Date: Mon Feb 19 14:15:59 2007 +0100 USB HID: use CONFIG_HID_DEBUG for outputting report descriptor Report descriptor should be output when CONFIG_HID_DEBUG is defined. This also mitigates the need for DEBUG and DEBUG_DATA defines, so let's remove them. Signed-off-by: Jiri Kosina commit 9fa2ad5ff4d8ded8c29c7b6cc92a1c3a8d8a2079 Author: Julien BLACHE Date: Sun Feb 11 18:20:25 2007 +0100 USB HID: Fix USB vendor and product IDs endianness for USB HID devices The USB vendor and product IDs are not byteswapped appropriately, and thus come out in the wrong endianness when fetched through the evdev using ioctl() on big endian platforms. Signed-off-by: Julien BLACHE Signed-off-by: Jiri Kosina commit 74bd7d093b8e87f35eaf3b14459b96a0e20d1d10 Author: David S. Miller Date: Wed Feb 28 13:09:34 2007 -0800 [SPARC64]: Fix parport_pc build. Signed-off-by: David S. Miller commit a9948a7e15015e7f2cb602190322b8ebb00c54c8 Author: Arnaldo Carvalho de Melo Date: Wed Feb 28 11:05:56 2007 -0800 [TCP]: Fix minisock tcp_create_openreq_child() typo. On 2/28/07, KOVACS Krisztian wrote: > > Hi, > > While reading TCP minisock code I've found this suspiciously looking > code fragment: > > - 8< - > struct sock *tcp_create_openreq_child(struct sock *sk, struct request_sock *req, struct sk_buff *skb) > { > struct sock *newsk = inet_csk_clone(sk, req, GFP_ATOMIC); > > if (newsk != NULL) { > const struct inet_request_sock *ireq = inet_rsk(req); > struct tcp_request_sock *treq = tcp_rsk(req); > struct inet_connection_sock *newicsk = inet_csk(sk); > struct tcp_sock *newtp; > - 8< - > > The above code initializes newicsk to inet_csk(sk), isn't that supposed > to be inet_csk(newsk)? As far as I can tell this might leave > icsk_ack.last_seg_size zero even if we do have received data. Good catch! David, please apply the attached patch. Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 5f1ef5108a7a5e9fc220f73352eb7b428a2499d5 Author: David S. Miller Date: Wed Feb 28 09:51:15 2007 -0800 [SPARC64]: Update defconfig. Signed-off-by: David S. Miller commit 71599cd1c381d1b5f58c35653ac1d3627c6276db Author: John Heffner Date: Tue Feb 27 10:03:56 2007 -0800 [TCP]: Document several sysctls. This adds documentation for tcp_moderate_rcvbuf, tcp_no_metrics_save, tcp_base_mss, and tcp_mtu_probing. Signed-off-by: John Heffner Signed-off-by: David S. Miller commit b08d5840d2c5a6ac0bce172f4c861974d718e34b Author: Patrick McHardy Date: Tue Feb 27 09:57:37 2007 -0800 [NET]: Fix kfree(skb) Signed-off-by: Patrick McHardy Acked-by: Paul Moore Signed-off-by: David S. Miller commit 4498121ca3acbf928681b71261227d28dc29b6f6 Author: Patrick McHardy Date: Tue Feb 27 09:56:42 2007 -0800 [NET]: Handle disabled preemption in gfp_any() ctnetlink uses netlink_unicast from an atomic_notifier_chain (which is called within a RCU read side critical section) without holding further locks. netlink_unicast calls netlink_trim with the result of gfp_any() for the gfp flags, which are passed down to pskb_expand_header. gfp_any() only checks for softirq context and returns GFP_KERNEL, resulting in this warning: BUG: sleeping function called from invalid context at mm/slab.c:3032 in_atomic():1, irqs_disabled():0 no locks held by rmmod/7010. Call Trace: [] debug_show_held_locks+0x9/0xb [] __might_sleep+0xd9/0xdb [] __kmalloc+0x68/0x110 [] pskb_expand_head+0x4d/0x13b [] netlink_broadcast+0xa5/0x2e0 [] :nfnetlink:nfnetlink_send+0x83/0x8a [] :nf_conntrack_netlink:ctnetlink_conntrack_event+0x94c/0x96a [] notifier_call_chain+0x29/0x3e [] atomic_notifier_call_chain+0x32/0x60 [] :nf_conntrack:destroy_conntrack+0xa5/0x1d3 [] :nf_conntrack:nf_ct_cleanup+0x8c/0x12c [] :nf_conntrack:kill_l3proto+0x0/0x13 [] :nf_conntrack:nf_conntrack_l3proto_unregister+0x90/0x94 [] :nf_conntrack_ipv4:nf_conntrack_l3proto_ipv4_fini+0x2b/0x5d [] sys_delete_module+0x1b5/0x1e6 [] trace_hardirqs_on_thunk+0x35/0x37 [] system_call+0x7e/0x83 Since netlink_unicast is supposed to be callable from within RCU read side critical sections, make gfp_any() check for in_atomic() instead of in_softirq(). Additionally nfnetlink_send needs to use gfp_any() as well for the call to netlink_broadcast). Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 6548cda289b549ed60c35f16a0051609aeee2fd0 Author: Stephen Hemminger Date: Tue Feb 27 09:55:07 2007 -0800 [BRIDGE]: Fix locking of set path cost. This change goes with earlier change to get rid of work queue for path cost. Now stp_set_path_cost does its own locking. This is to allow it to call br_path_cost() which calls ethtool interfaces (might sleep). Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit aa6e4a96e7589948fe770744f7bb4f0f743dddaa Author: David Stevens Date: Mon Feb 26 16:28:56 2007 -0800 [IPV6]: /proc/net/anycast6 unbalanced inet6_dev refcnt Reading /proc/net/anycast6 when there is no anycast address on an interface results in an ever-increasing inet6_dev reference count, as well as a reference to the netdevice you can't get rid of. Signed-off-by: David S. Miller commit 1267cd766c712644b45662572df05f28be5a6e89 Author: Rolf Eike Beer Date: Mon Feb 26 15:48:03 2007 -0800 [IPX]: Remove ancient changelog Signed-off-by: Rolf Eike Beer Signed-off-by: David S. Miller commit ff49f26b453ac77788d3a3c652d8cb0f578214da Author: Rolf Eike Beer Date: Mon Feb 26 15:47:16 2007 -0800 [IPX]: Remove outdated information from Kconfig SPX was removed in early 2.5. How to connect to a Mac or the other OS isn't hard to find out these days. Signed-off-by: Rolf Eike Beer Signed-off-by: David S. Miller commit 304c209c9b02b0386024d037fa49b273caa0575b Author: David S. Miller Date: Mon Feb 26 15:45:15 2007 -0800 [NET]: Revert socket.h/stat.h ifdef hacks. This reverts 57a87bb0720a5cf7a9ece49a8c8ed288398fd1bb. As H. Peter Anvin states, this change broke klibc and it's not very easy to fix things up without duplicating everything into userspace. In the longer term we should have a better solution to this problem, but for now let's unbreak things. Signed-off-by: David S. Miller commit 2c12a74cc4aeaebc378aa40ee11c7761a8ed05e0 Author: Michal Wrobel Date: Mon Feb 26 15:36:10 2007 -0800 [IPV6]: anycast refcnt fix This patch fixes a bug in Linux IPv6 stack which caused anycast address to be added to a device prior DAD has been completed. This led to incorrect reference count which resulted in infinite wait for unregister_netdevice completion on interface removal. Signed-off-by: Michal Wrobel Signed-off-by: David S. Miller commit 3a765aa528401c7aec2208f7ed1276b232b24c57 Author: David S. Miller Date: Mon Feb 26 14:52:21 2007 -0800 [XFRM] xfrm_user: Fix return values of xfrm_add_sa_expire. As noted by Kent Yoder, this function will always return an error. Make sure it returns zero on success. Signed-off-by: David S. Miller commit 2ff7354fe888f46f6629b57e463b0a1eb956c02b Author: Eric W. Biederman Date: Tue Feb 27 00:27:41 2007 -0700 [PATCH] x86_64/i386 irq: Fix !CONFIG_SMP compilation When removing set_native_irq I missed the fact that it was called in a couple of places that were compiled even when SMP support is disabled. And since the irq_desc[].affinity field only exists in SMP things broke. Thanks to Simon Arlott for spotting this. There are a couple of ways to fix this but the simplest one is to just remove the assignments. The affinity field is only used to display a value to the user, and nothing on either i386 or x86_64 reads it or depends on it being any particlua value, so skipping the assignment is safe. The assignment that is being removed is just for the initial affinity value before the user explicitly sets it. The irq_desc array initializes this field to CPU_MASK_ALL so the field is initialized to a reasonable value in the SMP case without being set. Signed-off-by: Eric W. Biederman Signed-off-by: Linus Torvalds commit 357efd57f229716fd6a1494b970c5a66c0c465ef Author: Stefano Brivio Date: Sat Feb 17 18:24:44 2007 +0100 [PATCH] bcm43xx: fix for 4309 BCM4309 devices aren't working properly as A PHYs aren't supported yet, but we probe 802.11a cores anyway. This fixes it, while still allowing for A PHY code to be developed in the future. Signed-off-by: Stefano Brivio Signed-off-by: John W. Linville