Am Dienstag, den 22.08.2017, 12:59 -0300 schrieb Fabio Estevam:
On Tue, Aug 22, 2017 at 9:47 AM, Fabio Estevam festevam@gmail.com wrote:
Hi,
I am running kernel 4.12.8 and mesa 17.1.6 on a imx6q, but glmark2 never runs successfully until the end. It always crashes like this:
** Failed to set swap interval. Results may be bounded above by refresh rate. [conditionals] fragment-steps=0:vertex-steps=0: FPS: 63 FrameTime: 15.873 ms [ 288.732107] Unable to handle kernel paging request at virtual address 00e71a74 [ 288.739394] pgd = ee52c000 [ 288.742115] [00e71a74] *pgd=00000000 [ 288.745782] Internal error: Oops: 5 [#1] SMP ARM [ 288.750409] Modules linked in: [ 288.753481] CPU: 0 PID: 221 Comm: glmark2-es2-drm Not tainted 4.12.8 #1 [ 288.760101] Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree) [ 288.766635] task: ee420c40 task.stack: ee4f0000 [ 288.771181] PC is at page_mapping+0xc/0xa4 [ 288.775291] LR is at set_page_dirty+0x14/0xc8
If I use the generic drm_gem_cma_free_object() function instead the error does not happen anymore: https://pastebin.com/edx37jNG
Not sure if this is a valid fix though. Any comments?
Etnaviv isn't CMA based, so this is certainly not a valid fix. It probably doesn't crash anymore, as it isn't properly freeing the pages backing the GEM object.
I've seen this crash in the early days of etnaviv a few times, but it hasn't happened to me in a long time.
Regards, Lucas