_whitelogger has joined #dri-devel
ivyl has joined #dri-devel
pnowack has joined #dri-devel
bcarvalho_ has joined #dri-devel
bcarvalho has quit [Read error: Connection reset by peer]
Ziemas has joined #dri-devel
lanodan has joined #dri-devel
venemo[m] has joined #dri-devel
venemo[m] has left #dri-devel [#dri-devel]
Venemo_ has joined #dri-devel
Venemo has joined #dri-devel
heat has joined #dri-devel
imre has joined #dri-devel
Venemo_ has quit []
aravind has joined #dri-devel
melissawen has quit [Quit: ZNC 1.7.2+deb3 - https://znc.in]
melissawen_ has joined #dri-devel
Lightkey has quit [Ping timeout: 480 seconds]
leandrohrb has joined #dri-devel
Lightkey has joined #dri-devel
mauld has joined #dri-devel
melissawen_ has left #dri-devel [#dri-devel]
<alyssa> "
<alyssa> amd: add more fish
<alyssa> "
<alyssa> I was really hoping this would be WebGL optimizations for radeonsi ;P
<HdkR> mmmm, fresh fish
melissawen has joined #dri-devel
bcarvalho_ has quit []
bcarvalho has joined #dri-devel
Namarrgon has joined #dri-devel
sarnex has joined #dri-devel
SanchayanMaity_ has joined #dri-devel
SanchayanMaity_ has quit []
SanchayanMaity_ has joined #dri-devel
SanchayanMaity_ has quit []
sarnex has quit [Quit: Leaving]
SanchayanMaity has quit [Quit: SanchayanMaity]
phomes has joined #dri-devel
SanchayanMaity has joined #dri-devel
<Venemo> alyssa: how did you associate fish with WebGL?
blue__penquin has joined #dri-devel
<alyssa> Venemo: Aquarium
SanchayanM has joined #dri-devel
<alyssa> Maybe only Android people care about WebGL Aquarium ;p
<kusma> Alternative explanation: WebGL -> Web -> Fishermans net -> Fish
Danct12 has joined #dri-devel
danylo has joined #dri-devel
mripard has joined #dri-devel
<alyssa> Uh huh :p
<mripard> danvet: I guess we can assume that MIPI-DSI transfer hook is in the same situation: it can be called any time without any guarantee on the device power state?
<danvet> mripard, yup
<danvet> also if you need exclusion with your atomic commit hooks, that kind of locking is also on you
<mripard> danvet: I'll send a doc patch then, that's what I was assuming but couldn't find it mentioned anywhere
<danvet> oh dsi transfer is more like dp aux transfer and i2c xfer hooks I'd say
<danvet> so maybe also check what we have for kerneldoc on this for dp_aux
<danvet> daniels, POLLPRI for the state transition of a future fence sync_file to a materialized fence sync_file?
<danvet> also for compat reasons future fence sync_file would need to be rejected everywhere you can currently use a sync_file
bcarvalho_ has joined #dri-devel
bcarvalho_ has quit []
bcarvalho_ has joined #dri-devel
bcarvalho_ has quit [Read error: Connection reset by peer]
bcarvalho has left #dri-devel [#dri-devel]
bcarvalho_ has joined #dri-devel
bcarvalho_ has quit []
bcarvalho has joined #dri-devel
<daniels> danvet: TIL POLLPRI
<daniels> and yeah, you wouldn't get a future-fence sync_file, you'd get ... some kind of file descriptor ... which would become a future fence but isn't now
<daniels> either through exchanging fops or just having massive bleeding cutouts everywhere in all the core code to make sure you couldn't use it until it is materialised
<daniels> tbh I think it's fine to just eat an extra FD (syncobj -> eventfd -> sync_file fd) in the transition, given that in the cases where you do care about performance, you will not be doing this
<danvet> daniels, can't change the filp in the kernel after creation
<daniels> like your compositor cares about performance, but it's also not going to be latency-bound on the proc fd table lock
<daniels> danvet: that's very sensible :)
<danvet> so internally it must be a sync_file already, except it doesn't behave like one
<danvet> if you want it to autoconvert into a real sync_file
<danvet> which I think makes sense
bcarvalho has left #dri-devel [#dri-devel]
<danvet> also, this would allow us to slowly roll out future sync_file semantics (with flags, to not break anything)
<danvet> daniels, also I only learned about poll_pri this morning, looking for a flag we could use
danylo has quit [Quit: Leaving]
<danvet> since poll_in has meaning already, and poll_out makes no sense
<daniels> POLLIN on a syncobj meaning wait for binary signaling?
danylo has joined #dri-devel
<danvet> daniels, yup
bcarvalho has joined #dri-devel
sneil has quit []
bcarvalho has quit []
sneil has joined #dri-devel
bcarvalho has joined #dri-devel
bcarvalho has quit [Remote host closed the connection]
bcarvalho has joined #dri-devel
bcarvalho has quit []
bcarvalho has joined #dri-devel
bcarvalho has quit []
bcarvalho has joined #dri-devel
fahien has joined #dri-devel
janesma has joined #dri-devel
bcarvalho has quit []
padovan has joined #dri-devel
bcarvalho has joined #dri-devel
dreda has joined #dri-devel
<alyssa> I _think_ this fixes furmark rendering?
SanchayanM has quit []
<daniels> alyssa: Tux in the bottom right suggests yes
<alyssa> woop
sarnex has joined #dri-devel
aravind has quit []
airlied_ has joined #dri-devel
airlied has quit [Ping timeout: 480 seconds]
alanc has quit [Remote host closed the connection]
alanc has joined #dri-devel
hch12907_ has quit []
hch12907 has joined #dri-devel
janesma has quit [Ping timeout: 480 seconds]
nchery has joined #dri-devel
janesma has joined #dri-devel
dcbaker is now known as Guest4778
<imirkin> kusma: RE your MR to use division, just FYI, NVIDIA has no division opcodes (except RCP). So it always does * 1/x. doesn't mean llvmpipe has to do the same thing, but ... just fyi.
<kusma> Yeah, and NVIDIA isn't the only one. But GPUs usually have fixed-function HW to do this conversion, so they bypass the shader ISA, and get exact values "for free"...
<imirkin> yeah
<imirkin> mwk RE'd the table for the tesla generation :)
<alyssa> imirkin: same for all the Malis and AGX
<alyssa> I'm under the impression that's standard?
<imirkin> alyssa: yeah, i think only the rare GPU has a DIV. I think (some?) R600's had it?
<imirkin> or maybe i'm thinking SQRT
<mwk> if by "RE'd" you mean "found the MMIO address where you can just read it for free", then yes
ppascher has joined #dri-devel
<mwk> (a manufacturing test feature, I guess)
<imirkin> mwk: they had you in mind ;)
<imirkin> mwk: actually that makes it slightly less impressive. i thought you determined it through ... magic
<imirkin> still highly non-trivial ;)
<mwk> reversing the actual *algorithm* that uses this table was, however, quite damn complicated
<mwk> oh, I do have experiences with determining this sort of tables through magic, the ones for NV10/NV20 were much harder
<mwk> and involved no easy access port
<alyssa> " - rsqrt (fp32): 1/x**2"
<alyssa> I assume that should be 1/2 instead of 2
<alyssa> or just x^(-1/2)
<mwk> oh, oops
<imirkin> the hard part: documentation
<mwk> there, fixed
<alyssa> heh
<alyssa> i am now a nouveau reverse engineer
<alyssa> :-p
<mwk> my favorite part of the Tesla SFU: the squaring function
<alyssa> SFU sounds like profanity
<imirkin> alyssa: figured you'd be fairly seasoned by now...
<mwk> (yes, this computes x**2, kinda)
<alyssa> imirkin: At profanity? I'm still learning
<imirkin> no, the earlier comment.
<mwk> I'm polish and quite good at profanity
<imirkin> [about being a nouveau reverse engineer ... o well]
<imirkin> [you know a joke is good if you have to explain it.]
<alyssa> i'd say i'ma vieux r/e
<alyssa> but j'ai seulement 19
* alyssa cues Hamilton
<mwk> pfft
<mwk> ... okay I am definitely a vieux r/e
<alyssa> also my French is bad even by Ontario standards
<mwk> (age aside, reversing the old nvidia crap counts, right?)
<alyssa> so that disqualifies me from nouveau
<mwk> also eh I suppose all nvidia hardware I ever touched counts as old
<mwk> I mean, Tesla, eh
<mwk> oh well, this *is* a project I've stopped working on, like, a gender ago
<imirkin> that's a good measure of time.
<alyssa> can confirm
<jekstrand> daniels: I'll see your tome and raise you half a library!
blue__penquin has quit [Quit: Connection closed]
<alyssa> madvise is causing us to spend tremendous amounts of time in drm_gem_shmem_fault *grumbles*
<daniels> jekstrand: I've just spent 2 hours on the phone dealing with an insurance company and a UK property law solicitor; is your email going to make me happy or send me over the edge?
<daniels> having rashly dived in anyway, does your 'Glad to hear' opener mean 'I've read what you've written about ANI+export-ioctl and QS-as-it-is-today and it makes sense'?
<jekstrand> daniels: Having done both recently, I guarantee it's more engaging than housing documents.
<daniels> your housing documents are not my housing documents ...
<jekstrand> daniels: Are you claming that UK housing documents are interesting?
<jekstrand> daniels: Yes, your undestanding of ANI+export-ioctl is spot-on.
<daniels> interesting, no. brain-smashingly taxing, yes
<jekstrand> That's fair. Housing documents are taxing, for sure.
<jekstrand> I think my e-mail will make for a more pleasent read, as well.
<daniels> especially when they're tied to the entire concept of freehold/leasehold and a UK corporate structure so archaic that no current bank will touch it, our (collective across two buildings unrelated but for ?? reasons) auditors have just resigned because they have better things to do, and your ability to reside in your home is written subject to the approval of the Greater London Council, who were dissolved 3 months after I was born
<daniels> so yes, hoping for more pleasantry :)
<imirkin> is that the thing where you get a 99 year lease?
<alyssa> imirkin: fun fact, the Ontario legislature is located on land owned by the University of Toronto, on a 999 year lease to the province
<jekstrand> daniels: Yeah, around here, it's more clear. Americans actually own things. Somewhere in the documents, the sellers revoke all rights for themselves and future generations. (I thought the "future generations" bit was a nice touch.)
<imirkin> alyssa: lol. what are the odds of that much time happening...
<jekstrand> alyssa: NASA's Johnson Space Center in Houston is on land owned by Rice University. I have no idea how long the lease is.
<alyssa> (Er, looks like they later purchased the land for the legislature itself, but the rest of Queen's Park is on the 999 year lease)
<alyssa> The implication is you pass scary-looking (by Canadian standards anyway) guards on your way to class
<kusma> mwk: That function calculates x * y, but with x and y packed into a single register, no?
<mwk> kusma: no, x**2
<mwk> except x is a fixed-point fractional
<mwk> and so some LSBs are cut off
<mwk> *however*, and this is the fun part, cutting off the LSBs is done in a weird way that makes this function not equal to just x**2 >> whatever
<mwk> the pairs of bits that are low enough are just... not multiplied together
<kusma> mwk, it checks bits 0 .. 17, and adds up bit 18 and above if those are set. That looks like a normal multiply to me...
<daniels> alyssa: my lease (demised from the association that I'm the president of, with the clause about not letting a person leading an immoral lifestyle, a person found through inquisition or otherwise to not be of sound mind, or a drunkard, reside in the flat having been removed) is only 956 years :(
<alyssa> daniels: "immoral lifestyle"
<mwk> kusma: not 18 and above, *all* bits
<daniels> it was 999 at some point, but a really long (by Australian standards) or infinitesmally small (locally calibrated) amount of time has passed since then
<daniels> alyssa: the joke writes itself, doesn't it
<mwk> except the amount of bits you ass from second operand depends on which bit of first operand you're at
<mwk> it starts at 18, yes, but goes down all the way to 1
<daniels> alyssa: I was leaning more towards unsound mind tbh
<alyssa> daniels: ooi which parts of my lifestyle would they find immoral?
<mwk> it's *not* packed two operands, trust me :)
<jekstrand> daniels: Should we start an inquisition into your soundness of mind? If so, what would we find?
<daniels> alyssa: yes
<daniels> jekstrand: XKB
<imirkin> daniels: you never expect the inquisition...
<imirkin> also depending on the standards, i think a large fraction of the UK can be classified as drunkards...
<anholt> daniels: and all the choices we've made since xkb have been perfectly reasonable.
<alyssa> imirkin: ni!
<kusma> mwk: Right, 18 - i instead of i - 18. This looks like it's the same kind of polynomial as we used in the Mali-400 MFU.
<daniels> anholt: the lesson I've taken away from Kubernetes is that if you distract people with enough layers of complexity and constant motion, they'll be too baffled to make serious inquiries
<kusma> Or, actually, I think I'm mixing that up. I think it's older, stuff we did for rcp on CPU for Mali-55
<mwk> kusma: the point is, this function is horrible in 17 ways, but it's horrible in the exact way that matches the hardware
<jekstrand> daniels: Clearly, then, you need to re-model your flat so that it all the actual living area fits inside containers and you only lease the space to yourself to store the containers.
<mwk> and you need to draw the schematic for a hardware multiplier (or rather, squarer) and then lop off just the right part to understand it
<daniels> jekstrand: no disagreement with anything you've said, but short notes - no offence taken about Wayland at all, think there's a further discussion to be had about 'we don't know which winsys' (does it not help that swapchain images are always explicitly created as so?), understood re userspace fences being unknowable magic (we'll just test at repaint time and compositors can differentiate on magic algorithmic timing of decision
<daniels> point), but for your last section replying to 'what is memory fence' I agree with everything you've said but my real question was 'what is relocation fence'
<mwk> so it's really computing "x**2 >> 19, but please inject some random extra rounding error to the LSBs"
<daniels> jekstrand: totally au-fait with sync_file vs. syncobj as container of might-eventually-be-sync_file vs. userspace fence, but it's the relocation fence bit where I think Christian and danvet are both making reasonable points yet am sure there are infinite subtleties I'm missing which would be good to have documented
<daniels> jekstrand: (boom-tish!)
<daniels> anyway, time to close my laptop and to go have an extensive debrief with a rather large steak o/
<jekstrand> daniels: Yeah, the move fence is something I'm not extremely familiar with either. I *think* it shouldn't be observable to userspace.
<jekstrand> daniels: enjoy!
<daniels> conceptually it seems like it shouldn't be visible to userspace, but it also seems like some of the (perceived) requirements end up bleeding its semantics into userspace visibility, which is what I'm worried about
<daniels> if that's surmountable then great, if it's not then we'll just have to eat the pain, but either way having some kind of agreed-upon description of what the problem actually _is_ would be really helpful, rather than several strawmen
<danvet> I'm not looking forward to reading emails tomorrow when I'm back
<danvet> this irc chat here makes no sense to me
berylline has joined #dri-devel
berylline has left #dri-devel [#dri-devel]
nchery has quit [Quit: WeeChat 2.4]
nchery has joined #dri-devel
mattst88 has quit [Quit: leaving]
mattst88 has joined #dri-devel
bcarvalho has quit [Remote host closed the connection]
bcarvalho has joined #dri-devel
rsripada has joined #dri-devel
airlied_ is now known as airlied
<eric_engestrom> kusma: 01da18c1 doesn't contain either `cc: mesa-stable` or `fixes: $hash`, that's why it wasn't automatically nominated, but now that you told me I'll add it :)
siqueira has joined #dri-devel
phomes has quit [Remote host closed the connection]
alatiea has joined #dri-devel
bcarvalho has quit [Read error: Connection reset by peer]
bcarvalho has joined #dri-devel
bcarvalho has quit [Read error: Connection reset by peer]
alatiea has quit []
alatiea has joined #dri-devel
<kusma> eric_engestrom: https://docs.mesa3d.org/submittingpatches.html#nominating-a-commit-for-a-stable-branch lusts opening a merge request against the staging branch as a way to nominate patches besides cc stable and fixes...
<kusma> If that's not the case, I think the docs should be updated to reflect that
jernej has quit [Remote host closed the connection]
jekstrand has quit [Ping timeout: 480 seconds]
jekstrand has joined #dri-devel
bcarvalho has joined #dri-devel
pendingchaos has quit [Read error: No route to host]
pendingchaos has joined #dri-devel
egalli has joined #dri-devel
jernej has joined #dri-devel
danvet has quit [Ping timeout: 480 seconds]
<zmike> test?
<Lightkey> fission mailed
<zmike> robclark: I've got the full primconvert series done and passing ci (and cts), the gallium patches I have up are all for that
<zmike> so if you're interested in that for fd, smash that like and subscribe button
craftyguy has joined #dri-devel
<ccr> zmike, you forgot to talk about this episode's sponsor!
<ccr> "Raid: Shadowlegends"
<airlied> my 3 yr old has discovered the wonder of glxgears, figured out the a pause button and arrows move them
<jekstrand> :D
<jekstrand> Finally, glxgears is useful for something!
<urja> wow, i wasnt aware it had any controls
<tango_> airlied: wat
<tango_> arrows move the gears?
<urja> now feeling slightly dumb for never trying :D
<tango_> urja: EXACTLY
* tango_ tries
<tango_> ok, why the heck is pause 'a'?
<urja> and "a" pauses (if you had trouble parsing it from above)
* tango_ wants <Space> to pause
<jekstrand> tango_: Patches welcom!
<jekstrand> *welcome
<alyssa> airlied: !!!
<alyssa> i have been outsmarted by a 3 year old
* jekstrand has known you can rotate the gears for some time.
<alyssa> Soon
<alyssa> <daniels> why didn't you get anything done today
<alyssa> <alyssa> was playing glxgears
<jekstrand> :)
<urja> alyssa: that was my exact reaction :D
<zmike> ccr: they declined to sponsor this episode since it was about real driver work and not just omgoptimize
<ccr> :)
<airlied> the a is pause for "animate"
<tango_> ooooooh
<tango_> makes sense
<cphealy> Is there a way with a platform that has HDMI output and proper DRM/KMS drivers to run in a mode where there is no HDMI display attached but the rest of the stack continues to operate as if there is a display attached? The idea is for automated testing with planes composition and everything else being used in the display controller stack?
<cphealy> Perhaps something where a fake EDID is poked in?
<HdkR> Why not use one of those HDMI faker things?
<cphealy> You mean like a HW device that plugs in and pretends to be a display?
<alyssa> HdkR: language
<HdkR> I didn't name it :<
<cphealy> Hmm, I've never seen these before. I wonder if they are a device with a real EDID
<HdkR> They have a real edid
<HdkR> I have about ten of the boogers here
<cphealy> That's pretty cool. My desire for a SW solution just went down a little... ;-)
<alyssa> remote: rpc error: code = Unknown desc = increment generation: pq: could not access status of transaction 0
<alyssa> pq: did you do this? ^ :p
<alyssa> [Trying to push]
bcarvalho_ has joined #dri-devel
bcarvalho has quit [Remote host closed the connection]
<cphealy> HdkR: I do wonder though if it is possible to work around the need for this little dongle with a SW (kernel driver) approach.
<cphealy> My assumption is that the HDMI kernel drivers are just looking at HPD pin and EDID presence?
anujp has joined #dri-devel
<urja> yeah - i have a passthrough variant of one of those dongles (from ebay tho), but it's literally just an EEPROM and one resistor inside (wired to pull HPD and write-protect the EEPROM at the same time... funky)
<urja> (I disassembled it to write the actual EDID of my monitor to it... and i have it because i'm using a HDMI switcher that would otherwise make the display "detach" and that can cause trouble, sigh...)
glennk has quit [Quit: Leaving]
glennk has joined #dri-devel
<daniels> alyssa: please invoice Intel for those hours
<alyssa> gears.png
<alyssa> daniels: I'm so glad Intel hired us for that glxgears optimization project.
<alyssa> :P]
<daniels> X11 fliptear numbers >>> anything else
robink has joined #dri-devel
anujp has quit []
anujp has joined #dri-devel
<karolherbst> uhhh
<karolherbst> sometimes games are really asking for trouble, don't they?
<karolherbst> I can't even...
<HdkR> They're just trying to be the OS :P
<karolherbst> :D
idr has joined #dri-devel
<karolherbst> normally I just remove libs until it works
<karolherbst> but this error made me a bit more curious: "libGL error: MESA-LOADER: failed to open iris: /lib64/libdrm_amdgpu.so.1: undefined symbol: drmSyncobjTimelineSignal (search paths /usr/lib64/dri)"
<airlied> someone packaged libdrm?
<airlied> bundled
<karolherbst> airlied: well, they also bundled GL
<karolherbst> and libwayland :D
<karolherbst> and all X libs
<HdkR> Oh hey, I own this game.
<bnieuwenhuizen> karolherbst: also opening iris fails because libdrm_amdgpu fails to load? :|
<karolherbst> uhh.. there is even libgtk
<karolherbst> bnieuwenhuizen: megadrivers
<bnieuwenhuizen> ah
<karolherbst> well
<karolherbst> deleting libdrm just makes the game quit :D
janesma has quit [Quit: Leaving]
<karolherbst> libboost...
<karolherbst> uwhhdsah
<karolherbst> libruby.so.2.6 :O the heck
<karolherbst> HdkR: games like that are annoying :D
<karolherbst> eventually you get it to run by doing mv lib* some_tmp_dir/ and move everythink back the game needs
<HdkR> Yea, It's going to break FEX as well, which is frustrating
<karolherbst> :/
<karolherbst> oh well
<HdkR> Since obviously they won't have shipped any mobile drivers in that megablob
<karolherbst> I wished steam would do more quality control and blacklist certain libs from bundling :p
<karolherbst> HdkR: well.. the painful part is just that you have to fix it yourself
<karolherbst> it doesn't need those x libs
pnowack has quit [Quit: pnowack]
<karolherbst> just boost, some werdo xconf thing and ruby
<karolherbst> ehh
<karolherbst> xfconf
<HdkR> Yea. and then I need to write a wiki entry for FEX users rather than it "just working" :(
<karolherbst> :D
<karolherbst> yep
sarnex has quit [Quit: Quit]