Weston crashes using kernel 4.14.98_2.0.0_ga on iMX8

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Weston crashes using kernel 4.14.98_2.0.0_ga on iMX8

1,839 Views
N_Coesel
Contributor III

I've tried the recently released rel_imx_4.14.98_2.0.0_ga Linux kernel on a Debian stretch ARM64 installation. Every time I try to start Weston I get a kernel Oops:

[   83.985103] Unable to handle kernel paging request at virtual address ffff8004d2c5c120
[   83.993217] Mem abort info:
[   83.996165]   Exception class = DABT (current EL), IL = 32 bits
[   84.002198]   SET = 0, FnV = 0
[   84.005535]   EA = 0, S1PTW = 0
[   84.008789] Data abort info:
[   84.011783]   ISV = 0, ISS = 0x00000005
[   84.015791]   CM = 0, WnR = 0
[   84.018759] swapper pgtable: 4k pages, 48-bit VAs, pgd = ffff000009550000
[   84.025719] [ffff8004d2c5c120] *pgd=00000000ffff8803, *pud=0000000000000000
[   84.032852] Internal error: O ops: 96000005 [#2] PREEMPT SMP
[   84.038421] Modules linked in: imx_sdma ip_tables x_tables ipv6
[   84.044350] CPU: 1 PID: 3703 Comm: weston Tainted: G      D         4.14.98-05983-g5d6cbeafb80c #2
[   84.053305] Hardware name: Freescale i.MX8MQ EVK (DT)
[   84.058354] task: ffff8000bbd54100 task.stack: ffff000021178000
[   84.064279] PC is at gckDEVICE_Dispatch+0x48/0x130
[   84.069071] LR is at drv_ioctl+0xfc/0x1e8
[   84.073079] pc : [<ffff0000089da690>] lr : [<ffff0000089d2efc>] pstate: 80000145
[   84.080471] sp : ffff00002117bc10
[   84.083784] x29: ffff00002117bc10 x28: ffff8000bbd54100
[   84.089096] x27: ffff000008ce1000 x26: 000000000000001d
[   84.094407] x25: 0000000000000124 x24: 0000ffffd2d8cc70
[   84.099719] x23: 0000000000007530 x22: 0000000000000000
[   84.105030] x21: 0000000000000190 x20: ffff8000bb1d5000
[   84.110342] x19: ffff8000bb91ee00 x18: 0000000000000000
[   84.115653] x17: 0000ffff82c20150 x16: ffff00000820c430
[   84.120964] x15: 00000000000002fb x14: 0000000000000001
[   84.126276] x13: 0000aaab11c3c580 x12: 0000ffff82b2b290
[   84.131587] x11: 0000000000000e77 x10: 4010040140100401
[   84.138890] x9 : 4010040140100401 x8 : 0000000000001101
[   84.146365] x7 : 0000000000000090 x6 : 0000000082f2ff10
[   84.153754] x5 : 0000000082feff04 x4 : 0000000082fdff05
[   84.161144] x3 : ffff00002117bc70 x2 : 0000000000000001
[   84.168533] x1 : ffff8000bad5c800 x0 : ffff8004d2c5c028
[   84.174968] Process weston (pid: 3703, stack limit = 0xffff000021178000)
[   84.181666] Call trace:
[   84.184112] Exception stack(0xffff00002117bad0 to 0xffff00002117bc10)
[   84.190551] bac0:                                   ffff8004d2c5c028 ffff8000bad5c800
[   84.198379] bae0: 0000000000000001 ffff00002117bc70 0000000082fdff05 0000000082feff04
[   84.206208] bb00: 0000000082f2ff10 0000000000000090 0000000000001101 4010040140100401
[   84.214036] bb20: 4010040140100401 0000000000000e77 0000ffff82b2b290 0000aaab11c3c580
[   84.221864] bb40: 0000000000000001 00000000000002fb ffff00000820c430 0000ffff82c20150
[   84.229692] bb60: 0000000000000000 ffff8000bb91ee00 ffff8000bb1d5000 0000000000000190
[   84.237521] bb80: 0000000000000000 0000000000007530 0000ffffd2d8cc70 0000000000000124
[   84.245349] bba0: 000000000000001d ffff000008ce1000 ffff8000bbd54100 ffff00002117bc10
[   84.253177] bbc0: ffff0000089d2efc ffff00002117bc10 ffff0000089da690 0000000080000145
[   84.261005] bbe0: 0000000000000000 00000000ffffffff 0000ffffffffffff 0000000000000030
[   84.268833] bc00: ffff00002117bc10 ffff0000089da690
[   84.273710] [<ffff0000089da690>] gckDEVICE_Dispatch+0x48/0x130
[   84.279543] [<ffff0000089d2efc>] drv_ioctl+0xfc/0x1e8
[   84.284595] [<ffff00000820bc74>] do_vfs_ioctl+0xa4/0x860
[   84.289906] [<ffff00000820c4bc>] SyS_ioctl+0x8c/0xa0
[   84.294868] Exception stack(0xffff00002117bec0 to 0xffff00002117c000)
[   84.301307] bec0: 0000000000000010 0000000000007530 0000ffffd2d8cc70 0000000000000190
[   84.309136] bee0: 0000ffffd2d8cd00 0000000000000190 0000aaab11c3c410 0000000000000051
[   84.316964] bf00: 000000000000001d 0000aaab11c3e460 0101010101010101 000000000000003b
[   84.324792] bf20: 0000ffff82b6b750 0000ffff82f2d9d8 0000000000000000 00000000000002fb
[   84.332620] bf40: 0000ffff82aedd40 0000ffff82c20150 0000000000000000 0000000000002710
[   84.340449] bf60: 0000000000007530 0000ffff82b02ce0 0000ffffd2d8cd00 0000ffffd2d8cc70
[   84.348277] bf80: 0000000000000190 0000aaab11c3c410 0000ffff82adbb10 0000ffff82adb000
[   84.356105] bfa0: 00000000000f4240 0000ffffd2d8cc20 0000ffff82ad2ddc 0000ffffd2d8cc20
[   84.363933] bfc0: 0000ffff82c2015c 0000000020000000 0000000000000010 000000000000001d
[   84.371761] bfe0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
[   84.379592] [<ffff000008083ac0>] el0_svc_na ked+0x34/0x38
[   84.384904] Code: 52800022 8b0508c5 cb0400a4 8b040c00 (f9407c00)
[   84.390997] ---[ end trace 3126472391ae0d23 ]---
[   84.397739] detected fb_set_par error, error code: -16

The previous kernel version rel_imx_4.14.78_1.0.0_ga works just fine. I've used the 4.14.78 configuration as a base to configure 4.14.98 but did run make menu-config and updated the configuration so any incompatible settings are adjusted.

Any ideas on what is causing this?

PS: I had to add a space between 'na' and 'ked' because the forum wouldn't allow me to post the kernel trace otherwise.

0 Kudos
2 Replies

1,262 Views
diegoadrian
NXP Employee
NXP Employee

Hello,

Unfortunately, we do not support to use our BSP to port a Debian distribution. We do have some third parties that had done it before, however that is software from them and probably our new BSP has not been ported before. I apologize for the inconveniences this could give you.

Best regards,

Diego.

0 Kudos

1,262 Views
N_Coesel
Contributor III

It would be helpfull to know whether this crash also occurs on the official NXP BSP.

Meanwhile I think I have found a possible cause: the current GPU driver depends on a newer C library than comes with Debian Stretch (the current stable release) so the kernel I'm using has an older GPU driver. I have not tried to resolve this but it seems that the GPU driver on the system mismatches with the driver in the 4.14.98 kernel and causes the kernel to crash.

It would be nice if the GPU driver checks the kernel API version and in case of a mismatch prints an error message and exits gracefully. This will be more important if different API versions don't cause a crash immediately but cause edge case bugs which otherwise would go unnoticed during software testing.

0 Kudos