1. 05 12月, 2009 1 次提交
    • M
      [SCSI] scsi_debug: Thin provisioning support · 44d92694
      Martin K. Petersen 提交于
      This version fixes 64-bit modulo on 32-bit as well as inadvertent map
      updates when TP was disabled.
      
      Implement support for thin provisioning in scsi_debug.  No actual memory
      de-allocation is taking place.  The intent is to emulate a thinly
      provisioned storage device, not to be one.
      
      There are four new module options:
      
       - unmap_granularity specifies the granularity at which to track mapped
         blocks (specified in number of logical blocks).  2048 (1 MB) is a
         realistic value for disk arrays although some may have a finer
         granularity.
      
       - unmap_alignment specifies the first LBA which is naturally aligned on
         an unmap_granularity boundary.
      
       - unmap_max_desc specifies the maximum number of ranges that can be
         unmapped using one UNMAP command.  If this is 0, only WRITE SAME is
         supported and UNMAP will cause a check condition.
      
       - unmap_max_blocks specifies the maximum number of blocks that can be
         unmapped using a single UNMAP command.  Default is 0xffffffff.
      
      These parameters are reported in the new and extended block limits VPD.
      
      If unmap_granularity is specified the device is tagged as thin
      provisioning capable in READ CAPACITY(16).  A bitmap is allocated to
      track whether blocks are mapped or not.  A WRITE request will cause a
      block to be mapped.  So will WRITE SAME unless the UNMAP bit is set.
      
      Blocks can be unmapped using either WRITE SAME or UNMAP.  No accounting
      is done to track partial blocks.  This means that only whole blocks will
      be marked free.  This is how the array people tell me their firmwares
      work.
      
      GET LBA STATUS is also supported.  This command reports whether a block
      is mapped or not, and how long the adjoining mapped/unmapped extent is.
      
      The block allocation bitmap can also be viewed from user space via:
      
      	/sys/bus/pseudo/drivers/scsi_debug/map
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      Acked-by: NDouglas Gilbert <dgilbert@interlog.com>
      Signed-off-by: NJames Bottomley <James.Bottomley@suse.de>
      44d92694
  2. 02 10月, 2009 1 次提交
  3. 22 6月, 2009 1 次提交
  4. 21 5月, 2009 1 次提交
  5. 13 3月, 2009 1 次提交
  6. 03 1月, 2009 1 次提交
  7. 27 7月, 2008 1 次提交
  8. 12 7月, 2008 2 次提交
  9. 29 4月, 2008 1 次提交
  10. 08 4月, 2008 18 次提交
  11. 18 2月, 2008 1 次提交
  12. 31 1月, 2008 3 次提交
  13. 12 1月, 2008 1 次提交
  14. 23 10月, 2007 1 次提交
  15. 16 10月, 2007 1 次提交
  16. 20 7月, 2007 1 次提交
  17. 18 6月, 2007 1 次提交
  18. 09 5月, 2007 1 次提交
  19. 15 2月, 2007 1 次提交
    • T
      [PATCH] remove many unneeded #includes of sched.h · cd354f1a
      Tim Schmielau 提交于
      After Al Viro (finally) succeeded in removing the sched.h #include in module.h
      recently, it makes sense again to remove other superfluous sched.h includes.
      There are quite a lot of files which include it but don't actually need
      anything defined in there.  Presumably these includes were once needed for
      macros that used to live in sched.h, but moved to other header files in the
      course of cleaning it up.
      
      To ease the pain, this time I did not fiddle with any header files and only
      removed #includes from .c-files, which tend to cause less trouble.
      
      Compile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha,
      arm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig,
      allmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all
      configs in arch/arm/configs on arm.  I also checked that no new warnings were
      introduced by the patch (actually, some warnings are removed that were emitted
      by unnecessarily included header files).
      Signed-off-by: NTim Schmielau <tim@physik3.uni-rostock.de>
      Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      cd354f1a
  20. 14 1月, 2007 1 次提交
    • D
      [SCSI] scsi_debug: error processing · 6f3cbf55
      Douglas Gilbert 提交于
      After discussions in the thread titled:
          [PATCH] scsi_debug: illegal blocking memory allocation
      here is a patch containing the discussed fix and some other
      fixes and additions. The patch is against lk 2.6.20-rc3 .
      The version is bumped to 1.81 .
      
      ChangeLog:
        - Change several GFP_KERNEL allocations to GFP_ATOMIC
          as they can be called from queuecommand() context
        - check above allocation returns and if out of memory
          report DID_REQUEUE in two cases, DID_NO_CONNECT in
          another, and fail slave configure() in another
        - add support for WRITE BUFFER command
        - add aborted_command error injection support
          (opts mask 0x10), similar mechanism to
          recovered_error injection.
      Signed-off-by: NDouglas Gilbert <dougg@torque.net>
      Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
      6f3cbf55