29 Jan, 2019

1 commit


19 Dec, 2018

1 commit

  • Most SCSI drivers want to enable "clustering", that is merging of
    segments so that they might span more than a single page. Remove the
    ENABLE_CLUSTERING define, and require drivers to explicitly set
    DISABLE_CLUSTERING to disable this feature.

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Martin K. Petersen

    Christoph Hellwig
     

08 Dec, 2018

1 commit


18 Oct, 2018

1 commit


11 Oct, 2018

1 commit

  • lockdep_assert_held() is better suited to checking locking requirements, since
    it won't get confused when someone else holds the lock. This is also a step
    towards possibly removing spin_is_locked().

    Signed-off-by: Lance Roy
    Cc: Karan Tilak Kumar
    Cc: Sesidhar Baddela
    Cc: "James E.J. Bottomley"
    Cc: "Martin K. Petersen"
    Cc:
    Reviewed-by: Bart Van Assche
    Signed-off-by: Martin K. Petersen

    Lance Roy
     

13 Jul, 2018

1 commit

  • We don't want to use 'struct timespec' because of the y2038 overflow
    problem. The overflow is not actually an issue here, but it's easy to
    replace with 'timespec64' for consistency. However, it's worth pointing out
    that nanosecond values have nine digits, not eight or ten, so I'm fixing
    the format strings accordingly as well.

    Signed-off-by: Arnd Bergmann
    Signed-off-by: Martin K. Petersen

    Arnd Bergmann
     

19 May, 2018

1 commit


02 Nov, 2017

