Your message dated Tue, 21 Mar 2006 05:02:14 -0800
with message-id <[EMAIL PROTECTED]>
and subject line Bug#355794: fixed in mouseemu 0.15-3
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Debian bug tracking system administrator
(administrator, Debian Bugs database)

--- Begin Message ---
Package: mouseemu
Version: 0.15-2

Problem:
--------

On my Powerbook5,8 (Oct. 2005 AlBook 15"), on intial boot, reliably, mouseemu 
eats all
CPU and stays like that until stopped. A restart makes it work again (sometimes 
needs
a second try to actually start).

Reason:
-------

Here are the files opened by mouseemu on intial boot, before Bluetooth
starts:

roo:~# lsof |grep mouseemu
[...]
mouseemu  3560        root    3r      CHR      13,64               2525 
/dev/input/event0
mouseemu  3560        root    4r      CHR      13,65               2537 
/dev/input/event1
mouseemu  3560        root    5r      CHR      13,66               2549 
/dev/input/event2
mouseemu  3560        root    6u      CHR     10,223               8986 
/dev/input/uinput
mouseemu  3560        root    7u      CHR     10,223               8986 
/dev/input/uinput

What these correspond to:

roo:~# for i in `ls -d /sys/class/input/input*`; do echo "$i: `cat $i/name`"; 
ls -d $i/event*; done
/sys/class/input/input0: HID 05ac:1000
/sys/class/input/input0/event0
/sys/class/input/input1: HID 05ac:1000
/sys/class/input/input1/event1
/sys/class/input/input2: Apple Computer Apple Internal Keyboard / Trackpad
/sys/class/input/input2/event2

In fact, event0 and event1 correspond to the internal Bluetooth dongle,
which is still configured as an HID device at this time.

However, as part of the Bluetooth startup, it is switched to HCI mode,
which produces this in dmesg:

usb 2-2: usbfs: USBDEVFS_CONTROL failed cmd hid2hci rqt 64 rq 0 len 0 ret -110
usb 2-2: USB disconnect, address 2
drivers/usb/input/hid-core.c: can't resubmit intr, 0001:10:15.0-2/input1, 
status -19
usb 2-2: new full speed USB device using ohci_hcd and address 3

Judging by the working Bluetooth, the switch to HCI seems to work, but
there are some logs. Most notably, the USB device
disconnects/reconnects. This of course makes the two event files linked
to the HID personality of the Bluetooth dongle disappear. That in return
makes mouseemu eat the CPU, because it sits in a tight select loop, as
shown by this strace output:

select(6, [3 4 5], NULL, NULL, {1, 0})  = 2 (in [3 4], left {1, 0})
read(3, 0x7fe8d940, 16)                 = -1 ENODEV (No such device)
read(4, 0x7fe8d930, 16)                 = -1 ENODEV (No such device)
..
etc. ad infinitum

So obviously FD 3 and 4 no longer map to an existing device. Those were
(see lsof output above) event0 and event1.

Solution
--------

mouseemu needs to handle disappearing event devices gracefully.

I'm not sure what would happen if
for instance a Bluetooth mouse is added after starting mouseemu (would
it work?) or disconnected (would mouseemu produce the same problem), or
the same with a keyboard (since I think it's keyboards mouseemu is
interested in, to "catch" emulation button events).

So it seems to me that mouseemu needs to be tolerant to changing
devices, both in working as expected with new ones, and adapting to
removed existing ones.

Thanks, and cheers

Michel

-------------------------------------------------------------------------
Michel Lanners                 |  " Read Philosophy.  Study Art.
23, Rue Paul Henkes            |    Ask Questions.  Make Mistakes.
L-1710 Luxembourg              |
email   [EMAIL PROTECTED]            |
http://www.cpu.lu/~mlan        |                     Learn Always. "



--- End Message ---
--- Begin Message ---
Source: mouseemu
Source-Version: 0.15-3

We believe that the bug you reported is fixed in the latest version of
mouseemu, which is due to be installed in the Debian FTP archive:

mouseemu_0.15-3.diff.gz
  to pool/main/m/mouseemu/mouseemu_0.15-3.diff.gz
mouseemu_0.15-3.dsc
  to pool/main/m/mouseemu/mouseemu_0.15-3.dsc
mouseemu_0.15-3_powerpc.deb
  to pool/main/m/mouseemu/mouseemu_0.15-3_powerpc.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [EMAIL PROTECTED],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Gaudenz Steinlin <[EMAIL PROTECTED]> (supplier of updated mouseemu package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [EMAIL PROTECTED])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.7
Date: Tue, 14 Mar 2006 02:13:00 +0100
Source: mouseemu
Binary: mouseemu
Architecture: source powerpc
Version: 0.15-3
Distribution: unstable
Urgency: low
Maintainer: Gaudenz Steinlin <[EMAIL PROTECTED]>
Changed-By: Gaudenz Steinlin <[EMAIL PROTECTED]>
Description: 
 mouseemu   - Emulate mouse buttons and mouse wheel
Closes: 307068 326486 354148 355794
Changes: 
 mouseemu (0.15-3) unstable; urgency=low
 .
   * The kudos to Michael Schmitz release!
   * example section in manpage (closes: #354148)
   * close all devices and trigger a rescan if a device
     disapears (closes: #355794, #307068)
   * rescan for new devices every 5s (off by default)
   * manually rescan for new devices on HUP
   * output messages to syslog
   * create pidfile /var/run/mouseemu.pid
   * scan up to 32 event devices (closes: #326486)
   * increase delay between stoping and starting mouseemu
     on restart to give it more time to stop all processes
   * add a udev rules file to rescan for new devices
   * add --retry to start-stop-daemon on stopping to make sure
     mouseemu really stops
   * add preinst script to ensure that mouseemu is really stopped
Files: 
 93b7e250bae9e2776aacb54628ea1bf5 574 utils optional mouseemu_0.15-3.dsc
 5251f90363631e7ffe3bcf1795bac397 10085 utils optional mouseemu_0.15-3.diff.gz
 eaa4e91bee3786f1009a06180ab2dc63 13774 utils optional 
mouseemu_0.15-3_powerpc.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)

iD8DBQFEH/cRjH3TJU9qR44RAmkdAJ9Cg1V60W+kFnJWs5DXfYp4utCATwCePY13
CYsRIvM8JnLSdEXnhUU9Al4=
=Uyxj
-----END PGP SIGNATURE-----


--- End Message ---

Reply via email to