Hi,

I am experiencing one "Unexpected response code 620" excpetion in
MountService.java.  This is not easy to reproduce, but see it randomly
happened when unplug USB cable. Hope you can help.

The stack trace is:
11-17 10:56:11.303 I/StorageNotification( 1365): UMS connection
changed to false (media state shared)
11-17 10:56:11.319 W/MountService( 1365): Disabling UMS after cable
disconnect
11-17 10:56:11.327 D/VoldCmdListener( 1210): volume unshare /mnt/
sdcard ums
11-17 10:56:11.327 D/Vold    ( 1210): Volume sdcard state changing 7
(Shared-Unmounted) -> 1 (Idle-Unmounted)
11-17 10:56:11.366 D/VoldCmdListener( 1210): volume mount /mnt/sdcard
11-17 10:56:11.366 I/Vold    ( 1210): /dev/block/vold/179:1 being
considered for volume sdcard
11-17 10:56:11.366 D/Vold    ( 1210): Volume sdcard state changing 1
(Idle-Unmounted) -> 3 (Checking)
11-17 10:56:11.397 I/StorageNotification( 1365): Media {/mnt/sdcard}
state changed from {shared} -> {unmounted}
11-17 10:56:12.936 I/Vold    ( 1210): Filesystem check completed OK
11-17 10:56:12.983 I/Vold    ( 1210): Device /dev/block/vold/179:1,
target /mnt/sdcard mounted @ /mnt/secure/staging
11-17 10:56:12.999 D/Vold    ( 1210): Volume sdcard state changing 3
(Checking) -> 4 (Mounted)
11-17 10:56:13.030 I/ActivityManager( 1365): Start proc
com.google.android.apps.uploader for broadcast
com.google.android.apps.uploader/.ConnectivityBroadcastReceiver:
pid=2676 uid=10044 gids={3003}
11-17 10:56:13.030 D/VoldCmdListener( 1210): volume shared /mnt/sdcard
ums
11-17 10:56:13.038 I/StorageNotification( 1365): Media {/mnt/sdcard}
state changed from {unmounted} -> {checking}
11-17 10:56:13.131 D/StatusBarPolicy( 1365): handleBatteryUpdate
11-17 10:56:13.131 I/StorageNotification( 1365): UMS connection
changed to true (media state mounted)
11-17 10:56:13.178 D/VoldCmdListener( 1210): asec list
11-17 10:56:13.202 D/StatusBarPolicy( 1365): handleBatteryUpdate
11-17 10:56:13.202 I/StorageNotification( 1365): Media {/mnt/sdcard}
state changed from {checking} -> {mounted}
11-17 10:56:13.538 I/StorageNotification( 1365): UMS connection
changed to false (media state mounted)
11-17 10:56:13.709 D/StatusBarPolicy( 1365): handleBatteryUpdate
11-17 10:56:13.780 I/StorageNotification( 1365): UMS connection
changed to true (media state mounted)
11-17 10:56:13.858 D/StatusBarPolicy( 1365): handleBatteryUpdate
11-17 10:56:13.952 D/VoldCmdListener( 1210): asec path
com.akbur.mathsworkout-1
11-17 10:56:13.975 E/AndroidRuntime( 1365): *** FATAL EXCEPTION IN
SYSTEM PROCESS: PackageManager
11-17 10:56:13.975 E/AndroidRuntime( 1365):
java.lang.IllegalStateException: Unexpected response code 620
11-17 10:56:13.975 E/AndroidRuntime( 1365):     at
com.android.server.MountService.getSecureContainerPath(MountService.java:
1462)
11-17 10:56:13.975 E/AndroidRuntime( 1365):     at
com.android.internal.content.PackageHelper.getSdDir(PackageHelper.java:
135)
11-17 10:56:13.975 E/AndroidRuntime( 1365):     at
com.android.server.PackageManagerService
$SdInstallArgs.<init>(PackageManagerService.java:5370)
11-17 10:56:13.975 E/AndroidRuntime( 1365):     at
com.android.server.PackageManagerService.updateExternalMediaStatusInner(PackageManagerService.java:
9601)
11-17 10:56:13.975 E/AndroidRuntime( 1365):     at
com.android.server.PackageManagerService.access
$3700(PackageManagerService.java:134)
11-17 10:56:13.975 E/AndroidRuntime( 1365):     at
com.android.server.PackageManagerService
$11.run(PackageManagerService.java:9571)
11-17 10:56:13.975 E/AndroidRuntime( 1365):     at
android.os.Handler.handleCallback(Handler.java:587)
11-17 10:56:13.975 E/AndroidRuntime( 1365):     at
android.os.Handler.dispatchMessage(Handler.java:92)
11-17 10:56:13.975 E/AndroidRuntime( 1365):     at
android.os.Looper.loop(Looper.java:143)
11-17 10:56:13.975 E/AndroidRuntime( 1365):     at
android.os.HandlerThread.run(HandlerThread.java:60)

This exception happened when run NativeDaemonConnector.doCommand("asec
path com.akbur.mathsworkout-1"), which expected one cmd-response code,
but got a unsolicitedInformation (620).

After checking the code, seemed
NativeDaemonConnector.listenToSocket()  is putting all the received
information including event/correct cmd-response/failure cmd-response
into mResponseQueue and this mResponseQueue  is returned in the end of
NativeDaemonConnector.doCommand().

My question is:
1. As the analysis above, whenever there is an related usb-event
generated during waiting the cmd-response, above exception will happen
definitely.  Is the analysis correct ?

2. Is it allowable that one event is generated in between the command
and its response according to design or any possible
specification?

3) do you think who is triggering this un-expected event  (which made
this exception)?

Thanks.
Sharon

-- 
You received this message because you are subscribed to the Google Groups 
"Android Discuss" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/android-discuss?hl=en.

Reply via email to