Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 22 Nov 2009 19:59:10 -0800
From:      "Guojun Jin" <gjin@ubicom.com>
To:        "Hans Petter Selasky" <hselasky@c2i.net>, <freebsd-usb@freebsd.org>
Cc:        bugs@freebsd.org, freebsd-stable@freebsd.org
Subject:   RE: 8.0-RC USB/FS problem
Message-ID:  <CB2DD11991B27C4F99935E6229450D3203950A27@STORK.scenix.com>
References:  <CB2DD11991B27C4F99935E6229450D3203950A1C@STORK.scenix.com> <CB2DD11991B27C4F99935E6229450D3203950A23@STORK.scenix.com> <CB2DD11991B27C4F99935E6229450D3203950A26@STORK.scenix.com> <200911221047.20362.hselasky@c2i.net>

next in thread | previous in thread | raw e-mail | index | archive | help
>From more intensive diagnose, it looks like more related USB layer.

repeated a few time on following process and ithe crash happened at =
different USB access phase at each time.

dd if=3D/dev/zero of=3D/dev/da0 count=3D1000 bs=3D4k
sysinstall
        partition=20
             slice 1 (da0s1) 18GB ID=3D12
             slice 2 (da0s2) 10-15GB Id=3D165
             slice 3 (da0s3) rest ID=3D165
         W ---> OK
        label
             da0s3d 9GB         /mnt
             da0s3e rest        /dist
         W ---> da0s3e ---- device is not configured.

w# ll /dev/da0*      # after sysinstall did partition + W at 1st time
crw-r-----  1 root  operator    0,  97 Nov 22 11:23 /dev/da0
crw-r-----  1 root  operator    0,  98 Nov 22 11:23 /dev/da0s1
crw-r-----  1 root  operator    0,  99 Nov 22 11:23 /dev/da0s2
crw-r-----  1 root  operator    0, 100 Nov 22 11:23 /dev/da0s3

# ll /dev/da0*      # after sysinstall start at 2nd time
crw-r-----  1 root  operator    0,  97 Nov 22 11:27 /dev/da0
System crashed

The crash log is available at =
http:/www.daemonfun.com/archives/pub/USB/crash1-reset.bz2
(All logs are based on hw.usb.umass.debug=3D-1)

After system reboot, and repeated above processes, the da0s3e was =
mounted on /dist, but da0s3d cannot.
It tunred out that newfs fail inside labeling process in sysinstall. =
Manually did newfs on da0s3d, and
it cannot be mounted on /mnt, but access to it caused crash.
The crash log is available at =
http:/www.daemonfun.com/archives/pub/USB/newfs

Tried entire process again, this time, both partitons are formatted =
(newfs) inside labaling process (sysinstall)
but crahsed system during dump/restore on da0s3e (/dist).
The crash log is available at =
http:/www.daemonfun.com/archives/pub/USB/usb-log.crash2.bz2, which is =
huge one.
It contains two parts, one dump/restore IDE to da0s3d (passed), and the =
rest is dump/restore to da0s3e (crashed).

I am going to reinstall the system with the new ISO from Nov 21 =
8.0-RELEASE to see if anything will improve.

-----Original Message-----
From: Hans Petter Selasky [mailto:hselasky@c2i.net]
Sent: Sun 11/22/2009 1:47 AM
To: freebsd-usb@freebsd.org
Cc: Guojun Jin; bugs@freebsd.org; freebsd-stable@freebsd.org
Subject: Re: 8.0-RC USB/FS problem
=20
On Sunday 22 November 2009 05:38:13 Guojun Jin wrote:
> Tried on the USB hard drive:
>
> Deleted slice 3 and recreated slice 3 with two partitions s3d and s3e.
> Was happy because successfully did dump/restore on s3d, and thought it =
just
> partition format issue; but system crashed during dump/restore on s3e, =
and
> partition lost the file system type.
>
> wolf# mount /dev/da0s3e /mnt
> WARNING: /mnt was not properly dismounted
> /mnt: mount pending error: blocks 35968 files 0
> wolf# fsck da0s3e
> fsck: Could not determine filesystem type
> wolf# bsdlabel da0s3
> # /dev/da0s3:
> 8 partitions:
> #        size   offset    fstype   [fsize bsize bps/cpg]
>   c: 175735035        0    unused        0     0         # "raw" part,
> don't edi t
>   d: 18874368        0    4.2BSD        0     0     0
>   e: 156860667 18874368    4.2BSD        0     0     0
>
> Therefore, tried directly use fsck_ufs on both USB hard drive and USB =
stick
> to get file system clean up. All data got back now.
>
> The machine has run with FreeBSD 6.1 all the way to 7.2 without such
> problem. How can we determine what could go wrong in 8.0? FS or USB.

Hi,

Error 5 means IO error, so probably the transport layer, USB or lower, =
is to=20
blame.

Some things to check:

1) Make sure the connection for your memory stick is Ok.
2) Make sure there is enough power for your memory stick.

Regarding memory sticks:

Other operating systems do a port bus reset when the device has a =
problem. On=20
FreeBSD we just try a software reset via the control endpoint. I guess =
that it=20
is a device problem you are seeing. The USB stack in FreeBSD is faster =
than=20
the old one, and maybe the faster queueing of mass storage requests =
trigger=20
some hidden bugs in your device.

When the problem happens try:

sysctl hw.usb.umass.debug=3D-1

--HPS




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CB2DD11991B27C4F99935E6229450D3203950A27>