linux/drivers
Martin Peres d3f09691b3 drm/nouveau/pm/fan: drop the fan lock in fan_update() before rescheduling
commit 61679fe153 upstream.

This should fix a deadlock that has been reported to us where fan_update()
would hold the fan lock and try to grab the alarm_program_lock to reschedule
an update. On an other CPU, the alarm_program_lock would have been taken
before calling fan_update(), leading to a deadlock.

We should Cc: <stable@vger.kernel.org> # 3.9+

Reported-by: Marcin Slusarz <marcin.slusarz@gmail.com>
Tested-by: Timothée Ravier <tim@siosm.fr>
Tested-by: Boris Fersing (IRC nick fersingb, no public email address)
Signed-off-by: Martin Peres <martin.peres@free.fr>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-06-07 13:25:34 -07:00
..
accessibility
acpi ACPI / sleep: Add extra checks for HW Reduced ACPI mode sleep states 2014-03-23 21:38:17 -07:00
amba
ata pata_at91: fix ata_host_activate() failure handling 2014-06-07 13:25:29 -07:00
atm atm: idt77252: fix dev refcnt leak 2013-12-08 07:29:25 -08:00
auxdisplay
base drivercore: deferral race condition fix 2014-06-07 13:25:31 -07:00
bcma bcma: add more core IDs 2013-05-17 14:31:05 -04:00
block rbd: fix error paths in rbd_img_request_fill() 2014-05-30 21:52:12 -07:00
bluetooth Bluetooth: Add support for Lite-on [04ca:3007] 2014-06-07 13:25:33 -07:00
bus
cdrom drivers/cdrom/cdrom.c: use kzalloc() for failing hardware 2013-07-13 11:42:26 -07:00
char ipmi: Reset the KCS timeout when starting error recovery 2014-06-07 13:25:30 -07:00
clk clk: exynos5250: fix sysmmu_mfc{l,r} gate clocks 2014-01-15 15:28:52 -08:00
clocksource clocksource: Exynos_mct: Register clock event after request_irq() 2014-06-07 13:25:29 -07:00
connector connector: improved unaligned access error fix 2013-12-08 07:29:25 -08:00
cpufreq cpufreq: Fix timer/workqueue corruption due to double queueing 2014-04-14 06:42:19 -07:00
cpuidle cpuidle: Check the result of cpuidle_get_driver() against NULL 2014-04-14 06:42:15 -07:00
crypto crypto: caam - Fixed the memory out of bound overwrite issue 2013-08-04 16:50:57 +08:00
dca
devfreq
dio
dma ioat: fix tasklet tear down 2014-03-06 21:30:14 -08:00
edac i7300_edac: Fix device reference count 2014-03-06 21:30:13 -08:00
eisa Revert "EISA: Initialize device before its resources" 2014-02-13 13:47:59 -08:00
extcon Removal of GENERIC_GPIO for v3.10 2013-05-09 09:59:16 -07:00
firewire firewire: ohci: fix probe failure with Agere/LSI controllers 2014-05-30 21:52:11 -07:00
firmware dmi: add support for exact DMI matches in addition to substring matching 2013-11-29 11:11:53 -08:00
gpio gpio: mxs: Allow for recursive enable_irq_wake() call 2014-05-13 13:59:45 +02:00
gpu drm/nouveau/pm/fan: drop the fan lock in fan_update() before rescheduling 2014-06-07 13:25:34 -07:00
hid HID: Revert "Revert "HID: Fix logitech-dj: missing Unifying device issue"" 2014-01-15 15:28:45 -08:00
hsi
hv Drivers: hv: vmbus: Don't timeout during the initial connection with host 2014-02-22 12:41:28 -08:00
hwmon hwmon: (emc1403) Support full range of known chip revision numbers 2014-06-07 13:25:31 -07:00
hwspinlock A single patch from Vincent extending OMAP's hwspinlock support to OMAP5. 2013-05-07 14:01:27 -07:00
i2c i2c: i801: SMBus patch for Intel Coleto Creek DeviceIDs 2014-02-13 13:48:03 -08:00
ide block_device_operations->release() should return void 2013-05-07 02:16:21 -04:00
idle x86 idle: Repair large-server 50-watt idle-power regression 2014-01-09 12:24:21 -08:00
iio iio:imu:mpu6050: Fixed segfault in Invensens MPU driver due to null dereference 2014-06-07 13:25:32 -07:00
infiniband iser-target: Add missing se_cmd put for WRITE_PENDING in tx_comp_err 2014-05-13 13:59:40 +02:00
input Input: synaptics - add min/max quirk for ThinkPad Edge E431 2014-05-13 13:59:46 +02:00
iommu intel-iommu: fix off-by-one in pagetable freeing 2014-02-13 13:47:59 -08:00
ipack
irqchip irqchip: Gic: Support forced affinity setting 2014-06-07 13:25:28 -07:00
isdn isdnloop: several buffer overflows 2014-04-14 06:42:18 -07:00
leds leds: wm831x-status: Request a REG resource 2013-09-26 17:18:27 -07:00
lguest lguest: clear cached last cpu when guest_set_pgd() called. 2013-05-08 10:49:18 +09:30
macintosh powerpc/windfarm: Fix noisy slots-fan on Xserve (rm31) 2013-08-11 18:35:20 -07:00
mailbox
md md: avoid possible spinning md thread at shutdown. 2014-06-07 13:25:32 -07:00
media omap3isp: Defer probe when the IOMMU is not available 2014-06-07 13:25:33 -07:00
memory drivers/memory: don't check resource with devm_ioremap_resource 2013-05-18 11:55:52 +02:00
memstick block_device_operations->release() should return void 2013-05-07 02:16:21 -04:00
message Merge branch 'for-3.10/core' of git://git.kernel.dk/linux-block 2013-05-08 10:13:35 -07:00
mfd mfd: tps65910: Fix possible invalid pointer dereference on regmap_add_irq_chip fail 2014-05-06 07:55:28 -07:00
misc mei: me: do not load the driver if the FW doesn't support MEI interface 2014-05-06 07:55:27 -07:00
mmc mmc: atmel-mci: fix timeout errors in SDIO mode when using DMA 2014-02-13 13:48:00 -08:00
mtd mtd: sm_ftl: heap corruption in sm_create_sysfs_attributes() 2014-05-13 13:59:45 +02:00
net rtl8192cu: Fix unbalanced irq enable in error path of rtl92cu_hw_init() 2014-06-07 13:25:34 -07:00
nfc NFC: mei: Do not disable MEI devices from their remove routine 2013-05-21 10:48:41 +02:00
ntb NTB: Correct debugfs to work with more than 1 NTB Device 2013-11-13 12:05:35 +09:00
nubus nubus: Kill nubus_proc_detach_device() 2013-05-04 14:47:26 -04:00
of of: fix PCI bus match for PCIe slots 2014-02-22 12:41:27 -08:00
oprofile
parisc parisc: Fix interrupt routing for C8000 serial ports 2013-08-11 18:35:21 -07:00
parport parport: parport_pc: remove double PCI ID for NetMos 2014-02-06 11:08:15 -08:00
pci PCI: Enable INTx in pci_reenable_device() only when MSI/MSI-X not enabled 2014-03-23 21:38:18 -07:00
pcmcia pcmcia: at91_cf: fix gpio_get_value in at91_cf_get_status 2013-07-21 18:21:25 -07:00
pinctrl pinctrl: protect pinctrl_list add 2014-02-20 11:06:11 -08:00
platform hp_accel: Add a new PnP ID HPQ6007 for new HP laptops 2014-02-06 11:08:16 -08:00
pnp PNP / ACPI: proper handling of ACPI IO/Memory resource parsing failures 2014-03-23 21:38:22 -07:00
power power: max17040: Fix NULL pointer dereference when there is no platform_data 2014-02-22 12:41:29 -08:00
pps Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2013-05-01 17:51:54 -07:00
ps3
ptp ptp_pch: fix error handling in pch_probe() 2013-05-25 21:24:15 -07:00
pwm drivers/pwm: don't check resource with devm_ioremap_resource 2013-05-18 11:55:58 +02:00
rapidio rapidio/tsi721: fix tasklet termination in dma channel release 2014-03-23 21:38:09 -07:00
regulator regulator: core: Replace direct ops->disable usage 2014-03-31 09:58:13 -07:00
remoteproc This pull request contains: 2013-05-07 14:04:56 -07:00
reset
rpmsg A small pull request consisting of: 2013-05-07 14:02:00 -07:00
rtc rtc-cmos: Add an alarm disable quirk 2014-02-13 13:48:03 -08:00
s390 s390/chsc: fix SEI usage on old FW levels 2014-05-13 13:59:42 +02:00
sbus
scsi SCSI: megaraid: missing bounds check in mimd_to_kioc() 2014-05-30 21:52:11 -07:00
sfi
sh
sn
spi spi: spi-ath79: fix initial GPIO CS line setup 2014-03-23 21:38:16 -07:00
ssb - Lots of cleanups from Artem, including deletion of some obsolete drivers 2013-05-09 10:15:46 -07:00
ssbi
staging staging: r8712u: Fix case where ethtype was never obtained and always be checked against 0 2014-05-06 07:55:28 -07:00
target target/tcm_fc: Fix use-after-free of ft_tpg 2014-05-06 07:55:30 -07:00
tc
thermal drivers/thermal: don't check resource with devm_ioremap_resource 2013-05-18 11:57:30 +02:00
tty 8250_core: Fix unwanted TX chars write 2014-06-07 13:25:30 -07:00
uio Fix a few incorrectly checked [io_]remap_pfn_range() calls 2013-11-13 12:05:33 +09:00
usb USB: Nokia 5300 should be treated as unusual dev 2014-06-07 13:25:33 -07:00
uwb uwb: rename random32() to prandom_u32() 2013-04-29 18:28:43 -07:00
vfio mm: close PageTail race 2014-04-03 12:01:05 -07:00
vhost vhost: validate vhost_get_vq_desc return value 2014-04-14 06:42:18 -07:00
video tgafb: fix mode setting with fbset 2014-05-30 21:52:12 -07:00
virt
virtio virtio_balloon: don't softlockup on huge balloon changes. 2014-05-13 13:59:41 +02:00
vlynq
vme VME: Correct read/write alignment algorithm 2014-02-22 12:41:28 -08:00
w1 w1: fix w1_send_slave dropping a slave id 2014-05-06 07:55:28 -07:00
watchdog sc1200_wdt: Fix oops 2013-12-20 07:45:11 -08:00
xen xen/gnttab: leave lazy MMU mode in the case of a m2p override failure 2013-12-11 22:36:27 -08:00
zorro proc: Supply PDE attribute setting accessor functions 2013-05-01 17:29:18 -04:00
Kconfig ARM: arm-soc driver changes for 3.10 2013-05-04 12:31:18 -07:00
Makefile ARM: arm-soc driver changes for 3.10 2013-05-04 12:31:18 -07:00