aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-06-08Merge branch 'urgent' of ↵Ingo Molnar2-5/+11
git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile into perf/urgent
2011-06-08drm/radeon/kms: disable hdmi audio by defaultAlex Deucher1-2/+2
The current RE'd code causes blank screens and display problems on a lot of systems. So disable it by default for now. It can still be enabled by setting the audio parameter to 1. E.g.: radeon.audio=1 Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=38010 https://bugs.freedesktop.org/show_bug.cgi?id=27731 https://bugs.freedesktop.org/show_bug.cgi?id=35970 https://bugs.freedesktop.org/show_bug.cgi?id=26195 and many other reported problems. Signed-off-by: Alex Deucher <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2011-06-08drm/radeon/kms: fix for radeon on systems >4GB without hardware iommuDaniel Haid1-0/+1
On my x86_64 system with >4GB of ram and swiotlb instead of a hardware iommu (because I have a VIA chipset), the call to pci_set_dma_mask (see below) with 40bits returns an error. But it seems that the radeon driver is designed to have need_dma32 = true exactly if pci_set_dma_mask is called with 32 bits and false if it is called with 40 bits. I have read somewhere that the default are 32 bits. So if the call fails I suppose that need_dma32 should be set to true. And indeed the patch fixes the problem I have had before and which I had described here: http://choon.net/forum/read.php?21,106131,115940 Acked-by: Alex Deucher <[email protected]> cc: [email protected] Signed-off-by: Dave Airlie <[email protected]>
2011-06-08drm/radeon/kms: set family for use in parser.Dave Airlie1-0/+1
Wierdly the kms parser never initialised the family, it wasn't really used much, but the fmt checker patch started using it and it fell over. Reported-by: Markus Trippelsdorf <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2011-06-08x86: cpu-hotplug: Prevent softirq wakeup on wrong CPUThomas Gleixner1-0/+13
After a newly plugged CPU sets the cpu_online bit it enables interrupts and goes idle. The cpu which brought up the new cpu waits for the cpu_online bit and when it observes it, it sets the cpu_active bit for this cpu. The cpu_active bit is the relevant one for the scheduler to consider the cpu as a viable target. With forced threaded interrupt handlers which imply forced threaded softirqs we observed the following race: cpu 0 cpu 1 bringup(cpu1); set_cpu_online(smp_processor_id(), true); local_irq_enable(); while (!cpu_online(cpu1)); timer_interrupt() -> wake_up(softirq_thread_cpu1); -> enqueue_on(softirq_thread_cpu1, cpu0); ^^^^ cpu_notify(CPU_ONLINE, cpu1); -> sched_cpu_active(cpu1) -> set_cpu_active((cpu1, true); When an interrupt happens before the cpu_active bit is set by the cpu which brought up the newly onlined cpu, then the scheduler refuses to enqueue the woken thread which is bound to that newly onlined cpu on that newly onlined cpu due to the not yet set cpu_active bit and selects a fallback runqueue. Not really an expected and desirable behaviour. So far this has only been observed with forced hard/softirq threading, but in theory this could happen without forced threaded hard/softirqs as well. It's probably unobservable as it would take a massive interrupt storm on the newly onlined cpu which causes the softirq loop to wake up the softirq thread and an even longer delay of the cpu which waits for the cpu_online bit. Signed-off-by: Thomas Gleixner <[email protected]> Reviewed-by: Peter Zijlstra <[email protected]> Cc: [email protected] # 2.6.39
2011-06-08davinci: make PCM platform devices staticSekhar Nori2-2/+2
Make the PCM device structures used in devices.c and devices-da8xx.c static as they are used only in the respective files. This was found when trying to build a single image for DaVinci and DA8x devices using runtime P2V support. Signed-off-by: Sekhar Nori <[email protected]>
2011-06-08arm: davinci: Fix fallout from generic irq chip conversionThomas Gleixner1-3/+4
The code which does the chained handler setup was overwriting chip_data. Signed-off-by: Thomas Gleixner <[email protected]> Tested-by: Holger Hans Peter Freyther <[email protected]> Signed-off-by: Kevin Hilman <[email protected]> Signed-off-by: Sekhar Nori <[email protected]>
2011-06-08MD: add sync_super to mddev_t structJonathan Brassow2-2/+14
Add the 'sync_super' function pointer to MD array structure (struct mddev_s) If device-mapper (dm-raid.c) is to define its own on-disk superblock and be able to load it, there must still be a way for MD to initiate superblock updates. The simplest way to make this happen is to provide a pointer in the MD array structure that can be set by device-mapper (or other module) with a function to do this. If the function has been set, it will be used; otherwise, the method with be looked up via 'super_types' as usual. Signed-off-by: Jonathan Brassow <[email protected]> Signed-off-by: NeilBrown <[email protected]>
2011-06-08MD: raid1 changes to allow use by device mapperJonathan Brassow2-7/+19
MD RAID1: Changes to allow RAID1 to be used by device-mapper (dm-raid.c) Added the necessary congestion function and conditionalize calls requiring an array 'queue' or 'gendisk'. Signed-off-by: Jonathan Brassow <[email protected]> Signed-off-by: NeilBrown <[email protected]>
2011-06-08MD: move thread wakeups into resumeJonathan Brassow1-3/+7
Move personality and sync/recovery thread starting outside md_run. Moving the wakeup's of the personality and sync/recovery threads out of md_run and into do_md_run and mddev_resume solves two issues: 1) It allows bitmap_load to be called before the sync_thread is run and 2) when MD personalities are used by device-mapper (dm-raid.c), the start-up of the array is better alligned with device-mapper primatives (CTR/resume/suspend/DTR). I/O - in this case, recovery operations - should not happen until after a resume has taken place. Signed-off-by: Jonathan Brassow <[email protected]> Signed-off-by: NeilBrown <[email protected]>
2011-06-08MD: possible typoJonathan Brassow1-2/+2
Make message a bit clearer by s/blocks/k/ I chose 'k' vs 'kiB' or 'kB' because it is what is used earlier in the message. 'k' may be a bit ambigous, but I think it's better than "blocks" which normally means 512, but means 1024 in MD. Signed-off-by: Jonathan Brassow <[email protected]> Signed-off-by: NeilBrown <[email protected]>
2011-06-08MD: no sync IO while suspendedJonathan Brassow1-1/+3
Disallow resync I/O while the RAID array is suspended. Recovery, resync, and metadata I/O should not be allowed while a device is suspended. Signed-off-by: Jonathan Brassow <[email protected]> Signed-off-by: NeilBrown <[email protected]>
2011-06-08MD: no integrity register if no gendiskJonathan Brassow1-2/+2
Don't attempt md_integrity_register if there is no gendisk struct available. When MD arrays are built via device-mapper, the gendisk structure is not available via mddev. Signed-off-by: Jonathan Brassow <[email protected]> Signed-off-by: NeilBrown <[email protected]>
2011-06-07ceph: unwind canceled flock stateSage Weil1-10/+16
If we request a lock and then abort (e.g., ^C), we need to send a matching unlock request to the MDS to unwind our lock attempt to avoid indefinitely blocking other clients. Reported-by: Brian Chrisman <[email protected]> Signed-off-by: Sage Weil <[email protected]>
2011-06-07ceph: fix ENOENT logic in striped_readSage Weil1-2/+2
Getting ENOENT is equivalent to reading 0 bytes. Make that correction before setting up the hit_stripe and was_short flags. Fixes the following case: dd if=/dev/zero of=/mnt/fs_depot/dd3 bs=1 seek=1048576 count=0 dd if=/mnt/fs_depot/dd3 of=/root/ddout1 skip=8 bs=500 count=2 iflag=direct Reported-by: Henry C Chang <[email protected]> Signed-off-by: Sage Weil <[email protected]>
2011-06-07ceph: fix short sync reads from the OSDSage Weil1-13/+15
If we get a short read from the OSD because the object is small, we need to zero the remainder of the buffer. For O_DIRECT reads, the attempted range is not trimmed to i_size by the VFS, so we were actually looping indefinitely. Fix by trimming by i_size, and the unconditionally zeroing the trailing range. Reported-by: Jeff Wu <[email protected]> Signed-off-by: Sage Weil <[email protected]>
2011-06-07ceph: fix sync vs canceled writeSage Weil1-5/+10
If we cancel a write, trigger the safe completions to prevent a sync from blocking indefinitely in ceph_osdc_sync(). Signed-off-by: Sage Weil <[email protected]>
2011-06-07ceph: use ihold when we already have an inode refSage Weil10-28/+37
We should use ihold whenever we already have a stable inode ref, even when we aren't holding i_lock. This avoids adding new and unnecessary locking dependencies. Signed-off-by: Sage Weil <[email protected]>
2011-06-07xfrm: Fix off by one in the replay advance functionsSteffen Klassert1-2/+2
We may write 4 byte too much when we reinitialize the anti replay window in the replay advance functions. This patch fixes this by adjusting the last index of the initialization loop. Signed-off-by: Steffen Klassert <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-06-07Merge branch 'irq-urgent-for-linus' of ↵Linus Torvalds5-28/+53
git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: genirq: Ensure we locate the passed IRQ in irq_alloc_descs() genirq: Fix descriptor init on non-sparse IRQs irq: Handle spurios irq detection for threaded irqs genirq: Print threaded handler in spurious debug output
2011-06-07Merge branch 'x86-urgent-for-linus' of ↵Linus Torvalds2-7/+49
git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86/amd-iommu: Fix boot crash with hidden PCI devices x86/amd-iommu: Use only per-device dma_ops x86/amd-iommu: Fix 3 possible endless loops
2011-06-07Merge branch 'sched-urgent-for-linus' of ↵Linus Torvalds3-10/+26
git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: sched: Fix/clarify set_task_cpu() locking rules lockdep: Fix lock_is_held() on recursion sched: Fix schedstat.nr_wakeups_migrate sched: Fix cross-cpu clock sync on remote wakeups
2011-06-07Merge branch 'drm-fixes' of ↵Linus Torvalds19-187/+161
git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm/nv40: fall back to paged dma object for the moment drm/nouveau: fix leak of gart mm node drm/nouveau: fix vram page mapping when crossing page table boundaries drm/nv17-nv40: Fix modesetting failure when pitch == 4096px (fdo bug 35901). drm/nouveau: don't create accel engine objects when noaccel=1 drm/nvc0: recognise 0xdX chipsets as NV_C0 drm/i915: Add a no lvds quirk for the Asus EeeBox PC EB1007 drm/i915: Share the common force-audio property between connectors drm/i915: Remove unused enum "chip_family" drm/915: fix relaxed tiling on gen2: tile height drm/i915/crt: Explicitly return false if connected to a digital monitor drm/i915: Replace ironlake_compute_wm0 with g4x_compute_wm0 drm/i915: Only print out the actual number of fences for i915_error_state drm/i915: s/addr & ~PAGE_MASK/offset_in_page(addr)/ drm: i915: correct return status in intel_hdmi_mode_valid() drm/i915: fix regression after clock gating init split drm/i915: fix if statement in ivybridge irq handler
2011-06-07Merge branch 'drm-radeon-fixes' of ↵Linus Torvalds19-304/+830
git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-radeon-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm/radeon/kms/atom: fix PHY init drm/radeon/kms: add missing Evergreen texture formats to the CS parser drm/radeon/kms: viewport height has to be even drm/radeon/kms: remove duplicate reg from r600 safe regs drm/radeon/kms: add support for Llano Fusion APUs drm/radeon/kms: add llano pci ids drm/radeon/kms: fill in asic struct for llano drm/radeon/kms: add family ids for llano APUs drm/radeon: fix oops in ttm reserve when pageflipping (v2) drm/radeon/kms: clean up the radeon kms Kconfig drm/radeon/kms: fix thermal sensor reading on juniper drm/radeon/kms: add missing case for cayman thermal sensor drm/radeon/kms: add blit support for cayman (v2) drm/radeon/kms/blit: workaround some hw issues on evergreen+
2011-06-07Merge branch 'timers-fixes-for-linus' of ↵Linus Torvalds2-9/+11
git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: timers: Consider slack value in mod_timer() clockevents: Handle empty cpumask gracefully
2011-06-07Merge branch 'kvm-updates/3.0' of git://git.kernel.org/pub/scm/virt/kvm/kvmLinus Torvalds2-41/+56
* 'kvm-updates/3.0' of git://git.kernel.org/pub/scm/virt/kvm/kvm: KVM: Initialize kvm before registering the mmu notifier KVM: x86: use proper port value when checking io instruction permission KVM: add missing void __user * cast to access_ok() call
2011-06-07MAINTAINERS: Saying goodbye to David BrownellGrant Likely2-10/+12
We had to say goodbye when David passed away recently. David had a huge impact on our community, both personally in the lives of the people he worked with, and technically in the design and maintenance of several subsystems. He is greatly missed. He also leaves behind a number of much loved subsystems now orphaned. This patch updates the MAINTAINERS file for the areas that David was responsible for and adds an entry for him to the CREDITS file. Signed-off-by: Grant Likely <[email protected]> Acked-by: Harry Wei <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2011-06-07Merge git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6Linus Torvalds1-1/+1
* git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6: fat: Fix corrupt inode flags when remove ATTR_SYS flag
2011-06-07MN10300: Add missing _sdata declarationDavid Howells1-0/+1
_sdata needs to be declared in the linker script now as of commit a2d063ac216c ("extable, core_kernel_data(): Make sure all archs define _sdata") Signed-off-by: David Howells <[email protected]> Cc: Steven Rostedt <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2011-06-07MN10300: die_if_no_fixup() shouldn't use get_user() as it doesn't call set_fs()David Howells1-2/+2
die_if_no_fixup() shouldn't use get_user() as it doesn't call set_fs() to indicate that it wants to probe a kernel address. Instead it should use probe_kernel_read(). This fixes the problem of gdb seeing SIGILL rather than SIGTRAP when hitting the KGDB special breakpoint upon SysRq+g being seen. The problem was that die_if_no_fixup() was failing to read the opcode of the instruction that caused the exception, and thus not fixing up the exception. This caused gdb to get a S04 response to the $? request in its remote protocol rather than S05 - which would then cause it to continue with $C04 rather than $c in an attempt to pass the signal onto the inferior process. The kernel, however, does not support $Cnn, and so objects by returning an E22 response, indicating an error. gdb does not expect this and prints: warning: Remote failure reply: E22 and then returns to the gdb command prompt unable to continue. Signed-off-by: David Howells <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2011-06-07MN10300: Fix one of the kernel debugger cacheflush variantsDavid Howells1-2/+2
One of the kernel debugger cacheflush variants escaped proper testing. Two of the labels are wrong, being derived from the code that was copied to construct the variant. The first label results in the following assembler message: AS arch/mn10300/mm/cache-dbg-flush-by-reg.o arch/mn10300/mm/cache-dbg-flush-by-reg.S: Assembler messages: arch/mn10300/mm/cache-dbg-flush-by-reg.S:123: Error: symbol `debugger_local_cache_flushinv_no_dcache' is already defined And the second label results in the following linker message: arch/mn10300/mm/built-in.o:(.text+0x1d39): undefined reference to `mn10300_local_icache_inv_range_reg_end' arch/mn10300/mm/built-in.o:(.text+0x1d39): relocation truncated to fit: R_MN10300_PCREL16 against undefined symbol `mn10300_local_icache_inv_range_reg_end' To test this file the following configuration pieces must be set: CONFIG_AM34=y CONFIG_MN10300_CACHE_WBACK=y CONFIG_MN10300_DEBUGGER_CACHE_FLUSH_BY_REG=y CONFIG_MN10300_CACHE_MANAGE_BY_REG=y CONFIG_AM34_HAS_CACHE_SNOOP=n Signed-off-by: David Howells <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2011-06-07Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6Linus Torvalds14-395/+291
* 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: [S390] fix kvm defines for 31 bit compile [S390] use generic RCU page-table freeing code [S390] qdio: Split SBAL entry flags [S390] kvm-s390: fix stfle facilities numbers >=64 [S390] kvm-s390: Fix host crash on misbehaving guests
2011-06-07Merge branch 'fixes' of ↵Linus Torvalds32-73/+90
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: (21 commits) ARM: OMAP4: MMC: increase delay for pbias arm: omap2plus: move NAND_BLOCK_SIZE out of boards omap4: hwmod: Enable the keypad omap3: Free Beagle rev gpios when they are read, so others can read them later arm: omap3: beagle: Ensure msecure is mux'd to be able to set the RTC omap: rx51: Don't power up speaker amplifier at bootup omap: rx51: Set regulator V28_A always on ARM: OMAP4: MMC: no regulator off during probe for eMMC arm: omap2plus: fix ads7846 pendown gpio request ARM: OMAP2: Add missing iounmap in omap4430_phy_init ARM: omap4: Pass core and wakeup mux tables to omap4_mux_init ARM: omap2+: mux: Allow board mux settings to be NULL OMAP4: fix return value of omap4_l3_init OMAP: iovmm: fix SW flags passed by user arch/arm/mach-omap1/dma.c: Invert calls to platform_device_put and platform_device_del OMAP2+: mux: fix compilation warnings OMAP: SRAM: Fix warning: format '%08lx' expects type 'long unsigned int' arm: omap3: cm-t3517: fix section mismatch warning OMAP2+: Fix 9 section mismatch(es) warnings from mach-omap2/built-in.o ARM: OMAP2: Add missing include of linux/gpio.h ...
2011-06-07Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixesLinus Torvalds1-2/+7
* git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes: GFS2: Processes waiting on inode glock that no processes are holding
2011-06-07Merge branch 'fbdev-fixes-for-linus' of ↵Linus Torvalds13-37/+63
git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-3.x * 'fbdev-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-3.x: video: Fix use-after-free by vga16fb on rmmod video: Convert vmalloc/memset to vzalloc efifb: Disallow manual bind and unbind efifb: Fix mismatched request/release_mem_region efifb: Enable write-combining drivers/video/pxa168fb.c: add missing clk_put drivers/video/imxfb.c: add missing clk_put fbdev: bf537-lq035: add missing blacklight properties type savagefb: Use panel CVT mode as default fbdev: sh_mobile_lcdcfb: Fix up fallout from MERAM changes.
2011-06-07Merge branch 'for-linus-2' of ↵Linus Torvalds9-11/+16
git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: vfs: make unlink() and rmdir() return ENOENT in preference to EROFS lmLogOpen() broken failure exit usb: remove bad dput after dentry_unhash more conservative S_NOSEC handling
2011-06-07sparc: Remove unnecessary semicolonsJoe Perches34-65/+65
Semicolons are not necessary after switch/while/for/if braces so remove them. Signed-off-by: Joe Perches <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-06-07Add support for allocating irqs for bootbus devicesoftedal1-12/+22
Some devices that can generate interrupts are connected directly to the CPU through the bootbus on sun4d. This patch allows IRQs to be allocated for such devices. The information used for allocating interrupts for sbus devices are present at the corresponding SBI node. For bootbus devices this information is present in the bootbus node. Signed-off-by: Kjetil Oftedal <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-06-07Do not skip interrupt sources in sun4d interrupt handler and acknowledge ↵oftedal1-9/+5
interrupts correctly During the introduction of genirq on sparc32 bugs were introduced in the interrupt handler for sun4d. The interrupts handler checks the status of the various sbus interfaces in the system and generates a virtual interrupt, based upon the location of the interrupt source. This lookup was broken by restructuring the code in such a way that index and shift operations were performed prior to comparing this against the values read from the interrupt controllers. This could cause the handler to loop eternally as the interrupt source could be skipped before any check was performed. Additionally sun4d_encode_irq performs shifting internally, so it should not be performed twice. In sun4d_unmask interrupts were not correctly acknowledged, as the corresponding bit it the interrupt mask was not actually cleared. Signed-off-by: Kjetil Oftedal <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-06-07Restructure sun4d_build_device_irq so that timer interrupts can be allocatedoftedal1-24/+54
sun4d_build_device_irq was called without a valid platform_device when the system timer was initialized on sun4d systems. This caused a NULL pointer crash. Josip Rodin suggested that the current sun4d_build_device_irq should be split into two functions. So that the timer initialization could skip the slot and sbus interface detection code in sun4d_build_device_irq, as this does not make sence due to the timer interrupts not being generated from a device located on sbus. Signed-off-by: Kjetil Oftedal <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-06-07Revert "USB: option: add ID for ZTE MF 330"Greg Kroah-Hartman1-5/+0
This reverts commit a559d2c8c1bf652ea2d0ecd6ab4a250fcdb37db8. Turns out that device id 0x1d6b:0x0002 is a USB hub, which causes havoc when the option driver tries to bind to it. So revert this as it doesn't seem to be needed at all. Thanks to Michael Tokarev and Paweł Drobek for working on resolving this issue. Cc: Paweł Drobek <[email protected]> Cc: Michael Tokarev <[email protected]> Cc: Dominik Brodowski <[email protected]> Cc: stable <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2011-06-07PM / Runtime: Fix loops in pm_runtime_clk_notify()Rafael J. Wysocki1-8/+8
The loops over connection ID strings in pm_runtime_clk_notify() should actually iterate over the strings and not over the elements of the first of them, so make them behave as appropriate. This fixes a regression introduced by commit 600b776eb39a13a28b090 (OMAP1 / PM: Use generic clock manipulation routines for runtime PM). Reported-and-tested-by: Janusz Krzysztofik <[email protected]> Signed-off-by: Rafael J. Wysocki <[email protected]>
2011-06-07igb: fix i350 SR-IOV failtureWilliams, Mitch A1-0/+3
When SR-IOV is enabled, i350 devices fail to pass traffic. This is due to the driver attempting to enable RSS on the PF device, which is not supported by the i350. When max_vfs is specified on an i350 adapter, set the number of RSS queues to 1. This issue affects 2.6.39 as well. CC: [email protected] Signed-off-by: Mitch Williams <[email protected]> Tested-by: Jeff Pieper <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-06-07gpio/samsung: make Kconfig options def_boolH Hartley Sweeten1-20/+8
The Samsung GPIO drivers are always built-in when the relevant platform is selected.  Change the Kconfig symbol to def_bool y dependant on the platform. Signed-off-by: H Hartley Sweeten <[email protected]> Acked-by: Kyungmin Park <[email protected]> Signed-off-by: Grant Likely <[email protected]>
2011-06-07libata: fix unexpectedly frozen port after ata_eh_reset()Tejun Heo1-4/+8
To work around controllers which can't properly plug events while reset, ata_eh_reset() clears error states and ATA_PFLAG_EH_PENDING after reset but before RESET is marked done. As reset is the final recovery action and full verification of devices including onlineness and classfication match is done afterwards, this shouldn't lead to lost devices or missed hotplug events. Unfortunately, it forgot to thaw the port when clearing EH_PENDING, so if the condition happens after resetting an empty port, the port could be left frozen and EH will end without thawing it, making the port unresponsive to further hotplug events. Thaw if the port is frozen after clearing EH_PENDING. This problem is reported by Bruce Stenning in the following thread. http://thread.gmane.org/gmane.linux.kernel/1123265 stable: I think we should weather this patch a bit longer in -rcX before sending it to -stable. Please wait at least a month after this patch makes upstream. Thanks. -v2: Fixed spelling in the comment per Dave Howorth. Signed-off-by: Tejun Heo <[email protected]> Reported-by: Bruce Stenning <[email protected]> Cc: [email protected] Cc: Dave Howorth <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2011-06-07PM / Intel IOMMU: Fix init_iommu_pm_ops() for CONFIG_PM unsetRafael J. Wysocki1-1/+1
If CONFIG_PM is not set, init_iommu_pm_ops() introduced by commit 134fac3f457f3dd753ecdb25e6da3e5f6629f696 (PCI / Intel IOMMU: Use syscore_ops instead of sysdev class and sysdev) is not defined appropriately. Fix this issue. Reported-by: Tony Luck <[email protected]> Signed-off-by: Rafael J. Wysocki <[email protected]>
2011-06-07staging: iio: error case memory leak fixAndre Bartke1-3/+7
The data pointer should be freed in the error cases of adis16400_trigger_handler(). Signed-off-by: Andre Bartke <[email protected]> Acked-by: Jonathan Cameron <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2011-06-07staging: ath6kl: Fix a kernel panic during suspend/resumeVasanthakumar Thiagarajan1-1/+2
The kernel panic happens when we try to complete a pending scan request while going to suspend state. The cause for this kernel panic is accessing a freed memory (ar->arWmin). This is freed before ar6k_cfg80211_scanComplete_event() getting called where it is dereferenced. RIP: 0010:[<ffffffffa042e726>] [<ffffffffa042e726>] wlan_iterate_nodes+0x16/0xc0 [ath6kl] RSP: 0018:ffff8800719fbce8 EFLAGS: 00010296 RAX: ffff880071bbcc00 RBX: ffff880037b22520 RCX: ffff880077413c80 RDX: ffff880037b221c0 RSI: ffffffffa041ef10 RDI: 0000000000000020 RBP: ffff8800719fbd18 R08: 0000000000000001 R09: 0000000000000001 R10: 0000000000000400 R11: 0000000000000000 R12: 0000000000000010 R13: ffff8800719fbdd8 R14: 00007fff83a84b60 R15: 0000000000000001 FS: 00007fdccb8a7700(0000) GS:ffff880077400000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 0000000000000148 CR3: 0000000070604000 CR4: 00000000000006f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process rmmod (pid: 1998, threadinfo ffff8800719fa000, task ffff880066712d80) Stack: 0000000000000000 ffff880037b22520 0000000000000010 ffff8800719fbdd8 00007fff83a84b60 0000000000000001 ffff8800719fbd28 ffffffffa0429fe2 ffff8800719fbd58 ffffffffa041ee5f ffff8800719fbd58 ffff880037b22520 Call Trace: [<ffffffffa0429fe2>] wmi_iterate_nodes+0x12/0x20 [ath6kl] [<ffffffffa041ee5f>] ar6k_cfg80211_scanComplete_event+0x3f/0xf0 [ath6kl] [<ffffffffa04245f1>] ar6000_close+0x61/0x100 [ath6kl] [<ffffffff814d6736>] __dev_close_many+0x96/0x100 [<ffffffff814d688d>] dev_close_many+0x9d/0x120 [<ffffffff814d6a48>] rollback_registered_many+0xe8/0x290 [<ffffffff814d6d16>] unregister_netdevice_queue+0x96/0x100 [<ffffffff814d6ea0>] unregister_netdev+0x20/0x30 [<ffffffffa0420259>] ar6000_destroy+0x119/0x180 [ath6kl] [<ffffffffa043182a>] ar6k_cleanup_module+0x2a/0x33 [ath6kl] [<ffffffff81098fde>] sys_delete_module+0x19e/0x270 [<ffffffff815d7542>] system_call_fastpath+0x16/0x1b Code: c3 0f 1f 40 00 48 89 df e8 68 ff ff ff eb df 66 0f 1f 44 00 00 55 48 89 e5 41 57 41 56 41 55 41 54 53 48 83 ec 08 0f 1f 44 00 00 8b af 28 01 00 00 4c 8d 7f 08 49 89 fc 48 89 f3 49 89 d6 41 RIP [<ffffffffa042e726>] wlan_iterate_nodes+0x16/0xc0 [ath6kl] RSP <ffff8800719fbce8> Signed-off-by: Vasanthakumar Thiagarajan <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2011-06-07staging: gma500: get control from firmware framebuffer if conflictsMichael Chang1-0/+10
Many Linux distributions would enable vesafb in order to display early stage boot splash. In this case, we will get garbled X Window screen if running X fbdev on psbfb. This is because fb0 is occupied by vesafb while psbfb is on fb1. They tried to drive the same pieces of hardware at the same time. With unmodified X start-up, it would try to use default fb0 framebuffer device and unfortunately it is now broken becaues fb1 supersedes it. We should let psbfb takeover framebuffer control from vesafb to get around this problem. See also commit : 4410f3910947dcea8672280b3adecd53cec4e85e Signed-off-by: Michael Chang <[email protected]> Cc: Alan Cox <[email protected]> Cc: stable <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2011-06-07staging: gma500: Skip bogus LVDS VBT mode and check for LVDS before adding ↵Patrik Jakobsson2-5/+23
backlight On the Fit-PC2 the VBT reports an invalid fixed panel mode for LVDS, this gets in the way for SDVO. This patch makes VBT parsing skip the invalid mode. When there is no LVDS output the backlight support crashes so the patch also checks for this before enabling it. Signed-off-by: Patrik Jakobsson <[email protected]> Signed-off-by: Alan Cox <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>