02:15imirkin: karolherbst: anything waiting on me in your queue?
03:46imirkin: mattst88: thanks for bumping the xf86-video-nouveau ebuild
03:54imirkin: mattst88: what's the criteria for declaring it "stable"? (i'm in no way pushing for this - in fact probably good to give it a month or two for people to report issues)
03:55mattst88: usually just 30 days in tree without any regressions reported
03:55imirkin: ah ok. seems sane.
03:56mattst88: I usually batch up a set of x11@ packages for stabilization as well, to minimize overhead for the testers
03:56mattst88: e.g., cairo and pixman were stabilized together recently
03:57imirkin: right, makes sense
05:17imirkin: hrmmmm ... basically any steam game is throwing a ton of errors for me on 18.3.2
05:17imirkin: i dunno if it has to do with the rotatedness of my screens, or what
05:18imirkin: getting a ton of MISALIGNED_REG with hitman, as well as nve4_launch_grid:781 - Failed to launch grid !
05:38HdkR: Sounds like you need to stop misaligning your registers :P
05:39imirkin: this totally used to work though
05:39imirkin: people and their "optimizations"
05:40HdkR: It's like a deep learning optimizer came in and realized if the shaders fault then they run faster then if they weren't
07:18karolherbst: imirkin: I guess the slct opts and the inverse(ne) -> equ/eq issue
07:19karolherbst: will post updated patches later this day
07:32imirkin: well, at least the hitman issue is reproducible with an apitrace.
07:34imirkin: hmmm ... i wonder if i have it configured to use bindless unnecessarily
07:39karolherbst: imirkin: hitman was just crashing, no?
07:39imirkin: Grid Autosport crashes at semi-random points
07:39imirkin: Dirt Rally doesn't even start due to some sort of windowing confusion
07:40karolherbst: might be worth checking if grid runs better with my mt fixes branchs or did you already figure out why?
07:41imirkin: all these games used to run just fine
07:41karolherbst: mhh :/
07:41imirkin: hitman trace: https://people.freedesktop.org/~imirkin/traces/HitmanPro.1.trace.xz
07:41karolherbst: could be that they updated the games as well
07:41karolherbst: and changes things
07:41imirkin: replaying that gets me the MISALIGNED_REG errors and compute validation failures
07:42karolherbst: yeah.. that shouldn't happen
07:42imirkin: (on a GK208)
07:43karolherbst: need to prepare for fosdem though, flight is in like 9 hours ... might look into it while I am on the way to the airport
07:43karolherbst: imirkin: I would assume turning of MemoryOpt fixes the misaligned reg issue
07:43imirkin: no clue
07:43karolherbst: I am quite possitive it's not bug free
07:44karolherbst: or at least I'd assume it doesn't with opts disabled
07:44imirkin: nope, disabling opts doesn't help
07:44karolherbst: mhhh, sad
07:44karolherbst: that will be painful to debug
07:46karolherbst: imirkin: but if it was supposed to work in the past, we can just git bisect it ;)
07:49karolherbst: heh "Bindless handle doesn't match, GPU failures ahead."
07:50karolherbst: imirkin: no MISALIGNED_REG though
07:50imirkin: yeah, there's no way to make that work properly ... we could hack it a bit
07:51imirkin: ok. 357030 = good, 384644 = bad
07:51karolherbst: where is that message comming from though
07:51imirkin: time to divide and conquer
07:51imirkin: [999093.013470] nouveau 0000:02:00.0: gr: GPC0/TPC1/MP trap: global 00000004 [MULTIPLE_WARP_ERRORS] warp c0008 [MISALIGNED_REG]
07:51karolherbst: I meant the "Bindless handle doesn't match, GPU failures ahead." one
07:52karolherbst: ohh apitrace
07:52imirkin: i added it to apitrace
07:54imirkin: you could hack it to always assuem texture remapping
07:57imirkin: urgh. had lib path wrong. i hate it when that happens.
08:05HdkR: ooo, multiple warp errors + misaligned reg, nice
08:07imirkin: i try
08:07imirkin: and of course 357030 is no longer good... somehow
08:18imirkin: well, on the bright side, it's a 2000-line compute shader where there's an error
08:19imirkin: call 353757 brings me down
08:24imirkin: shader binary code (0x15978 bytes):
08:24imirkin: how bad can it be...
08:26karolherbst: :) only the best shaders
08:41imirkin: well, one thing i noticed is that we sometimes pass too many args to tex
08:41imirkin: e.g. 2d array, indirect handle, lod = 0
08:42imirkin: should just be 4 args, i.e. 1 arg to tex
08:42imirkin: but we pass in 2
08:42imirkin: i don't think that's the issue though
08:47imirkin: i think i don't remove the arguments sufficiently "hard" in some cases
08:49imirkin: /*eec8*/ TEX.B.LZ.P R0, R0, R66, 0x0, ARRAY_CUBE, 0x7;
08:49imirkin: i wonder if something like that trips it up
08:49imirkin: in theory that should be RZ, not R66
08:51imirkin: ahh crap. handleTEXLOD runs after the "spacers" are added
08:54imirkin: ok. now down to all the nve4_launch_grid:784 - Failed to launch grid !
08:55imirkin: for another day.
09:09karolherbst: ahh, that's why I didn't hit it on pascal :)
09:12r1chard: can someone explain me what falcon instruction mpopret versus mpopaddret is? I assume mpopret pops the first value on the stack into the register specified by the operand, then pops the return address into pc
09:12r1chard: whereas mpopaddret first increment SP by a constant?
09:13r1chard: (to save you from having to do a `add sp ..` before the return)
12:23r1chard: 0xDEAD5EC1 is a documented constant when attempting to read code pages marked as secure
12:23r1chard: but has any of you ran into 0xDEAD5EC2 before ?
12:23r1chard: (falcon question again, sorry)
12:24karolherbst: huh, those constants
12:24r1chard: karolherbst: ?
12:24karolherbst: well DEAD 5EC 1/2
12:25r1chard: yeah, DEAD 5EC 1 is what you get when you (for example) use the host interface to read out secure code pages
12:26r1chard: .. and I think Im seeing DEAD5EC2 when im attempting to snoop data memory while secure code runs
12:26r1chard: kind of a bummer, that ruins my plan for breaking into secure mode :-/
12:26r1chard: secure/authenticated mode
12:26karolherbst: well, I think they covered the most obvious things
12:27r1chard: Im just wondering how that works under the hood, do data pages also have this secure bit?
12:27r1chard: like this is just me trying to have a peek at the stack right after jumping into authenticated mode
12:28r1chard: I didnt think there would be anything guarding against that .. the stack pointer isnt adjusted when going into authenticated mode afaik
12:28r1chard: (nor is the authenticated code im looking at doing anything to the stack pointer)
12:30r1chard: maybe mwk knows ?
12:32r1chard: karolherbst: I ran into your falcon_dbg.sh stuff btw when googling, creative
12:32r1chard: ehr, dbg_falcon.sh, sorry
12:32karolherbst: yeah, it's a little helpful :) sadly I wasn't able to write a proper tool
13:58diogenes_: Hello guys, is it harmful to run your card (in optimus scenario) with nouveau.config=NvClkMode=10?
15:31tachiorz: Hello. I recently stumbled upon NVIDIA Modular Diagnostic Software (MODS). It can be easily found and downloaded. It has lots of encrypted js files which have information on registers, addresses and more. I can dump decryption algo if someone here interested and if it's allowed (provided pdf says it's under NDA)
17:28r1chard: woops, i dropped off. did I miss any relevant chatter?
17:29r1chard: I still dont understand what the difference between push and mpush are .. anyone know?
17:43r1chard: after some small experimentation, looks like mpush/mpop pushes/pops 64bit values rather than 32bit
17:43r1chard: still makes little sense why you would have this for 32bit registers(?)