1. 31 1月, 2008 1 次提交
    • B
      [SCSI] implement scsi_data_buffer · 30b0c37b
      Boaz Harrosh 提交于
      In preparation for bidi we abstract all IO members of scsi_cmnd,
      that will need to duplicate, into a substructure.
      
      - Group all IO members of scsi_cmnd into a scsi_data_buffer
        structure.
      - Adjust accessors to new members.
      - scsi_{alloc,free}_sgtable receive a scsi_data_buffer instead of
        scsi_cmnd. And work on it.
      - Adjust scsi_init_io() and  scsi_release_buffers() for above
        change.
      - Fix other parts of scsi_lib/scsi.c to members migration. Use
        accessors where appropriate.
      
      - fix Documentation about scsi_cmnd in scsi_host.h
      
      - scsi_error.c
        * Changed needed members of struct scsi_eh_save.
        * Careful considerations in scsi_eh_prep/restore_cmnd.
      
      - sd.c and sr.c
        * sd and sr would adjust IO size to align on device's block
          size so code needs to change once we move to scsi_data_buff
          implementation.
        * Convert code to use scsi_for_each_sg
        * Use data accessors where appropriate.
      
      - tgt: convert libsrp to use scsi_data_buffer
      
      - isd200: This driver still bangs on scsi_cmnd IO members,
        so need changing
      
      [jejb: rebased on top of sg_table patches fixed up conflicts
      and used the synergy to eliminate use_sg and sg_count]
      Signed-off-by: NBoaz Harrosh <bharrosh@panasas.com>
      Signed-off-by: NFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
      Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
      30b0c37b
  2. 18 10月, 2007 1 次提交
  3. 13 10月, 2007 1 次提交
    • B
      [SCSI] scsi_error: Refactoring scsi_error to facilitate in synchronous REQUEST_SENSE · e1c23468
      Boaz Harrosh 提交于
       - Drivers/transports that want to send a synchronous REQUEST_SENSE command
         as part of their .queuecommand sequence, have 2 new API's that facilitate
         in doing so and abstract them from scsi-ml internals.
      
         void scsi_eh_prep_cmnd(struct scsi_cmnd *scmd,
      	struct scsi_eh_save *sesci, unsigned char *cmnd,
      	int cmnd_size, int sense_bytes)
      
         Will hijack a command and prepare it for request sense if needed.
         And will save any later needed info into a scsi_eh_save structure.
      
         void scsi_eh_restore_cmnd(struct scsi_cmnd* scmd,
      	struct scsi_eh_save *sesci);
      
         Will undo any changes done to a command by above function. Making
         it ready for completion.
      
       - Re-factor scsi_send_eh_cmnd() to use above APIs
      Signed-off-by: NBoaz Harrosh <bharrosh@panasas.com>
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      e1c23468
  4. 11 6月, 2006 1 次提交
  5. 20 5月, 2006 1 次提交
  6. 15 5月, 2006 1 次提交
    • T
      [PATCH] SCSI: implement shost->host_eh_scheduled · ee7863bc
      Tejun Heo 提交于
      libata needs to invoke EH without scmd.  This patch adds
      shost->host_eh_scheduled to implement such behavior.
      
      Currently the only user of this feature is libata and no general
      interface is defined.  This patch simply adds handling for
      host_eh_scheduled where needed and exports scsi_eh_wakeup() to
      modules.  The rest is upto libata.  This is the result of the
      following discussion.
      
      http://thread.gmane.org/gmane.linux.scsi/23853/focus=9760
      
      In short, SCSI host is not supposed to know about exceptions unrelated
      to specific device or command.  Such exceptions should be handled by
      transport layer proper.  However, the distinction is not essential to
      ATA and libata is planning to depart from SCSI, so, for the time
      being, libata will be using SCSI EH to handle such exceptions.
      Signed-off-by: NTejun Heo <htejun@gmail.com>
      ee7863bc
  7. 27 1月, 2006 1 次提交
  8. 07 9月, 2005 1 次提交
  9. 29 8月, 2005 1 次提交
    • J
      [SCSI] convert SPI transport class to scsi_execute · 33aa687d
      James Bottomley 提交于
      This one's slightly more difficult.  The transport class uses
      REQ_FAILFAST, so another interface (scsi_execute) had to be invented to
      take the extra flag.  Also, the sense functions are shifted around to
      allow spi_execute to place data directly into a struct scsi_sense_hdr.
      With this change, there's probably a lot of unnecessary sense buffer
      allocation going on which we can fix later.
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      33aa687d
  10. 17 4月, 2005 1 次提交
    • L
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds 提交于
      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!
      1da177e4