lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Fri, 20 Apr 2007 17:55:26 +0200
From:	"Giuseppe Bilotta" <giuseppe.bilotta@...il.com>
To:	"Jiri Kosina" <jkosina@...e.cz>
Cc:	linux-kernel@...r.kernel.org, dmitry.torokhov@...il.com,
	edouard.tisserant@...adoo.fr, vojtech@....cz
Subject: Re: Acecad USB Tablet: usbmouse takeover and odd motion

On 4/20/07, Jiri Kosina <jkosina@...e.cz> wrote:
> On Fri, 20 Apr 2007, Giuseppe Bilotta wrote:
>
> > lsusb claims:
> > Bus 002 Device 003: ID 0460:0004 Ace Cad Enterprise Co., Ltd
> > and according to hid-core.c this *is* a blacklisted ID ...
>
> Yes, so it definitely should be ignored and not claimed by the usbhid
> subsystem.

> Could you please verify in /sys/bus/usb/drivers/usbhid whether this device
> is really claimed by the usbhid driver? Do you have other HID devices in
> the system?

Sorry, it seems I was wrong, it's not usbhid but usbmouse taking over.
After a fresh plug (e.g. at bootup) I get the following:

dmesg:

usb 1-1: new low speed USB device using uhci_hcd and address 2
usb 1-1: configuration #1 chosen from 1 choice
input: ACECAD USB Graphics Tablet  as /class/input/input4
usbcore: registered new interface driver usbmouse
drivers/usb/input/usbmouse.c: v1.6:USB HID Boot Protocol mouse driver
usbcore: registered new interface driver hiddev
usbcore: registered new interface driver usbhid
drivers/usb/input/hid-core.c: v2.6:USB HID core driver
usbcore: registered new interface driver usb_acecad
drivers/usb/input/acecad.c: v3.2:USB Acecad Flair tablet driver

/proc/bus/input/devices

I: Bus=0003 Vendor=0460 Product=0004 Version=0130
N: Name="ACECAD USB Graphics Tablet "
P: Phys=usb-0000:00:1d.0-1/input0
S: Sysfs=/class/input/input4
H: Handlers=mouse2 event4
B: EV=7
B: KEY=1f0000 0 0 0 0 0 0 0 0
B: REL=103

ls /sys/bus/usb/drivers/usbmouse

total 0
lrwxrwxrwx 1 root root    0 2007-04-20 17:30 1-1:1.0 ->
../../../../devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1:1.0
--w------- 1 root root 4096 2007-04-20 17:30 bind
lrwxrwxrwx 1 root root    0 2007-04-20 17:30 module ->
../../../../module/usbmouse
--w------- 1 root root 4096 2007-04-20 17:30 new_id
--w------- 1 root root 4096 2007-04-20 17:30 unbind

So it seems that the greedy driver is usbmouse. I'm adding Vojtech to
the CC: list, since he's listed as the usbmouse author.

Notice that if I rmmod usbmouse and rmmod acecad and then modprobe
acecad again (or maybe I should learn to use the bind/unbind features)
without unplugging the tablet, I get more 'correct'
/proc/bus/input/devices

I: Bus=0003 Vendor=0460 Product=0004 Version=0130
N: Name="ACECAD USB Graphics Tablet "
P: Phys=usb-0000:00:1d.0-1/input0
S: Sysfs=/class/input/input8
H: Handlers=mouse2 event4
B: EV=b
B: KEY=1c01 0 70000 0 0 0 0 0 0 0 0
B: ABS=1000003

and ls /sys/bus/usb/drivers/*

/sys/bus/usb/drivers/hiddev:
bind
module
new_id
unbind

/sys/bus/usb/drivers/hub:
1-0:1.0
2-0:1.0
bind
module
new_id
unbind

/sys/bus/usb/drivers/usb:
1-1
bind
module
unbind
usb1
usb2

/sys/bus/usb/drivers/usb_acecad:
1-1:1.0
bind
module
new_id
unbind

/sys/bus/usb/drivers/usbfs:
bind
module
new_id
unbind

/sys/bus/usb/drivers/usbhid:
bind
module
new_id
unbind

so just letting usbmouse ignore the device (or maybe have acecad claim
it from usbmouse automagically, if this kind of thing is possible)
should fix the kernel side of the issue (xinput/evdev on X is still
confused by the tablet, even if do the driver gimmick before starting
X, but I'll take that over to the xorg mailing list as soon as I've
fixed the thing kernel side).

Any suggestions or patches welcome.

-- 
Giuseppe "Oblomov" Bilotta
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