Re: [Bugme-new] [Bug 12301] New: Fingerprint reader doesn't respod after the first use

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Dec 28, 2008 at 11:41 PM, Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote:
> On Sun, 28 Dec 2008, Erik Ekman wrote:
>
>> > Please attach to the bug report some usbmon traces showing what happens
>> > when you try to use the fingerprint reader more than once: one trace
>> > with this commit present and one with the commit dropped.  Instructions
>> > for usbmon are in the kernel source file Documentation/usb/usbmon.txt.
>> >
>> > Alan Stern
>> >
[..]
>
> In short, the "vanilla" log shows the second program run stopping short
> for no apparent reason.  There is no evident connection with the commit
> you identified.
>

It may be that thinkfinger and fprint uses usbfs in some bad way which
by luck has worked so far. I have not looked at the code, nor do I
know the usbfs details.

The tftool complains with
ThinkFinger 0.3 (http://thinkfinger.sourceforge.net/)
Copyright (C) 2006, 2007 Timo Hoenig <thoenig@xxxxxxx>

Initializing...Could not claim USB device.

which seem related to the dmesg errors I saw. Full strace of a failed
tf-tool run below.

/Erik

execve("/usr/sbin/tf-tool", ["/usr/sbin/tf-tool", "--acquire"], [/* 14
vars */]) = 0
brk(0)                                  = 0x9152000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=76897, ...}) = 0
mmap2(NULL, 76897, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f9e000
close(3)                                = 0
open("/usr/lib/libthinkfinger.so.0", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`\f\0\0004\0\0\0\270"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=15008, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7f9d000
mmap2(NULL, 17920, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0xb7f98000
mmap2(0xb7f9b000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2) = 0xb7f9b000
close(3)                                = 0
open("/lib/libusb-0.1.so.4", O_RDONLY)  = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`\23\0\0004\0\0\0\220"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=31056, ...}) = 0
mmap2(NULL, 34040, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0xb7f8f000
mmap2(0xb7f95000, 12288, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x5) = 0xb7f95000
close(3)                                = 0
open("/lib/libpthread.so.0", O_RDONLY)  = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0PG\0\0004\0\0\0\240"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=80072, ...}) = 0
mmap2(NULL, 90592, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0xb7f78000
mmap2(0xb7f8b000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x12) = 0xb7f8b000
mmap2(0xb7f8d000, 4576, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7f8d000
close(3)                                = 0
open("/lib/libpam.so.0", O_RDONLY)      = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0P\32\0\0004\0\0\0\274"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=42444, ...}) = 0
mmap2(NULL, 45304, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0xb7f6c000
mmap2(0xb7f76000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9) = 0xb7f76000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@a\1\0004\0\0\0\24"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1200228, ...}) = 0
mmap2(NULL, 1205712, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
3, 0) = 0xb7e45000
mmap2(0xb7f66000, 12288, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x121) = 0xb7f66000
mmap2(0xb7f69000, 9680, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7f69000
close(3)                                = 0
open("/lib/libdl.so.2", O_RDONLY)       = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0p\n\0\0004\0\0\0,"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=9612, ...}) = 0
mmap2(NULL, 12412, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0xb7e41000
mmap2(0xb7e43000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1) = 0xb7e43000
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7e40000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7e3f000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7e3f6c0,
limit:1048575, seg_32bit:1, contents:0, read_exec_only:0,
limit_in_pages:1, seg_not_present:0, useable:1}) = 0
mprotect(0xb7e43000, 4096, PROT_READ)   = 0
mprotect(0xb7f66000, 8192, PROT_READ)   = 0
mprotect(0xb7f76000, 4096, PROT_READ)   = 0
mprotect(0xb7f8b000, 4096, PROT_READ)   = 0
mprotect(0xb7f95000, 4096, PROT_READ)   = 0
mprotect(0xb7f9b000, 4096, PROT_READ)   = 0
mprotect(0x804a000, 4096, PROT_READ)    = 0
mprotect(0xb7fca000, 4096, PROT_READ)   = 0
munmap(0xb7f9e000, 76897)               = 0
set_tid_address(0xb7e3f708)             = 10012
set_robust_list(0xb7e3f710, 0xc)        = 0
rt_sigaction(SIGRTMIN, {0xb7f7c2b0, [], SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0xb7f7c350, [], SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
uname({sys="Linux", node="ki-moon", ...}) = 0
fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7fb0000
write(1, "\n"..., 1)                    = 1
write(1, "ThinkFinger 0.3 (http://thinkfing";..., 54) = 54
write(1, "Copyright (C) 2006, 2007 Timo Hoe"..., 55) = 55
write(1, "\n"..., 1)                    = 1
write(1, "Initializing..."..., 15)      = 15
brk(0)                                  = 0x9152000
brk(0x9173000)                          = 0x9173000
open("/dev/bus/usb", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 3
fstat64(3, {st_mode=S_IFDIR|0755, st_size=140, ...}) = 0
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
getdents(3, /* 7 entries */, 4096)      = 112
close(3)                                = 0
open("/dev/bus/usb", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 3
fstat64(3, {st_mode=S_IFDIR|0755, st_size=140, ...}) = 0
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
getdents(3, /* 7 entries */, 4096)      = 112
getdents(3, /* 0 entries */, 4096)      = 0
close(3)                                = 0
open("/dev/bus/usb/002", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 3
fstat64(3, {st_mode=S_IFDIR|0755, st_size=60, ...}) = 0
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
getdents(3, /* 3 entries */, 4096)      = 48
open("/dev/bus/usb/002/001", O_RDWR)    = 4
ioctl(4, USBDEVFS_CONNECTINFO, 0xbfac87c4) = 0
read(4, "\22\1\20\1\t\0\0@k\35\1\0\6\2\3\2\1\1"..., 18) = 18
read(4, "\t\2\31\0\1\1\0\340"..., 8)    = 8
read(4, "\0\t\4\0\0\1\t\0\0\0\7\5\201\3\2\0\377"..., 17) = 17
close(4)                                = 0
getdents(3, /* 0 entries */, 4096)      = 0
close(3)                                = 0
open("/dev/bus/usb/002/001", O_RDWR)    = 3
ioctl(3, USBDEVFS_IOCTL, 0xbfac87c0)    = 3
close(3)                                = 0
open("/dev/bus/usb/001", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 3
fstat64(3, {st_mode=S_IFDIR|0755, st_size=60, ...}) = 0
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
getdents(3, /* 3 entries */, 4096)      = 48
open("/dev/bus/usb/001/001", O_RDWR)    = 4
ioctl(4, USBDEVFS_CONNECTINFO, 0xbfac87c4) = 0
read(4, "\22\1\0\2\t\0\0@k\35\2\0\6\2\3\2\1\1"..., 18) = 18
read(4, "\t\2\31\0\1\1\0\340"..., 8)    = 8
read(4, "\0\t\4\0\0\1\t\0\0\0\7\5\201\3\4\0\f"..., 17) = 17
close(4)                                = 0
getdents(3, /* 0 entries */, 4096)      = 0
close(3)                                = 0
open("/dev/bus/usb/001/001", O_RDWR)    = 3
ioctl(3, USBDEVFS_IOCTL, 0xbfac87c0)    = 9
close(3)                                = 0
open("/dev/bus/usb/005", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 3
fstat64(3, {st_mode=S_IFDIR|0755, st_size=100, ...}) = 0
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
getdents(3, /* 5 entries */, 4096)      = 80
open("/dev/bus/usb/005/003", O_RDWR)    = 4
ioctl(4, USBDEVFS_CONNECTINFO, 0xbfac87c4) = 0
read(4, "\22\1\0\1\0\0\0\10\203\4\26 \1\0\1\2\0\1"..., 18) = 18
read(4, "\t\2'\0\1\1\0\240"..., 8)      = 8
read(4, "2\t\4\0\0\3\377\0\0\0\7\5\201\2@\0\0\7\5\2\2@\0\0\7\5\203\3\4\0\24"...,
31) = 31
close(4)                                = 0
open("/dev/bus/usb/005/002", O_RDWR)    = 4
ioctl(4, USBDEVFS_CONNECTINFO, 0xbfac87c4) = 0
read(4, "\22\1\0\2\340\1\1@\\\n\20!\0\1\1\2\0\1"..., 18) = 18
read(4, "\t\2\330\0\4\1\0\340"..., 8)   = 8
read(4, "\0\t\4\0\0\3\340\1\1\0\7\5\201\3\20\0\1\7\5\202\2@\0\1\7\5\2\2@\0\1\t\4"...,
208) = 208
close(4)                                = 0
open("/dev/bus/usb/005/001", O_RDWR)    = 4
ioctl(4, USBDEVFS_CONNECTINFO, 0xbfac87c4) = 0
read(4, "\22\1\20\1\t\0\0@k\35\1\0\6\2\3\2\1\1"..., 18) = 18
read(4, "\t\2\31\0\1\1\0\340"..., 8)    = 8
read(4, "\0\t\4\0\0\1\t\0\0\0\7\5\201\3\2\0\377"..., 17) = 17
close(4)                                = 0
getdents(3, /* 0 entries */, 4096)      = 0
close(3)                                = 0
open("/dev/bus/usb/005/003", O_RDWR)    = 3
ioctl(3, USBDEVFS_IOCTL, 0xbfac87c0)    = -1 ENOTTY (Inappropriate
ioctl for device)
close(3)                                = 0
open("/dev/bus/usb/005/002", O_RDWR)    = 3
ioctl(3, USBDEVFS_IOCTL, 0xbfac87c0)    = -1 ENOTTY (Inappropriate
ioctl for device)
close(3)                                = 0
open("/dev/bus/usb/005/001", O_RDWR)    = 3
ioctl(3, USBDEVFS_IOCTL, 0xbfac87c0)    = 3
close(3)                                = 0
open("/dev/bus/usb/004", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 3
fstat64(3, {st_mode=S_IFDIR|0755, st_size=60, ...}) = 0
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
getdents(3, /* 3 entries */, 4096)      = 48
open("/dev/bus/usb/004/001", O_RDWR)    = 4
ioctl(4, USBDEVFS_CONNECTINFO, 0xbfac87c4) = 0
read(4, "\22\1\20\1\t\0\0@k\35\1\0\6\2\3\2\1\1"..., 18) = 18
read(4, "\t\2\31\0\1\1\0\340"..., 8)    = 8
read(4, "\0\t\4\0\0\1\t\0\0\0\7\5\201\3\2\0\377"..., 17) = 17
close(4)                                = 0
getdents(3, /* 0 entries */, 4096)      = 0
close(3)                                = 0
open("/dev/bus/usb/004/001", O_RDWR)    = 3
ioctl(3, USBDEVFS_IOCTL, 0xbfac87c0)    = 3
close(3)                                = 0
open("/dev/bus/usb/003", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 3
fstat64(3, {st_mode=S_IFDIR|0755, st_size=60, ...}) = 0
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
getdents(3, /* 3 entries */, 4096)      = 48
open("/dev/bus/usb/003/001", O_RDWR)    = 4
ioctl(4, USBDEVFS_CONNECTINFO, 0xbfac87c4) = 0
read(4, "\22\1\20\1\t\0\0@k\35\1\0\6\2\3\2\1\1"..., 18) = 18
read(4, "\t\2\31\0\1\1\0\340"..., 8)    = 8
read(4, "\0\t\4\0\0\1\t\0\0\0\7\5\201\3\2\0\377"..., 17) = 17
close(4)                                = 0
getdents(3, /* 0 entries */, 4096)      = 0
close(3)                                = 0
open("/dev/bus/usb/003/001", O_RDWR)    = 3
ioctl(3, USBDEVFS_IOCTL, 0xbfac87c0)    = 3
close(3)                                = 0
open("/dev/bus/usb/005/003", O_RDWR)    = 3
ioctl(3, USBDEVFS_CLAIMINTERFACE, 0xbfac8834) = -1 EBUSY (Device or
resource busy)
write(1, "Could not claim USB device.\n"..., 28) = 28
exit_group(-1)                          = ?
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux