On Tue, Jun 27, 2017 at 7:59 AM, Daniel Vetter <daniel.vetter@xxxxxxxx> wrote: > > Thanks to Liviu's help I realized that I fumbled the locking rework completely. > This one here should be better, but somehow I'm having a real bad day today and > I spent all day typing shit code, and then making it worse. > > This here seems to work at first glance, but please test and review carefully. After some self-caused testing pain (somehow missed picking one of the patches in mutt), I managed to get these tested w/ HiKey against 4.12-rc7. Things seemed to work fairly well. Though the one quirk I saw was that previously if I booted the device w/o HDMI plugged in, it would boot up defaulting to 1024x768 resolution, and when I plugged in the HDMI cable, the monitor would start up and use that resolution. With your patchset, if I boot without the monitor attached, it seems no fb is created, so surfaceflinger crashes repeatedly trying to start up. Then when I do plug the montior in, I get the following crash: [ 106.503724] Unable to handle kernel NULL pointer dereference at virtual address 00000038 [ 106.512050] pgd = ffffff8008e89000 [ 106.515596] [00000038] *pgd=0000000077ffe003, *pud=0000000077ffe003, *pmd=0000000000000000 [ 106.524050] Internal error: Oops: 96000005 [#1] PREEMPT SMP [ 106.529678] CPU: 2 PID: 1184 Comm: kworker/2:2 Tainted: G W 4.12.0-rc7-00093-g42439fe-dirty #3054 [ 106.539711] Hardware name: HiKey Development Board (DT) [ 106.544996] Workqueue: events adv7511_hpd_work [ 106.549484] task: ffffffc0753c3e80 task.stack: ffffffc074b0c000 [ 106.555449] PC is at drm_sysfs_hotplug_event+0x34/0x58 [ 106.560624] LR is at drm_sysfs_hotplug_event+0x34/0x58 [ 106.565796] pc : [<ffffff8008536634>] lr : [<ffffff8008536634>] pstate: 40000145 [ 106.573221] sp : ffffffc074b0fd40 [ 106.576562] x29: ffffffc074b0fd40 x28: 0000000000000000 [ 106.581925] x27: ffffffc005f93d20 x26: ffffffc074d387b8 [ 106.587288] x25: ffffffc0753c3e80 x24: ffffffc0747e3258 [ 106.592650] x23: 0000000000000000 x22: ffffffc077f44a80 [ 106.598012] x21: ffffffc077f46900 x20: ffffffc07441cd00 [ 106.603373] x19: 0000000000000000 x18: 0000000000000000 [ 106.608733] x17: 0000000000000000 x16: 0000000000000000 [ 106.614093] x15: 00000018cc1b97ed x14: 0000000000000000 [ 106.619453] x13: 0000000000000000 x12: 0000000000000000 [ 106.624813] x11: 00000000000002e5 x10: 0000000000000880 [ 106.630173] x9 : ffffffc074b0fa10 x8 : ffffffc0753c4760 [ 106.635534] x7 : ffffffc077f3ec80 x6 : ffffffc077f3c090 [ 106.640895] x5 : ffffff8008da0568 x4 : 0000000000000000 [ 106.646254] x3 : 0000000000000000 x2 : ffffff8008c39d90 [ 106.651613] x1 : 0000000000000001 x0 : ffffff8008c02fe8 [ 106.656981] Process kworker/2:2 (pid: 1184, stack limit = 0xffffffc074b0c000) [ 106.664152] Stack: (0xffffffc074b0fd40 to 0xffffffc074b10000) [ 106.669940] fd40: ffffffc074b0fd70 ffffff800851d1ec 0000000000000000 ffffff80085c7b04 [ 106.677813] fd60: ffffff8008c39d80 0000000000000000 ffffffc074b0fd90 ffffff8008550bd4 [ 106.685687] fd80: ffffffc0747e3018 ffffff80080df688 ffffffc074b0fdc0 ffffff80080d0814 [ 106.693561] fda0: 0000000000000000 ffffff8008a45eb8 ffffffc074b0fdc0 000000d0080d0808 [ 106.701436] fdc0: ffffffc074b0fe00 ffffff80080d0a68 ffffffc07441cd00 ffffffc074a83a00 [ 106.709310] fde0: ffffffc077f44a80 ffffffc07441cd30 ffffff8008d46000 ffffffc077f44aa0 [ 106.717184] fe00: ffffffc074b0fe60 ffffff80080d6974 ffffffc074d38780 ffffffc074a83a00 [ 106.725059] fe20: ffffff8008df9160 ffffffc0753c3e80 ffffff8008bf9528 ffffffc07441cd00 [ 106.732929] fe40: ffffff80080d0a20 ffffffc074d387b8 ffffffc005f93d20 0000000000000000 [ 106.740801] fe60: 0000000000000000 ffffff8008082ec0 ffffff80080d6878 ffffffc074a83a00 [ 106.748671] fe80: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 106.756541] fea0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 106.764411] fec0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 106.772281] fee0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 106.780151] ff00: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 106.788021] ff20: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 106.795889] ff40: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 106.803759] ff60: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 106.811629] ff80: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 106.819475] ffa0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 106.827308] ffc0: 0000000000000000 0000000000000005 0000000000000000 0000000000000000 [ 106.835143] ffe0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 106.842974] Call trace: [ 106.845422] Exception stack(0xffffffc074b0fb70 to 0xffffffc074b0fca0) [ 106.851866] fb60: 0000000000000000 0000008000000000 [ 106.859701] fb80: ffffffc074b0fd40 ffffff8008536634 ffffffc074b0fba0 ffffff80085b6d88 [ 106.867535] fba0: ffffffc074b0fbd0 ffffff8008700f4c ffffffc0747e2818 0000000000000002 [ 106.875370] fbc0: ffffffc0747e28b8 0000000000000002 ffffffc074b0fc20 ffffff80086fd5dc [ 106.883205] fbe0: ffffffc0747e28b8 0000000000000001 0000000000000002 ffffffc074b0fca0 [ 106.891039] fc00: ffffffc074b0fc50 ffffff80086fb5c8 ffffff8008c02fe8 0000000000000001 [ 106.898872] fc20: ffffff8008c39d90 0000000000000000 0000000000000000 ffffff8008da0568 [ 106.906706] fc40: ffffffc077f3c090 ffffffc077f3ec80 ffffffc0753c4760 ffffffc074b0fa10 [ 106.914540] fc60: 0000000000000880 00000000000002e5 0000000000000000 0000000000000000 [ 106.922374] fc80: 0000000000000000 00000018cc1b97ed 0000000000000000 0000000000000000 [ 106.930209] [<ffffff8008536634>] drm_sysfs_hotplug_event+0x34/0x58 [ 106.936397] [<ffffff800851d1ec>] drm_kms_helper_hotplug_event+0x14/0x38 [ 106.943015] [<ffffff8008550bd4>] adv7511_hpd_work+0x4c/0x60 [ 106.948594] [<ffffff80080d0814>] process_one_work+0x114/0x320 [ 106.954344] [<ffffff80080d0a68>] worker_thread+0x48/0x428 [ 106.959748] [<ffffff80080d6974>] kthread+0xfc/0x128 [ 106.964632] [<ffffff8008082ec0>] ret_from_fork+0x10/0x50 [ 106.969949] Code: 913fa020 52800021 a9027fa3 97fff898 (f9401e60) [ 106.976112] ---[ end trace dd098614ee129219 ]--- [ 107.016693] Kernel panic - not syncing: Fatal exception I've got to dig a bit more here (probably something is wrong with the bridge driver), but let me know if the lack of the 1024x768 default fb is expected. thanks -john _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx