07 Aug, 2014

2 commits


04 Aug, 2014

1 commit


01 Aug, 2014

8 commits

  • Fix printk format warnings (seen on i386 builds):

    ../drivers/scsi/u14-34f.c: In function 'port_detect':
    ../drivers/scsi/u14-34f.c:630:28: warning: format '%u' expects argument of type 'unsigned int', but argument 4 has type 'u64' [-Wformat=]
    ../drivers/scsi/u14-34f.c: In function 'u14_34f_queuecommand_lck':
    ../drivers/scsi/u14-34f.c:1290:25: warning: format '%llu' expects argument of type 'long long unsigned int', but argument 6 has type 'int' [-Wformat=]

    Signed-off-by: Randy Dunlap
    Reviewed-by: Hannes Reinecke
    Signed-off-by: Christoph Hellwig

    Randy Dunlap
     
  • The current implementation may mix the negative value returned from
    pm8001_set_nvmd with count. -(-ENOMEM) could be interpreted as bytes
    programmed, this patch fixes it.

    Signed-off-by: Tomas Henzl
    Signed-off-by: Suresh Thiagarajan
    Signed-off-by: Christoph Hellwig

    Tomas Henzl
     
  • The loopcount is calculated by using some weird magic. Use instead a boring
    macro.

    Signed-off-by: Tomas Henzl
    Acked-by: Suresh Thiagarajan
    Signed-off-by: Christoph Hellwig

    Tomas Henzl
     
  • Update pmcs mail list for pm8001 driver support

    Signed-off-by: Suresh Thiagarajan
    Acked-by: Jack Wang
    Signed-off-by: Christoph Hellwig

    Suresh Thiagarajan
     
  • When a iscsi nop as ping timedout we were failing with the
    common connection error code, ISCSI_ERR_CONN_FAILED. This
    patch adds a new error code for this problem so can properly
    track/distinguish in userspace.

    Signed-off-by: Mike Christie
    Acked-by: Vikas Chaudhary
    Reviewed-by: Hannes Reinecke
    Signed-off-by: Christoph Hellwig

    Mike Christie
     
  • When the get_host_stats call was not supported we were
    returing EINVAL. This has us return ENOSYS, because for
    software iscsi drivers where there is no host it is ok to not
    have this callout.

    Signed-off-by: Mike Christie
    Acked-by: Vikas Chaudhary
    Reviewed-by: Hannes Reinecke
    Signed-off-by: Christoph Hellwig

    Mike Christie
     
  • iscsi_get_host_stats was dropping the error code returned
    by drivers like qla4xxx.

    Signed-off-by: Mike Christie
    Acked-by: Vikas Chaudhary
    Signed-off-by: Christoph Hellwig

    Mike Christie
     
  • qla4xxx was not always returning -EXYZ error codes when
    qla4xxx_get_host_stats failed.

    Signed-off-by: Mike Christie
    Acked-by: Vikas Chaudhary
    Reviewed-by: Hannes Reinecke
    Signed-off-by: Christoph Hellwig

    Mike Christie
     

30 Jul, 2014

8 commits


29 Jul, 2014

9 commits


26 Jul, 2014

