All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rusty Russell <rusty@rustcorp.com.au>
To: David Brownell <david-b@pacbell.net>
Cc: linux-usb-devel@lists.sourceforge.net,
	lkml - Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Greg KH <greg@kroah.com>
Subject: Re: [linux-usb-devel] 2.6: USB disk unusable level of data corruption
Date: Mon, 07 Feb 2005 13:55:22 +1100	[thread overview]
Message-ID: <1107744922.8689.6.camel@localhost.localdomain> (raw)
In-Reply-To: <200502041241.28029.david-b@pacbell.net>

On Fri, 2005-02-04 at 12:41 -0800, David Brownell wrote:
> On Friday 04 February 2005 4:16 am, Rusty Russell wrote:
> > 
> > Is USB/SCSI just terminally broken under 2.6?  
> 
> I don't think so, but there are problems that appear in some
> hardware configs and not others.  Many folk report no problems;
> a (very) few report nothing but.
> 
> If you've verified this on 2.6.10, then you certainly have
> have the ehci-hcd (re)queueing race fix that has made a big
> difference for some folk.  I don't know of any other issues
> in that driver that could explain usb-storage problems.
> 
> What hardware config do you have?
> 
>   - Whose EHCI controller and revision?  I've never had
>     good luck with VIA VT6202.  ("lspci -v".)

OK, it's an IBM Thinkpad X31:

0000:00:1d.7 USB Controller: Intel Corp. 82801DB/DBM (ICH4/ICH4-M) USB 2.0 EHCI
Controller (rev 01) (prog-if 20 [EHCI])
        Subsystem: IBM: Unknown device 052e
        Flags: bus master, medium devsel, latency 0, IRQ 11
        Memory at c0000000 (32-bit, non-prefetchable) [size=1K]
        Capabilities: [50] Power Management version 2
        Capabilities: [58] #0a [2080]

Kernel messages when plugged in:
usb 4-3: new high speed USB device using address 5
scsi3 : SCSI emulation for USB Mass Storage devices
  Vendor: HTS72606  Model: 0M9AT00           Rev: MH4O
  Type:   Direct-Access                      ANSI SCSI revision: 02
SCSI device sda: 117210240 512-byte hdwr sectors (60012 MB)
sda: assuming drive cache: write through
 /dev/scsi/host3/bus0/target0/lun0: p1 p2 < p5 p6 p7 p8 p9 >
Attached scsi disk sda at scsi3, channel 0, id 0, lun 0
USB Mass Storage device found at 5

>   - Whose USB storage adapter?  ("lsusb -v", or in this
>     case the /proc/bus/usb/devices entry would be ok.)
>     GeneSys adapters have been the most problematic,
>     but they're hardly the only ones with quirks.

Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        64
  idVendor           0x0dc4 Macpower Peripherals, Ltd
  idProduct          0x00c4
  bcdDevice            0.02
  iManufacturer           1 Macpower
  iProduct                2 2.5HDD
  iSerial                 3 8000D1
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          4 Myson 8818
    bmAttributes         0xc0
      Self Powered
    MaxPower               10mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      5 SFF-8070i
      bInterfaceProtocol     80
      iInterface              5 USB2.0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        64
  bNumConfigurations      1

> Thing is, that driver stack isn't especially thin:  SCSI isn't
> the top, and it's got usb-storage, usbcore, and a USB HCD under
> it.  That makes it harder to track down root causes, even when
> there is just a single one and it's in those drivers (rather
> than being hardware misbehavior).

I have some spare partitions on the disk, so I've written a program
which writes using DIRECT_IO and verifies the results.  It took less
than an hour under my filesystem load, so I'll see if I can get this to
trigger it (currently N children writing to separate blocks, but if that
doesn't trigger it I'll get more sophisticated with readers and
writers).

Thanks for the response,
Rusty.
-- 
A bad analogy is like a leaky screwdriver -- Richard Braakman


  parent reply	other threads:[~2005-02-07  3:04 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-02-04 12:16 2.6: USB disk unusable level of data corruption Rusty Russell
2005-02-04 20:41 ` [linux-usb-devel] " David Brownell
2005-02-05  0:39   ` John Stoffel
2005-02-06 15:59     ` Giuseppe Bilotta
2005-02-07  4:01       ` David Brownell
2005-02-07 22:39         ` Giuseppe Bilotta
2005-02-07  2:55   ` Rusty Russell [this message]
2005-02-07  5:15     ` David Brownell
2005-02-07  6:46       ` Rusty Russell
2005-02-04 20:55 ` Alan Stern
2005-02-04 21:31   ` David Brownell
2005-02-06  5:18   ` 2.6: USB Storage hangs machine on bootup for ~2 minutes Parag Warudkar
2005-02-04 21:37 ` 2.6: USB disk unusable level of data corruption Pete Zaitcev
2005-02-05  0:40   ` Parag Warudkar
2005-02-05  1:44     ` Greg KH
2005-02-05  2:30       ` Parag Warudkar
2005-02-05  4:54         ` Greg KH

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1107744922.8689.6.camel@localhost.localdomain \
    --to=rusty@rustcorp.com.au \
    --cc=david-b@pacbell.net \
    --cc=greg@kroah.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb-devel@lists.sourceforge.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.