Public bug reported:

Binary package hint: hal

Motorola V9M cell phone formerly worked correctly as USB storage device.
After upgrade to jaunty, the system no longer mounts it on plugging, and
it fails to recognize it correctly, so that it can not be mounted
manually. It occasionally gets as far as seeing sdb (on this system),
but it never sees sdb1, which is where it should appear.

Lsusb says:
Bus 001 Device 046: ID 05c6:1000 Qualcomm, Inc.
( A google search reveals various troubles accociated with this ID on recent 
Linux systems using various distros )

>From tail /var/log/messages, after plugging device:

Feb 17 10:04:21 grayjay kernel: [166669.668756] usb 1-1: new high speed USB 
device using ehci_hcd and address 46
Feb 17 10:04:21 grayjay kernel: [166669.802504] usb 1-1: configuration #1 
chosen from 1 choice
Feb 17 10:04:21 grayjay kernel: [166669.818283] scsi26 : SCSI emulation for USB 
Mass Storage devices

Lshal output, by using the following commands:

  lshal>unplugged     # with device unplugged
  lshal>plugged       # with device plugged
  diff unplugged plugged
2c2                                         
< Dumping 101 device(s) from the Global Device List:
---                                                 
> Dumping 103 device(s) from the Global Device List:
1485a1486,1552                                      
> udi = '/org/freedesktop/Hal/devices/usb_device_5c6_1000_000000000002'
>   info.linux.driver = 'usb'  (string)                                
>   info.parent = '/org/freedesktop/Hal/devices/usb_device_1d6b_2_0000_00_1d_7' 
>  (string)
>   info.product = 'Motorola V9m USC USB Device'  (string)                      
>          
>   info.subsystem = 'usb_device'  (string)                                     
>          
>   info.udi = '/org/freedesktop/Hal/devices/usb_device_5c6_1000_000000000002'  
> (string) 
>   info.vendor = 'Qualcomm, Inc.'  (string)                                    
>          
>   linux.device_file = '/dev/bus/usb/001/048'  (string)                        
>          
>   linux.hotplug_type = 2  (0x2)  (int)                                        
>          
>   linux.subsystem = 'usb'  (string)                                           
>          
>   linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-1'  
> (string)         
>   usb_device.bus_number = 1  (0x1)  (int)                                     
>          
>   usb_device.can_wake_up = false  (bool)                                      
>          
>   usb_device.configuration_value = 1  (0x1)  (int)                            
>          
>   usb_device.device_class = 0  (0x0)  (int)                                   
>          
>   usb_device.device_protocol = 0  (0x0)  (int)                                
>          
>   usb_device.device_revision_bcd = 0  (0x0)  (int)                            
>          
>   usb_device.device_subclass = 0  (0x0)  (int)                                
>          
>   usb_device.is_self_powered = true  (bool)                                   
>          
>   usb_device.linux.device_number = 48  (0x30)  (int)                          
>          
>   usb_device.linux.sysfs_path = 
> '/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-1'  (string)
>   usb_device.max_power = 500  (0x1f4)  (int)                                  
>            
>   usb_device.num_configurations = 1  (0x1)  (int)                             
>            
>   usb_device.num_interfaces = 1  (0x1)  (int)                                 
>            
>   usb_device.num_ports = 0  (0x0)  (int)                                      
>            
>   usb_device.product = 'Motorola V9m USC USB Device'  (string)                
>            
>   usb_device.product_id = 4096  (0x1000)  (int)                               
>            
>   usb_device.serial = '000000000002'  (string)                                
>            
>   usb_device.speed = 480.0 (480) (double)                                     
>            
>   usb_device.vendor = 'Qualcomm, Inc.'  (string)                              
>            
>   usb_device.vendor_id = 1478  (0x5c6)  (int)                                 
>            
>   usb_device.version = 2.0 (2) (double)                                       
>            
>                                                                               
>            
> udi = '/org/freedesktop/Hal/devices/usb_device_5c6_1000_000000000002_if0'     
>            
>   info.parent = 
> '/org/freedesktop/Hal/devices/usb_device_5c6_1000_000000000002'  (string)
>   info.product = 'USB Mass Storage Interface'  (string)                       
>            
>   info.subsystem = 'usb'  (string)                                            
>            
>   info.udi = 
> '/org/freedesktop/Hal/devices/usb_device_5c6_1000_000000000002_if0'  (string)
>   linux.hotplug_type = 2  (0x2)  (int)                                        
>             
>   linux.subsystem = 'usb'  (string)                                           
>             
>   linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.0'  
> (string)    
>   usb.bus_number = 1  (0x1)  (int)                                            
>             
>   usb.can_wake_up = false  (bool)                                             
>             
>   usb.configuration_value = 1  (0x1)  (int)                                   
>             
>   usb.device_class = 0  (0x0)  (int)                                          
>             
>   usb.device_protocol = 0  (0x0)  (int)                                       
>             
>   usb.device_revision_bcd = 0  (0x0)  (int)                                   
>             
>   usb.device_subclass = 0  (0x0)  (int)
>   usb.interface.class = 8  (0x8)  (int)
>   usb.interface.number = 0  (0x0)  (int)
>   usb.interface.protocol = 80  (0x50)  (int)
>   usb.interface.subclass = 6  (0x6)  (int)
>   usb.is_self_powered = true  (bool)
>   usb.linux.device_number = 48  (0x30)  (int)
>   usb.linux.sysfs_path = 
> '/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.0'  (string)
>   usb.max_power = 500  (0x1f4)  (int)
>   usb.num_configurations = 1  (0x1)  (int)
>   usb.num_interfaces = 1  (0x1)  (int)
>   usb.num_ports = 0  (0x0)  (int)
>   usb.product = 'USB Mass Storage Interface'  (string)
>   usb.product_id = 4096  (0x1000)  (int)
>   usb.serial = '000000000002'  (string)
>   usb.speed = 480.0 (480) (double)
>   usb.vendor = 'Qualcomm, Inc.'  (string)
>   usb.vendor_id = 1478  (0x5c6)  (int)
>   usb.version = 2.0 (2) (double)
>
1979c2046
< Dumped 101 device(s) from the Global Device List.
---
> Dumped 103 device(s) from the Global Device List.

