An error occurred fetching the project authors.
  1. 21 Feb, 2003 3 commits
  2. 12 Feb, 2003 2 commits
    • Mike Anderson's avatar
      [PATCH] scsi_error handler update. (4/4) · 0166205d
      Mike Anderson authored
      This patch series is against scsi-misc-2.5.
      
      03_serror-dev-offline-1.diff:
      	- Add scsi_set_device_offline interface.
      
      -andmike
      --
      Michael Anderson
      andmike@us.ibm.com
      
       scsi.c      |   38 ++++++++++++++++++++++++++++++++++++++
       scsi.h      |    1 +
       scsi_syms.c |    1 +
       3 files changed, 40 insertions(+)
      0166205d
    • Mike Anderson's avatar
      [PATCH] scsi_error handler update. (2/4) · d6005ee1
      Mike Anderson authored
      This patch series is against scsi-misc-2.5.
      
      01_serror-scmd-add-1.diff:
       	- Add scsi_eh_scmd_add function.
      
      -andmike
      --
      Michael Anderson
      andmike@us.ibm.com
      
       scsi.c       |    8 ++------
       scsi_error.c |   59 +++++++++++++++++++++++++++++++++++++++++++++++------------
       2 files changed, 49 insertions(+), 18 deletions(-)
      d6005ee1
  3. 11 Feb, 2003 1 commit
  4. 09 Feb, 2003 2 commits
    • Luben Tuikov's avatar
      [SCSI] add commands at the tail of cmd_list · 53e20c84
      Luben Tuikov authored
      It's probably going to be a fifo, so it should be more efficient
      for taking them off again
      53e20c84
    • James Bottomley's avatar
      Restore device command queue functionality · a88b3261
      James Bottomley authored
      The recent slab allocation changes mean that we no longer keep a
      permanent list of commands on the device_queue list.  However,
      certain pieces of SCSI code relied on being able to traverse this
      list to find details of all outstanding commands (the error handler
      being the prime example).  This code adds back a new dynamic cmd_list
      which keeps the list of commands currently allocated to the device.
      Since the list is dynamic, it is protected by a lock (list_lock).
      a88b3261
  5. 06 Feb, 2003 1 commit
  6. 05 Feb, 2003 1 commit
  7. 04 Feb, 2003 1 commit
    • Christoph Hellwig's avatar
      [PATCH] fixes and cleanups for the new command allocation code · 21cd9dc6
      Christoph Hellwig authored
      On Tue, Feb 04, 2003 at 12:33:23PM -0600, James Bottomley wrote:
      > I agree with this.  It is a guarantee the mid-layer makes to the LLD
      > (and there are some LLDs with static issue queues for which this is a
      > hard requirement).  I think (once the dust has settled and we've agreed
      > which field holds the current queue depth) what's needed is a check in
      > the scsi_request_fn() to see if we're over the LLD's current depth for
      > the device and plug the queue and exit if we are.  The next returning
      > command will unplug and send.
      >
      > This way of doing things means that we're free to prep as many commands
      > as we can, but we guarantee only to have the correct number outstanding
      > to the LLD.
      
      Okay, here's a new versin of the patch.  Changes:
      
      * throttel on number of inflight command blocks
      * rename scsi_cmnd->new_queue_depth to scsi_cmnd->queue_depth
      * remove scsi_do_cmd
      * serialize pool handling
      21cd9dc6
  8. 28 Jan, 2003 1 commit
    • Luben Tuikov's avatar
      cmd_alloc54-3.patch [3/3] · cf638122
      Luben Tuikov authored
      this patch implements the new command allocation scheme for SCSI
      Core, using the slab cache and a free_list for each host for a
      backup store of one command (or many).
      
       o The three (3) subversion means that it has been updated to use
         ISA DMA and PCI DMA memory for scsi command allocation,
         i.e. there's two scsi command caches now.
      
       o The interface is, of course, unchanged; and this is the whole
         point of making this allocation scheme -- i.e. the allocator
         is abstracted.
      cf638122
  9. 13 Jan, 2003 2 commits
    • Luben Tuikov's avatar
      [SCSI] Move cmd->host to cmd->device->host · a6eed7cd
      Luben Tuikov authored
      his patch makes the conversion from scsi cmd->host to scsi
      cmd->device->host for drivers/scsi/*, drivers/usb/storage/*,
      drivers/ieee1394/*, drivers/message/fusion/* .
      a6eed7cd
    • Luben Tuikov's avatar
      [SCSI] Move cmd->{lun, target, channel} to cmd->device->{lun, id, channel} · a7f25122
      Luben Tuikov authored
      This patch makes all of SCSI Core and LLDD use cmd->device->{lun, id, channel}, instead of the old cmd->{lun, target, channel}.
      
          * The new aic7xxx series driver has been partially converted. The problem is:
            drivers/scsi/aic7xxx/aic79xx_osm.c: In function `ahd_linux_dv_fill_cmd':
            drivers/scsi/aic7xxx/aic79xx_osm.c:3304: structure has no member named `host'
            drivers/scsi/aic7xxx/aic79xx_osm.c:3306: structure has no member named `target'
            drivers/scsi/aic7xxx/aic79xx_osm.c:3307: structure has no member named `lun'
            drivers/scsi/aic7xxx/aic79xx_osm.c:3308: structure has no member named `channel'
      
            and the same thing in:
            drivers/scsi/aic7xxx/aic7xxx_osm.c: In function `ahc_linux_dv_fill_cmd':
            drivers/scsi/aic7xxx/aic7xxx_osm.c:3154: structure has no member named `host'
            drivers/scsi/aic7xxx/aic7xxx_osm.c:3156: structure has no member named `target'
            drivers/scsi/aic7xxx/aic7xxx_osm.c:3157: structure has no member named `lun'
            drivers/scsi/aic7xxx/aic7xxx_osm.c:3158: structure has no member named `channel'
      * cpqfsTSinit.c has a 2 line problem quite similar to the aic7xxx above.
      a7f25122
  10. 23 Dec, 2002 1 commit
    • Christoph Hellwig's avatar
      [PATCH] Re: scsi_scan.c complaints... · b7ccbd3e
      Christoph Hellwig authored
      On Fri, Dec 20, 2002 at 08:29:23PM -0500, Doug Ledford wrote:
      > And I was right.  One little q = NULL; is all that was missing.  Anyway,
      > here's a printout of what startup looks like with this patch in place
      > under 2.5.52.  This should make you happy Justin ;-)
      
      Okay, I looked at the patches that are in mainline and they look pretty
      cool to me.  When looking over the code (in preparation of implementing
      Justin's suggestion to get rid of the highmem_io flag) I found quite
      a bit small stuff to make the code in that area a lot cleaner:
      
      - new helper scsi_calculate_bounce_limit to calculate the bounce
        limit for a scsi host, remove a copy of that code ni st.c
      - scsi_initialize_queue gets replace with scsi_alloc_queue, this
        one now takes only a struct Scsi_Host and returns the request queue,
        it's paired with a small scsi_free_queue helper.
      
      Diffstat:
      
       hosts.h     |    3 -
       scsi.c      |   43 ----------------------
       scsi.h      |    1
       scsi_scan.c |  113 ++++++++++++++++++++++++++++++++++--------------------------
       scsi_syms.c |    5 ++
       st.c        |   16 +-------
       6 files changed, 73 insertions(+), 108 deletions(-)
      b7ccbd3e
  11. 20 Dec, 2002 1 commit
    • Doug Ledford's avatar
      Change all uses of device->request_queue (was struct, now pointer) · 7b253dfa
      Doug Ledford authored
      Update scsi_scan so that we don't pass around a scsi_device struct for
          	scanning.  Instead, we pass around a request_queue during
          	scanning and create and destroy device structs as needed.  This
          	allows us to have a 1:1 correlation between scsi_alloc_sdev()
          	and scsi_free_sdev() calls, which we didn't have before.
      7b253dfa
  12. 11 Dec, 2002 1 commit
  13. 05 Dec, 2002 1 commit
  14. 04 Dec, 2002 1 commit
  15. 28 Nov, 2002 1 commit
    • Christoph Hellwig's avatar
      [PATCH] abstract out more scsi_device acess out of the low-level drivers · ee89063d
      Christoph Hellwig authored
      Two new helpers: scsi_device_get and scsi_device_put that get/release a
      reference to the underlying HBA driver and increment/decrement
      ->access_count.  Cleanup ->attach/->detach routines in the upper layer
      drivers a bit to consolidate the error pathes once we're cleaning them
      up.
      
      ->attach and ->detach in upper layer drivers are mandatory now (not
      having them would be rather pointless).
      
      (note that the sd.c changes are not in this patch, it'll be part of
      my next, bigger patch)
      ee89063d
  16. 27 Nov, 2002 1 commit
    • Mike Anderson's avatar
      scsi sysfs update 3 · e9167d31
      Mike Anderson authored
      I have attached an updated combined patch of my previously posted sysfs
      changes. 
      
      This patch is against linux-scsi.bkbits.net/scsi-misc-2.5
      
      This patch contains these updates:
      	- update to osst.c to support sysfs cleanups.
      	- oops fix in osst.c detach if no device attached. A better
      	  method than this quick fix is needed.
      	- removed scsi_bus_hotplug function do to bug and not really
      	  needed now as default gives path data. If needed in future can
      	  be added with better definition.
      
      -andmike
      e9167d31
  17. 22 Nov, 2002 3 commits
  18. 21 Nov, 2002 2 commits
  19. 20 Nov, 2002 1 commit
  20. 19 Nov, 2002 2 commits
    • Patrick Mansfield's avatar
      [PATCH] Re: 2.5.48 /proc/scsi directory missing · a1a477f9
      Patrick Mansfield authored
      On Tue, Nov 19, 2002 at 10:45:25AM +1100, Douglas Gilbert wrote:
      > That directory (and all who sail in her, e.g. /proc/scsi/scsi)
      > seems to have disappeared. When the scsi_debug module is
      > loaded a /proc/scsi_debug/0 entry appears (that used to be
      > /proc/scsi/scsi_debug/0).
      >
      > Doug Gilbert
      
      It looks like the merge of Doug and Christoph's code dropped two calls
      (unless the exit devfs_unregister was supposed to be removed).
      
      Here's a patch for the addition of scsi_init_procfs, devfs_mk_dir and
      bus_unregister calls, and a small reordering so calls in exit_scsi
      match the reverse of those in init_scsi.
      a1a477f9
    • Christoph Hellwig's avatar
      [PATCH] rationalize allocation and freeing of struct scsi_device · a17430ad
      Christoph Hellwig authored
      Currently allocation and freeing of struct scsi_device is a mess.
      We have two nice functions in scsi_scan.c (scsi_allocate_sdev/
      scsi_free_sdev) that are the right interfaces to deal with it, so I moved
      them to scsi and made them non-static.  I've changed all functions
      allocation freeing them to use it.
      a17430ad
  21. 18 Nov, 2002 1 commit
  22. 17 Nov, 2002 3 commits
  23. 16 Nov, 2002 3 commits
    • Doug Ledford's avatar
      Update high level scsi drivers to use struct list_head in templates · ad82a127
      Doug Ledford authored
      Update scsi.c for struct list_head in upper layer templates
      Update scsi.c for new module loader semantics
      ad82a127
    • Christoph Hellwig's avatar
      move all procfs code to scsi_proc · ed54ad08
      Christoph Hellwig authored
      scsi.c gets really far too big, and having all code that depends on
      CONFIG_PROC_FS in scsi_proc.c is a nice cleanup.  Note that much of
      the procfs code is really really ugly and wants a rewrite to at
      least use the seq_file interface and probably moving to sysfs.
      ed54ad08
    • Doug Ledford's avatar
      scsi.c: · ae3c7c33
      Doug Ledford authored
      - Comment out GET_USE_COUNT, it's a bogus test anyway
      - Don't panic on failure to allocate sg table slab slots, fail gracefully
      - init_scsi() leaks all sorts of crap on failed module load
      ae3c7c33
  24. 14 Nov, 2002 2 commits
    • Patrick Mansfield's avatar
      remove scsi_host_hn_list · 024772d3
      Patrick Mansfield authored
      Here is Adam's patch to remove the scsi_host_hn_list, modified to
      skip past the token separator.
      024772d3
    • Patrick Mansfield's avatar
      dynamic device info flag entries · bb7b9e76
      Patrick Mansfield authored
      This patch allows scsi device flags like those in the current scsi_scan.c
      device_list to be added via the command line or via /proc/scsi/device_info.
      
      It also allows a default flag to be set via the command line.
      
      This should allow for the (eventual) removal of the current device_list.
      
      Example boot command line arguments:
      
      scsi_default_dev_flags=0x1 scsi_dev_flags="IBM:LN V1.2Rack:0x200"
      
      The above means that a SCSI device with vendor "IBM     ", model
      (product) "LN V1.2Rack     " will get a flag of 0x200 during scanning,
      meaning it should be treated like a SCSI-3 device for scanning. All
      other devices without an entry would get the default flag value of 1,
      so they would not be scanned past LUN 0 (the same behaviour as 
      max_scsi_luns = 1).
      
      I left the old device list and BLIST defines in scsi_scan.c.
      
      I could not get lilo to allow two spaces, so I could not use this
      with my device that has model "ST318203LC    !#". I didn't try grub.
      bb7b9e76
  25. 06 Nov, 2002 2 commits
    • Christoph Hellwig's avatar
      [PATCH] get rid of ->detect for upper layer drivers · 4e5ba3ff
      Christoph Hellwig authored
      Okay, we're finally at the point where ->detect has become entirely
      superflous.  In sd, sr and st it does nothing but return different
      values that are ignored anyway, in sg it increments a variable
      that is never read (and thus removed in this patch aswell), only
      in osst it increments a variable that is actually checked for beeing
      non-zero.  But if it was zero we'd never reached that place anyway
      (same check in the beginning of osst_detect and osst_attach).
      
      This make the upper layer interface a lot nicer and avoids the
      race condition where a device is remove between detect and attach
      (which currently wouldn't matter anyway as we aren't doing anything
      in detect anymore)
      4e5ba3ff
    • James Bottomley's avatar
      [PATCH] add request prep functions to SCSI · 24e696ca
      James Bottomley authored
      This patch adds request prep functions to the mid-layer.  At the moment, its a single request prep function for all of SCSI.  I've altered the logic in scsi_request_fn so that we now do early preparation (this should improve throughput slightly in the untagged case with only a single command block).
      
      The prep function also cannot drop the queue lock, so the calling assumptions for scsi_init_io and the upper layer driver init_commands have changed to be that the lock is now held and they cannot drop it.  I think this means that we have no callers of scsi_init_io that aren't atomic, so perhaps I can just take the if out.
      
      I've hammered this in my usual set up, but other testers would be welcome.
      
      James
      24e696ca