01:40steel01[d]: https://cdn.discordapp.com/attachments/1034184951790305330/1428558313456664728/nice_stairs.jpg?ex=68f2f01b&is=68f19e9b&hm=4cb36e716c9bc9142aab6ca7776a2d15ca444a2cd3f721b187e37b9b80365158&
01:40steel01[d]: There we go.
01:40steel01[d]: Beautiful boot ani.
01:41sonicadvance1[d]: These hyper-stylized car logos are getting out of hand.
01:41steel01[d]: https://gitlab.incom.co/CM-Shield/android_external_minigbm/-/commits/lineage-23.0
01:41steel01[d]: Here you go, gfxstrand[d]. Squash those appropriately. And figure out where I screwed stride.
01:43steel01[d]: Oh, and just to double-check, you did change the minigbm platform in tegra-common from nouveau to tegra, right? I forgot that on my first build. 🙄
03:19astondiary: So what shows that being a jewish propaganda in the field of compression is: a simple procedure that has nothing to do with fft/dft, kececi prime numbers nor markov-chains. it has a bit to do with collatz however, such as we fix the format a bit, for odd or even numbers, but other than that it does not connect to collatz either. Algarv is the translation of kececi prime numbers, where many
03:19astondiary: had suggested it, to make the compression you do not need those either. 8-52=44/2=22 8+22=30 you do this at compile time, suggestion is to do it another way around, going from smaller to bigger to avoid division, 52 is a quadlet of 7+11+15+19 that came out from a long semi-complex synthesis that matters few. so so 8+22-26+8+22 is 4 while 8+22-52+30=8, so the selection get's 26's and not
03:19astondiary: selection get's 52's where as from all 52's subtract yields answers for any bank, there is some index calculations involved, per quadlet and offsets per a word of 32 or 64bit, and do not forget to add +1 to the answer for better decoding without collisions. I do not think such formulas could ever be out of any complexity for employed programmers, so it has to be a scam propaganda. And along
03:19astondiary: with terror committed to my life it will result into bloody war if continued to be done at me. however in the example any number inside 52 can be chosen except 0, which in case of NaN handling needs to be presented with something else. That is very simple show off how numeral systems actually work, and they are done in science with care to allow high end computation and compression, the fast
03:19astondiary: computation is a minor extension from there, a set of routines at compile and runtime.
03:20astondiary: I very much doubt that you could not approve those methods, or can not compile those for FS's cause it's impossible that you should be so stupid, while doing so much more complex work.
03:29kode54[d]: god dammit
03:35diddeynumpy: What is being afraid of is the dirty laundry that comes out from store now and decrypt later, since breaking RSA is just a matter of getting minor set of numbers right. And then the tyrans and traitors and obnoxious trash in the world, gets handled by militarians , where our lines gonna really clash where as you were traitors with bunch of other jews eating my cells, we torture them to
03:35diddeynumpy: death and on spot butcher them alive and put their organs while they watch themselves on a pan, i have talked about it and they deserved those actions and dug their own hole, it's just i now humiliate as much as i can, and soon they are on the pan.
03:35kode54[d]: I swear they have an eye in the channel already and just send in another connection to spam
03:36HdkR: Not too hard when it's publicly logged :)
03:39HdkR: They're inspirational really. I hope that one day I too can be this dedicated to something.
03:42kode54[d]: dedicated to the bit
03:43airlied: if they could just use twitter, they'd make 1000s of dollars
03:43airlied: spewing that level of shit on twitter constantly would get you insta followers
03:44gfxstrand[d]: steel01[d]: Thinking about this more... I suspect you didn't screw anything up. I suspect this is a bug that's been hidden in the GL driver for years.
03:44steel01[d]: Oh?
03:44gfxstrand[d]: It may or may not be fixable. I suspect not. If not, then the solution, once again, is to fix the NVK bugs and delete the GL driver. 🙃
03:44steel01[d]: ><
03:45steel01[d]: But hang on a sec. I'm 99.8% sure this happens without mesa loaded.
03:45steel01[d]: I can explicitly verify that in a bit.
03:46steel01[d]: Cause tegra-drm can drive the display hardware with the gpu being on at all. And that backend only uses tegra-drm ioctls.
03:47gfxstrand[d]: Basically, the GL driver totally ignores the modifier on imported buffers. It instead takes whatever is set on the BO itself. The only reason NVK->GL import works is because NVK has a special case to set the tiling on the BO for modifiers, even though it shouldn't be necessary. (The modifier is supposed to carry that information.) The problem is that when the BO is imported from the tegra driver
03:47gfxstrand[d]: into the nouveau driver in the kernel, the extra BO metadata is discarded. (All BO imports are dumb if they cross driver boundaries.) This means that nouveau always sees a linear BO and a modifier, which it ignores.
03:50steel01[d]: Mmm. That sounds fragile. Once my current pipeline of builds finishes, I'll run a build with swiftshader (no mesa at all) and this minigbm backend. See what it does. I *think* I did that when I was originally working on this and saw the same stride issue. But I can't swear to it right now.
03:51gfxstrand[d]: The solution is to not ignore the modifier information. However, some of that information is the PTE kind, which the userspace driver can't supply on its own because it goes in the page tables, which aren't something it controls. We've fixed this for NVK with the new kernel API but nouveau still uses the old API and the two are incompatible. So even if we did fix the tile mode, we'd still have PTE
03:51gfxstrand[d]: kind to contend with and pre-Turing, the GPU will ignore tiling if you don't use one of the tiled PTE kinds.
03:52gfxstrand[d]: In short, NGL can only tile on BOs allocated from nouveau.ko and it ignores the modifier provided by gralloc. That second bit is fixable, the first really isn't.
03:54gfxstrand[d]: But there might be a hack! I might be able to make my gralloc backend enumerate on the tegra device so that's the one SurfaceFlinger sees but then secretly open the nouveau device behind everyone's back and allocate BOs off of that.
03:54gfxstrand[d]: But long term the solution is to delete the GL driver. :frog_upside_down:
03:54steel01[d]: Not sure that'd even be a hack. It'd probably be better performance.
03:56gfxstrand[d]: But first we need to figure out how to get SurfaceFlinger to stop segfaulting.
03:56steel01[d]: Well, my build with the broken stride booted to launcher.
03:57steel01[d]: So once you get a build with that, you should be good on that front.
03:57gfxstrand[d]: 👍🏻
03:58gfxstrand[d]: I may not have pulled enough from your branch.
03:58gfxstrand[d]: Or maybe I screwed it up trying to add the service stuff
03:58gfxstrand[d]: Oh, you have more hacks. Will try tomorrow
04:01steel01[d]: 'hacks' The main issue was that backend_tegra didn't get added to drv.c It wasn't in the commit you picked, because it had been previously added in a commit adding tegra support to the dumb buffer backend.
04:02steel01[d]: And since tegra apparently shouldn't support linear buffers or whatever that was, that dumb driver support commit shouldn't be grabbed.
04:10gfxstrand[d]: Right
04:45cubanismo[d]: gfxstrand[d]: Isn't that what the Tegra driver does with every other operation anyway?