ChanServ changed the topic of #dri-devel to: <ajax> nothing involved with X should ever be unable to find a bar
haocrdrm^ has quit [Remote host closed the connection]
Kayden has joined #dri-devel
co1umbarius has joined #dri-devel
columbarius has quit [Ping timeout: 480 seconds]
jkrzyszt has quit [Ping timeout: 480 seconds]
epoch101 has joined #dri-devel
frickefresh_ has left #dri-devel [#dri-devel]
glennk has quit [Ping timeout: 480 seconds]
flynnjiang has joined #dri-devel
zxrom has quit []
u-amarsh04 has quit []
yyds has joined #dri-devel
amarsh04 has joined #dri-devel
amarsh04 has quit []
u-amarsh04 has joined #dri-devel
jsa has quit [Ping timeout: 480 seconds]
Mangix has quit [Ping timeout: 480 seconds]
himal has joined #dri-devel
Company has quit [Quit: Leaving]
epoch101 has quit []
Mangix has joined #dri-devel
rauji____ has joined #dri-devel
Duke`` has joined #dri-devel
simon-perretta-img has quit [Ping timeout: 480 seconds]
simon-perretta-img has joined #dri-devel
fab has joined #dri-devel
YuGiOhJCJ has joined #dri-devel
lemonzest has quit [Quit: WeeChat 4.2.2]
Duke`` has quit [Ping timeout: 480 seconds]
glennk has joined #dri-devel
davispuh has joined #dri-devel
bmodem has joined #dri-devel
lemonzest has joined #dri-devel
cef has quit [Quit: Zoom!]
fab has quit [Quit: fab]
jkrzyszt has joined #dri-devel
sukuna has joined #dri-devel
sukuna has quit [Remote host closed the connection]
flynnjiang1 has joined #dri-devel
flynnjiang has quit [Ping timeout: 480 seconds]
sukuna1 has quit [Ping timeout: 480 seconds]
sima has joined #dri-devel
jsa has joined #dri-devel
cef has joined #dri-devel
fab has joined #dri-devel
kts has joined #dri-devel
tzimmermann has joined #dri-devel
bmodem has quit [Ping timeout: 480 seconds]
sghuge has quit [Remote host closed the connection]
sghuge has joined #dri-devel
cef has quit [Quit: Zoom!]
rz has quit [Remote host closed the connection]
rz has joined #dri-devel
bmodem has joined #dri-devel
<tzimmermann> javierm, may i ask you to review the rest of v2 of the fbdev rework patchset? you already did the hard work. the rest of the patches are mostly one-liners throught the drivers. https://patchwork.freedesktop.org/series/131037/
cef has joined #dri-devel
<javierm> tzimmermann: sure, I'll go through them today
valentine has quit [Quit: Reconnecting]
valentine has joined #dri-devel
<tzimmermann> javierm, thank you so much
mvlad has joined #dri-devel
valentine has quit [Quit: Reconnecting]
valentine has joined #dri-devel
valentine has quit []
valentine has joined #dri-devel
lynxeye has joined #dri-devel
yyds_ has joined #dri-devel
warpme has joined #dri-devel
<pq> bwidawsk, I'm curious, what do you want to achieve in general?
yyds has quit [Ping timeout: 480 seconds]
jsa has quit [Ping timeout: 480 seconds]
kts has quit [Ping timeout: 480 seconds]
kj2 has joined #dri-devel
bmodem has quit [Ping timeout: 480 seconds]
kts has joined #dri-devel
YuGiOhJCJ has quit [Quit: YuGiOhJCJ]
pH5 has quit []
<sima> rg3igalia, don't we have like 6 +1 already from current board members anyway?
<sima> oops wrong channel :-)
ungeskriptet is now known as Guest912
ungeskriptet has joined #dri-devel
yyds_ has quit [Ping timeout: 480 seconds]
pH5 has joined #dri-devel
jsa has joined #dri-devel
yyds has joined #dri-devel
Guest912 has quit [Ping timeout: 480 seconds]
Haaninjo has joined #dri-devel
zxrom has joined #dri-devel
rasterman has joined #dri-devel
warpme has quit []
apinheiro has joined #dri-devel
rz has quit [Remote host closed the connection]
rz has joined #dri-devel
flynnjiang1 has quit []
jsa has quit [Ping timeout: 480 seconds]
pcercuei has joined #dri-devel
mwk has joined #dri-devel
yyds has quit [Remote host closed the connection]
jsa has joined #dri-devel
kts has quit [Ping timeout: 480 seconds]
rz has quit [Remote host closed the connection]
rz has joined #dri-devel
kts has joined #dri-devel
sgruszka has joined #dri-devel
warpme has joined #dri-devel
kts has quit [Ping timeout: 480 seconds]
imre is now known as Guest918
imre has joined #dri-devel
iyes has joined #dri-devel
Guest918 has quit [Ping timeout: 480 seconds]
iyes has quit [Quit: Konversation terminated!]
iyes has joined #dri-devel
fab has quit [Ping timeout: 480 seconds]
himal has quit [Remote host closed the connection]
<daniels> demarchi: nice, thanks!
warpme has quit []
DragoonAethis has quit [Ping timeout: 480 seconds]
jsa has quit [Ping timeout: 480 seconds]
CME_ has quit [Ping timeout: 480 seconds]
jsa has joined #dri-devel
sgruszka has quit [Quit: Leaving]
loki_val has quit []
crabbedhaloablut has joined #dri-devel
iyes has quit [Remote host closed the connection]
robert_mader has joined #dri-devel
jsa has quit [Ping timeout: 480 seconds]
kts has joined #dri-devel
guludo has joined #dri-devel
tomba_ is now known as tomba
jsa has joined #dri-devel
guludo has quit [Quit: WeeChat 4.2.2]
himal has joined #dri-devel
Company has joined #dri-devel
jsa has quit [Ping timeout: 480 seconds]
rsalvaterra has quit [Ping timeout: 480 seconds]
rsalvaterra has joined #dri-devel
Haaninjo has quit [Quit: Ex-Chat]
azerov has quit [Quit: Gateway shutdown]
azerov has joined #dri-devel
jsa has joined #dri-devel
carbonfiber has joined #dri-devel
jsa has quit [Ping timeout: 480 seconds]
kts has quit [Ping timeout: 480 seconds]
jsa has joined #dri-devel
warpme has joined #dri-devel
glennk has quit [Ping timeout: 480 seconds]
<bwidawsk> pq: ultimately I would like to use writeback on chromeos for feedback reports. on chromeos I can share master. I wanted to make the tool work for Linux too with leases
<bwidawsk> I can put it in the compositor but was hoping to have a discrete took
<bwidawsk> tool
chloekek has joined #dri-devel
rsalvaterra has quit [Ping timeout: 480 seconds]
<pq> bwidawsk, maybe it is the original KMS master that cleans up the KMS state before giving you the lease? They would not want to leak any content to you in the first place.
<bwidawsk> pq: yeah I don't see anything that obviously does this, but it does make sense
<bwidawsk> kinda a bummer for me though
<pq> it just isn't what DRM leasing is for :-)
warpme has quit []
<bwidawsk> but it's so close to being feasible
sukuna has joined #dri-devel
fab has joined #dri-devel
<pq> a session switch from the original KMS master to you would be closer to what you want, but both would need to opt in to a seamless switch, and even then the original KMS client may clean up the image before handing it over.
<pq> DRM lessor usually refuses to lease out the outputs its already using for the desktop in the first place
<pq> or so I assume, given that leasing was first intended for HMDs
warpme has joined #dri-devel
sukuna1 has joined #dri-devel
warpme has quit []
sukuna has quit [Ping timeout: 480 seconds]
<bwidawsk> session switch would require root, wouldn't it?
<pq> If your tool could work without special privileges, then there would be an open security hole leaking information.
<bwidawsk> well certainly master could refuse to lease
<pq> I'm not sure if it requires root, but if it doesn't, it probably requires the current session to agree to release.
<bwidawsk> as for session, yes of course
<pq> I don't think you can avoid the compositor needing to explicitly allow you to grab the contents.
<bwidawsk> seems so
warpme has joined #dri-devel
kts has joined #dri-devel
ghishadow has quit []
kts has quit [Ping timeout: 480 seconds]
simon-perretta-img has quit [Read error: Connection reset by peer]
simon-perretta-img has joined #dri-devel
warpme has quit []
epoch101 has joined #dri-devel
Duke`` has joined #dri-devel
iyes has joined #dri-devel
glennk has joined #dri-devel
rsalvaterra has joined #dri-devel
warpme has joined #dri-devel
warpme has quit []
ptrc has quit [Remote host closed the connection]
warpme has joined #dri-devel
alice has quit [Remote host closed the connection]
alice has joined #dri-devel
simon-perretta-img has quit [Read error: Connection reset by peer]
simon-perretta-img has joined #dri-devel
ptrc has joined #dri-devel
kts has joined #dri-devel
yyds has joined #dri-devel
warpme has quit [Read error: Connection reset by peer]
rsalvaterra_ has joined #dri-devel
rsalvaterra_ is now known as rsalvaterra
<MrCooper> bwidawsk pq: FWIW, the current DRM master can in principle grab the contents of any KMS FBs of its device, it just needs to brute-force the IDs
coldfeet has joined #dri-devel
kj2 has quit [Remote host closed the connection]
Calandracas has quit [Remote host closed the connection]
kts has quit [Ping timeout: 480 seconds]
Calandracas has joined #dri-devel
kts has joined #dri-devel
epoch101_ has joined #dri-devel
epoch101 has quit [Ping timeout: 480 seconds]
kts has quit []
epoch101 has joined #dri-devel
epoch101_ has quit [Read error: Connection reset by peer]
DragoonAethis has joined #dri-devel
<bwidawsk> MrCooper: interesting, but this still won't work for me since I don't have a way to know which fb was being read from
rz has quit [Remote host closed the connection]
<bwidawsk> /almost/ there
rz has joined #dri-devel
<bwidawsk> hmm, I suppose before taking the lease, I could record what fb id the crtc is reading from?
<sima> MrCooper, feels a bit like an oopsie to me :-)
<bwidawsk> sima: I think any reasonable system just wouldn't allow leasing :D
Calandracas has quit [Remote host closed the connection]
<bwidawsk> a lot of the valid use cases end up being in closed systems
carbonfiber has quit [Quit: Connection closed for inactivity]
zxrom has quit []
epoch101_ has joined #dri-devel
epoch101 has quit [Ping timeout: 480 seconds]
rsalvaterra has quit [Ping timeout: 480 seconds]
<sima> bwidawsk, I meant more for the vt switch case, if the other compositor doesn't clean up it's fb list
<sima> otoh it's also gated behind CAP_SYS_ADMIN for actually getting at the buffer, so should be all ok
<bwidawsk> oh, well if you have ADMIN all bets are off
rasterman has quit [Quit: Gettin' stinky!]
Calandracas has joined #dri-devel
coldfeet has quit [Remote host closed the connection]
simon-perretta-img has quit [Ping timeout: 480 seconds]
kts has joined #dri-devel
simon-perretta-img has joined #dri-devel
<MrCooper> sima: seamless handover to a non-CAP_SYS_ADMIN master couldn't work if so?
rsalvaterra has joined #dri-devel
<sima> MrCooper, hm right I misread
<sima> not sure if compositors know this though, I certainly missed it
greenjustin has joined #dri-devel
<zamundaaa[m]> I was aware of it at least
<sima> MrCooper, specifically thinking of fb that another compositor created but which aren't in active use on any plane
<sima> zamundaaa[m], ^^ this part too?
simon-perretta-img has quit [Read error: Connection reset by peer]
<sima> like that active fb are leaked is by design, and compositor can put up a splash to hide anything that needs hiding
simon-perretta-img has joined #dri-devel
<zamundaaa[m]> Inactive fbs being leaked is surprising for sure, but KWin doesn't keep them around permanently so it's fine for us
<MrCooper> right, seems like the best way to minimize the hole in the kernel would be to allow it only for FBs which are currently assigned to a plane for which the grabber is master
iyes has quit [Remote host closed the connection]
yyds has quit [Remote host closed the connection]
<sima> MrCooper, yeah it's pretty easy fix, check if the fb is for our file_priv, and if not, walk the plane list
<sima> bonus points for respective lease rules
<sima> *respecting
kts_ has joined #dri-devel
<bwidawsk> tl;dr I could make this work today with CAP_SYS_ADMIN but at some point it will get fixed?
<bwidawsk> s/with/without
robert_mader has quit [Quit: Leaving.]
simon-perretta-img has quit [Ping timeout: 480 seconds]
kts has quit [Ping timeout: 480 seconds]
simon-perretta-img has joined #dri-devel
Calandracas has quit [Remote host closed the connection]
<sima> bwidawsk, I lost context of what you want to do?
<bwidawsk> I'd like to get the output of a connector via writeback without SYS_ADMIN
<bwidawsk> (and without having master)
<sima> oh for that if we fix the getfb/2 checks it wont hurt, since that's only about fb which are not displayed
soreau has quit [Ping timeout: 480 seconds]
<sima> but yeah atm you can't
<sima> also in general this wont work without coordination with the current owner, because writeback needs hw resources and might mess up the current compositors config
<bwidawsk> well that's why I wanted to use leasing
epoch101_ has quit [Read error: Connection reset by peer]
<bwidawsk> I wanted to have a generic way to do this. We can do it only for chromeos ofc, I think Weston has such functionality too... but seemed neat if I could do it with leases on generic linux
<zamundaaa[m]> What you want to do is a very privileged operation and is intentionally not possible
<zamundaaa[m]> Drm leasing doesn't give you access to all drm resources, but on generic compositors only to one crtc, one drm plane and one connector - that of a connected VR headset to be specific
MrCooper has quit [Remote host closed the connection]
<sima> bwidawsk, writeback tends to need all kinds of additional hw resources, so trying to do that behind the compositor's back is far from guaranteed
<sima> for specific systems, sure, but in general you need to cooperate with the compositor
<sima> at that point just having a protocol with the compositor to give you the writeback frame is simpler
<sima> could then use hw writeback, or render compositing or whatever it feels like
<bwidawsk> yeah, what I have is already just a library, so it's fine, but again just trying to make it more generically usable
<bwidawsk> oh well
<sima> if you go the lease route, you need to hand over the entire compositor stuff and pray it's not going wrong (if you don't have protocol of some kind to coordinate the two)
<sima> like if both do atomic TEST_ONLY then there's no guarantee they'll both work
<sima> and things like that
<bwidawsk> in theory, couldn't one just lease a crtc/writeback connector and then set the crtc of the writeback connector?
<bwidawsk> hmm, yeah I guess lease API would make me lease a crtc
<sima> hw resources are shared
<sima> leases get out of this issue because the compositor can just revoke a lease and shut it all down
soreau has joined #dri-devel
<bwidawsk> well, in many cases, compositor wouldn't be using the writeback connector, but getting to the crtc is problematic
<sima> but that's only clean if the lease is entirely separate set of kms things than what the compositor is using itself
<sima> if there's overlap it gets messy
epoch101 has joined #dri-devel
<bwidawsk> It seems like if the API did allow me to lease just the writeback conector (which it doesn't), that wouldn't be true
<bwidawsk> because just lease the wb connector and point it to the active crtc you want to get
tzimmermann has quit [Quit: Leaving]
<bwidawsk> but yes, with the current API I'd need a shared CRTC and FB for the currently running master
MrCooper has joined #dri-devel
<sima> bwidawsk, this is a limitation of compositor protocols, not the kernel
<bwidawsk> mm, I'm not using a compositor here, it's strictly DRM
<sima> only thing the kernel enforces is that if the lessor isn't using universal planes, then the primary/cursor plane get automatically added with the crtc
<bwidawsk> ```
<bwidawsk> * struct drm_mode_create_lease - Create lease
<bwidawsk> *
<bwidawsk> *
<bwidawsk> * Lease mode resources, creating another drm_master.
<bwidawsk> * one plane if &DRM_CLIENT_CAP_UNIVERSAL_PLANES is enabled. Alternatively,
<bwidawsk> * The @object_ids array must reference at least one CRTC, one connector and
<bwidawsk> ```
<bwidawsk> * the lease can be completely empty.
<sima> because otherwise Xorg would have been broken when I fixed some holes in the lease validation
<bwidawsk> well I can try to just lease the wb connector and see if I can make it work
<sima> oh right
<sima> we could probably ditch that limitation
jsa has quit [Ping timeout: 480 seconds]
<bwidawsk> but what I'm doing is fundamentally insecure as previously mentioned right?
<sima> since this validate_lease() code does not guarantee you at all that the lease is functional
<sima> bwidawsk, well if you get compositors to create the lease for you so they know what's up, then no
Calandracas has joined #dri-devel
<sima> if you create it behind their backs, then you might steal some hw resources and the compositor looks at an atomic commit that it thought should work per TEST_ONLY, but now suddenly doesnt
<sima> essentially the compositor needs to be able to revoke leases if something goes wrong
<bwidawsk> hmm, if just doing this through DRM how do you know if your lease was revoked? You just start getting failures
<zamundaaa[m]> bwidawsk: you can't get a lease "just through DRM"
<zamundaaa[m]> You can only get it from the drm master
robert_mader has joined #dri-devel
<bwidawsk> oh, create_lease has to be called by master
<zamundaaa[m]> yes
<bwidawsk> hmm, it was seeming to work with kmscube + vkms, I wonder what I did wrong
<austriancoder> I am seeing some wired build problem with debian/x86_64_test-android container on ci: https://gitlab.freedesktop.org/mesa/mesa/-/jobs/57551594
<austriancoder> DavidHeidelberg: eric_engestrom
<bwidawsk> ah, I think I see what was going wrong
<bwidawsk> in my test script I was using `kmscube -A` which apparently fails on vkms
<bwidawsk> so kmscube didn't actually grab master
<bwidawsk> zamundaaa[m], sima, pq, MrCooper: thanks for the enlightenment
zxrom has joined #dri-devel
dwfreed has quit [Ping timeout: 600 seconds]
dwfreed has joined #dri-devel
kts_ has quit [Ping timeout: 480 seconds]
gouchi has joined #dri-devel
himal has quit [Ping timeout: 480 seconds]
<lileo> what exactly does "universal" in the universal kms planes concept mean? Is it to say that all kms drivers expose the same types of planes, or that planes should have general-purpose support for things (rather than just for video/cursor/etc)?
fab has quit [Quit: fab]
<emersion> universal means that primary + cursor planes are exposed
<emersion> old userspace only expects overlay planes
<emersion> new userspace should always enable it
<emersion> (atomic implicitly enables it iirc)
kj2 has joined #dri-devel
kj2 has quit []
robert_mader has quit [Quit: Leaving.]
gouchi has quit [Remote host closed the connection]
gouchi has joined #dri-devel
gouchi has quit []
kj2 has joined #dri-devel
madhavpcm has quit []
valida-69[m] has quit []
kj3 has joined #dri-devel
kj3 has quit []
kj2 has quit []
kerel has quit []
kj2 has joined #dri-devel
lynxeye has quit [Quit: Leaving.]
rauji____ has quit []
MatrixTravelerbot[m] has quit []
kj2 has quit []
sudeepd has joined #dri-devel
epoch101_ has joined #dri-devel
Guest596 has quit []
epoch101 has quit [Ping timeout: 480 seconds]
kj2 has joined #dri-devel
knr has quit []
Haaninjo has joined #dri-devel
jhubbard has joined #dri-devel
<lileo> hmm so more so exposing all the planes, rather than just the additional overlays
sudeepd has quit [Ping timeout: 480 seconds]
daissi has quit []
LaughingMan[m] has quit []
cleverca22[m] has quit []
<mareko> zmike: you also want this for mediump: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28685/
Pierce[m] has quit []
jhubbard has quit []
temp has joined #dri-devel
temp has left #dri-devel [#dri-devel]
tobiasjakobi has joined #dri-devel
tobiasjakobi has quit [Remote host closed the connection]
<zmike> mareko: probably
<zmike> though I doubt I'll ever enable mediump since I can't do 16bit io unless it's packed to 32bit
<zmike> which is kinda 😬
unerlige has left #dri-devel [#dri-devel]
jsa has joined #dri-devel
arisu has quit []
<mareko> zmike: skipping the high bits 16bit io during compaction would be possible
ajhalaney[m] has quit []
zzxyb[m] has quit []
hch12907 has quit []
Andy[m] has quit []
Celmor[m] has quit []
gouchi has joined #dri-devel
jsa has quit [Ping timeout: 480 seconds]
gouchi has quit []
unerlige has joined #dri-devel
Wallbraker has quit []
<DavidHeidelberg> austriancoder: WIP :P
matrix638[m] has quit []
a-865 has quit [Ping timeout: 480 seconds]
bylaws1 has quit []
a-865 has joined #dri-devel
jkrzyszt has quit [Ping timeout: 480 seconds]
<zmike> mareko: is it really gaining anything at that point?
Duke`` has quit [Ping timeout: 480 seconds]
sythemeta847[m] has quit []
<mareko> zmike: yes if vulkan drivers do the tight compaction
<zmike> so this would be 4 dwords with the low 16bits populated?
<mareko> yeah the high 16 bits would be unused
<zmike> hm
<zmike> I suppose
<mareko> is it a SPIR-V limitation?
<zmike> yes, the Component decoration must be less than 4
<zmike> so there cannot be 8x components for 16bit
<zmike> I could manually pack it into dwords myself if a vk driver is going to unpack it, but that seems like wishful thinking
<mareko> non-interpolated IO doesn't care about the bit size
<zmike> probably something for a month or two from now anyway, I gotta switch contexts for a while
Ella[m] has quit []
mvlad has quit [Remote host closed the connection]
Kayden has quit [Quit: -> evolve]
epoch101_ has quit []
jhli has quit [Remote host closed the connection]
sima has quit [Ping timeout: 480 seconds]
iive has joined #dri-devel
simon-perretta-img has quit [Ping timeout: 480 seconds]
simon-perretta-img has joined #dri-devel
general_j[m] has quit []
Hi-Angel has quit []
marmarek[m] has quit []
underpantsgnome[m] has quit []
siddh has quit [Quit: Client limit exceeded: 20000]
iive has quit [Ping timeout: 480 seconds]
tayloralgo1[m] has quit []
nielsdg has quit []
iive has joined #dri-devel
pac85[m] has quit []
dabrain34[m] has quit []
Soroush has quit []
MarkCollins[m] has quit []
simon-perretta-img has quit [Ping timeout: 480 seconds]
Labnan[m] has quit []
mairacanal[m] has quit []
simon-perretta-img has joined #dri-devel
epoch101 has joined #dri-devel
epoch101 has quit []
alanc has quit [Remote host closed the connection]
alanc has joined #dri-devel
davispuh has quit [Ping timeout: 480 seconds]
simon-perretta-img has quit [Ping timeout: 480 seconds]