12 commits

  • - add host_lock option whose default value is 0 which removes the
    host_lock around all queued commands
    - accept delay=-1 (_hi_) or -2 which use a tasklet to invoke
    the scsi_done callback into the mid-layer. The default
    is still delay=1 which uses a timer to delay 1 jiffy
    - wire .change_queue_depth and .change_queue_type
    functions to better simulate queueing in a modern LLD
    - add SCSI_DEBUG_OPT_Q_NOISE (0x200) mask to only produce
    debug output associated with queue full, plus from
    .change_queue_depth and .change_queue_type functions
    - add SCSI_DEBUG_OPT_ALL_TSF (0x400) mask which reports
    all queued_arr fulls at TASK_SET_FULL, otherwise
    SCSI_MLQUEUE_HOST_BUSY is returned
    - add SCSI_DEBUG_OPT_RARE_TSF (0x800) mask which works
    together with the every_nth option (> 0) to count
    occurrences of num_in_q==queue_depth. When every_nth
    is reached the victim (a command) yields TASK SET FULL
    - clean up many debug messages.
    - add ndelay= option that uses high resolution
    timers; active if > 0 and then overrides delay= option
    - expand Unit Attention handling: POR, BUS_RESET and
    MODE PARAMETERS CHANGED
    - support .eh_target_reset_handler and drop .bios_param
    - add OPT_N_WCE mask so caching page yields WCE=0
    - add OPT_RESET_NOISE mask to log aborts and resets
    - add OPT_NO_CDB_NOISE mask to not log each cdb
    - MODE SELECT support for changing caching page's WCE
    - name common ioctls in log
    - when fake_rw=1, do not vmalloc fake store; make
    UNMAP and WRITE SAME obey fake_rw
    - more logging and code improvements including better
    sense buffer handling

    With fio and four (pseudo) devices I have observed 1.2 M IOPS
    on my equipment. Rob Elliott who has done much testing and made
    numerous suggestions, has better IOPS results than mine.

    Signed-off-by: Douglas Gilbert
    Reviewed-by: Robert Elliott
    Tested-by: Robert Elliott
    Signed-off-by: Christoph Hellwig

    Douglas Gilbert
     
  • Add blist flags to permit the reading of the VPD pages even when
    the target may claim SPC-2 compliance. MSFT targets currently
    claim SPC-2 compliance while they implement post SPC-2 features.
    With this patch we can correctly handle WRITE_SAME_16 issues.

    Signed-off-by: K. Y. Srinivasan
    Reviewed-by: Hannes Reinecke
    Signed-off-by: Christoph Hellwig

    K. Y. Srinivasan
     
  • Fix many warnings with incorrect endian assumptions
    which makes the code unportable to new architectures.

    The UFS specification defines the byte order as big-endian
    for UPIU structure and little-endian for the host controller
    transfer/task management descriptors.

    Signed-off-by: Sujit Reddy Thumma
    Signed-off-by: Dolev Raviv
    Signed-off-by: Christoph Hellwig

    Sujit Reddy Thumma
     
  • Make undeclared functions static to suppress warnings
    from sparse tool.

    Signed-off-by: Sujit Reddy Thumma
    Signed-off-by: Dolev Raviv
    Signed-off-by: Christoph Hellwig

    Sujit Reddy Thumma
     
  • Signed-off-by: Vikas Chaudhary
    Signed-off-by: Christoph Hellwig

    Vikas Chaudhary
     
  • Instead of copying information to fw_control_context free it.

    The task is forgotten thus also the reference to fw_control_context
    and the completion thread takes the info from virt_ptr again.

    Signed-off-by: Tomas Henzl
    Acked-by: Suresh Thiagarajan
    Signed-off-by: Christoph Hellwig

    Tomas Henzl
     
  • The driver checks the return valu, but after he tries to wait_for_completion
    which might never happen. Also the ioctl buffer is freed at the end of the
    function, so the first removal is not needed.

    Signed-off-by: Tomas Henzl
    Acked-by: Suresh Thiagarajan
    Signed-off-by: Christoph Hellwig

    Tomas Henzl
     
  • ccb->fw_control_context is copied to local fw_control_context and
    the local variable is never used later

    Free ccb->fw_control_context. The task is forgotten thus also the
    reference to fw_control_context and the completion thread takes the info
    from virt_ptr again.

    Signed-off-by: Tomas Henzl
    Acked-by: Suresh Thiagarajan
    Signed-off-by: Christoph Hellwig

    Tomas Henzl
     
  • There is a risk that the variable will be used without being initialized.

    This was largely found by using a static code analysis program called cppche

    Signed-off-by: Rickard Strandqvist
    Acked-by: Suresh Thiagarajan
    Acked-by: Jack Wang
    Signed-off-by: Christoph Hellwig

    Rickard Strandqvist
     
  • Removal of null pointer checks that could never happen

    Signed-off-by: Rickard Strandqvist
    Acked-by: Suresh Thiagarajan
    Acked-by: Jack Wang
    Signed-off-by: Christoph Hellwig

    Rickard Strandqvist
     
  • The driver ignores the return value in a lot of places, fix
    it at least somewhere (and release the resources in such cases),
    to avoid that bad things happen.
    A memory leak is fixed too.

    Signed-off-by: Tomas Henzl
    Acked-by: Suresh Thiagarajan
    Acked-by: Jack Wang
    Signed-off-by: Christoph Hellwig

    Tomas Henzl
     
  • Patch adds a new spinlock to protect the ccb management.
    It may happen that concurrent threads become the same tag value
    from the 'alloc' function', the spinlock prevents this situation.

    Signed-off-by: Tomas Henzl
    Acked-by: Suresh Thiagarajan
    Acked-by: Jack Wang
    Signed-off-by: Christoph Hellwig

    Tomas Henzl