13 Jun, 2006

2 commits

  • It seems to have worked without the attribute during all the years
    just because sizes of all struct members are multiples of 32 bits.

    Signed-off-by: Stefan Richter
    Signed-off-by: Ben Collins

    Ben Collins
     
  • This code became ineffective a few Linux releases ago and is not
    required anyway.

    Note from Christoph Hellwig: scsi_cmnd.request_buffer is always a
    scatterlist these days. Checking random bites into it and then
    mangling the data in sbp2_check_sbp2_response will cause really bad
    memory corruption when you're not lucky enough to have the check not
    trigger by luck.

    Signed-off-by: Stefan Richter
    Signed-off-by: Ben Collins

    Ben Collins
     

18 May, 2006

3 commits

  • In case the blacklist with workarounds for device bugs yields a false
    positive, the module load parameter can now also be used as an override
    instead of an addition to the blacklist.

    Signed-off-by: Stefan Richter
    Signed-off-by: Linus Torvalds

    Stefan Richter
     
  • Apple decided to copy some USB stupidity over to FireWire.

    The sector number returned by iPods from read_capacity is one too many.
    This may cause I/O errors, especially if the kernel is configured for EFI
    partition support. We use the same workaround as usb-storage but have to
    check for different model IDs.

    http://marc.theaimsgroup.com/?t=114233262300001
    https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=187409

    Acknowledgements:
    Diagnosis and therapy by Mathieu Chouquet-Stringer ,
    additional data about affected and unaffected Apple hardware from
    Vladimir Kotal, Sander De Graaf, Bryan Olmstead and Hugh Dixon.

    Signed-off-by: Stefan Richter
    Signed-off-by: Linus Torvalds

    Stefan Richter
     
  • Grand unification of the three types of workarounds we have so far.

    The "skip mode page 8" workaround is now limited to devices which
    pretend to be of TYPE_DISK instead of TYPE_RBC. This workaround is no
    longer enabled for Initio bridges.

    Patch update in anticipation of more workarounds:
    - Add module parameter "workarounds".
    - Deprecate parameter "force_inquiry_hack".
    - Compose the blacklist of a compound type for better readability and
    extensibility.
    - Remove a now unused #define.

    Signed-off-by: Stefan Richter
    Signed-off-by: Linus Torvalds

    Stefan Richter
     

23 Feb, 2006

1 commit

  • Let the ieee1394 core select a suitable 1394 address range for sbp2's
    status FIFO instead of using a fixed range. Since the core only selects
    addresses which are guaranteed to be out of the "physical range" as per
    OHCI 1.1, this patch also fixes an old bug:

    OHCI controllers which implement a writeable PhysicalUpperBound register
    included sbp2's status FIFO in the physical range. That way sbp2 was
    never notified of a succesful login and always failed after timeout.
    Affected OHCI host adapters include ALi and Fujitsu controllers.

    As another side effect of this patch, the status FIFO is no longer
    located in a range for which OHCI chips perform "posted writes". Each
    status write now requires a response subaction. But since large data
    transfers involve only few status writes, there is no measurable
    decrease of I/O throughput. What's more, the status FIFO is now safe
    from potential host bus errors. Nevertheless, posted writes could be
    re-enabled by extensions to the ARM features of the 1394 stack.

    Signed-off-by: Stefan Richter
    Signed-off-by: Jody McIntyre
    (cherry picked from b2d38cccad4ef80d6b672b8f89aae5fe2907b113 commit)

    Stefan Richter
     

14 Dec, 2005

1 commit


13 Dec, 2005

1 commit


07 Nov, 2005

3 commits


26 May, 2005

1 commit

  • a) TYPE_SDAD renamed to TYPE_RBC and taken to scsi.h
    b) in sbp2.c remapping of TYPE_RPB to TYPE_DISK turned off
    c) relevant places in midlayer and sd.c taught to accept TYPE_RBC
    d) sd.c::sd_read_cache_type() looks into page 6 when dealing with
    TYPE_RBC - these guys have writeback cache flag there and are not guaranteed
    to have page 8 at all.
    e) sd_read_cache_type() got an extra sanity check - it checks that
    it got the page it asked for before using its contents. And screams if
    mismatch had happened. Rationale: there are broken devices out there that
    are "helpful" enough to go for "I don't have a page you've asked for, here,
    have another one". For example, PL3507 had been caught doing just that...
    f) sbp2 sets sdev->use_10_for_rw and sdev->use_10_for_ms instead
    of bothering to remap READ6/WRITE6/MOD_SENSE, so most of the conversions
    in there are gone now.

    Incidentally, I wonder if USB storage devices that have no
    mode page 8 are simply RBC ones. I haven't touched that, but it might
    be interesting to check...

    Signed-off-by: Al Viro
    Signed-off-by: James Bottomley

    Al Viro
     

17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds