screensaver kicks in while typing

Bug #1194568 reported by Christoph Wickert
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Sakura
Incomplete
Low
Unassigned
sakura (Fedora)
Won't Fix
Medium

Bug Description

A Fedora users reported that xscreensaver kicks in he is while typing in sakura even though the idle timeout is not reached. I can confirm this behavior with sakura 3.1.0 and earlier versions. Other terminals are fine, vte based ones, too. It seems that sakura does not update the xserver about keytrokes within it's window.

More info is available in the downstream bug at https://bugzilla.redhat.com/show_bug.cgi?id=908891

Revision history for this message
In , Jeff (jeff-redhat-bugs) wrote :

Description of problem:
Multiple times over the past two days, xscreensaver has locked my screen while I'm in the middle of typing. I rebooted and the problem still happens. There's nothing interesting in ~/.xsession-errors or /var/log/Xorg.0.log, although I can attach them if required.

I'm not 100% certain, but I believe I've been managing email in mutt running in sakura (a terminal emulator) when the screensaver kicked in. So I was not moving the mouse, and all key events were going to terminal+mutt.

I restarted xscreensaver with
   xscreensaver -verbose -no-capture-stderr -log ~/tmp/xscreensaver.log

I'll attach the logs the next time it kicks in.

I'm running Xfce desktop.

Version-Release number of selected component (if applicable):
xscreensaver-base-5.20-3.fc18.x86_64
xfce4-session-4.10.0-4.fc18.x86_64

How reproducible:
unknown

Steps to Reproduce:
1. log in to Xfce desktop
2. spend some time in mutt w/o moving the mouse?

Actual results:
screensaver kicks in and locks screen even though the keyboard has not been idle

Expected results:
key events prevent screensaver from starting

Additional info:

Revision history for this message
In , Jeff (jeff-redhat-bugs) wrote :

A similar problem has been reported on Debian:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=678279

Revision history for this message
In , Jeff (jeff-redhat-bugs) wrote :

Created attachment 694712
xscreensaver debug log

I didn't have to wait very long, it just happened again at 13:29:08

Revision history for this message
In , Jeff (jeff-redhat-bugs) wrote :

I also tried running this little C program below to print the X server idle time. I was curious if the idle time was increasing even though I was typing.

It's odd, but the idle time appears to be staying quite low:

$ while : ; do echo "$(date) : $(./xprintidle)"; sleep 10 ; done
...
Thu Feb 7 13:28:59 CST 2013 : 1310
Thu Feb 7 13:29:09 CST 2013 : 7
Thu Feb 7 13:29:19 CST 2013 : 6711
Thu Feb 7 13:29:29 CST 2013 : 911
...

The screensaver kicked in at 13:29:08 even though the idle time was no more than 11.3 seconds, and my xscreensaver timeout is at 60 seconds (normally it's 5 minutes, but I reduced it to 1 minute for debugging).

http://stackoverflow.com/questions/11887679/how-does-x11-xscreensaver-know-how-long-ive-been-idle-xprintidle-unhelpful

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#include <X11/extensions/scrnsaver.h>
#include <stdio.h>

int main() {
    Display *display = XOpenDisplay(0);
    if (display != 0) {
      XScreenSaverInfo *info = XScreenSaverAllocInfo();
      XScreenSaverQueryInfo(display, DefaultRootWindow(display), info);
      if (info)
      {
        printf("%lu\n", info->idle);
        XFree(info);
        return 0;
      }
      return -1;
    }
    return -1;
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Revision history for this message
In , Jeff (jeff-redhat-bugs) wrote :

And it happened again at 13:56:14

idle time utility output:
=========================
$ while : ; do echo "$(date) : $(./xprintidle)"; sleep 10 ; done
...
Thu Feb 7 13:56:01 CST 2013 : 158
Thu Feb 7 13:56:11 CST 2013 : 2086
Thu Feb 7 13:56:21 CST 2013 : 680
Thu Feb 7 13:56:31 CST 2013 : 10688
...

xscreensaver debug logs:
========================
xscreensaver: 13:56:14: user is idle (timeout)
xscreensaver: 13:56:14: blanking screen at Thu Feb 7 13:56:14 2013.
xscreensaver: 13:56:14: mouse is on screen 1 of 2
xscreensaver: 13:56:14: 1: grabbing keyboard on 0xb2... GrabSuccess.
xscreensaver: 13:56:14: 1: grabbing mouse on 0xb2... GrabSuccess.
xscreensaver: 13:56:14: fading...
xscreensaver: 13:56:15: fading done.
xscreensaver: 13:56:15: 0: locked mode switching.
xscreensaver: 13:56:15: user is active (keyboard activity)
xscreensaver: 13:56:15: pam_start ("xscreensaver", "jbastian", ...) ==> 0 (Success)
xscreensaver: 13:56:15: pam_set_item (p, PAM_TTY, ":0.0") ==> 0 (Success)
xscreensaver: 13:56:15: pam_authenticate (...) ...
xscreensaver: 13:56:15: pam_conversation (ECHO_OFF="Password: ") ...
xscreensaver: 13:56:15: mouse is on screen 1 of 2
xscreensaver: 13:56:15: mouse is on screen 1 of 2
xscreensaver: 13:56:15: 1: mouse is at 2309,744.
xscreensaver: 13:56:15: 1: creating password dialog ("")
xscreensaver: 13:56:15: mouse is on screen 1 of 2
xscreensaver: 13:56:15: grabbing server...
xscreensaver: 13:56:15: 1: ungrabbing mouse (was 0xb2).
xscreensaver: 13:56:15: 1: grabbing mouse on 0x24001e3... GrabSuccess.
xscreensaver: 13:56:15: ungrabbing server.
xscreensaver: 13:56:19: input finished.
xscreensaver: 13:56:19: pam_conversation (...) ==> PAM_SUCCESS
xscreensaver: 13:56:20: pam_authenticate (...) ==> 0 (Success)
xscreensaver: 13:56:20: pam_acct_mgmt (...) ==> 0 (Success)
xscreensaver: 13:56:20: pam_setcred (...) ==> 0 (Success)
xscreensaver: 13:56:20: pam_end (...) ==> 0 (Success)
xscreensaver: 13:56:20: grabbing server...
xscreensaver: 13:56:20: 1: ungrabbing mouse (was 0x24001e3).
xscreensaver: 13:56:20: 1: grabbing mouse on 0xb2... GrabSuccess.
xscreensaver: 13:56:20: ungrabbing server.
xscreensaver: 13:56:20: 1: moving mouse back to 2309,744.
xscreensaver: 13:56:20: discarding MotionNotify event.
xscreensaver: 13:56:20: 1: destroying password dialog.
xscreensaver: 13:56:20: unblanking screen at Thu Feb 7 13:56:20 2013.
xscreensaver: 13:56:20: 1: ungrabbing mouse (was 0xb2).
xscreensaver: 13:56:20: 1: ungrabbing keyboard (was 0xb2).
xscreensaver: 13:56:20: 0: unlocked mode switching.
xscreensaver: 13:56:20: starting de-race timer (10 seconds.)
xscreensaver: 13:56:20: awaiting idleness.
xscreensaver: 13:56:30: de-race completed.

Revision history for this message
In , Jeff (jeff-redhat-bugs) wrote :

It seems to be a problem only with the sakura terminal program.

I tried running mutt in Xfce Terminal and urxvt and the screensaver did not start while I was actively typing.

I guess I'll switch to urxvt for now, but it is strange that the idle time is getting reset even when using sakura and yet the screensaver starts.

Revision history for this message
In , Mamoru (mamoru-redhat-bugs) wrote :

xscreensaver does not use MIT extension (including XScreenSaverQueryInfo). Some comments in the files in driver/ directory implies that there were some troubles when using MIT extension before (I don't know well).

So for now switching to sakura.

Revision history for this message
In , Christoph (christoph-redhat-bugs) wrote :

I can confirm the problem with the latest sakura 3.1.0 package and reported it upstream to the developer at https://bugs.launchpad.net/fedora/+source/sakura/+bug/1194568

Revision history for this message
David Gómez (dabisu) wrote :

I've tested with xscreensaver and sakura and everything is ok. The original report says this problem is trigered only when using mutt, but I haven't tested yet sakura+mutt.

Revision history for this message
Christoph Wickert (cwickert) wrote :

Thanks for your quick response.

It's not muss-specific, I was able to reproduce the problem just with commands like "ls" and "cd".
xscreensaver 5.21
xorg 1.13.3

Revision history for this message
David Gómez (dabisu) wrote :

I'm testing with mutt and sakura and cannot reproduce it. While i'm typing xscreensaver doesn't kicks in (i'm use 1 minute for testing).

Not mutt specific? So it seems it only happens in Fedora. What version of libvte is available in Fedora?

Revision history for this message
Christoph Wickert (cwickert) wrote :

So you set the xscreensaver timeout to 1 minute and xscreensaver is running. Does it kick in when idle?

Maybe it's Fedora-specific. I am building against vte 0.34.2 and gtk 3.6.4, at least with these versions two people are having the problem.

Revision history for this message
Christoph Wickert (cwickert) wrote :

FYI: here is the build log of a Fedora 19 build: http://koji.fedoraproject.org/koji/getfile?taskID=5539424&name=build.log
Maybe you can spot something strange there,

Revision history for this message
David Gómez (dabisu) wrote :

Yes. When idle, xscreensaver kicks in as expected. And doesn't when i'm typing in sakura.

So i don't have a clue about what's going on in Fedora 19.

David Gómez (dabisu)
Changed in sakura:
status: New → Incomplete
Revision history for this message
Christoph Wickert (cwickert) wrote :

I am still seeing the same issue in Fedora 20 with sakura 3.1.3, Xorg 1.14.4 and xscreensaver 5.23. Please let me know if you have ideas how to debug this.

Changed in sakura:
status: Incomplete → New
Revision history for this message
In , Fedora (fedora-redhat-bugs) wrote :

This message is a reminder that Fedora 18 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 18. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as WONTFIX if it remains open with a Fedora
'version' of '18'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version'
to a later Fedora version prior to Fedora 18's end of life.

Thank you for reporting this issue and we are sorry that we may not be
able to fix it before Fedora 18 is end of life. If you would still like
to see this bug fixed and are able to reproduce it against a later version
of Fedora, you are encouraged change the 'version' to a later Fedora
version prior to Fedora 18's end of life.

Although we aim to fix as many bugs as possible during every release's
lifetime, sometimes those efforts are overtaken by events. Often a
more recent Fedora release includes newer upstream software that fixes
bugs or makes them obsolete.

Revision history for this message
In , Fedora (fedora-redhat-bugs) wrote :

Fedora 18 changed to end-of-life (EOL) status on 2014-01-14. Fedora 18 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.

David Gómez (dabisu)
Changed in sakura:
status: New → Incomplete
Revision history for this message
Christoph Wickert (cwickert) wrote :

David, I would love to provide more info, that's why I asked for ideas how to debug this. Please don't just mark the bug incomplete.

Revision history for this message
David Gómez (dabisu) wrote :

I don't have any ideas, and I don't have any Fedora installed, nor I'll have. That's why i marked it as incomplete. Currently is already difficult for me to test and develop sakura, in terms of time and resources, so i cannot do a test instalation of Fedora. I can maintain the bug open if you hope that someone will apear, reproduce this bug in Fedora, and fix it.

David Gómez (dabisu)
Changed in sakura:
status: Incomplete → Confirmed
importance: Undecided → Low
Changed in sakura (Fedora):
importance: Unknown → Medium
status: Unknown → Won't Fix
David Gómez (dabisu)
Changed in sakura:
status: Confirmed → Incomplete
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.