Lukas Wunner
e480eabae2
drm/radeon: Fix oops upon driver load on PowerXpress laptops
Nicolai Stange reports the following oops which is caused by
dereferencing rdev->pdev before it's subsequently set by
radeon_device_init(). Fix it.
BUG: unable to handle kernel NULL pointer dereference at 00000000000007cb
IP: radeon_driver_load_kms+0xeb/0x230 [radeon]
...
Call Trace:
drm_dev_register+0x146/0x1d0 [drm]
drm_get_pci_dev+0x9a/0x180 [drm]
radeon_pci_probe+0xb8/0xe0 [radeon]
local_pci_probe+0x45/0xa0
pci_device_probe+0x14f/0x1a0
driver_probe_device+0x29c/0x450
__driver_attach+0xdf/0xf0
? driver_probe_device+0x450/0x450
bus_for_each_dev+0x6c/0xc0
driver_attach+0x1e/0x20
bus_add_driver+0x170/0x270
driver_register+0x60/0xe0
? 0xffffffffc0508000
__pci_register_driver+0x4c/0x50
drm_pci_init+0xeb/0x100 [drm]
? vga_switcheroo_register_handler+0x6a/0x90
? 0xffffffffc0508000
radeon_init+0x98/0xb6 [radeon]
do_one_initcall+0x52/0x1a0
? __vunmap+0x81/0xb0
? kmem_cache_alloc_trace+0x159/0x1b0
? do_init_module+0x27/0x1f8
do_init_module+0x5f/0x1f8
load_module+0x27ce/0x2be0
SYSC_finit_module+0xdf/0x110
? SYSC_finit_module+0xdf/0x110
SyS_finit_module+0xe/0x10
do_syscall_64+0x67/0x150
entry_SYSCALL64_slow_path+0x25/0x25
Fixes: 7ffb0ce31c ("drm/radeon: Don't register Thunderbolt eGPU with vga_switcheroo")
Reported-and-tested-by: Nicolai Stange <nicstange@gmail.com>
Signed-off-by: Lukas Wunner <lukas@wunner.de>
Link: http://patchwork.freedesktop.org/patch/msgid/cfb91ba052af06117137eec0637543a2626a7979.1495135190.git.lukas@wunner.de
2017-05-22 07:14:31 +02:00
..
2017-05-10 09:35:42 -07:00
2017-05-09 10:01:15 -07:00
2017-05-10 09:12:30 -07:00
2017-05-20 16:12:30 -07:00
2017-04-30 12:22:14 +02:00
2017-04-20 12:16:10 -06:00
2017-05-18 16:53:55 +02:00
2017-05-10 13:38:18 -07:00
2017-05-12 10:43:25 -07:00
2017-05-12 09:56:30 -07:00
2017-05-09 23:21:46 +02:00
2017-05-10 11:33:08 -07:00
2017-05-13 16:18:21 -07:00
2017-05-09 15:40:28 -07:00
2017-04-20 13:47:46 +05:30
2017-05-03 16:27:36 +02:00
2017-05-20 08:44:22 -07:00
2017-04-26 11:38:56 +02:00
2017-05-10 19:13:03 -07:00
2017-05-22 07:14:31 +02:00
2017-05-02 19:09:35 -07:00
2017-04-21 17:58:45 +02:00
2017-05-04 19:15:35 -07:00
2017-05-14 07:49:32 -07:00
2017-05-08 17:15:14 -07:00
2017-05-19 14:36:24 +02:00
2017-05-08 17:36:39 -04:00
2017-05-01 23:17:37 +02:00
2017-05-10 19:13:03 -07:00
2017-05-12 11:44:13 -07:00
2017-05-13 10:25:05 -07:00
2017-05-17 14:51:54 +02:00
2017-05-21 11:45:26 -07:00
2017-05-10 19:13:03 -07:00
2017-05-08 17:15:13 -07:00
2017-05-04 07:53:04 -06:00
2017-05-05 19:33:07 -07:00
2017-04-27 16:20:04 +05:30
2017-05-18 12:04:41 -07:00
2017-05-10 19:13:03 -07:00
2017-05-16 08:12:47 -07:00
2017-04-24 18:21:17 -04:00
2017-04-27 11:54:49 +01:00
2017-05-16 23:05:40 +02:00
2017-05-10 19:13:03 -07:00
2017-05-13 10:23:12 -07:00
2017-05-18 11:27:21 -04:00
2017-04-17 00:42:22 +02:00
2017-04-20 09:54:24 +02:00
2017-05-12 15:43:10 -07:00
2017-05-20 16:12:30 -07:00
2017-05-09 10:01:15 -07:00
2017-05-19 15:03:24 -07:00
2017-04-20 12:02:32 +01:00
2017-05-10 19:13:03 -07:00
2017-05-10 19:13:03 -07:00
2017-05-02 19:09:35 -07:00
2017-05-04 19:15:35 -07:00
2017-05-12 12:02:21 -07:00
2017-04-28 23:56:16 +02:00
2017-05-01 16:15:18 -07:00
2017-05-04 19:15:35 -07:00
2017-04-30 22:17:44 +09:00
2017-05-10 11:33:08 -07:00
2017-05-09 10:01:15 -07:00
2017-05-10 11:33:08 -07:00
2017-05-10 19:37:14 -07:00
2017-05-16 09:24:44 -07:00
2017-05-20 16:12:30 -07:00
2017-05-19 13:36:56 -07:00
2017-04-26 15:58:22 +01:00
2017-05-16 14:23:31 +02:00
2017-05-12 11:44:13 -07:00
2017-05-18 23:54:47 -07:00
2017-05-12 11:58:45 -07:00
2017-05-10 19:13:03 -07:00
2017-05-16 23:06:41 +02:00
2017-05-19 10:10:07 +02:00
2017-05-17 11:27:41 +02:00
2017-05-05 11:36:44 -07:00
2017-05-08 17:15:12 -07:00
2017-05-11 11:12:26 -07:00
2017-05-08 17:15:10 -07:00
2017-05-02 23:41:43 +03:00
2017-05-19 10:42:25 +02:00
2017-05-09 09:12:53 -07:00
2017-05-10 21:03:31 +02:00