ChanServ changed the topic of #wayland to: https://wayland.freedesktop.org | Discussion about the Wayland protocol and its implementations, plus libinput | register your nick to speak
ppascher has quit [Ping timeout: 480 seconds]
fmuellner has quit [Ping timeout: 480 seconds]
duxsco has quit [Quit: Leaving]
MarcusBritanicus[m] has quit [Ping timeout: 480 seconds]
DrNick has quit [Ping timeout: 480 seconds]
DemiMarieObenour[m] has quit [Ping timeout: 480 seconds]
i509VCB has quit [Ping timeout: 480 seconds]
robertmader[m] has quit [Ping timeout: 480 seconds]
psydroid[m] has quit [Ping timeout: 480 seconds]
pitsch[m] has quit [Ping timeout: 480 seconds]
bluepenquin has quit [Ping timeout: 480 seconds]
nielsdg has quit [Ping timeout: 480 seconds]
ujineli[m] has quit [Ping timeout: 480 seconds]
popeishere[m] has quit [Ping timeout: 480 seconds]
mooff[m] has quit [Ping timeout: 480 seconds]
danburd[m] has quit [Ping timeout: 480 seconds]
aplund[m] has quit [Ping timeout: 480 seconds]
toggleton[m] has quit [Ping timeout: 480 seconds]
flyingketh[m] has quit [Ping timeout: 480 seconds]
idkrn[m] has quit [Ping timeout: 480 seconds]
Eighth_Doctor has quit [Ping timeout: 480 seconds]
go4godvin has quit [Ping timeout: 480 seconds]
inkbottle[m] has quit [Ping timeout: 480 seconds]
doras has quit [Ping timeout: 480 seconds]
GeorgesStavracasfeaneron[m] has quit [Ping timeout: 480 seconds]
ozwald1[m]1 has quit [Ping timeout: 480 seconds]
heftig has quit [Ping timeout: 480 seconds]
deknos82[m] has quit [Ping timeout: 480 seconds]
jryans has quit [Ping timeout: 480 seconds]
anomalous_creator[m] has quit [Ping timeout: 480 seconds]
MatrixTravelerbot[m] has quit [Ping timeout: 480 seconds]
[old]freshgumbubbles[m] has quit [Ping timeout: 480 seconds]
RomanGilg[m] has quit [Ping timeout: 480 seconds]
cmeissl[m] has quit [Ping timeout: 480 seconds]
junglerobba[m] has quit [Ping timeout: 480 seconds]
bdaase[m] has quit [Ping timeout: 480 seconds]
apol[m] has quit [Ping timeout: 480 seconds]
Sumera[m] has quit [Ping timeout: 480 seconds]
feta has quit [Ping timeout: 480 seconds]
hex[m]1 has quit [Ping timeout: 480 seconds]
Levans has quit [Ping timeout: 480 seconds]
varlad[m] has quit [Ping timeout: 480 seconds]
MA[m] has quit [Ping timeout: 480 seconds]
FbioPacheco[m] has quit [Ping timeout: 480 seconds]
japchae[m] has quit [Ping timeout: 480 seconds]
digitalfavshetheyname[m] has quit [Ping timeout: 480 seconds]
ttancos[m] has quit [Ping timeout: 480 seconds]
zaibon[m] has quit [Ping timeout: 480 seconds]
Shimmy[m] has quit [Ping timeout: 480 seconds]
arichardson[m] has quit [Ping timeout: 480 seconds]
Poly[m] has quit [Ping timeout: 480 seconds]
davidre has quit [Ping timeout: 480 seconds]
edrex[m] has quit [Ping timeout: 480 seconds]
botiapa[m] has quit [Ping timeout: 480 seconds]
zamundaaa[m] has quit [Ping timeout: 480 seconds]
gnustomp[m] has quit [Ping timeout: 480 seconds]
YaLTeR[m] has quit [Ping timeout: 480 seconds]
niecoinny[m] has quit [Ping timeout: 480 seconds]
ashketchum[m] has quit [Ping timeout: 480 seconds]
shadowninja55[m] has quit [Ping timeout: 480 seconds]
vchernin[m] has quit [Ping timeout: 480 seconds]
rails[m] has quit [Ping timeout: 480 seconds]
teh1[m] has quit [Ping timeout: 480 seconds]
smasher_tati[m] has quit [Ping timeout: 480 seconds]
Kelseyjgilbert[m] has quit [Ping timeout: 480 seconds]
emilio[m] has quit [Ping timeout: 480 seconds]
ammen99[m] has quit [Ping timeout: 480 seconds]
Mershl[m] has quit [Ping timeout: 480 seconds]
hasebastian[m] has quit [Ping timeout: 480 seconds]
louipcm has quit [Ping timeout: 480 seconds]
Guest40 has quit [Ping timeout: 480 seconds]
halfline[m] has quit [Ping timeout: 480 seconds]
heeen[m] has quit [Ping timeout: 480 seconds]
jmariondev[m] has quit [Ping timeout: 480 seconds]
rubo_[m] has quit [Ping timeout: 480 seconds]
pac85[m] has quit [Ping timeout: 480 seconds]
cousinofthor[m] has quit [Ping timeout: 480 seconds]
unrelentingtech has quit [Ping timeout: 480 seconds]
cb5r[m] has quit [Ping timeout: 480 seconds]
AndrewAylett[m] has quit [Ping timeout: 480 seconds]
d_ed[m] has quit [Ping timeout: 480 seconds]
nazarewk[m] has quit [Ping timeout: 480 seconds]
ongy[m] has quit [Ping timeout: 480 seconds]
JosExpsito[m] has quit [Ping timeout: 480 seconds]
GrahamPerrin[m] has quit [Ping timeout: 480 seconds]
Nico has quit [Ping timeout: 480 seconds]
hergertme has quit []
hergertme has joined #wayland
duxsco has joined #wayland
columbarius has joined #wayland
co1umbarius has quit [Ping timeout: 480 seconds]
MarcusBritanicus[m] has joined #wayland
robertmader[m] has joined #wayland
lxsameer3 has quit [Ping timeout: 480 seconds]
duxsco has quit [Quit: Leaving]
DrNick has joined #wayland
DrNick is now known as Guest449
rasterman has quit [Quit: Gettin' stinky!]
DemiMarieObenour[m] has joined #wayland
Company has quit [Quit: Leaving]
bluepenquin has joined #wayland
bluepenquin is now known as Guest454
Moprius has quit [Ping timeout: 480 seconds]
popeishere[m] has joined #wayland
mooff[m] has joined #wayland
glennk has quit [Ping timeout: 480 seconds]
glennk has joined #wayland
nielsdg has joined #wayland
aplund[m] has joined #wayland
Eighth_Doctor has joined #wayland
idkrn[m] has joined #wayland
danburd[m] has joined #wayland
bindu has joined #wayland
cool110_ has quit [Remote host closed the connection]
<emersion>
pq, "Opening a read-only file description and sending that may not be a reliable way to stop the remote side from writing"
<emersion>
how is this not reliable?
danvet has joined #wayland
Lucretia-backup has quit []
Lucretia has joined #wayland
jmabr has joined #wayland
jgrulich has quit [Remote host closed the connection]
jgrulich has joined #wayland
dcz has joined #wayland
Sachiel has quit [Ping timeout: 480 seconds]
Sachiel has joined #wayland
hergertme has quit [Ping timeout: 480 seconds]
hergertme has joined #wayland
lxsameer3 has joined #wayland
bittin has joined #wayland
bittin has quit [Remote host closed the connection]
<pq>
emersion, ISTR something about opening /proc/<getpid()>/fd/* so I'm not sure a read-only fd is safe.
<pq>
since those "symlinks" are actually special and the kernel does magic allowing you to open more than regular files
<pq>
or more than files that exist on the file system
<emersion>
eh i really hope this doesn't work
<pq>
MrCooper, the old parent surface buffer becomes visible, until the new parent surface buffer becomes ready (assuming the compositor does not use a buffer until it's ready).
<pq>
emersion, I don't know that it doesn't work, so I'm cautious :-)
<pq>
I also don't know if opening such thing from /proc is equivalent to open() or dup()
<pq>
MrCooper, the main point of "immediate" is that sub-surface destruction does not pend on a wl_surface.commit on the parent or any other wl_surface.
<pq>
MrCooper, it's not literally "immediate", because when a client sends that request, it takes time for the compositor to see thta request.
<pq>
MrCooper, I also assume that your "new output frame" means a new composition result, and not a new scanout cycle in display hardware.
<daniels>
emersion: yeah, this is why we seal the keymap fd
flacks has joined #wayland
<emersion>
hm right memfd + seal works in this case
<emersion>
doesn't work for the NONBLOCK stuff
<emersion>
i guess /proc/self/fd/ does help for the NONBLOCK stuff
<emersion>
since the FD flags will be separate
<pq>
you mean, instead of using /proc/self/fd/ as an attack vector, you use it to isolate yourself from the fd sender?
<emersion>
yea
<pq>
haha, I'm not sure if that's clever or too clever
<pq>
I mean, one option might be to deny all access to /proc/self/fd at kernel level
<dottedmag>
Hmm, can compositor actually do reopen all file descriptors via /proc/self/fd before passing them between the clients?
<pq>
but not if you need it for proper operation
<dottedmag>
is there anything in protocol that requires synchronized offsets/flags for proper operation?
halfline[m] has joined #wayland
<pq>
protocol no, but the code operating on an fd very easily makes assumptions about those
<kennylevinsen>
clients have been confused about the keymap fd in wlroots. We share it between processes, and some clients were read()'ing the entire thing
<pq>
like that ^
<pq>
using read() instead of pread()
<dottedmag>
so giving every client a separate copy would help, right?
<emersion>
some clients also were checking for RDWR
<pq>
yes, and eat memory
<emersion>
on the keymap
<emersion>
(chromium)
<emersion>
but that's fixed now
<pq>
or, separate copy of what?
<dottedmag>
of file _description_
<pq>
sure, if you can make copies
<pq>
I think that requires you to have file on the file system that you can open() to create those copies
<emersion>
yeah, so that doesn't work with plain pipe(2)
<pq>
pipes can't be multi-shared anyway
<pq>
memfd though...
jmdaemon has quit [Ping timeout: 480 seconds]
teh1[m] has joined #wayland
jgrulich has quit [Remote host closed the connection]