-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
On Sun, Nov 01, 2015 at 04:51:54PM -0500, Matt McCutchen wrote:
> On Sun, 2015-11-01 at 03:46 +0100, Marek Marczykowski-Górecki wrote:
> > On Sat, Oct 31, 2015 at 06:51:19PM -0700, Matt McCutchen wrote:
> > > This probably indicates
> > > a memory error in some code in the X server process; I don't know if it's
> > > Qubes-specific. I wasn't able to reproduce any memory errors under
> > > valgrind.
> >
> > Yes, may be so. Or some library (GDK?) used by those processes.
>
> Note, while the errors are reported by the X clients, they occur when
> MALLOC_PERTURB_ is used on the X server. The X server does not load GDK
> and does load some Qubes-specific code, so the bug may be in Qubes.
Yes, theoretically it may be.
> > "." on non-existent file isn't fatal normally, so it looked like
> > unneeded check (and the file should be created always, anyway).
>
> It might be worth mentioning (though the point is moot now) that I saw
> four processes try to read /tmp/qubes-session-env before it was created:
>
> - Login shell started by /usr/bin/qubes-run-xorg.sh (which will later
> create /tmp/qubes-session-env)
> - Login shell started by qrexec-agent for WaitForSession
> - Login shell started by /etc/qubes-rpc/qubes.WaitForSession
> - Login shell started by qrexec-agent for SetMonitorLayout
>
> (This doesn't include xinitrc, which only read it because of my
> ~/.profile customization.)
>
> > Hmm, maybe the whole /etc/qubes-session-env is not needed anymore, since
> > all the user processes are started through qrexec-fork-server (child of
> > qubes-session)? That qrexec-fork-server is used only for processes of
> > the same user (others are called directly from qrexec-agent using "su
> > -"), but with "-O /tmp/qubes-session-env" test restored, the file will
> > not be loaded in any of those cases.
>
> User processes started with "qvm-run --nogui" don't use
> qrexec-fork-server. Is there a reason for that?
The point of --nogui is to launch a process within minimalistic
environment (which loads fast). For example some simple service calls
(time set etc).
The major difference is on Windows, where it really doesn't attach such
process to the whole GUI session. But in Linux VM case the difference is
in two places:
- GUI daemon isn't started on demand (when the VM was started with
qvm-start --no-guid), so no qubes.WaitForSession call etc
- process is started in simple, minimal environment with just "su -"
In the above spirit, it should not load /tmp/qubes-session-env in such
case.
> If you change it, then
> I agree /tmp/qubes-session-env can be removed.
Ok, so to not introduce to much change, I think for R3.0 the "-O" check
should be restored and for R3.1 /tmp/qubes-session-env removed.
The only thing left to do, to not constantly fight with all that logind
etc tools, is to properly link user session with X session. Currently
it is workarounded by setting XDG_SEAT=seat0, which apparently works in
most cases.
- --
Best Regards,
Marek Marczykowski-Górecki
Invisible Things Lab
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQEcBAEBCAAGBQJWNqEAAAoJENuP0xzK19csGoAH/1E7mnaLjRLyQrCpSnHrDG+i
ezdMRnObJ8HtDVJ9nEIye854MUy8fApZDsYwvlXUkErASXBcoj1uCAKDBpDWKXNU
KfltQoJ/rXfJ8K0n3gH+5Pjfd2UTUWl54rikdAkN/f61hiZAxdSJXS8J/RqbTTMv
Avf3/pgEQqhqrqn84PjsspymL9rHDn4HmH+XOP2IdG1naWCo+dXTtNScfGLUY7mG
xl8nPPd3xUhPgPAHhjTqh0Fl0/pA85xQ5WDELZRBNTAa0/UvnTpak5QOUvKY8N4k
E5HOlZrhJRCKtBiAOMbKjDBu0AMbBGG+q3W+vu8njM+FWpcUEkcM5xunHmO3WI4=
=5acT
-----END PGP SIGNATURE-----