Chris Wilson
da58405860
drm: Return ENODEV if the inode mapping changes
Replace a BUG_ON with an error code in the event that the inode mapping
changes between calls to drm_open. This may happen for instance if udev
is loaded subsequent to the original opening of the device:
[ 644.291870] kernel BUG at drivers/gpu/drm/drm_fops.c:146!
[ 644.291876] invalid opcode: 0000 [#1] SMP
[ 644.291882] last sysfs file: /sys/kernel/uevent_seqnum
[ 644.291888]
[ 644.291895] Pid: 7276, comm: lt-cairo-test-s Not tainted 2.6.34-rc1 #2 N150/N210/N220 /N150/N210/N220
[ 644.291903] EIP: 0060:[<c11c70e3>] EFLAGS: 00210283 CPU: 0
[ 644.291912] EIP is at drm_open+0x4b1/0x4e2
[ 644.291918] EAX: f72d8d18 EBX: f790a400 ECX: f73176b8 EDX: 00000000
[ 644.291923] ESI: f790a414 EDI: f790a414 EBP: f647ae20 ESP: f647adfc
[ 644.291929] DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
[ 644.291937] Process lt-cairo-test-s (pid: 7276, ti=f647a000 task=f73f5c80 task.ti=f647a000)
[ 644.291941] Stack:
[ 644.291945] 00000000 f7bb7400 00000080 f6451100 f73176b8 f6479214 f6451100 f73176b8
[ 644.291957] <0> c1297ce0 f647ae34 c11c6c04 f73176b8 f7949800 00000000 f647ae54 c1080ac5
[ 644.291969] <0> f7949800 f6451100 00000000 f6451100 f73176b8 f6452780 f647ae70 c107d1e6
[ 644.291982] Call Trace:
[ 644.291991] [<c11c6c04>] ? drm_stub_open+0x8a/0xb8
[ 644.292000] [<c1080ac5>] ? chrdev_open+0xef/0x106
[ 644.292008] [<c107d1e6>] ? __dentry_open+0xd4/0x1a6
[ 644.292015] [<c107d35b>] ? nameidata_to_filp+0x31/0x45
[ 644.292022] [<c10809d6>] ? chrdev_open+0x0/0x106
[ 644.292030] [<c10864e2>] ? do_last+0x346/0x423
[ 644.292037] [<c108789f>] ? do_filp_open+0x190/0x415
[ 644.292046] [<c1071eb5>] ? handle_mm_fault+0x214/0x710
[ 644.292053] [<c107d008>] ? do_sys_open+0x4d/0xe9
[ 644.292061] [<c1016462>] ? do_page_fault+0x211/0x23f
[ 644.292068] [<c107d0f0>] ? sys_open+0x23/0x2b
[ 644.292075] [<c1002650>] ? sysenter_do_call+0x12/0x26
[ 644.292079] Code: 89 f0 89 55 dc e8 8d 96 0a 00 8b 45 e0 8b 55 dc 83 78 04 01 75 28 8b 83 18 02 00 00 85 c0 74 0f 8b 4d ec 3b 81 ac 00 00 00 74 13 <0f> 0b eb fe 8b 4d ec 8b 81 ac 00 00 00 89 83 18 02 00 00 89 f0
[ 644.292143] EIP: [<c11c70e3>] drm_open+0x4b1/0x4e2 SS:ESP 0068:f647adfc
[ 644.292175] ---[ end trace 2ddd476af89a60fa ]---
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: stable@kernel.org
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
2010-03-31 13:12:00 +10:00 |
| .. |
|
accessibility
|
|
|
|
acpi
|
Merge branch 'pcc' into release
|
2010-02-23 00:39:00 -05:00 |
|
amba
|
|
|
|
ata
|
[libata] Call flush_dcache_page after PIO data transfers in libata-sff.c
|
2010-02-04 01:04:50 -05:00 |
|
atm
|
|
|
|
auxdisplay
|
|
|
|
base
|
class: Free the class private data in class_release
|
2010-02-16 15:43:00 -08:00 |
|
block
|
cciss: Make cciss_seq_show handle holes in the h->drv[] array
|
2010-02-05 13:15:36 +01:00 |
|
bluetooth
|
Bluetooth: Fix memory leak in Marvell BT-over-SDIO driver
|
2010-02-03 19:08:30 -08:00 |
|
cdrom
|
|
|
|
char
|
drm/i915: Add dependency on the intel agp module
|
2010-02-26 13:23:20 -08:00 |
|
clocksource
|
geode-mfgpt: restore previous behavior for selecting IRQ
|
2010-02-22 19:50:34 -08:00 |
|
connector
|
connector: Delete buggy notification code.
|
2010-02-02 15:58:48 -08:00 |
|
cpufreq
|
[CPUFREQ] Fix ondemand to not request targets outside policy limits
|
2010-01-13 10:55:16 -05:00 |
|
cpuidle
|
drivers/cpuidle/governors/menu.c: fix undefined reference to `__udivdi3'
|
2010-01-11 09:34:07 -08:00 |
|
crypto
|
crypto: padlock-sha - Add import/export support
|
2010-02-02 06:50:25 +11:00 |
|
dca
|
|
|
|
dio
|
|
|
|
dma
|
drivers/dma: Correct NULL test
|
2010-02-10 12:07:28 -07:00 |
|
edac
|
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp
|
2010-02-11 14:07:13 -08:00 |
|
eisa
|
|
|
|
firewire
|
firewire: ohci: retransmit isochronous transmit packets on cycle loss
|
2010-02-14 15:10:41 +01:00 |
|
firmware
|
|
|
|
gpio
|
gpio: adp5588-gpio: new driver for ADP5588 GPIO expanders
|
2010-01-11 09:34:07 -08:00 |
|
gpu
|
drm: Return ENODEV if the inode mapping changes
|
2010-03-31 13:12:00 +10:00 |
|
hid
|
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid
|
2010-01-13 16:10:13 -08:00 |
|
hwmon
|
hwmon: (w83781d) Request I/O ports individually for probing
|
2010-02-05 19:58:36 +01:00 |
|
i2c
|
i2c-tiny-usb: Fix on big-endian systems
|
2010-02-05 17:48:13 +01:00 |
|
ide
|
|
|
|
idle
|
|
|
|
ieee1394
|
|
|
|
ieee802154
|
|
|
|
infiniband
|
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband
|
2010-02-11 14:01:25 -08:00 |
|
input
|
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
|
2010-02-22 08:48:06 -08:00 |
|
isdn
|
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
|
2010-01-12 20:53:29 -08:00 |
|
leds
|
|
|
|
lguest
|
|
|
|
macintosh
|
powerpc/macintosh: Make Open Firmware device id constant
|
2010-01-15 13:26:04 +11:00 |
|
mca
|
|
|
|
md
|
dm: sysfs revert add empty release function to avoid debug warning
|
2010-02-16 18:43:04 +00:00 |
|
media
|
V4L/DVB: bttv: Move I2C IR initialization
|
2010-02-19 03:19:02 -02:00 |
|
memstick
|
|
|
|
message
|
[SCSI] mptfusion : mptscsih_abort return value should be SUCCESS instead of value 0.
|
2010-02-08 13:40:17 -06:00 |
|
mfd
|
mfd: Fix asic3 build
|
2010-01-29 21:03:09 +01:00 |
|
misc
|
|
|
|
mmc
|
mmc_test: block addressed cards
|
2010-02-11 13:59:42 -08:00 |
|
mtd
|
Merge branch 'for-linus' of git://git.infradead.org/ubi-2.6
|
2010-01-28 12:57:50 -08:00 |
|
net
|
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6
|
2010-02-23 01:27:05 -08:00 |
|
nubus
|
|
|
|
of
|
|
|
|
oprofile
|
|
|
|
parisc
|
|
|
|
parport
|
|
|
|
pci
|
Merge branches 'bugzilla-14886', 'bugzilla-15000', 'bugzilla-15040', 'bugzilla-15108', 'pdc', 'hotplug-null-ref' and 'thinkpad' into release
|
2010-02-18 03:51:04 -05:00 |
|
pcmcia
|
|
|
|
platform
|
acer-wmi: Respect current backlight level when loading
|
2010-02-19 00:19:26 -05:00 |
|
pnp
|
|
|
|
power
|
wm97xx_battery: Handle missing platform data gracefully
|
2010-01-29 17:00:18 +03:00 |
|
pps
|
|
|
|
ps3
|
|
|
|
rapidio
|
|
|
|
regulator
|
regulator/lp3971: vol_map out of bounds in lp3971_{ldo,dcdc}_set_voltage()
|
2010-02-12 11:39:49 +00:00 |
|
rtc
|
rtc-fm3130: add missing braces
|
2010-02-02 18:11:21 -08:00 |
|
s390
|
Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6
|
2010-02-11 14:05:55 -08:00 |
|
sbus
|
|
|
|
scsi
|
Merge master.kernel.org:/home/rmk/linux-2.6-arm
|
2010-02-20 16:55:05 -08:00 |
|
serial
|
serial: 8250: add serial transmitter fully empty test
|
2010-02-16 15:55:51 -08:00 |
|
sfi
|
|
|
|
sh
|
|
|
|
sn
|
|
|
|
spi
|
spi: spi_sh_msiof: Fixed data sampling on the correct edge
|
2010-02-02 11:29:15 +09:00 |
|
ssb
|
ssb: Fix CONFIG_SSB_SDIOHOST typo
|
2010-02-03 16:55:20 -05:00 |
|
staging
|
Merge branch 'drm-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6
|
2010-02-01 10:46:49 -08:00 |
|
tc
|
|
|
|
telephony
|
|
|
|
thermal
|
|
|
|
uio
|
|
|
|
usb
|
USB: gadget: fix EEM gadget CRC usage
|
2010-02-16 15:11:10 -08:00 |
|
uwb
|
|
|
|
video
|
vga_switcheroo: initial implementation (v15)
|
2010-03-01 16:20:37 +10:00 |
|
virtio
|
virtio: fix section mismatch warnings
|
2010-01-16 12:15:39 -08:00 |
|
vlynq
|
|
|
|
w1
|
|
|
|
watchdog
|
[WATCHDOG] bfin: fix max timeout calculation
|
2010-02-21 19:16:30 +00:00 |
|
xen
|
xen: fix hang on suspend.
|
2010-01-13 10:01:35 +00:00 |
|
zorro
|
|
|
|
Kconfig
|
|
|
|
Makefile
|
|
|