-----------
Clearly, hal sees it, and apparently correctly, at least to a point. But now 
notice that it connects, then immediately disconnects, when the device is 
plugged:

lshal -m

Start monitoring devicelist:
-------------------------------------------------
(Device plugged in )
10:24:27.205: usb_device_5c6_1000_000000000002 added
10:24:27.215: usb_device_5c6_1000_000000000002_if0 added
10:24:27.215: usb_device_5c6_1000_000000000002_if0_scsi_host added
10:24:27.215: usb_device_5c6_1000_000000000002_if0_scsi_host removed
( Note the timestamps above. Then, 22 seconds later, it was unplugged )
10:24:49.612: usb_device_5c6_1000_000000000002_if0 removed
10:24:49.618: usb_device_5c6_1000_000000000002 removed

So the "...scsi_host" was added , and then removed, by hal, within a 1 
millisecond period.
I don't know what it means, but it doesn't look right.

With the device plugged, I ran the following script, with an lshal -m
running in another konsole tab:

#!/bin/bash
rmmod usb_storage
rmmod option
rmmod usbserial
echo "sleeping for 2 seconds to let the drivers unload...." && sleep 2
modprobe option
echo "sleeping for 3 seconds to make usb_storage detect the storage device..."
sleep 3 && echo "done sleeping"
modprobe usb_storage

lshal -m

Start monitoring devicelist:
-------------------------------------------------
( Device plugged in )
10:37:50.179: usb_device_5c6_1000_000000000002 added
10:37:50.204: usb_device_5c6_1000_000000000002_if0 added
10:37:50.204: usb_device_5c6_1000_000000000002_if0_scsi_host added
10:37:50.204: usb_device_5c6_1000_000000000002_if0_scsi_host removed
( Script executed )
10:38:54.254: usb_device_5c6_1000_000000000002_if0 property info.linux.driver = 
'usb-storage' (new)
10:38:54.263: usb_device_5c6_1000_000000000002_if0_scsi_host added              
                   
10:38:59.533: usb_device_5c6_1000_000000000002_if0_scsi_host_0 added            
                   
10:38:59.533: usb_device_5c6_1000_000000000002_if0_scsi_host_0_scsi_device_lun0 
added              
10:38:59.552: 
usb_device_5c6_1000_000000000002_if0_scsi_host_0_scsi_device_lun0_scsi_generic 
added 
10:39:01.864: storage_serial_Motorola_V9m_USC_000000000002_0_0 added            
                   
10:39:01.874: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
info.interfaces = {'org.freedesktop.Hal.Device.Storage.Removable'} (new)        
                                                                      
10:39:02.030: computer_power_supply_battery_BATA property 
battery.voltage.current = 12276 (0x2ff4)             
10:39:04.031: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.removable.media_available = true                                        
                                                                      
10:39:04.059: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.partitioning_scheme = 'mbr' (new)                                       
                                                                      
10:39:04.066: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.removable.media_size = 2041577984 (0x79b00200) (new)                    
                                                                      
10:39:06.094: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.removable.media_available = false                                       
                                                                      
10:39:06.112: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.partitioning_scheme = ''       
10:39:08.084: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.removable.media_available = true                                        
                                                                      
10:39:08.120: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.partitioning_scheme = 'mbr'    
10:39:10.227: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.removable.media_available = false                                       
                                                                      
10:39:10.235: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.partitioning_scheme = ''
10:39:12.023: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.removable.media_available = true
10:39:12.048: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.partitioning_scheme = 'mbr'
10:39:14.088: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.removable.media_available = false
10:39:14.122: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.partitioning_scheme = ''
10:39:16.035: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.removable.media_available = true
10:39:16.062: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.partitioning_scheme = 'mbr'
10:39:18.108: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.removable.media_available = false
10:39:18.134: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.partitioning_scheme = ''
10:39:20.031: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.removable.media_available = true
10:39:20.081: storage_serial_Motorola_V9m_USC_000000000002_0_0 property 
storage.partitioning_scheme = 'mbr'
...

It repeats this 2-second flip-flop endlessly until the device is unplugged.
Uname info: 2.6.31-17-generic #54-Ubuntu SMP Thu Dec 10 16:20:31 UTC 2009 i686 
GNU/Linux

ProblemType: Bug
Architecture: i386
Date: Wed Feb 17 10:50:49 2010
DistroRelease: Ubuntu 9.10
InstallationMedia: Kubuntu 9.10 "Karmic Koala" - Release i386 (20091028.5)
Package: hal 0.5.13-1ubuntu8
ProcEnviron:
 LANGUAGE=
 PATH=(custom, user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.31-17.54-generic
SourcePackage: hal
Uname: Linux 2.6.31-17-generic i686
XsessionErrors: (polkit-gnome-authentication-agent-1:3976): GLib-CRITICAL **: 
g_once_init_leave: assertion `initialization_value != 0' failed

** Affects: hal (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: apport-bug i386

-- 
Cell Phone not recognized as USB storage
https://bugs.launchpad.net/bugs/523275
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to