Greetings,
I got the below dmesg and the first bad commit is
commit 0e9e8e681d7694783cb0e1d5b558144d36fe39f6 Author: Rob Clark robdclark@gmail.com AuthorDate: Fri Oct 4 17:38:30 2013 -0400 Commit: Rob Clark robdclark@gmail.com CommitDate: Fri Nov 22 10:19:01 2013 -0500
drm: convert plane to properties/state
Break the mutable state of a plane out into a separate structure and use atomic properties mechanism to set plane attributes. This makes it easier to have some helpers for plane->set_property() and for checking for invalid params. The idea is that individual drivers can wrap the state struct in their own struct which adds driver specific parameters, for easy build-up of state across multiple set_property() calls and for easy atomic commit or roll- back.
The same should be done for CRTC, encoder, and connector, but this patch only includes the first part (plane).
[ 3.650253] [TTM] Zone kernel: Available graphics memory: 110752 kiB [ 3.651465] [TTM] Initializing pool allocator [ 3.653333] ------------[ cut here ]------------ [ 3.653994] kernel BUG at drivers/gpu/drm/drm_crtc.c:3112! [ 3.655258] invalid opcode: 0000 [#1] PREEMPT SMP [ 3.656079] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 3.12.0-00831-g4bd863f #71 [ 3.656157] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 3.656157] task: cc421000 ti: cc426000 task.ti: cc426000 [ 3.656157] EIP: 0060:[<c1377861>] EFLAGS: 00010246 CPU: 1 [ 3.656157] EIP is at drm_property_create+0xc1/0xf0 [ 3.656157] EAX: 00000000 EBX: c65ac380 ECX: c6528ba4 EDX: c65ac310 [ 3.656157] ESI: c6528790 EDI: c1e3f32d EBP: cc427d10 ESP: cc427d00 [ 3.656157] DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068 [ 3.656157] CR0: 8005003b CR2: 00000000 CR3: 021bd000 CR4: 000006f0 [ 3.656157] Stack: [ 3.656157] 00000082 c6528790 c65aa008 00000000 cc427d20 c13778a6 00000002 c6528790 [ 3.656157] cc427d3c c137a923 80000000 ffffffff 7fffffff 00000000 c65aa008 cc427d5c [ 3.656157] c1459262 00000000 00000001 c65aa008 c6528790 c65aa008 00000000 cc427d7c [ 3.656157] Call Trace: [ 3.656157] [<c13778a6>] property_create_range+0x16/0x40 [ 3.656157] [<c137a923>] drm_mode_config_init+0x263/0x3f0 [ 3.656157] [<c1459262>] cirrus_modeset_init+0x12/0x1c0 [ 3.656157] [<c14584c3>] cirrus_driver_load+0x93/0xf0 [ 3.656157] [<c1370ed2>] drm_dev_register+0xd2/0x180 [ 3.656157] [<c13723fb>] drm_get_pci_dev+0x8b/0x120 [ 3.656157] [<c1121c3d>] ? slob_free+0x33d/0x370 [ 3.656157] [<c1459515>] cirrus_pci_probe+0xc5/0xe0 [ 3.656157] [<c121079b>] pci_device_probe+0x5b/0xc0 [ 3.656157] [<c152a9b1>] driver_probe_device+0x141/0x320 [ 3.656157] [<c1210730>] ? pci_match_device+0xa0/0xb0 [ 3.656157] [<c152ac19>] __driver_attach+0x59/0x80 [ 3.656157] [<c152abc0>] ? __device_attach+0x30/0x30 [ 3.656157] [<c1528efc>] bus_for_each_dev+0x4c/0x90 [ 3.656157] [<c152a7f9>] driver_attach+0x19/0x20 [ 3.656157] [<c152abc0>] ? __device_attach+0x30/0x30 [ 3.656157] [<c15297c5>] bus_add_driver+0x105/0x2b0 [ 3.656157] [<c152b347>] driver_register+0x87/0xc0 [ 3.656157] [<c1210875>] __pci_register_driver+0x45/0x50 [ 3.656157] [<c1372512>] drm_pci_init+0x82/0xf0 [ 3.656157] [<c20065f6>] ? mgag200_init+0x25/0x25 [ 3.656157] [<c2006611>] cirrus_init+0x1b/0x25 [ 3.656157] [<c1fd9b64>] do_one_initcall+0xb8/0x15d [ 3.656157] [<c11d2c2d>] ? strlen+0xd/0x20 [ 3.656157] [<c1097b73>] ? parameq+0x13/0x70 [ 3.656157] [<c1fd9500>] ? do_early_param+0x78/0x7a [ 3.656157] [<c1097e65>] ? parse_args+0x295/0x3e0 [ 3.656157] [<c1fd9ce7>] kernel_init_freeable+0xde/0x17d [ 3.656157] [<c1fd9502>] ? do_early_param+0x7a/0x7a [ 3.656157] [<c1a8396b>] kernel_init+0xb/0x150 [ 3.656157] [<c1a9f9d7>] ret_from_kernel_thread+0x1b/0x28 [ 3.656157] [<c1a83960>] ? rest_init+0xc0/0xc0 [ 3.656157] Code: 18 04 00 00 89 d8 8d 8e 14 04 00 00 e8 09 07 e7 ff 8b 43 18 a9 c0 ff 00 00 74 07 a8 3a 0f 94 c0 eb 05 a8 3a 0f 95 c0 84 c0 75 1f <0f> 0b 31 c0 8d 76 00 e8 c3 a6 da ff 89 d8 e8 bc a6 da ff 31 c0 [ 3.656157] EIP: [<c1377861>] drm_property_create+0xc1/0xf0 SS:ESP 0068:cc427d00 [ 3.701004] ---[ end trace 9629f6e2e4f3e615 ]--- [ 3.702157] Kernel panic - not syncing: Fatal exception
git bisect start 4bd863f8a9ef34a027169c7ab9ac5b4e75bb67f6 a3483353ca4e6dbeef2ed62ebed01af109b5b27a -- git bisect good cb0f5dc69b4c7620d2335103ce2aadc6de4c452f # 19:28 20+ 0 drm: helpers to find mode objects git bisect bad 0e9e8e681d7694783cb0e1d5b558144d36fe39f6 # 19:29 0- 7 drm: convert plane to properties/state git bisect good 8c7ec1acf1807d5d23d96f8ffcdcb04d4dd32caa # 19:35 20+ 0 drm: Allow drm_mode_object_find() to look up an object of any type git bisect good 3e8e7fbca7a2fc9c3b1cbbb866e4b096cc14b1d4 # 19:38 20+ 0 drm: Refactor object property check code # first bad commit: [0e9e8e681d7694783cb0e1d5b558144d36fe39f6] drm: convert plane to properties/state git bisect good 3e8e7fbca7a2fc9c3b1cbbb866e4b096cc14b1d4 # 19:40 60+ 0 drm: Refactor object property check code git bisect bad 4bd863f8a9ef34a027169c7ab9ac5b4e75bb67f6 # 19:40 0- 19 HACK: drm: allow FB's in drm_mode_object_find git bisect good 7e3528c3660a2e8602abc7858b0994d611f74bc3 # 19:49 60+ 0 slab.h: remove duplicate kmalloc declaration and fix kernel-doc warnings git bisect good a05e9dfb656cd9184443f2e807c9c53c13a3815d # 20:03 60+ 0 Add linux-next specific files for 20131125
--yliu
dri-devel@lists.freedesktop.org