1 commit

  • Many source files in the tree are missing licensing information, which
    makes it harder for compliance tools to determine the correct license.

    By default all files without license information are under the default
    license of the kernel, which is GPL version 2.

    Update the files which contain no license information with the 'GPL-2.0'
    SPDX license identifier. The SPDX identifier is a legally binding
    shorthand, which can be used instead of the full boiler plate text.

    This patch is based on work done by Thomas Gleixner and Kate Stewart and
    Philippe Ombredanne.

    How this work was done:

    Patches were generated and checked against linux-4.14-rc6 for a subset of
    the use cases:
    - file had no licensing information it it.
    - file was a */uapi/* one with no licensing information in it,
    - file was a */uapi/* one with existing licensing information,

    Further patches will be generated in subsequent months to fix up cases
    where non-standard license headers were used, and references to license
    had to be inferred by heuristics based on keywords.

    The analysis to determine which SPDX License Identifier to be applied to
    a file was done in a spreadsheet of side by side results from of the
    output of two independent scanners (ScanCode & Windriver) producing SPDX
    tag:value files created by Philippe Ombredanne. Philippe prepared the
    base worksheet, and did an initial spot review of a few 1000 files.

    The 4.13 kernel was the starting point of the analysis with 60,537 files
    assessed. Kate Stewart did a file by file comparison of the scanner
    results in the spreadsheet to determine which SPDX license identifier(s)
    to be applied to the file. She confirmed any determination that was not
    immediately clear with lawyers working with the Linux Foundation.

    Criteria used to select files for SPDX license identifier tagging was:
    - Files considered eligible had to be source code files.
    - Make and config files were included as candidates if they contained >5
    lines of source
    - File already had some variant of a license header in it (even if
    Reviewed-by: Philippe Ombredanne
    Reviewed-by: Thomas Gleixner
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     

02 Jul, 2017

1 commit


13 Jun, 2017

1 commit


05 May, 2017

1 commit

  • Pull SCSI updates from James Bottomley:
    "This update includes the usual round of major driver updates
    (hisi_sas, ufs, fnic, cxlflash, be2iscsi, ipr, stex). There's also the
    usual amount of cosmetic and spelling stuff"

    * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (155 commits)
    scsi: qla4xxx: fix spelling mistake: "Tempalate" -> "Template"
    scsi: stex: make S6flag static
    scsi: mac_esp: fix to pass correct device identity to free_irq()
    scsi: aacraid: pci_alloc_consistent() failures on ARM64
    scsi: ufs: make ufshcd_get_lists_status() register operation obvious
    scsi: ufs: use MASK_EE_STATUS
    scsi: mac_esp: Replace bogus memory barrier with spinlock
    scsi: fcoe: make fcoe_e_d_tov and fcoe_r_a_tov static
    scsi: sd_zbc: Do not write lock zones for reset
    scsi: sd_zbc: Remove superfluous assignments
    scsi: sd: sd_zbc: Rename sd_zbc_setup_write_cmnd
    scsi: Improve scsi_get_sense_info_fld
    scsi: sd: Cleanup sd_done sense data handling
    scsi: sd: Improve sd_completed_bytes
    scsi: sd: Fix function descriptions
    scsi: mpt3sas: remove redundant wmb
    scsi: mpt: Move scsi_remove_host() out of mptscsih_remove_host()
    scsi: sg: reset 'res_in_use' after unlinking reserved array
    scsi: mvumi: remove code handling zero scsi_sg_count(scmd) case
    scsi: fusion: fix spelling mistake: "Persistancy" -> "Persistency"
    ...

    Linus Torvalds
     

14 Apr, 2017

1 commit


24 Mar, 2017

1 commit

  • This patch fix some spelling typos found in printk.

    [jkosina@suse.cz: drop arch/arm64/kernel/hibernate.c that was already
    in place]
    Signed-off-by: Masanari Iida
    Acked-by: Randy Dunlap
    Signed-off-by: Jiri Kosina

    Masanari Iida
     

22 Feb, 2017

1 commit

  • Pull SCSI updates from James Bottomley:
    "This update includes the usual round of major driver updates (ncr5380,
    ufs, lpfc, be2iscsi, hisi_sas, storvsc, cxlflash, aacraid,
    megaraid_sas, ...).

    There's also an assortment of minor fixes and the major update of
    switching a bunch of drivers to pci_alloc_irq_vectors from Christoph"

    * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (188 commits)
    scsi: megaraid_sas: handle dma_addr_t right on 32-bit
    scsi: megaraid_sas: array overflow in megasas_dump_frame()
    scsi: snic: switch to pci_irq_alloc_vectors
    scsi: megaraid_sas: driver version upgrade
    scsi: megaraid_sas: Change RAID_1_10_RMW_CMDS to RAID_1_PEER_CMDS and set value to 2
    scsi: megaraid_sas: Indentation and smatch warning fixes
    scsi: megaraid_sas: Cleanup VD_EXT_DEBUG and SPAN_DEBUG related debug prints
    scsi: megaraid_sas: Increase internal command pool
    scsi: megaraid_sas: Use synchronize_irq to wait for IRQs to complete
    scsi: megaraid_sas: Bail out the driver load if ld_list_query fails
    scsi: megaraid_sas: Change build_mpt_mfi_pass_thru to return void
    scsi: megaraid_sas: During OCR, if get_ctrl_info fails do not continue with OCR
    scsi: megaraid_sas: Do not set fp_possible if TM capable for non-RW syspdIO, change fp_possible to bool
    scsi: megaraid_sas: Remove unused pd_index from megasas_build_ld_nonrw_fusion
    scsi: megaraid_sas: megasas_return_cmd does not memset IO frame to zero
    scsi: megaraid_sas: max_fw_cmds are decremented twice, remove duplicate
    scsi: megaraid_sas: update can_queue only if the new value is less
    scsi: megaraid_sas: Change max_cmd from u32 to u16 in all functions
    scsi: megaraid_sas: set pd_after_lb from MR_BuildRaidContext and initialize pDevHandle to MR_DEVHANDLE_INVALID
    scsi: megaraid_sas: latest controller OCR capability from FW before sending shutdown DCMD
    ...

    Linus Torvalds
     

16 Feb, 2017

1 commit


06 Jan, 2017

1 commit

  • If a call to mempool_create_slab_pool() in snic_probe() returns NULL,
    return -ENOMEM to indicate failure. mempool_creat_slab_pool() only fails
    if it cannot allocate memory.

    https://bugzilla.kernel.org/show_bug.cgi?id=189061

    Reported-by: bianpan2010@ruc.edu.cn
    Signed-off-by: Burak Ok
    Signed-off-by: Andreas Schaertl
    Acked-by: Narsimhulu Musini
    Reviewed-by: Ewan D. Milne
    Signed-off-by: Martin K. Petersen

    Burak Ok
     

13 Jul, 2016

2 commits


12 Apr, 2016

8 commits

  • scsi host is added after negotiating the max number of IOs with
    Firmware.

    Signed-off-by: Narsimhulu Musini
    Signed-off-by: Sesidhar Baddela
    Signed-off-by: Martin K. Petersen

    Narsimhulu Musini
     
  • While HBA reset is in progress, if IO/TM completion is received for the
    same IO then IO/TM completion path releases the driver private resources
    associated with IO. This fix prevents releasing the resources in
    IO and TM completion path if HBA reset is in progress.

    Signed-off-by: Narsimhulu Musini
    Signed-off-by: Sesidhar Baddela
    Signed-off-by: Martin K. Petersen

    Narsimhulu Musini
     
  • - On posting an IO to the firmware, adapter generates an interrupt.
    Due to hardware issues, sometimes the adapter fails to generate
    the interrupt. This behavior skips updating transmit queue-
    counters, which in turn causes the queue full condition. The fix
    addresses the queue full condition.

    - The fix also reserves a slot in transmit queue for hba reset.
    when queue full is observed during IO, there will always be room
    to post hba reset command.

    Signed-off-by: Narsimhulu Musini
    Signed-off-by: Sesidhar Baddela
    Signed-off-by: Martin K. Petersen

    Narsimhulu Musini
     
  • Fix deletes the snic targets synchronously prior to deletion of host.

    Signed-off-by: Narsimhulu Musini
    Signed-off-by: Sesidhar Baddela
    Signed-off-by: Martin K. Petersen

    Narsimhulu Musini
     
  • Fix handles control path queue issues such as queue full and sudden
    removal of hardware.

    Signed-off-by: Narsimhulu Musini
    Signed-off-by: Sesidhar Baddela
    Signed-off-by: Martin K. Petersen

    Narsimhulu Musini
     
  • - LUN goes offline if there are at least two scsi command timeouts
    Completing the IO with scsi_done() fixes the issue.

    Signed-off-by: Narsimhulu Musini
    Signed-off-by: Sesidhar Baddela
    Signed-off-by: Martin K. Petersen

    Narsimhulu Musini
     
  • Adding additional stats, and fixed logging messages.
    - Added qdepth change stats
    - Added separate isr stats for each type of interrupt
    - Fixed race in updating active IOs
    - Suppressed Link event message for DAS backend.

    Signed-off-by: Narsimhulu Musini
    Signed-off-by: Sesidhar Baddela
    Signed-off-by: Martin K. Petersen

    Narsimhulu Musini
     
  • On larger installations it is useful to disable automatic LUN scanning,
    and only add the required LUNs via udev rules. This can speed up bootup
    dramatically.

    This patch introduces a new scan module parameter value 'manual', which
    works like 'none', but can be overridden by setting the 'rescan' value
    from scsi_scan_target to 'SCSI_SCAN_MANUAL'. And it updates all
    relevant callers to set the 'rescan' value to 'SCSI_SCAN_MANUAL' if
    invoked via the 'scan' option in sysfs.

    Signed-off-by: Hannes Reinecke
    Reviewed-by: Ewan D. Milne
    Tested-by: Laurence Oberman
    Signed-off-by: Martin K. Petersen

    Hannes Reinecke
     

02 Mar, 2016

1 commit

  • The snic version number is expected to be 4 decimals in the form like a
    netmask string with each number stored in an element in array v.
    However, there is an off-by-one check on the number of elements in v
    allowing one to pass a 5 decimal version number causing v[4] to be
    referenced, causing a buffer overrun. Fix the off-by-one error by
    comparing to i > 3 rather than 4.

    Signed-off-by: Colin Ian King
    Reviewed-by: Shane Seymour
    Reviewed-by: Ewan Milne
    Signed-off-by: Martin K. Petersen

    Colin Ian King
     

14 Nov, 2015

1 commit

  • Pull final round of SCSI updates from James Bottomley:
    "Sorry for the delay in this patch which was mostly caused by getting
    the merger of the mpt2/mpt3sas driver, which was seen as an essential
    item of maintenance work to do before the drivers diverge too much.
    Unfortunately, this caused a compile failure (detected by linux-next),
    which then had to be fixed up and incubated.

    In addition to the mpt2/3sas rework, there are updates from pm80xx,
    lpfc, bnx2fc, hpsa, ipr, aacraid, megaraid_sas, storvsc and ufs plus
    an assortment of changes including some year 2038 issues, a fix for a
    remove before detach issue in some drivers and a couple of other minor
    issues"

    * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (141 commits)
    mpt3sas: fix inline markers on non inline function declarations
    sd: Clear PS bit before Mode Select.
    ibmvscsi: set max_lun to 32
    ibmvscsi: display default value for max_id, max_lun and max_channel.
    mptfusion: don't allow negative bytes in kbuf_alloc_2_sgl()
    scsi: pmcraid: replace struct timeval with ktime_get_real_seconds()
    mvumi: 64bit value for seconds_since1970
    be2iscsi: Fix bogus WARN_ON length check
    scsi_scan: don't dump trace when scsi_prep_async_scan() is called twice
    mpt3sas: Bump mpt3sas driver version to 09.102.00.00
    mpt3sas: Single driver module which supports both SAS 2.0 & SAS 3.0 HBAs
    mpt2sas, mpt3sas: Update the driver versions
    mpt3sas: setpci reset kernel oops fix
    mpt3sas: Added OEM Gen2 PnP ID branding names
    mpt3sas: Refcount fw_events and fix unsafe list usage
    mpt3sas: Refcount sas_device objects and fix unsafe list usage
    mpt3sas: sysfs attribute to report Backup Rail Monitor Status
    mpt3sas: Ported WarpDrive product SSS6200 support
    mpt3sas: fix for driver fails EEH, recovery from injected pci bus error
    mpt3sas: Manage MSI-X vectors according to HBA device type
    ...

    Linus Torvalds
     

10 Nov, 2015

1 commit

  • This patch changes the !blk-mq path to the same defaults as the blk-mq
    I/O path by always enabling block tagging, and always using host wide
    tags. We've had blk-mq available for a few releases so bugs with
    this mode should have been ironed out, and this ensures we get better
    coverage of over tagging setup over different configs.

    Signed-off-by: Christoph Hellwig
    Acked-by: Jens Axboe
    Reviewed-by: Hannes Reinecke
    Signed-off-by: James Bottomley

    Christoph Hellwig
     

04 Oct, 2015

1 commit

  • Its a bit odd that debugfs_create_bool() takes 'u32 *' as an argument,
    when all it needs is a boolean pointer.

    It would be better to update this API to make it accept 'bool *'
    instead, as that will make it more consistent and often more convenient.
    Over that bool takes just a byte.

    That required updates to all user sites as well, in the same commit
    updating the API. regmap core was also using
    debugfs_{read|write}_file_bool(), directly and variable types were
    updated for that to be bool as well.

    Signed-off-by: Viresh Kumar
    Acked-by: Mark Brown
    Acked-by: Charles Keepax
    Signed-off-by: Greg Kroah-Hartman

    Viresh Kumar
     

20 Jun, 2015

1 commit

  • Cisco has developed a new PCI HBA interface called sNIC, which stands for
    SCSI NIC. This is a new storage feature supported on specialized network
    adapter. The new PCI function provides a uniform host interface and abstracts
    backend storage.

    [jejb: fix up checkpatch errors]
    Signed-off-by: Narsimhulu Musini
    Signed-off-by: Sesidhar Baddela
    Reviewed-by: Hannes Reinecke
    Signed-off-by: James Bottomley

    Narsimhulu Musini