ChanServ changed the topic of #lima to: Development channel for open source lima driver for ARM Mali4** GPUs - Kernel has landed in mainline, userspace driver is part of mesa - Logs at https://people.freedesktop.org/~cbrill/dri-log/index.php?channel=lima and https://freenode.irclog.whitequark.org/lima - Contact ARM for binary driver support!
dddddd has quit [Ping timeout: 246 seconds]
dddddd has joined #lima
_whitelogger has joined #lima
suprothunderbolt has joined #lima
dddddd has quit [Remote host closed the connection]
<anarsoul> yeah, it fixes stuttering
<anarsoul> yay!
jrmuizel has quit [Remote host closed the connection]
jrmuizel has joined #lima
jrmuizel has quit [Remote host closed the connection]
yuq825 has joined #lima
<anarsoul> yuq825: see https://gitlab.freedesktop.org/mesa/mesa/merge_requests/1933 - it fixes stuttering
<yuq825> nice catch, so multi task can be interleaved with this fix?
lvrp16 has quit [Read error: Connection reset by peer]
austriancoder has quit [Ping timeout: 276 seconds]
austriancoder has joined #lima
lvrp16 has joined #lima
<anarsoul> yes
<anarsoul> X11 now works fine for me
<anarsoul> a lot smoother than with serialized jobs
Barada has joined #lima
<anarsoul> hm, however I'm wrong, it doesn't fix X11, but it fixes wayland
<anarsoul> i.e. weston
<anarsoul> something's still wrong with X11 :(
<anarsoul> my guess is we need to implement job throttling to fix stuttering with X11, it just submits too many jobs
chewitt has quit [Quit: Adios!]
<anarsoul> yeah, cursor in q3a is fine even under X11
<anarsoul> but X11 cursor is lagging
<anarsoul> I guess it'd be better to fix it in X11?
drod has joined #lima
<yuq825> drm scheduler will consume task from different context in a round robin manner
drod has quit [Remote host closed the connection]
<anarsoul> yuq825: yeah, but it's the same context
<anarsoul> it just tries to update cursor too often
<anarsoul> also looks like userspace process can't recover from any GPU error (ppmmu error, gpmmu error, any other error)
<anarsoul> GPU is just fine but some userspace state isn't
<yuq825> that's true, we just mark the context bad when some task from it fail
<anarsoul> should we just mark task as complete, complain somewhere in dmesg and proceed?
<anarsoul> that's fine if a single frame is not correct
<anarsoul> but it's really bad if that frame was from compositor and we don't proceed
<yuq825> you mean drop the error task
<anarsoul> I mean signal its completion
<yuq825> currently we just do like this
<yuq825> but won't really run following kobs
<yuq825> jobs
<anarsoul> is it a simple change to process following jobs?
<plaes> anarsoul: you mentioned that on x11 lima starts to stutter when moving mouse around?
<yuq825> once there's error task, there must be bug or corruption, so better just stop running task from it
<anarsoul> plaes: yeah. I believe X11 just submits too many jobs to repaint cursor
<anarsoul> yuq825: yet, is it possible?
<yuq825> possible
<plaes> there were just few RFC patches that added separate cursor plane
<anarsoul> plaes: that would indeed help
<anarsoul> let me try it
<anarsoul> I need only last 2 commits?
<plaes> I think, yes
<plaes> although these patches are for newer devices (IIRC H3 / A64 / A80)
<anarsoul> I'm using A64
<anarsoul> let me try it...
<plaes> ok, then it should work
<plaes> IIRC, A64 is basically H3 with 64-bit cores
<anarsoul> nope, it's not
<anarsoul> H5 is
<plaes> ok :)
<anarsoul> doesn't work. IIRC jernej said something about HDMI having only 1 UI layer
<plaes> ouch :(
<anarsoul> yeah
<anarsoul> thanks again, allwinner
<anarsoul> yuq825: how do I change kernel driver to proceed with jobs from context that previously had an error?
<anarsoul> OK, tried it, definitely not a good idea :)
kaspter has quit [Read error: Connection reset by peer]
kaspter has joined #lima
<yuq825> see drm_sched_entity_pop_job
<anarsoul> yuq825: do you by any chance know why GP may signal LIMA_GP_IRQ_PTR_ARRAY_OUT_OF_BOUNDS?
<yuq825> sorry, I don't know, maybe you can try to set LIMA_CTX_PLB_BLK_SIZE to a bigger value like 1024 or 2048 to see if due to the PLB block size
<anarsoul|c> IIRC it's 512 for mali400
<yuq825> yes, it can be bigger
<anarsoul|c> Guess we need to dump job that caused error in kernel driver
<yuq825> yeah, a helpful feature
<yuq825> I did overflow the PLB before, but don't remember which IRQ GP reported
UnivrslSuprBox has quit [Quit: ZNC 1.6.6+deb1ubuntu0.2 - http://znc.in]
UnivrslSuprBox has joined #lima
monstr has joined #lima
adjtm has quit [Ping timeout: 246 seconds]
adjtm has joined #lima
dddddd has joined #lima
suprothunderbolt has quit [Ping timeout: 244 seconds]
yuq825 has quit [Quit: Leaving.]
mrueg has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
<wens> it would be possible to make the drm driver more flexible, to have one output have 4 layers, and the other only have 2, but then it would be up to userspace to figure out what configuration is actually usable
mrueg has joined #lima
chewitt has joined #lima
chewitt has quit [Quit: Adios!]
jrmuizel has joined #lima
jrmuizel has quit [Read error: Connection reset by peer]
jrmuizel has joined #lima
Barada has quit [Quit: Barada]
monstr has quit [Remote host closed the connection]
adjtm has quit [Ping timeout: 258 seconds]
<enunes> anarsoul: nice fix with the out_sync, how did you debug it to figure out that that was missing?
<enunes> I also stared at the drm_sched code and lima implementation for a day and tried tracing multiple fences etc but that didn't show up
<anarsoul> enunes: accidentally
<anarsoul> I just noticed that lima_submit_wait() doesn't work
<anarsoul> I tried to use lima_submit_wait() for job serialization and it was supposed to work but it didn't
<anarsoul> replaced it with lima_bo_wait() - and it worked
<anarsoul> so it suggested that lima_submit_wait() is broken
<enunes> ah, makes sense
<enunes> what is still wrong with xorg, just bad performance now?
adjtm has joined #lima
dllud_ has joined #lima
dllud has quit [Ping timeout: 245 seconds]
dllud_ is now known as dllud
drod has joined #lima
<anarsoul> enunes: X11 doesn't wait for job to complete before submitting new one
<anarsoul> so it submits hundreds of jobs to repaint cursor in a second
<anarsoul> we can either try fixing X11 or implement job throttling (that's what vc4 does)
<anarsoul> well, technically for pinebook we can use two patches from Ondrej to mark one of UI planes as cursor
<anarsoul> it'll fix cursors stuttering (and flickering)
<anarsoul> *cursor
<anarsoul> but it's trickier for HDMI that has only 1 UI plane. There's a switch to move some UI planes from mixer0 (LCD) to mixer1 (HDMI) but it's not implemented atm
<wens> anarsoul: sounds broken # hundreds of jobs to repaint cursor
<anarsoul> wens: wanna fix X11? :)
<anarsoul> wens: sending a job is cheap and it never waits for it to complete
* wens sighs heavily
<anarsoul> wens: the problem is that no one uses sw cursor
<anarsoul> except poor guys who use allwinner boards
<anarsoul> pretty much everyone else got hw cursor
<wens> :(
<jernej> Aifaik meson (amlogic) also doesn't expose hw cursor
<anarsoul> well, we can try throttling in lima
<anarsoul> that would require changing kernel driver though since currently we don't have information on what job it's working on
drod has quit [Ping timeout: 245 seconds]
drod has joined #lima
UnivrslSuprBox has quit [Quit: ZNC 1.6.6+deb1ubuntu0.2 - http://znc.in]
UnivrslSuprBox has joined #lima
UnivrslSuprBox has quit [Client Quit]
UnivrslSuprBox has joined #lima
UnivrslSuprBox has quit [Client Quit]
UnivrslSuprBox has joined #lima
UnivrslSuprBox has quit [Client Quit]
UnivrslSuprBox has joined #lima
UnivrslSuprBox has quit [Quit: ZNC 1.6.6+deb1ubuntu0.2 - http://znc.in]
UnivrslSuprBox has joined #lima
jrmuizel has quit [Remote host closed the connection]
jrmuizel has joined #lima
enunes has quit [Quit: ZNC 1.7.2 - https://znc.in]
enunes has joined #lima
cwabbott has quit [Remote host closed the connection]
cwabbott has joined #lima
griffinp has quit [Quit: ZNC - http://znc.in]
griffinp has joined #lima
jrmuizel has quit [Remote host closed the connection]
drod has quit [Remote host closed the connection]
jrmuizel has joined #lima
jrmuizel has quit [Remote host closed the connection]
jrmuizel has joined #lima