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
stikonas has quit [Remote host closed the connection]
raster has quit [Ping timeout: 246 seconds]
macc24 has joined #panfrost
vstehle has quit [Ping timeout: 260 seconds]
kinkinkijkin has quit [Quit: Leaving]
nerdboy has quit [Ping timeout: 272 seconds]
buzzmarshall has quit [Remote host closed the connection]
mixfix41 has quit [Ping timeout: 240 seconds]
bnieuwenhuizen has quit [Ping timeout: 256 seconds]
robmur01 has joined #panfrost
robmur01 has quit [Ping timeout: 260 seconds]
macc24 has quit [Ping timeout: 260 seconds]
cwabbott has quit [Quit: cwabbott]
cwabbott_ has joined #panfrost
cwabbott_ is now known as cwabbott
davidlt has joined #panfrost
cwabbott_ has joined #panfrost
cwabbott has quit [Ping timeout: 260 seconds]
cwabbott_ is now known as cwabbott
robink has quit [Ping timeout: 256 seconds]
robink has joined #panfrost
icecream95 has joined #panfrost
vstehle has joined #panfrost
icecream95 has quit [Ping timeout: 258 seconds]
icecream95 has joined #panfrost
jernej has quit [Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net]
jernej has joined #panfrost
guillaume_g has joined #panfrost
raster has joined #panfrost
icecream95 has quit [Quit: leaving]
rhyskidd has quit [Ping timeout: 246 seconds]
rhyskidd has joined #panfrost
icecream95 has joined #panfrost
<icecream95> alyssa: anarsoul: I tested Chromium desktop GL + WebGL recently, and it still causes GPU hangs
<bbrezillon> alyssa: we should probably revert 794c239a990 ("panfrost: Keep cached BOs mmap'd")
<bbrezillon> I mean, I'm not even sure we can kill userspace mappings when purging the BO, and even if we can, it might take some time to figure out how to do it
<bbrezillon> the kernel should definitely refuse to mark a BO purgeable if it's still mmap-ed though
robmur01 has joined #panfrost
NeuroScr has quit [Quit: NeuroScr]
robmur01 has quit [Ping timeout: 256 seconds]
macc24 has joined #panfrost
Elpaulo has quit [Read error: Connection reset by peer]
Elpaulo has joined #panfrost
robmur01 has joined #panfrost
<daniels> bbrezillon: I _think_ the API for that is that, if it's been marked purgeable, you have to mark with MADV_WILLNEED before using again; if that fails, then you unmap without using
<daniels> so that allows you to keep the mmaps alive if the shrinker hasn't kicked in, keeping you performance in the best case
<daniels> (so it follows that if you take a fault on a userspace access to a purged BO, you can just return -EFAULT or the zero page or or)
<bbrezillon> daniels: yep, that's the theory
<bbrezillon> :)
<bbrezillon> in practice we hit a bug in mm code
<bbrezillon> I tried to debug that
<bbrezillon> but still didn't figure out why pages were still mapped after a call to drm_vma_node_unmap()
<bbrezillon> and there's also robher's commit https://gitlab.freedesktop.org/mesa/mesa/-/commit/d0ec5d38f6cff2e61d9e526423c0a016cc830d14 that tends to confirm this limitation was known
<bbrezillon> so yes, ultimately we want to fix that, but in the meantime, we should probably revert the mesa commit keeping BOs mapped, and add a check in the MADV ioctl handler to prevent marking BOs purgeable when they are still mapped
<daniels> bbrezillon: weird, I was sure that VC4 already did this ... does it have any other kind of different handling?
<bbrezillon> daniels: I checked, and VC4 and freedreno seem to keep the BOs mapped when marking them purgeable
<bbrezillon> I can't tell how it works for freedreno, but VC4 is a bit different, in that it allocates memory through CMA
<bbrezillon> not shmeme
<bbrezillon> *shmem
mias has joined #panfrost
bnieuwenhuizen_ has joined #panfrost
bnieuwenhuizen_ is now known as bnieuwenhuizen
nlhowell has quit [Ping timeout: 246 seconds]
nlhowell has joined #panfrost
hanetzer has quit [Ping timeout: 260 seconds]
empty_string has quit [Ping timeout: 272 seconds]
nlhowell has quit [Ping timeout: 258 seconds]
macc24_ has joined #panfrost
macc24 has quit [Disconnected by services]
macc24_ is now known as macc24
icecream95 has quit [Quit: leaving]
nlhowell has joined #panfrost
nlhowell has quit [Ping timeout: 256 seconds]
nlhowell has joined #panfrost
nlhowell has quit [Ping timeout: 265 seconds]
nlhowell has joined #panfrost
stikonas has joined #panfrost
nlhowell has quit [Ping timeout: 260 seconds]
nhp has quit [Quit: ZNC 1.7.5 - https://znc.in]
nhp has joined #panfrost
hanetzer has joined #panfrost
empty_string has joined #panfrost
unoccupied has joined #panfrost
icecream95 has joined #panfrost
icecream95 has quit [Client Quit]
macc24 has quit [Quit: WeeChat 2.8]
raster has quit [Quit: Gettin' stinky!]
raster has joined #panfrost
macc24 has joined #panfrost
<robher> bbrezillon: I'm not sure I'd say I knew it was a limitation. More that it seemed odd to me to keep BOs mmap'ed (they may not need to be when re-used), and I had no idea what happened if purging them mmap'ed.
<bbrezillon> well, normally that shouldn't be a problem, given freedreno and VC4 don't unmap the BOs
<bbrezillon> but there's definitely a bug :)
robmur01 has quit [Ping timeout: 260 seconds]
cwabbott has quit [Quit: cwabbott]
cwabbott has joined #panfrost
guillaume_g has quit [Quit: Konversation terminated!]
macc24 has quit [Quit: WeeChat 2.8]
robmur01 has joined #panfrost
macc24_ has joined #panfrost
macc24_ is now known as macc24
mani_s has quit [Remote host closed the connection]
mani_s has joined #panfrost
cwabbott has quit [Quit: cwabbott]
cwabbott has joined #panfrost
cwabbott has quit [Client Quit]
cwabbott has joined #panfrost
<alyssa> bbrezillon: I'll r-b the revert I guess
stikonas has quit [Ping timeout: 246 seconds]
stikonas has joined #panfrost
raster has quit [Quit: Gettin' stinky!]
macc24_ has joined #panfrost
macc24 has quit [Disconnected by services]
macc24_ is now known as macc24
cwabbott has quit [Quit: cwabbott]
cwabbott has joined #panfrost
macc24 has quit [Quit: WeeChat 2.8]
macc24 has joined #panfrost
macc24 has quit [Quit: WeeChat 2.8]
macc24 has joined #panfrost
macc24 has quit [Quit: WeeChat 2.8]
robmur01 has quit [Ping timeout: 240 seconds]
raster has joined #panfrost
robmur01 has joined #panfrost
nerdboy has joined #panfrost
davidlt has quit [Ping timeout: 260 seconds]
raster has quit [Quit: Gettin' stinky!]
nerdboy has quit [Ping timeout: 260 seconds]
mias has quit [Ping timeout: 256 seconds]
robmur01 has quit [Ping timeout: 265 seconds]
warpme_ has quit [Quit: Connection closed for inactivity]