alyssa changed the topic of #panfrost to: Panfrost - FLOSS Mali Midgard & Bifrost - https://gitlab.freedesktop.org/panfrost - Logs https://freenode.irclog.whitequark.org/panfrost - <daniels> avoiding X is a huge feature
rhyskidd has quit [Ping timeout: 268 seconds]
yann has joined #panfrost
rhyskidd has joined #panfrost
calcprogrammer1 has joined #panfrost
NeuroScr has quit [Quit: NeuroScr]
<calcprogrammer1> I'm trying to test Panfrost on my Rock Pi 4B. I'm using the official Debian image, dist-upgraded to buster. Built 5.2 kernel in a debian arm64 chroot and it's booting fine. Panfrost is loaded, /sys/class/drm/card0 and card1, renderD128 all there. Built several versions of Mesa several different ways (debian packaging, ninja install, with git master, 19.1, 19.1.1). Nothing seems to work though. I've tried
<calcprogrammer1> startx/lightdm, kmscube, and weston. Every time I start something that should use Panfrost, I get kernel errors:
<calcprogrammer1> [ 235.934202] panfrost ff9a0000.gpu: js fault, js=1, status=DATA_INVALID_FAULT, head=0x2400f00, tail=0x2400f00
<calcprogrammer1> [ 235.935146] panfrost ff9a0000.gpu: gpu sched timeout, js=1, status=0x58, head=0x2400f00, tail=0x2400f00, sched_job=000000005114aee9
<HdkR> Ah, there was a bug about that just recently
<calcprogrammer1> I think I saw it: https://bugs.freedesktop.org/show_bug.cgi?id=111036?
<calcprogrammer1> OP said cloning master fixed it for him, but it didn't for me
<HdkR> Maybe you need a newer kernel
<calcprogrammer1> I'm using 5.2 final
vstehle has quit [Ping timeout: 244 seconds]
rhyskidd has quit [Quit: rhyskidd]
NeuroScr has joined #panfrost
Elpaulo has joined #panfrost
indy has quit [Ping timeout: 272 seconds]
marvs has joined #panfrost
davidlt has joined #panfrost
davidlt has quit [Ping timeout: 245 seconds]
NeuroScr has quit [Quit: NeuroScr]
vstehle has joined #panfrost
yann has quit [Ping timeout: 272 seconds]
tgall_foo has quit [Ping timeout: 272 seconds]
cwabbott has quit [Quit: cwabbott]
cwabbott has joined #panfrost
cwabbott has quit [Client Quit]
cwabbott has joined #panfrost
cwabbott has quit [Quit: cwabbott]
cwabbott has joined #panfrost
yann has joined #panfrost
cwabbott has quit [Quit: cwabbott]
cwabbott has joined #panfrost
raster has joined #panfrost
raster has quit [Remote host closed the connection]
raster has joined #panfrost
rhyskidd has joined #panfrost
adjtm has quit [Ping timeout: 248 seconds]
davidlt has joined #panfrost
davidlt has quit [Ping timeout: 272 seconds]
davidlt has joined #panfrost
adjtm has joined #panfrost
davidlt has quit [Ping timeout: 272 seconds]
davidlt has joined #panfrost
davidlt has quit [Ping timeout: 246 seconds]
afaerber has quit [Quit: Leaving]
afaerber has joined #panfrost
davidlt has joined #panfrost
xHire has quit [*.net *.split]
empty_string has quit [*.net *.split]
xHire has joined #panfrost
empty_string has joined #panfrost
yann has quit [Remote host closed the connection]
<alyssa> calcprogrammer1: "Rock Pi 4B" is RK3399, yes?
<calcprogrammer1> yes
<alyssa> Alright, that's supported.
<alyssa> Keep in mind, 19.1 is not supported.
<alyssa> I don't know why people are trying to use it; Panfrost is specifically disabled in 19.1 since it wasn't ready for end-users and then people reenabled it and suddenly bugs happen (I wonder why)...
<alyssa> 19.2, on the other hand, I hope will be great!
jernej has quit [Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net]
<davidlt> alyssa, are you planing to get Pinebook Pro?
<alyssa> davidlt: I mean, I already have more RK3399 devices than I know what to do with ;)
<davidlt> true, but it's a portable test bench with screen, keyboard and battery ;)
<alyssa> So is Kevin
<davidlt> silicon wise -- yes
<davidlt> I don't think Pinebook Pro use USB PD for charging
<davidlt> There is BT 5.0 support in Pinebook Pro, ability to use NVMe M.2, removable MMC storage
<davidlt> and new addition: privacy switches
herbmilleriw has joined #panfrost
<daniels> alyssa: is 19.1 still going to see another point release? if so, might be good to add a fprintf(stderr, "literally don't use this please\n"); to screen init
<tomeu> alyssa: wonder what could be done about AFBC and modifiers, if we don't know how to drive the display and GPU HW for each of the supported AFBC variants
<tomeu> guess AFBC_FORMAT_MOD_ROCKCHIP refers to a specific variant
<daniels> yeah, it does
<daniels> the definition is down in a vendor tree somewhere
<tomeu> and guess we don't know which?
<daniels> annoyingly I can't find the thread where AFBC_FORMAT_MOD_ROCKCHIP was actually submitted - I guess we'd have to figure out what that actually maps to in terms of the existing modifiers
<daniels> probably the best way would be to ask the ChromeOS team to have a look and document it?
<tomeu> yeah, we could use some help here
jernej has joined #panfrost
<alyssa> davidlt: Hey, I *like* type-C ;)
<tomeu> yeah, I have checked the chromeos and rockchip kernels, and are equally unhelpful
<alyssa> RK never replied to that..
<tomeu> yeah, i guess only the HW people know the details
<alyssa> Granted, I'm not sure what exactly our hw does natively (on the GPU) and, assuming there are multiple configurations, how to poke at the other ones
<alyssa> We know it's 16x16
<alyssa> We don't know which of the other modifiers it does
* alyssa grabs notes
<raster> argh
<raster> why doesnt ayufan upstream his dts's for the rockpro64?
* raster hates ending up with kernels that dont boot because they cant find the emmc...
<alyssa> Arrr
<raster> aye
<raster> 2 gl clients in a wl compositor does not make panfrost happy :)
<tomeu> that works here
<raster> let me get my mesa totally up to date
<raster> tomeu: thinged enede up frozen for me
<raster> userspace - couldnt ssh in :)
<raster> using linux-next
<raster> i had to fix linux-next - build was broken. amdgpu drivers and new HMM stuff was broken
<raster> didnt even copile
<raster> # of build targets for mesa keeps going up. its 1008 now for me :)
<raster> i remember it was like ~700 not long ago
<raster> then 900 odd
<raster> now over 1k
<alyssa> tomeu: /me grumbles about code bloat
<raster> code always bloats
<raster> or it is dead
<raster> :)
<rcf> raster: on boring 5.2 I get similar results, though it didn't completely lock up.
<raster> well i wate3d a min or 2 to ssh login
<raster> gave up and hit reset :)
<raster> it may have been working... slowly :)
raster has quit [Remote host closed the connection]
<tomeu> OOM?
<rcf> If I weren't focused in the terminal and able to hit Ctrl+C quickly it may not have ended so easily.
raster has joined #panfrost
<rcf> That would seem to be the case, actually.
<alyssa> OOM is very likely
<raster> i have this weird thing still- this is newish in panfrost
<raster> in a tty
<raster> ELM_ACCEL=none elementary_test -to animation
<raster> ok
<raster> work s- sw rendering. drm/kms ok
<raster> enlightenment - doesnt work - software or gl init
<raster> now
<raster> LM_ACCEL=gl elementary_test -to animation
<raster> fails
<raster> _evas_outbuf_egl_setup() eglCreateWindowSurface() fail for 0xaaab11ad74f0. code=0x3003
<raster> havent quite dug into what config/params it is
<raster> BUT
<raster> the interesting thing is after this
<raster> enlightenment does start
<raster> something is up/screwy in kernel context somewhere
<raster> and gl works
<raster> this failed init then triggers future processes to work
<raster> well elm test wont work
<raster> no matter what
<raster> but
<raster> fbos seem to function now
<raster> yay
<raster> stuff not totally broken
<raster> woot
<daniels> 0x3003 is EGL_BAD_ALLOC, which is usually only returned if you try to create two EGL surfaces from the same native window
<daniels> if you run with EGL_LOG_LEVEL=debug, it should tell you where/why the error is being generated
<daniels> given FBOs are working, it's not going to be down in the kernel, since the path to create an FBO and the path to create a native surface are exactly the same as far as the driver/kernel are concerned; the only difference is in higher API layers
<raster> oh fbo's are parallel
<raster> this is long pre any fbos
<daniels> right, but I mean, if you can allocate FBOs and not window surfaces, then I would definitely be looking at EGL usage rather than 'something is up/screwy in kernel context'
<raster> well more one process changes the behavior of a future process
<raster> 2 unrelated processes
<raster> 1nd always fails to init
<raster> run aother that fails too
<raster> then first succeeds after that
<raster> obviously some out-of-process state changed permanently
<raster> my guess its kernel state
<raster> well there we go
<raster> its going super slow again
<raster> :)
<raster> 2 gl using wl clients hammering away - panfrost is not happy
<raster> and i'm pretty up to date now
<alyssa> Probably still OOM..
<alyssa> How much memory is on the board?
<raster> 4gb
<raster> :)
<alyssa> Hmm :/
<raster> ok
<raster> i got a shell
<raster> just
<raster> free -m
<raster> waiting for the results
<raster> :)
<raster> not sure its oom
<raster> nope
<raster> 247m used
<alyssa> Hrm
<raster> i think its gpu resets
<alyssa> That would do it, yes
<raster> i see a lot of those
<alyssa> raster: If you're able, could you launch with:
<alyssa> PAN_MESA_DEBUG=trace
<alyssa> That will spam a *lot* to stdout
<alyssa> So redirect that to a file, compress it, and send it to me
<raster> oh dear that will be spam from multiple processes
<raster> remember this is gl wl compositor with 4 gl wl clients
<alyssa> Presumably you'll have GPU faults even with 1 client..?
<raster> 2 of those are hammering away at 60fps with animation (simple stuff tho - like 10 triangles each)
<raster> oh i see it often - yeah
<raster> oh god
<raster> dmesg is taking forever
<raster> lots of unhandles pagefaults
<raster> err unhandled pagefaults
<alyssa> Yeah, I need a trace then
<alyssa> And preferably also a snippet of dmesg (just enough to see some representative failing accesses)
davidlt has quit [Ping timeout: 245 seconds]
<raster> also drm atomic wait for vblank timeout too
<raster> i need to get something simpler/cleaner for u than this mess
<raster> :)
<alyssa> That would be apreciated! :P
<alyssa> If you run E alone without any clients, does it fault too?
<raster> just letting u know the rough kind of things i am seeing
<raster> well gettign e to start is the above adventure
<raster> it fails to init at all unless i get elementary_Test to fail to init egl first
<raster> something is up therte with 1 process changing some kernel state so another then succeeds
<raster> well i smell a rat :)
<raster> i'll start with that
<alyssa> Hm?
<raster> let me reboto
<raster> this is unusable :)
<raster> reboot :)
<raster> ok
<raster> 1st run
<raster> oh wait
<raster> it works now
<raster> wtf?
<raster> this is random
<raster> ok
<raster> e is up
<raster> no dmesg complaints
<raster> all good
<raster> 1 terminology up - gl rendering with htop (or should be gl)
<raster> ok
<raster> first reset
<raster> clean
<daniels> raster: wait timeouts are to be expected when the GPU's hung - we're asking KMS to display something which will never be ready
<raster> yeah
<raster> tho pagefaults come with it
<raster> hmmm
<raster> oh crap
<raster> its gone into slow mode
<raster> i havent enabled any debug env vars yet
<raster> but...
<raster> DRM_IOCTL_PANFROST_CREATE_BO failed: -1
<raster> mmap failed: 0xffffffffffffffff
<raster> DRM_IOCTL_PANFROST_MMAP_BO failed: -1
<raster> THAT doesnt sound good :)
<raster> someone is not checking mmap return :)
<raster> now lets get u some more
<raster> gah
<raster> system unusable again :(
<raster> have to roll now - allhandies :)
herbmilleriw has quit [Quit: Konversation terminated!]
herbmilleriw has joined #panfrost
herbmilleriw has quit [Quit: Konversation terminated!]
herbmilleriw has joined #panfrost
<raster> funtimes
<raster> :)
<alyssa> raster: And a snippet of the MMU faults when that was taken..?
<raster> hmm
<raster> u mean dmesg?
<alyssa> Ye
<raster> oh
<raster> damn
<raster> lost that
* alyssa doesn't see any faults from that log
<raster> but the look bery much like
<raster> timestamps will vary a bit but i see the same kind of thing a lot
<alyssa> OK, that helps
<raster> always pagefault in AS0 at VA 0...
<alyssa> Problem is, I don't see any faulting descriptors in that log
<alyssa> You did mention it was maybe sporadic?
<raster> i can get it to happen often if i have 2 gl clients continually rendering
<raster> i get this eventually with glmark too in kms rendering too (no compositor)
<raster> so its relatively common to see this stuff
<raster> just wondering
<raster> it's not common/easy to see for you?
<alyssa> Not like you're describing, no
<raster> hmm interesting
<raster> ok
<raster> i guess i shell have to make an effort to create lots of them for you :)
<raster> lots and lots and lots and lots.... :)
<raster> and more
<raster> and more.... and lots... and more and lots and way more and looooots :)
<alyssa> Just one is good if there's a good trace :p
<raster> but you need a good one :) - i made a script
<raster> i'll get the compositor log too
<alyssa> Hey, now I'm getting them on my end too
<alyssa> I think it's contagious
<raster> MUHAHAHHAHA
<alyssa> ...No, that's a different fault
<raster> hmmm
<raster> new fun
<raster> grrrr
<raster> stuff locked up wiht no dmesg log there
<raster> oh fantastic
<raster> e locked up at 100% cpu
<raster> hmmm'
<raster> yeah
<raster> pandecode badness
<raster> stuck there in an infinite loop
<raster> seems to stay there
<raster> time to roll before it rains
raster has quit [Remote host closed the connection]
<alyssa> raster: okay, that was admittedly wacky code
<alyssa> Instancing support is veeery much experimental
<alyssa> Speaking of, is E using instancing? I thought we're only exposing GLES2
* alyssa has a branch to stop exposing the extension incorrectly
TheCycoTWO is now known as TheCycoONE
stikonas has joined #panfrost
Lyude has quit [Read error: Connection reset by peer]
Lyude has joined #panfrost
davidlt has joined #panfrost
afaerber has quit [Quit: Leaving]
TheKit has quit [Ping timeout: 258 seconds]
TheKit has joined #panfrost
BenG83 has joined #panfrost
afaerber has joined #panfrost
davidlt has quit [Ping timeout: 245 seconds]
stikonas has quit [Ping timeout: 276 seconds]
BenG83 has quit [Remote host closed the connection]
stikonas has joined #panfrost
stikonas_ has joined #panfrost
stikonas has quit [Read error: Connection reset by peer]
vstehle has quit [Ping timeout: 245 seconds]
vstehle has joined #panfrost
<hanetzer> kernel 5.2 hit my distro sometime recently :D
stikonas_ has quit [Remote host closed the connection]
<anarsoul> hanetzer: congrats :)
<anarsoul> now you run new shiny kernel with in-tree panfrost
<hanetzer> aye. gotta do some building :P
NeuroScr has joined #panfrost
Lyude has quit [Ping timeout: 246 seconds]
Lyude has joined #panfrost