xwayland: use -displayfd instead of USR1 to signal readiness
We want to wait for Xwayland to be ready before issuing it blocking requests, but relying on USR1 is a bit unsafe:
- we can't ascertain the signal originated from Xwayland
- if weston is started as PID1 (e.g. in its own container), then Xwayland will not send SIGUSR1 and X11 connections will be stuck forever: xorg/xserver#1312
Creating a pipe and using -displayfd, even if we don't care about the display value itself, is safe and works for all cases
Thanks!
Edited by Dominique Martinet