> From: hsela...@c2i.net
> To: freebsd-usb@freebsd.org
> Subject: Re: USB Flash drive problem with 9.0
> Date: Fri, 23 Mar 2012 08:25:32 +0100
> CC: day1...@hotmail.com; freebsd-curr...@freebsd.org; m...@freebsd.org
> 
> On Friday 23 March 2012 06:14:08 J.J. Day wrote:
> > I am upgrading a FreeBSD server and have encountered a problem with
> > mounting a USB flash drive. The system was on 6.3 and I upgraded to 9.0
> > using CVS repositories. The flash drive worked properly at all steps
> > throughout the upgrade. However, after the OS upgrade was complete, I
> > made a mistake and destroyed some of the server application.
> > 
> > So, I set the
> > upgraded drive aside, copied the original source drive to a different
> > spare, and repeated the upgrade process taking care to verify the
> > functioning of the applications during the process. When I finished the
> > second time, everything worked properly except for mounting the flash
> > drive.
> > 
> > it appears that something changed with the OS code that reads the drive
> > firmware between the first time I ran cvsup on (about) the 9th and the
> > second time I ran it about the 18th.
> > 
> > 
> > 
> > This is the output from the first upgrade (3/11/2012) when the drive is
> > inserted:
> > 
> > 
> > 
> >     ugen4.2: <HP> at usbus4
> > umass0: <HP v165w, class 0/0, rev 2.00/32.76, addr 2> on usbus4
> > umass0:  SCSI over Bulk-Only; quirks = 0x0100
> > umass0:2:0:-1: Attached to scbus2
> > da0 at umass-sim0 bus 0 scbus2 target 0 lun 0
> > da0: <hp v165w 3276> Removable Direct Access SCSI-4 device
> > da0: 40.000MB/s transfers
> > da0: 30960MB (63406080 512 byte sectors: 255H 63S/T 3946C)
> > And diskinfo output:
> > 
> > 
> > 
> >     da0
> >     512             # sectorsize
> >     32463912960     # mediasize in bytes (30G)
> >     63406080        # mediasize in sectors
> >     0               # stripesize
> >     0               # stripeoffset
> >     3946            # Cylinders according to firmware.
> >     255             # Heads according to firmware.
> >     63              # Sectors according to firmware.
> >     AA22064F00000035        # Disk ident.
> > This is the output from the second upgrade (3/18/2012) when the drive is
> > inserted:
> > 
> > 
> > 
> >     ugen4.2: <HP> at usbus4
> > umass0: <HP v165w, class 0/0, rev 2.00/32.76, addr 2> on usbus4
> > umass0:  SCSI over Bulk-Only; quirks = 0x0100
> > umass0:2:0:-1: Attached to scbus2
> > da0 at umass-sim0 bus 0 scbus2 target 0 lun 0
> > da0: <hp v165w 3276> Removable Direct Access SCSI-4 device
> > da0: 40.000MB/s transfers
> > da0: 17454747090944MB (71776119061217281 512 byte sectors: 64H 32S/T 0C)
> > And diskinfo shows:
> > 
> 
> Hi,
> 
> > 
> >     da0
> >     512             # sectorsize
> >     -144115188075855360     # mediasize in bytes ()
> >     -281474976710655        # mediasize in sectors
> >     0               # stripesize
> >     0               # stripeoffset
> >     -137438953471   # Cylinders according to firmware.
> >     64              # Heads according to firmware.
> >     32              # Sectors according to firmware.
> >     AA22064F00000035        # Disk ident.
> > Since the size information is incorrect, the /dev/da0s1 device is not
> > created and the drive cannot be mounted. The problem only happens with a
> > large drive. When I use a 4GB or 8GB drive, everything works correctly.
> > 
> > If there is any information that I can submit that can assist in solving
> > the problem please let me know.
> > 
> 
> This does not look like a USB problem. It is the SCSI/CAM layer which queries 
> over SCSI USB how big the disk is.
> 
> BTW:
> 
> dec2hex(17454747090944)
> ans = FE000000000
> 
> So it looks like some additional bits have sneaked in there?
> 
> dec2hex(32463912960)
> ans = 78F000000
> 
>  0xFE000000000 / 0x78F000000
> ans =  537.67
> 
> So it looks like the mediasize was multiplied by 512 when it shouldn't.
> 
> --HPS

Kaho Toshikazu found a solution (a work-around) for the problem.

Since the drive mounted as:     "ugen4.2: <HP> at usbus4"
The commands:
# usbconfig -d 4.2 add_quirk UQ_MSC_NO_INQUIRY
# usbconfig -d 4.2 reset

resets the attach and appears to bypass some of the SCSI/CAM process.

The /dev/da0s1 device is created and the drive functions normally
although the drive ident information is no longer available.

JJ

                                          
_______________________________________________
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"

Reply via email to