alyssa changed the topic of #panfrost to: Panfrost - FLOSS Mali Midgard & Bifrost - Logs https://freenode.irclog.whitequark.org/panfrost - <daniels> avoiding X is a huge feature
<archetech> got that ty trying to learn how to patch rc3 for n2 panfrost
<archetech> google no help
italove has joined #panfrost
<robmur01> my secret recipe would be `git checkout origin/master; git merge drm-misc/drm-misc-next`
<robmur01> possibly you could just cherry-pick all the panfrost patches, I'm not sure off-hand if there are any dependencies on core changes this time around
<archetech> yes something easy I can do with the tball
<archetech> patch -Np1 I know
<robmur01> alternatively, drm-misc-next itself looks to have -rc2 merged in now, so you could just start with that and pull in anything from the rc2..rc3 diff that you care about
<archetech> so would a straight compile of rc3 get me that drm-misc-next?
<archetech> already in the tree
<robmur01> no, drm-misc-next now contains stuff targeting 5.11, which will only be merged into Torvalds' tree in about 5-6 weeks after the 5.10 release
<archetech> ah ok
<archetech> then its out of reach and above my knowledge
<archetech> to get it into rc3
<robmur01> the current branch is essentially all those future patches on top of 5.10-rc2 (not actually in that order, but the end result should be the same)
<archetech> so git clone blah ?
<archetech> whats the blah
<robmur01> it's a step up from the basics, but what I'd recommend is `git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git; cd linux; git remote add drm-misc git://anongit.freedesktop.org/drm/drm-misc; git fetch drm-misc`
<archetech> that I can try
<robmur01> that gives you the mainline repo as a basis, with the ability to play directly with additional branches from the drm-misc repo
<archetech> make def_config then make menuconfig and I should be ok
italove has quit [Ping timeout: 264 seconds]
stikonas has quit [Remote host closed the connection]
* archetech building
vstehle has quit [Ping timeout: 260 seconds]
camus1 has joined #panfrost
kaspter has quit [Ping timeout: 240 seconds]
camus1 is now known as kaspter
nerdboy has quit [Ping timeout: 272 seconds]
anarsoul has quit [Remote host closed the connection]
anarsoul has joined #panfrost
archetech has quit [Quit: Konversation terminated!]
archetech has joined #panfrost
rcf has quit [Ping timeout: 260 seconds]
nerdboy has joined #panfrost
kinkinkijkin has joined #panfrost
kaspter has quit [Ping timeout: 256 seconds]
kaspter has joined #panfrost
vstehle has joined #panfrost
rak-zero has quit [Ping timeout: 260 seconds]
davidlt has joined #panfrost
nerdboy has quit [Ping timeout: 260 seconds]
rak-zero has joined #panfrost
italove has joined #panfrost
archetech has quit [Ping timeout: 265 seconds]
archetech has joined #panfrost
icecream95 has joined #panfrost
nerdboy has joined #panfrost
camus1 has joined #panfrost
kaspter has quit [Remote host closed the connection]
camus1 is now known as kaspter
raster has joined #panfrost
Green has joined #panfrost
rcf has joined #panfrost
icecream95 has quit [Ping timeout: 258 seconds]
camus1 has joined #panfrost
kaspter has quit [Remote host closed the connection]
camus1 is now known as kaspter
italove has quit [Ping timeout: 256 seconds]
chewitt has joined #panfrost
stikonas has joined #panfrost
steev has quit [Ping timeout: 244 seconds]
narmstrong has quit [Ping timeout: 260 seconds]
steev has joined #panfrost
narmstrong has joined #panfrost
alpernebbi has joined #panfrost
rak-zero has quit [Ping timeout: 246 seconds]
kaspter has quit [Quit: kaspter]
italove has joined #panfrost
italove has quit [Ping timeout: 260 seconds]
italove has joined #panfrost
stikonas has quit [Remote host closed the connection]
stikonas has joined #panfrost
stikonas has quit [Remote host closed the connection]
kinkinkijkin has quit [Ping timeout: 244 seconds]
kinkinkijkin has joined #panfrost
kinkinkijkin has quit [Ping timeout: 244 seconds]
italove has quit [Ping timeout: 260 seconds]
kinkinkijkin has joined #panfrost
<macc24> bbrezillon: where did you get sources for https://github.com/bbrezillon/linux/tree/panfrost/duet from?
italove has joined #panfrost
<bbrezillon> macc24: from the ML
<bbrezillon> and I added hacks on top to make it work
<bbrezillon> why?
<macc24> git says that torvalds/linux and bbrezillon/linux don't have shared history
<bbrezillon> they certainly do :P
<bbrezillon> it seems to be based on 5.8-rc6, with a whole bunch of patches applied on top
chewitt has quit [Read error: Connection reset by peer]
chewitt has joined #panfrost
alyssa has joined #panfrost
<alyssa> stepri01: Are the shader clock instructions any useful?
<alyssa> (LD_GCLK on Bifrost, and the cycle count / timestamp selectors for LD_SPECIAL on Midgard, I mean)
<alyssa> italove: has patches for using ARB_shader_clock and an SSBO to record per-draw cycle counts for the actual shader execution, which I guess is somewhat difefrent information than write value which would also include fixed-function costs
<alyssa> But at that point... probably just use perf counters? :P
brads has quit [Ping timeout: 260 seconds]
brads has joined #panfrost
brads has quit [Ping timeout: 264 seconds]
<bbrezillon> alyssa: ok, still have a problem with reg spilling even with your patch
stikonas has joined #panfrost
<alyssa> uh-oh :(
<bbrezillon> still the same problem with instructions that must have src0==dest
<bbrezillon> and when I add a dummy move (or treat those instructions as no_spill), reg spilling fails (reaching max num of iteration)
<alyssa> bbrezillon: right, those instructions should be marked unspillable (since we don't handle spilling stuff that's not in SSA form, just for laziness reasons)
<alyssa> Hrm.
<alyssa> (and src0 == dest implies it isn't SSA)
<alyssa> [Technically you can model that as SSA too, but we don't.]
Elpaulo has quit [Remote host closed the connection]
Elpaulo has joined #panfrost
<alyssa> Most suspicious "proof" I've ever written ;p
* macc24 places a random space in src.py
<macc24> bbrezillon: 31 merge conflicts between linux upstream and panfrost/duet :D
<bbrezillon> macc24: yeah, I don't think backmerging Linus tree in this branch is the way to go
<bbrezillon> some of the patches in this tree might have been upstreamed in a different form in the meantime
<macc24> bbrezillon: well i already got started so imma test if it works
<bbrezillon> I'd rather go for a rebase if I were you
<alyssa> backmerging?
<macc24> ._.
<bbrezillon> alyssa: don't know if the term is correct, but the principle is that maintainers ask Linus to merge their topic branches into his tree, and when they merge Linus' master back to their tree they sometimes call it a backmerge
<macc24> was this code ever compiled?
<alyssa> bbrezillon: Hm, ok. Is that different than a rebase? I don't use git-merge
<macc24> rebase ≠ merge?
<daniels> macc24: yes, it does compile
<daniels> (subsys_initcall is a macro)
<daniels> alyssa: yeah, very different
<bbrezillon> alyssa: when you merge, your commits are lost in the middle of the history
<daniels> alyssa: a rebase is essentially moving your current tip to the point you want to rebase on, then one by one doing patch -p1 and hoping it works
<daniels> alyssa: a merge creates a special commit which has >1 parent
<macc24> daniels: what are functional differences of merge and rebase?
<daniels> so where both histories diverge, all the divergent commits from both trees are included in the history, then the multi-parent merge commit carries a delta-delta to resolve the conflicts
<daniels> macc24: ^
<bbrezillon> when you want to maintain a stack of patches on top of a moving target, you should rebase
<alyssa> daniels: ...Yeah, I think I'll stick with rebase-only :p
<daniels> rebase is what you want
<daniels> merge is what the kernel wants
<macc24> the kernel wants as in?
<alyssa> Ahhhh, ok
<bbrezillon> I do use rebase for my subsystems :P
<bbrezillon> *kernel subsystems
<bbrezillon> it's really just a matter of how you decide to handle things
<robmur01> FWIW I think the git book has a pretty good overview of all this
<bbrezillon> drm went for the backmerge solution because they want to keep the merge window open at all times, while some subsystems say "no patches applied between vX-rc7 and vX+1-rc1"
<macc24> why aren't mt8183 drm patches in mainline?
<bbrezillon> dunno, most of them should be
<robmur01> same reason all the other millions of patches on the mailing lists with unaddressed review comments aren't in mainline, I'd imagine...
<bbrezillon> but there are always things that require invasive/tricky changes and thus take more time to be accepted
<bbrezillon> macc24: by rebasing you should be able to figure those that have been merged
archetech has quit [Quit: Leaving]
<macc24> bbrezillon: tomorrow i will make attempt at rebasing
<macc24> i will have more time and sanity then
<alyssa> robmur01: hey you were a math major right?
<robmur01> technically no, but in analogy to the education systems you're familiar with, sure :P
<alyssa> I am on page 7 of modeling Bifrost scheduling constraints in LaTeX.
<alyssa> Am I doing this right?
<alyssa> :p
<robmur01> (no majors/minors/electives/whatever, just a straight-up maths degree :D)
<alyssa> Got it.
<robmur01> in truth I've done remarkably well at avoiding LaTeX (focused more on numerical/computational stuff and stats)
<alyssa> Boring :p
<robmur01> I did have to use it later to write up my MSc thesis, but that whole experience has been mostly purged from my brain
davidlt has quit [Ping timeout: 272 seconds]
archetech has joined #panfrost
<daniels> alyssa: only page 7? you must have a tiny font size
<alyssa> daniels: It's a work-in-progress!
<daniels> you're at least 10% of the way there!
<alyssa> :D
<alyssa> srs >:
<alyssa> Currently in the neighborhood of "I've defined this greatly simplified model that doesn't pay attention to half the things in the ISA, show how to translate out of it to actual concrete hw stuff and prove the induced code satisfies the hw requirements"
<alyssa> This is iterative since trying to do those proofs inevitably shows all the different edge cases I got wrong in the model
<alyssa> So only once I finish this can I start doing *any* algorithm work (in terms of the model only, much easier than the real thing)
italove has quit [Ping timeout: 260 seconds]
italove has joined #panfrost
kinkinkijkin has quit [Remote host closed the connection]
gcl_ has joined #panfrost
gcl has quit [Ping timeout: 240 seconds]
italove has quit [Ping timeout: 256 seconds]
italove has joined #panfrost
SolidHal has quit [Ping timeout: 264 seconds]
stikonas has quit [Remote host closed the connection]
stikonas has joined #panfrost
brads has joined #panfrost
robmur01_ has joined #panfrost
robmur01 has quit [Ping timeout: 264 seconds]
Green has quit [Ping timeout: 264 seconds]
unoccupied has joined #panfrost
italove has quit [Ping timeout: 256 seconds]
SolidHal has joined #panfrost
kinkinkijkin has joined #panfrost