Hello,
I've just tested 'modetest' with the fix applied, and while the nullptr
deference goes away, I now get a division by zero.
modetest output:
Encoders:
id crtc type possible crtcs possible clones
22 0 TMDS 0x00000001 0x00000000
30 29 TMDS 0x00000002 0x00000000
36 0 TMDS 0x00000004 0x00000000
Connectors:
id encoder status type size (mm) modes encoders
23 0 disconnected Virtual 0x0 0 22
props:
2 DPMS:
flags: enum
enums: On=0 Standby=1 Suspend=2 Off=3
value: 0
31 30 connected VGA 0x0 1 30
modes:
name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot)
1366x768 0 1366 1414 1446 1526 768 771 776 790 flags: phsync, pvsync;
type: preferred, driver
props:
1 EDID:
flags: immutable blob
blobs:
value:
2 DPMS:
flags: enum
enums: On=0 Standby=1 Suspend=2 Off=3
value: 0
37 0 disconnected HDMI-A 0x0 0 36
props:
1 EDID:
flags: immutable blob
blobs:
value:
2 DPMS:
flags: enum
enums: On=0 Standby=1 Suspend=2 Off=3
value: 0
CRTCs:
id fb pos size
21 0 (0,0) (0x0)
0 0 0 0 0 0 0 0 0 flags: ; type:
props:
29 40 (0,0) (1366x768)
1366x768 0 1366 1414 1446 1526 768 771 776 790 flags: phsync, pvsync;
type: preferred, driver
props:
35 0 (0,0) (0x0)
0 0 0 0 0 0 0 0 0 flags: ; type:
props:
Planes:
id crtc fb CRTC x,y x,y gamma size possible crtcs
17 21 0 0,0 0,0 0 0x00000001
formats: XR24 AR24 NV12
props:
5 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 1
18 0 0 0,0 0,0 0 0x00000001
formats: XR24 AR24 NV12
props:
5 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
19 zpos:
flags: immutable range
values: 0 4
value: 1
20 0 0 0,0 0,0 0 0x00000001
formats: XR24 AR24 NV12
props:
5 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
19 zpos:
flags: immutable range
values: 0 4
value: 2
24 29 40 0,0 0,0 0 0x00000002
formats: XR24 AR24 NV12
props:
5 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 1
25 0 0 0,0 0,0 0 0x00000002
formats: XR24 AR24 NV12
props:
5 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
19 zpos:
flags: immutable range
values: 0 4
value: 1
26 0 0 0,0 0,0 0 0x00000002
formats: XR24 AR24 NV12
props:
5 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
19 zpos:
flags: immutable range
values: 0 4
value: 2
27 0 0 0,0 0,0 0 0x00000002
formats: XR24 AR24 NV12
props:
5 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
19 zpos:
flags: immutable range
values: 0 4
value: 3
28 0 0 0,0 0,0 0 0x00000002
formats: XR24 AR24 NV12
props:
5 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
19 zpos:
flags: immutable range
values: 0 4
value: 4
32 35 0 0,0 0,0 0 0x00000004
formats: XR24 AR24 NV12
props:
5 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 1
33 0 0 0,0 0,0 0 0x00000004
formats: XR24 AR24 NV12
props:
5 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
19 zpos:
flags: immutable range
values: 0 4
value: 1
34 0 0 0,0 0,0 0 0x00000004
formats: XR24 AR24 NV12
props:
5 type:
flags: immutable enum
enums: Overlay=0 Primary=1 Cursor=2
value: 0
19 zpos:
flags: immutable range
values: 0 4
value: 2
Frame buffers:
id size pitch
kernel output:
[ 46.808858] Division by zero in kernel.
[ 46.808888] CPU: 2 PID: 2611 Comm: lt-modetest Not tainted
4.1.0-rc3-debug+ #2
[ 46.808902] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
[ 46.808912] Backtrace:
[ 46.808951] [<c00132b0>] (dump_backtrace) from [<c00134c8>]
(show_stack+0x18/0x1c)
[ 46.808963] r6:c06f9a08 r5:ffffffff r4:00000000 r3:dc8ba300
[ 46.809008] [<c00134b0>] (show_stack) from [<c04f2138>]
(dump_stack+0x88/0xc8)
[ 46.809030] [<c04f20b0>] (dump_stack) from [<c0013434>]
(__div0+0x1c/0x20)
[ 46.809040] r6:00000003 r5:00000000 r4:ed975010 r3:00000000
[ 46.809080] [<c0013418>] (__div0) from [<c020dc14>] (Ldiv0+0x8/0x10)
[ 46.809106] [<c02b5e08>] (fimd_commit) from [<c02b6200>]
(fimd_poweron.part.9+0xd4/0x19c)
[ 46.809116] r9:ee14cc00 r8:c06ffcbc r7:c0748f94 r6:ed975a70
r5:ed975010 r4:00000005
[ 46.809159] [<c02b612c>] (fimd_poweron.part.9) from [<c02b6354>]
(fimd_dpms+0x8c/0xb4)
[ 46.809170] r6:ee14cc00 r5:00000000 r4:c0748f94 r3:00000001
[ 46.809206] [<c02b62c8>] (fimd_dpms) from [<c02b1bf4>]
(exynos_drm_crtc_enable+0x34/0x7c)
[ 46.809216] r6:ed3e5340 r5:ed975020 r4:ee14cc00 r3:c02b62c8
[ 46.809260] [<c02b1bc0>] (exynos_drm_crtc_enable) from [<c028c0e8>]
(drm_atomic_helper_commit_modeset_enables+0x98/0x1c8)
[ 46.809271] r5:ee14cc00 r4:00000001
[ 46.809300] [<c028c050>] (drm_atomic_helper_commit_modeset_enables)
from [<c028e6ac>] (drm_atomic_helper_commit+0x124/0x170)
[ 46.809311] r8:00000000 r7:ee248000 r6:00000000 r5:ed3e5340
r4:0000000b r3:00000000
[ 46.809354] [<c028e588>] (drm_atomic_helper_commit) from [<c02b2794>]
(exynos_atomic_commit+0x14/0x18)
[ 46.809364] r8:ee14cc00 r7:00000000 r6:ed86f728 r5:ee248000
r4:ed3e5340 r3:c02b2780
[ 46.809405] [<c02b2780>] (exynos_atomic_commit) from [<c02af928>]
(drm_atomic_commit+0x4c/0x6c)
[ 46.809425] [<c02af8dc>] (drm_atomic_commit) from [<c028d250>]
(drm_atomic_helper_set_config+0x31c/0x428)
[ 46.809435] r5:ed3e5340 r4:00000003
[ 46.809469] [<c028cf34>] (drm_atomic_helper_set_config) from
[<c029f14c>] (drm_mode_set_config_internal+0x60/0xdc)
[ 46.809480] r10:00000000 r9:ee248000 r8:ed86f200 r7:ee14cc00
r6:00000002 r5:00000050
[ 46.809514] r4:ed832c00
[ 46.809540] [<c029f0ec>] (drm_mode_set_config_internal) from
[<c0290c2c>] (drm_fb_helper_restore_fbdev_mode_unlocked+0xec/0x140)
[ 46.809550] r7:ed86f728 r6:00000002 r5:00000050 r4:00000000
[ 46.809588] [<c0290b40>] (drm_fb_helper_restore_fbdev_mode_unlocked)
from [<c02b2658>] (exynos_drm_fbdev_restore_mode+0x28/0x2c)
[ 46.809599] r10:ee24814c r9:ed190780 r8:ee248034 r7:ee248000
r6:ee248058 r5:c0748f94
[ 46.809632] r4:ee248000
[ 46.809653] [<c02b2630>] (exynos_drm_fbdev_restore_mode) from
[<c02b1068>] (exynos_drm_lastclose+0x10/0x14)
[ 46.809671] [<c02b1058>] (exynos_drm_lastclose) from [<c0294564>]
(drm_lastclose+0x3c/0x10c)
[ 46.809687] [<c0294528>] (drm_lastclose) from [<c0294974>]
(drm_release+0x340/0x4e0)
[ 46.809697] r6:ee248058 r5:ec6404a8 r4:ec640400 r3:00000000
[ 46.809738] [<c0294634>] (drm_release) from [<c0103ca8>]
(__fput+0xa0/0x1e4)
[ 46.809748] r10:00000000 r9:00000008 r8:ee11a5b0 r7:edc0d720
r6:eda71410 r5:ee11a5b0
[ 46.809781] r4:ec640d00
[ 46.809803] [<c0103c08>] (__fput) from [<c0103e58>]
(____fput+0x10/0x14)
[ 46.809813] r10:00000000 r9:ec6ea000 r8:c000fc04 r7:ed8fb9c0
r6:c0718ef8 r5:00000000
[ 46.809847] r4:ed8fbdc4
[ 46.809872] [<c0103e48>] (____fput) from [<c00473b0>]
(task_work_run+0xb8/0xfc)
[ 46.809895] [<c00472f8>] (task_work_run) from [<c0012ec8>]
(do_work_pending+0x88/0xa8)
[ 46.809905] r7:00000006 r6:ec6ebfb0 r5:c000fc04 r4:ec6ea000
[ 46.809943] [<c0012e40>] (do_work_pending) from [<c000faa4>]
(work_pending+0xc/0x20)
[ 46.809953] r6:00000000 r5:00000001 r4:00000003 r3:00000000
[ 46.809992] Division by zero in kernel.
[ 46.810010] CPU: 2 PID: 2611 Comm: lt-modetest Not tainted
4.1.0-rc3-debug+ #2
[ 46.810021] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
[ 46.810030] Backtrace:
[ 46.810054] [<c00132b0>] (dump_backtrace) from [<c00134c8>]
(show_stack+0x18/0x1c)
[ 46.810065] r6:c06f9a08 r5:ffffffff r4:00000000 r3:dc8ba300
[ 46.810105] [<c00134b0>] (show_stack) from [<c04f2138>]
(dump_stack+0x88/0xc8)
[ 46.810126] [<c04f20b0>] (dump_stack) from [<c0013434>]
(__div0+0x1c/0x20)
[ 46.810136] r6:00000003 r5:00000000 r4:ed975010 r3:00000000
[ 46.810172] [<c0013418>] (__div0) from [<c020dc14>] (Ldiv0+0x8/0x10)
[ 46.810193] [<c02b5e08>] (fimd_commit) from [<c02b1c38>]
(exynos_drm_crtc_enable+0x78/0x7c)
[ 46.810203] r9:ee14cc00 r8:c06ffcbc r7:c0748f94 r6:ed3e5340
r5:ed975020 r4:ee14cc00
[ 46.810248] [<c02b1bc0>] (exynos_drm_crtc_enable) from [<c028c0e8>]
(drm_atomic_helper_commit_modeset_enables+0x98/0x1c8)
[ 46.810258] r5:ee14cc00 r4:00000001
[ 46.810287] [<c028c050>] (drm_atomic_helper_commit_modeset_enables)
from [<c028e6ac>] (drm_atomic_helper_commit+0x124/0x170)
[ 46.810297] r8:00000000 r7:ee248000 r6:00000000 r5:ed3e5340
r4:0000000b r3:00000000
[ 46.810339] [<c028e588>] (drm_atomic_helper_commit) from [<c02b2794>]
(exynos_atomic_commit+0x14/0x18)
[ 46.810350] r8:ee14cc00 r7:00000000 r6:ed86f728 r5:ee248000
r4:ed3e5340 r3:c02b2780
[ 46.810390] [<c02b2780>] (exynos_atomic_commit) from [<c02af928>]
(drm_atomic_commit+0x4c/0x6c)
[ 46.810409] [<c02af8dc>] (drm_atomic_commit) from [<c028d250>]
(drm_atomic_helper_set_config+0x31c/0x428)
[ 46.810420] r5:ed3e5340 r4:00000003
[ 46.810452] [<c028cf34>] (drm_atomic_helper_set_config) from
[<c029f14c>] (drm_mode_set_config_internal+0x60/0xdc)
[ 46.810462] r10:00000000 r9:ee248000 r8:ed86f200 r7:ee14cc00
r6:00000002 r5:00000050
[ 46.810496] r4:ed832c00
[ 46.810521] [<c029f0ec>] (drm_mode_set_config_internal) from
[<c0290c2c>] (drm_fb_helper_restore_fbdev_mode_unlocked+0xec/0x140)
[ 46.810531] r7:ed86f728 r6:00000002 r5:00000050 r4:00000000
[ 46.810569] [<c0290b40>] (drm_fb_helper_restore_fbdev_mode_unlocked)
from [<c02b2658>] (exynos_drm_fbdev_restore_mode+0x28/0x2c)
[ 46.810579] r10:ee24814c r9:ed190780 r8:ee248034 r7:ee248000
r6:ee248058 r5:c0748f94
[ 46.810612] r4:ee248000
[ 46.810632] [<c02b2630>] (exynos_drm_fbdev_restore_mode) from
[<c02b1068>] (exynos_drm_lastclose+0x10/0x14)
[ 46.810650] [<c02b1058>] (exynos_drm_lastclose) from [<c0294564>]
(drm_lastclose+0x3c/0x10c)
[ 46.810666] [<c0294528>] (drm_lastclose) from [<c0294974>]
(drm_release+0x340/0x4e0)
[ 46.810676] r6:ee248058 r5:ec6404a8 r4:ec640400 r3:00000000
[ 46.810713] [<c0294634>] (drm_release) from [<c0103ca8>]
(__fput+0xa0/0x1e4)
[ 46.810723] r10:00000000 r9:00000008 r8:ee11a5b0 r7:edc0d720
r6:eda71410 r5:ee11a5b0
[ 46.810757] r4:ec640d00
[ 46.810778] [<c0103c08>] (__fput) from [<c0103e58>]
(____fput+0x10/0x14)
[ 46.810788] r10:00000000 r9:ec6ea000 r8:c000fc04 r7:ed8fb9c0
r6:c0718ef8 r5:00000000
[ 46.810821] r4:ed8fbdc4
[ 46.810844] [<c0103e48>] (____fput) from [<c00473b0>]
(task_work_run+0xb8/0xfc)
[ 46.810866] [<c00472f8>] (task_work_run) from [<c0012ec8>]
(do_work_pending+0x88/0xa8)
[ 46.810877] r7:00000006 r6:ec6ebfb0 r5:c000fc04 r4:ec6ea000
[ 46.810913] [<c0012e40>] (do_work_pending) from [<c000faa4>]
(work_pending+0xc/0x20)
[ 46.810923] r6:00000000 r5:00000001 r4:00000003 r3:00000000
I suspect that atomic merely exposed this bug (I suspect it was there
all the time).
With best wishes,
Tobias
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel