On Sat, Dec 18, 2021 at 12:25:26PM +0100, Jan Stary wrote: > On Dec 18 08:49:33, h...@stare.cz wrote: > > This is current/amd64 on a PC (dmesg below). > > > > After boot, I log into X, running cwm, > > an xterm, and a script(1) of this. > > > > |-+= 14944 root /usr/X11R6/bin/xenodm > > | |-+= 56178 _x11 /usr/X11R6/bin/X :0 vt05 -auth > > /etc/X11/xenodm/authdir/authf > > | | \--- 57333 root X: [priv] (Xorg) > > | \-+= 91925 root xenodm: :0 (xenodm) > > | \-+= 68368 hans /bin/sh /etc/X11/xenodm/Xsession > > | \-+- 25576 hans /bin/sh /home/hans/.xsession > > | \-+- 91387 hans cwm > > | \-+= 20802 hans /usr/X11R6/bin/xterm > > | \-+= 19542 hans -ksh (ksh) > > | \-+= 28689 hans script /tmp/suspend > > | \-+- 11621 hans script /tmp/suspend > > | \-+= 52575 hans /bin/ksh -i > > | \-+= 27287 hans pstree > > | \-+- 12714 hans sh -c ps -kaxwwo user,pid,ppid,pgid,comm > > | \--- 07440 hans ps -kaxwwo user > > > > > > >From that same xterm, I suspend with zzz. > > The messages of devices being detached are also below. > > > > Upon resume (messages also below), the xenodm login screen > > is there again - the session has been killed. > > None of the above processes is running. > > The xenodm login does not take keyboard input. > > The same thing happens when zzz is called from cron > while I am in X. > > But it does not happen whne I am switched to the console: > both zzz from the command line and zzz from cron > resume back to the console just fine; > swithing back to X then, it's all still there. > > What is it that makes the difference, > apparently resulting in killing the X session? > > Jan
This sounds a lot like the following known bug: https://marc.info/?l=openbsd-bugs&m=148447759618744&w=2 https://marc.info/?l=openbsd-bugs&m=149005961017985&w=2 I work around it by switching to a different virtual console before suspending. This is the command I use to lock my X session, switch vts, and sleep: xlock -startCmd 'wsconsctl -f /dev/ttyCcfg display.focus=0 && zzz' For that to work, I need to have access to /dev/ttyCcfg. I added /dev/ttyCcfg to /etc/X11/xenodm/{Give,Take}Console (handled the same way as the other devices files in those scripts) to solve that. I can't comment on the security implications of doing that. -- James