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

Bug#676453: linux-image-3.2.0-2-amd64: pmount hangs while mounting an external USB disk partition



On Thu, Jun 07, 2012 at 02:23:36PM +1000, Stephen Rothwell wrote:
> Package: linux-2.6
> Version: 3.2.19-1
> Severity: normal
> 
> Dear Maintainer,
> *** Please consider answering these questions, where appropriate ***
> 
>    * What led up to the situation?
> 
> I tried to mount a partition on an external USB drive using "pmount
> /dev/sdb1 backups".
> 
>    * What exactly did you do (or not do) that was effective (or
>      ineffective)?
> 
> I can CTR-C the pmount, but it leave a mount process which looks like
> it is spinning in the kernel.  I cannot kill the mount process (even
> with kill -9).  I need to reboot to recover.  Any process that does a
> "sync" end up in D state but with no WCHAN listed, so, in particular,
> the shutdown does not finish correctly.
> 
> ps -axlw shows:
> 
> 4     0  8021     1  20   0   4168   772 -      R    pts/6     49:41 /bin/mount -t udf -o nosuid,nodev,user,async,atime,noexec,uid=1000,gid=1000,umask=000,iocharset=utf8 /dev/mapper/_dev_sdb1 /media/backups
> 0  1000  9205 10570  20   0   3332   252 -      D    pts/2      0:00 sync
> 
> so mount is trying to mount the partiation as a udf file system (it is
> ext4) (this is a LUKS encrypted file system).
 
mount is doing what it is told.  pmount now uses libblkid to do
filesystem type detection (and so does mount itself if you use -t auto).

[...]
> [113218.197892] xhci_hcd 0000:0f:00.0: WARN: Stalled endpoint
> [113218.198628] sd 7:0:0:0: [sdb] Write Protect is off
> [113218.198636] sd 7:0:0:0: [sdb] Mode Sense: 23 00 00 00
> [113218.198801] xhci_hcd 0000:0f:00.0: WARN: Stalled endpoint
> [113218.199423] sd 7:0:0:0: [sdb] No Caching mode page present
> [113218.199430] sd 7:0:0:0: [sdb] Assuming drive cache: write through
> [113218.200502] xhci_hcd 0000:0f:00.0: WARN: Stalled endpoint
> [113218.201318] xhci_hcd 0000:0f:00.0: WARN: Stalled endpoint
> [113218.201944] sd 7:0:0:0: [sdb] No Caching mode page present
> [113218.201951] sd 7:0:0:0: [sdb] Assuming drive cache: write through
> [113218.238410]  sdb: sdb1
> [113218.239476] xhci_hcd 0000:0f:00.0: WARN: Stalled endpoint
> [113218.240270] xhci_hcd 0000:0f:00.0: WARN: Stalled endpoint
> [113218.240911] sd 7:0:0:0: [sdb] No Caching mode page present
> [113218.240918] sd 7:0:0:0: [sdb] Assuming drive cache: write through
> [113218.240924] sd 7:0:0:0: [sdb] Attached SCSI disk
> [113218.245679] xhci_hcd 0000:0f:00.0: WARN: Stalled endpoint
> [113218.251565] xhci_hcd 0000:0f:00.0: WARN: Stalled endpoint
> [113218.252659] xhci_hcd 0000:0f:00.0: WARN: Stalled endpoint
> [113218.445767] xhci_hcd 0000:0f:00.0: WARN: Stalled endpoint
> [113248.733637] xhci_hcd 0000:0f:00.0: WARN: Stalled endpoint
> [113248.734725] xhci_hcd 0000:0f:00.0: WARN: Stalled endpoint
> [113248.775204] xhci_hcd 0000:0f:00.0: WARN: Stalled endpoint
> [113248.809657] xhci_hcd 0000:0f:00.0: WARN: Stalled endpoint
> [113248.841803] xhci_hcd 0000:0f:00.0: WARN: Stalled endpoint
[...]

All this suggests that the mount attempt is hanging due to problems
with the USB connection.

Based on a quick look through the UDF functions in the call stack:

[168534.534210]  [<ffffffffa1108c3c>] ? udf_read_tagged+0x29/0x113 [udf]
[168534.534218]  [<ffffffffa1107422>] ? udf_check_anchor_block+0x6e/0xf5 [udf]
[168534.534225]  [<ffffffffa11075a2>] ? udf_scan_anchors+0xf9/0x158 [udf]
[168534.534233]  [<ffffffffa110781c>] ? udf_load_vrs+0x21b/0x2b9 [udf]
[168534.534240]  [<ffffffffa11078ba>] ? udf_load_vrs+0x2b9/0x2b9 [udf]
[168534.534247]  [<ffffffffa1107a8a>] ? udf_fill_super+0x1d0/0x4d6 [udf]

it appears that the filesystem code loops over a finite number of
different places where the superblock might be.  So I don't think the
filesystem code has got confused by the mis-detected filesystem and
entered an infinite loop.  Instead, single block reads are hanging or
taking a very long time to fail.

If this is reproducible on Linux 3.4 then I think the people to report
this to would be the xhci maintainers.  If not then I'll have a look for
fixes between 3.2 and 3.4.

Ben.

-- 
Ben Hutchings
We get into the habit of living before acquiring the habit of thinking.
                                                              - Albert Camus

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: