Hello everybody,

my bug report admittedly is rather a cosmetic one and the bug itself
is certainly not inevitable. Nevertheless, I think it is worth to be
mentioned (although I am not quite sure, whether this is the right
place to post it).

Summary:
A second access request to a scanner through libusb while in action,
i.e., used by another user, causes a kernel oops.

Detailed description:
My Epson Perfection 1250/Photo is connected to the computer via usb
and accessed by sane via libusb. When connecting the scanner to the
computer, it is recognized and configured by hotplug. The following
sequence of commands reproduces the bug:
#!/bin/bash
scanimage > test &
sleep 1
scanimage -L

I am using a kernel 2.6.5 and the host controller is managed by the
ohci-hcd module. The error messages fed to ksymoops produce the
following output:

ksymoops 2.4.9 on i686 2.6.5.  Options used
     -V (default)
     -K (specified)
     -l /proc/modules (default)
     -o /lib/modules/2.6.5/ (default)
     -m /boot/System.map-2.6.5 (default)

No modules in ksyms, skipping objects
No ksyms, skipping lsmod
Apr 23 04:06:35 linux kernel: Unable to handle kernel NULL pointer dereference at 
virtual address 00000004
Apr 23 04:06:35 linux kernel: e08f12c2
Apr 23 04:06:35 linux kernel: *pde = 00000000
Apr 23 04:06:35 linux kernel: Oops: 0000 [#1]
Apr 23 04:06:35 linux kernel: CPU:    0
Apr 23 04:06:35 linux kernel: EIP:    0060:[__crc_sleep_on+2586755/10722792]    
Tainted: PF 
Apr 23 04:06:35 linux kernel: EFLAGS: 00010246   (2.6.5) 
Apr 23 04:06:35 linux kernel: eax: 00000000   ebx: 00000000   ecx: 00000000   edx: 
00000000
Apr 23 04:06:35 linux kernel: esi: dcb18e40   edi: ffffffea   ebp: bfff6820   esp: 
dc34deac
Apr 23 04:06:35 linux kernel: ds: 007b   es: 007b   ss: 0068
Apr 23 04:06:35 linux kernel: Stack: 00000002 00000000 df257920 00000000 00000000 
dcb18e40 dc34df00 bfff6820 
Apr 23 04:06:35 linux kernel:        e08f1961 dea9ac00 00000003 00000010 ffff8003 
dea9ac00 dc5c0cc0 dea9ac00 
Apr 23 04:06:35 linux kernel:        dea9ac00 80000200 00000001 00000002 00000000 
00000003 00000004 00007530 
Apr 23 04:06:35 linux kernel: Call Trace:
Warning (Oops_read): Code line not seen, dumping what data is available


>>esi; dcb18e40 <__crc_enable_lapic_nmi_watchdog+246516/2ef085>
>>edi; ffffffea <__kernel_rt_sigreturn+1baa/????>
>>ebp; bfff6820 <__crc_xfrm_policy_put_afinfo+1840af/1c9ec6>
>>esp; dc34deac <__crc_class_interface_register+187200/1d2600>

Apr 23 04:06:35 linux kernel: Code: 0f b6 40 04 39 44 24 0c 73 5c 89 44 24 08 8b 4c 24 
0c 31 ed 
Using defaults from ksymoops -t elf32-i386 -a i386


Code;  00000000 Before first symbol
00000000 <_EIP>:
Code;  00000000 Before first symbol
   0:   0f b6 40 04               movzbl 0x4(%eax),%eax
Code;  00000004 Before first symbol
   4:   39 44 24 0c               cmp    %eax,0xc(%esp,1)
Code;  00000008 Before first symbol
   8:   73 5c                     jae    66 <_EIP+0x66>
Code;  0000000a Before first symbol
   a:   89 44 24 08               mov    %eax,0x8(%esp,1)
Code;  0000000e Before first symbol
   e:   8b 4c 24 0c               mov    0xc(%esp,1),%ecx
Code;  00000012 Before first symbol
  12:   31 ed                     xor    %ebp,%ebp

Apr 23 04:06:35 linux kernel:  <1>Unable to handle kernel NULL pointer dereference at 
virtual address 00000004
Apr 23 04:06:35 linux kernel: e08f12c2
Apr 23 04:06:35 linux kernel: *pde = 00000000
Apr 23 04:06:35 linux kernel: Oops: 0000 [#2]
Apr 23 04:06:35 linux kernel: CPU:    0
Apr 23 04:06:35 linux kernel: EIP:    0060:[__crc_sleep_on+2586755/10722792]    
Tainted: PF 
Apr 23 04:06:35 linux kernel: EFLAGS: 00010246   (2.6.5) 
Apr 23 04:06:35 linux kernel: eax: 00000000   ebx: 00000000   ecx: 00000000   edx: 
00000000
Apr 23 04:06:35 linux kernel: esi: dcb18e40   edi: ffffffea   ebp: bfff6a40   esp: 
dc47deac
Apr 23 04:06:35 linux kernel: ds: 007b   es: 007b   ss: 0068
Apr 23 04:06:35 linux kernel: Stack: c0108a71 00000000 bfff6858 00000000 00000000 
dcb18e40 dc47df00 bfff6a40 
Apr 23 04:06:35 linux kernel:        e08f1961 dea9ac00 00000003 00000010 df663764 
dc47c000 df39f6c4 dea9ac00 
Apr 23 04:06:35 linux kernel:        c0109027 00000011 df39f6c4 df663764 dc47dfc4 
00000003 00000004 00007530 
Apr 23 04:06:35 linux kernel: Call Trace:
Warning (Oops_read): Code line not seen, dumping what data is available


>>esi; dcb18e40 <__crc_enable_lapic_nmi_watchdog+246516/2ef085>
>>edi; ffffffea <__kernel_rt_sigreturn+1baa/????>
>>ebp; bfff6a40 <__crc_xfrm_policy_put_afinfo+1842cf/1c9ec6>
>>esp; dc47deac <__crc_daemonize+434e4/332203>

Apr 23 04:06:35 linux kernel: Code: 0f b6 40 04 39 44 24 0c 73 5c 89 44 24 08 8b 4c 24 
0c 31 ed 


Code;  00000000 Before first symbol
00000000 <_EIP>:
Code;  00000000 Before first symbol
   0:   0f b6 40 04               movzbl 0x4(%eax),%eax
Code;  00000004 Before first symbol
   4:   39 44 24 0c               cmp    %eax,0xc(%esp,1)
Code;  00000008 Before first symbol
   8:   73 5c                     jae    66 <_EIP+0x66>
Code;  0000000a Before first symbol
   a:   89 44 24 08               mov    %eax,0x8(%esp,1)
Code;  0000000e Before first symbol
   e:   8b 4c 24 0c               mov    0xc(%esp,1),%ecx
Code;  00000012 Before first symbol
  12:   31 ed                     xor    %ebp,%ebp


2 warnings issued.  Results may not be reliable.

The kernel is tainted because I am using the loop-aes module and a
mppe module which should not interfere with the usb system.

Please tell me if you need any further information or if I should post
this bug report womewhere else.

Any help is highly appreciated.

Regards,

Elias



-------------------------------------------------------
This SF.net email is sponsored by: The Robotic Monkeys at ThinkGeek
For a limited time only, get FREE Ground shipping on all orders of $35
or more. Hurry up and shop folks, this offer expires April 30th!
http://www.thinkgeek.com/freeshipping/?cpg=12297
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-users

Reply via email to