Bug#381297: [Pkg-utopia-maintainers] Bug#381297: dbus: X keyboard interference debuging - small progress

Martin-Éric Racine q-funk at iki.fi
Wed Aug 9 15:34:31 UTC 2006


ke, 2006-08-09 kello 00:31 +0300, Martin-Éric Racine kirjoitti:
> ti, 2006-08-08 kello 22:33 +0200, Sjoerd Simons kirjoitti:
> > On Thu, Aug 03, 2006 at 06:16:29PM +0300, Martin-Éric Racine wrote:
> > > I welcome further step-by-step instructions to perform, towards finding
> > > the source of this keyboard input disruption by dbus-enabled apps in X.
> > 
> > I doubt it's dbus (thatis the session bus) itself but instead something on the
> > session bus. Which dies when you kill the session bus.
> > 
> > Try looking at the difference between your procress listing before and 
> > after killing the session bus. Probably same apps have quit (among which the
> > one guilty for your slugish keyboard)
> 
> As mentioned in the original bug report, been there done that. NO SINGLE
> APPLICATION died as the result of killing dbug daemons.

Hmm.  It seems I forgot to actually mention it.  Anyhow, NO, there is no
other application that dies in the process of killing D-Bus components.

However, as suggested over IRC, I straced this and it indeed taps into
the keyboard:

me        2116  0.1  0.7   4452  1868 ?        Ss   18:24   0:00 -bash startx -- vt1 -s 5 -quiet -p 5 -nolisten tcp dpms -dpime        2140  0.0  0.2   2428   684 ?        S    18:24   0:00  \_ xinit /etc/X11/xinit/xinitrc -- /usr/bin/X vt1 -s 5 -quiroot      2141  4.0  5.0  18368 12400 tty1     Ss+  18:24   0:04      \_ /usr/bin/X :0 vt1 -s 5 -quiet -p 5 -nolisten tcp dpm
me        2144  0.0  0.4   4776  1036 ?        S    18:24   0:00      \_ x-session-manager
me        2182  0.0  0.2   4400   704 ?        Ss   18:24   0:00          \_ /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-wme        2187  0.9  0.7   4852  1900 ?        SNs  18:24   0:00          \_ icewmbg
me        2188  0.7  1.6   8384  3964 ?        Ss   18:24   0:00          \_ icewm
me        2189  0.1  0.8   6200  2056 ?        Ss   18:24   0:00          \_ icewmtray
root      2117  0.0  0.1   1592   488 tty7     Ss+  18:24   0:00 /sbin/getty 38400 tty7
me        2176  6.1 10.4 108172 25552 ?        Sl   18:24   0:05 /usr/lib/firefox/firefox-bin
me        2185  0.0  0.2   2648   632 ?        S    18:24   0:00 /usr/bin/dbus-launch --exit-with-session x-session-manager
me        2186  0.0  0.1   2052   424 ?        Ss   18:24   0:00 dbus-daemon --fork --print-pid 8 --print-address 6 --sessionme        2193  0.3  0.9   4852  2324 ?        S    18:24   0:00 /usr/lib/libgconf2-4/gconfd-2 10
nino:/root# strace -p 2185
Process 2185 attached - interrupt to quit
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340H", 512)                   = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\234", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340H", 512)                   = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340\310", 512)                = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340H", 512)                   = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340\310", 512)                = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340H", 512)                   = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340\310", 512)                = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340H", 512)                   = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340\310", 512)                = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\35", 512)                     = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, ".", 512)                       = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\256", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, ".", 512)                       = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\256", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, ".", 512)                       = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\256", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\235", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340H", 512)                   = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340\310", 512)                = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340H", 512)                   = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340\310", 512)                = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340H", 512)                   = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340\310", 512)                = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340H", 512)                   = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340\310", 512)                = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340H", 512)                   = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\340\310", 512)                = 2
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, " ", 512)                       = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\240", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\27", 512)                     = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\227", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\23", 512)                     = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\223", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\34", 512)                     = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\234", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\34", 512)                     = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\234", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\34", 512)                     = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\234", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\34", 512)                     = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\234", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\1", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\201", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "$", 512)                       = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\244", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "#", 512)                       = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\243", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, " ", 512)                       = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\240", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\27", 512)                     = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\227", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\24", 512)                     = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\224", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "$", 512)                       = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\244", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\"", 512)                      = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\242", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "#", 512)                       = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\243", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "$", 512)                       = 1
select(5, [0 4], NULL, [0 4], NULL)     = 1 (in [0])
ioctl(4, FIONREAD, [0])                 = 0
read(0, "\244", 512)                    = 1
select(5, [0 4], NULL, [0 4], NULL

... and more of the same as I keep on typing on our test subject's
keyboard.

-- 
Martin-Éric Racine
http://q-funk.iki.fi





More information about the Pkg-utopia-maintainers mailing list