<tomeu>
oh, with the move of fields to resource, we might not
<tomeu>
I will find it soon enough :)
<tomeu>
bbrezillon: do you have push permission?
<bbrezillon>
tomeu: nope
theperfectpunk has quit [Quit: Leaving.]
<tomeu>
you have this series plus that single patch to push?
<bbrezillon>
yep
<tomeu>
ok, I will push
<bbrezillon>
thx
<tomeu>
bbrezillon: the branch that passed the CI has the same patches sent to the ml?
<bbrezillon>
tomeu: yes
<tomeu>
awesome
jernej has joined #panfrost
<tomeu>
pushed
BenG83 has joined #panfrost
<alyssa>
bbrezillon: If you want push, you can get that now I think.
<bbrezillon>
alyssa: hehe, what if I like to bother you everytime I have something to merge? :-)
<alyssa>
bbrezillon: rephrase. I will shortly be asking other maintainers to give you push and then will refuse to merge anything you don't push yourself...? =P
<bbrezillon>
alyssa: ok ok, will ask for write permissions, but I must admit it was a comfortable situation being a regular contributor, especially when the maintainer is reviewing/merging patching so quickly
<alyssa>
bbrezillon: Hm? I don't think there'll be a difference?
<alyssa>
We'll still do the same review cycles at the same speed
<alyssa>
It's just that now if I/Tomeu say R-b, you can merge it yourself (rather than waiting for one of us to do it)
yann has quit [Ping timeout: 246 seconds]
<alyssa>
Aside: render target stuff coming along alright. RGBA16F rendering now works
tgall_foo has quit [Remote host closed the connection]
tgall_foo has joined #panfrost
<alyssa>
Of course, there's a whole bucket of ldst ops specifically dedicated to unpacking weird pixel formats in blend shaders, fun
stikonas has joined #panfrost
stikonas has quit [Read error: Connection reset by peer]
stikonas_ has joined #panfrost
<alyssa>
on their own all the simple float/integer formats now work for rendering
<alyssa>
More refactoring necessary to get the keying work so they work together in harmony
raster has quit [Remote host closed the connection]
<alyssa>
Erg, I didn't think about how blend constants fit into this..
<alyssa>
I guess we want to make panfrost_blend_state a hashmap
<alyssa>
With (format, constant) keys
<alyssa>
And either a blend_equation/constant or blend shader/meta as the value (unioned)
<alyssa>
Then when any of the blend state / blend constant / framebuffer changes, we generate new blend state (but keyed so it's not stupidly slow)
* alyssa
tries to think of potential pitfalls
<alyssa>
One obvious one is that updating constants is.. slow
<alyssa>
But that's kind of inevitable with this sort of scheme I feel like
<alyssa>
Better would be to key by:
<alyssa>
(format, fast_constant)
<alyssa>
where fast_constant is merely a *boolean*
<alyssa>
If it's true, there is no blend constant or the blend constant has only a single channel
<alyssa>
If it's false, there is a blend constant and it has multiple distinct channels
<alyssa>
(False always maps to a blend shader)
<alyssa>
That saves a *lot* of recompiles, since we now only have (at most) 2 blend values per format
<alyssa>
I also question the wisdom of doing it per format when lots of formats intersect, but I digress.
<alyssa>
It might actually be better to have a single blend_equation pulled out
<alyssa>
And then a hashmap of formats (that need a shader for various reasons) -> blend shaders
sravn has quit [Quit: WeeChat 2.4]
sravn has joined #panfrost
BenG83 has quit [Quit: Leaving]
jcureton has quit [Remote host closed the connection]
jesse48 has joined #panfrost
jesse48 has left #panfrost [#panfrost]
jcureton has joined #panfrost
NeuroScr has joined #panfrost
jcureton has quit [Remote host closed the connection]
davidlt has quit [Ping timeout: 245 seconds]
afaerber has quit [Quit: Leaving]
afaerber has joined #panfrost
NeuroScr has quit [Quit: NeuroScr]
* robher
guesses no one runs drm-misc-next because it is broken...
<anarsoul>
:(
<alyssa>
robher: I haven't updated for a while since it's kind of a pain with all the weirdness I have..
<robher>
alyssa: the problem is mmap on imported buffers now fails. Before it was a silent bug that maybe worked if we import our own buffers.
stikonas_ has quit [Ping timeout: 272 seconds]
<alyssa>
That doesn't sound good
<robher>
alyssa: the question is why is everything mmap'ed? Most buffers shouldn't need to be.
<alyssa>
robher: Hmm, imported/exported buffers logically shouldn't need an mmap, no
<alyssa>
I think the current pan_drm.c code just assumes everything is CPU R/W to keep things simple
<alyssa>
With kbase we were a lot more careful, but a lot of those flags (execute, no CPU map, growable..) got lost in transition
<robher>
alyssa: I'm testing whether we can drop it on the imports.
<alyssa>
robher: I *think* that would be ok?
<alyssa>
I can't think of a case when we would need to mmap an import legitimately
<robher>
alyssa: But still, we have the compatibility issue so either the kernel change has to be reverted or we have to support mmap on imports...
<alyssa>
Oh, shoot, I didn't think of that
<alyssa>
robher: I wonder if we can just have mmap silently fail again...?