ChanServ changed the topic of #lima to: Development channel for open source lima driver for ARM Mali4** GPUs - Kernel driver has landed in mainline, userspace driver is part of mesa - Logs at https://oftc.irclog.whitequark.org/lima/
camus has joined #lima
camus1 has joined #lima
camus has quit [Ping timeout: 480 seconds]
camus has joined #lima
camus1 has quit [Read error: Connection reset by peer]
camus1 has joined #lima
camus has quit [Ping timeout: 480 seconds]
drod has quit [Remote host closed the connection]
camus has joined #lima
camus1 has quit [Read error: Connection reset by peer]
camus has quit [Remote host closed the connection]
camus has joined #lima
camus1 has joined #lima
camus has quit [Ping timeout: 480 seconds]
camus has joined #lima
camus1 has quit [Remote host closed the connection]
drod has joined #lima
camus has quit [Remote host closed the connection]
camus has joined #lima
camus1 has joined #lima
camus has quit [Ping timeout: 480 seconds]
chewitt has joined #lima
alyssa has joined #lima
<alyssa>
anarsoul: yikes.. did not see how many places lima_resource.c depends on pixels vs blocks
<anarsoul>
yeah, unfortunately it's not trivial to fix
<alyssa>
given I don't even own utgard hw, I guess the alternative is to define the tiling routines to operate on pixels and then I don't need to touch lima at all
<alyssa>
(and lima still gets the bugfix)
<anarsoul>
alyssa: didn't I mention drm-shim? :)
<alyssa>
you did, didn't I mention my laziness? :-p
<alyssa>
also "doesn't crash" isn't the bar for correct here ;)
<anarsoul>
I can test it (and probably spend an hour or two to fix it) if it doesn't crash
<alyssa>
I see prior art in mesa for both transforming pipe_box to units of blocks (v3d) or not and being very careful when doing texture address calculations (freedreno)
<alyssa>
I don't have a strong preference. But given lima already does freedreno style it's tempting to do the same in panfrost and stop bikeshedding
<anarsoul>
alyssa: is there any reason not to keep it in pixels?
<alyssa>
Mmh, it's not clear to me logically what it means for x/y/w/h to be unaligned (with respect to block size)
<alyssa>
Maybe the spec forbids that?
<alyssa>
Insisting on "integers in units of blocks" in the tiling routine prototypes makes it blatantly obvious that subblock access is illegal
<anarsoul>
well
<anarsoul>
not illegal
<anarsoul>
they just get forcefully aligned
<anarsoul>
:)
<alyssa>
I shudder
<anarsoul>
maybe just add assert to pan_tiling.c if x/y/w/h aren't aligned to block size and then align it in the drivers?
<alyssa>
"The width and height of each sub-image must be a multiple of the block size for the format"
<alyssa>
"Modifying compressed images along aligned block boundaries is possible"
<alyssa>
I don't see anything in es3.2 spec about how unaligned access is supposed to work (silent alignment? error?)
<alyssa>
ah here page 184 of the spec
<alyssa>
INVALID_OPERATION if not a multiple of the block size
<enunes>
and then I should probably send the MR to enable it again, rather than prolonging the efforts to improve it while offline...
<anarsoul>
enunes: you can just enable deqp for now if piglit isn't ready yet
<alyssa>
panfrost piglit still isn't ready 🙃
<enunes>
I think piglit is fine, but the boards timeout on dhcp every now and then which increase the runtime by about 3 minutes as it eventually works after some retries
<enunes>
doesnt seem to be dhcp itself but looks like the nic thinks it sent dhcp requests, but none reach the dhcp server
<enunes>
not a u-boot/firmware issue on my tests so far, maybe a linux driver issue but thats where I stopped troubleshooting
<enunes>
static ip doesnt seem to help as the boards just dont have connectivity and fail to mount nfs
<enunes>
so eh, it did work for months retrying that dhcp request a couple of times when it happened
<alyssa>
for us, the piglit run itself is a mess
<alyssa>
I guess it would be fine if we used a judicious skip list, but, eh
<alyssa>
The compromise is to keep it as a manual job which someone triggers on interesting MRs to update expectations
<enunes>
I saw some drivers do that, turning it into manual would be my fallback plan if piglit turns out to be flaky
<alyssa>
gpu faults sometimes cause problems for other processes on panfrost
<alyssa>
don't think too hard on what went wrong in the kernel for that ....
<enunes>
I guess the tradeoff is that if some MR did regress piglit tests, the next person to manually trigger it would see issues that are not their fault?
<alyssa>
so any faulting tests lead to random flakes
<alyssa>
Yep
<alyssa>
and if some MR fixes piglit tests the next to trigger would get unaccounted for UnexpectedPass's and would have to update the expectations separately
<enunes>
in that case you send a standalone MR just to update the expectation lists?
<alyssa>
yeah
<alyssa>
or just toss the commit onto whatever MR, I have bad MR hygiene :-p
<anarsoul>
I wish there was deqp for desktop gl2 :)
<anarsoul>
piglit is a mess
<anarsoul>
and piglit failures are often hard to debug
<icecream95>
It seems that my original two-line commit did work on Lima (tested on Mali450) with no other changes. There were no Piglit tests that could've been useful here, so I had to s/DXT1/ETC1/ on arb_get_texture_sub_image-getcompressed