03 Sep, 2013

9 commits

  • Signed-off-by: Jan Vesely
    Acked-by: Sreekanth Reddy
    Signed-off-by: James Bottomley

    Jan Vesely
     
  • Signed-off-by: Sreekanth Reddy
    Signed-off-by: James Bottomley

    Sreekanth Reddy
     
  • … LUN 0 configured expander

    With some enclosures when LUN 0 is not created but LUN 1 or LUN X is created
    then SCSI scan procedure calls target_alloc, slave_alloc call back functions
    for LUN 0 and slave_destory() for same LUN 0.

    In these kind of cases within slave_destroy, pointer to scsi_target in
    _sas_device structure is set to NULL, following which when slave_alloc for
    LUN 1 is called then starget would not be set properly for this LUN.
    So, scsi_target pointer pointing to NULL value would lead to a crash later
    in the discovery procedure.

    To solve this issue set the sas_device's scsi_target pointer to scsi_device's
    scsi_target if it is NULL earlier in slave_alloc callback function.

    Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@lsi.com>
    Signed-off-by: James Bottomley <JBottomley@Parallels.com>

    Sreekanth Reddy
     
  • …removed but their transport layer entries are not removed

    When Async scanning mode is enabled and device scanning is in progress then
    devices should not be removed. But in actuality, devices are removed but
    their transport layer entries are not removed. This causes error to add
    the same device to the transport layer after host reset or diagnostic
    reset.

    So, in this patch, modified the code in such a way that device is not removed
    when Async scanning mode is enabled and device scanning is in progress.

    Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@lsi.com>
    Signed-off-by: James Bottomley <JBottomley@Parallels.com>

    Sreekanth Reddy
     
  • Infinite loop can occur if IOCStatus is not equal to
    MPI2_IOCSTATUS_CONFIG_INVALID_PAGE value in the while loops in functions
    _scsih_search_responding_sas_devices,
    _scsih_search_responding_raid_devices and
    _scsih_search_responding_expanders

    So, Instead of checking for MPI2_IOCSTATUS_CONFIG_INVALID_PAGE value,
    in this patch code is modified to check for IOCStatus not equals to
    MPI2_IOCSTATUS_SUCCESS to break the while loop.

    Signed-off-by: Sreekanth Reddy
    Signed-off-by: James Bottomley

    Sreekanth Reddy
     
  • The copyright in driver sources is updated for the year 2013.

    Signed-off-by: Sreekanth Reddy
    Signed-off-by: James Bottomley

    Sreekanth Reddy
     
  • Change set in MPI2 Rev x specification and 2.00.26 header files

    1. Added two new AbortType values for TargetModeAbort Request: one to abort
    all IOs from a single initiator and other to abort only Command IUs.

    2. Added Use Slot Information during Port Enable Event Reply flag to the Flags
    field of Manufacturing Page 7.

    3. Added OEM Identifier to BiosOptions bits of BIOS Page 1.

    Signed-off-by: Sreekanth Reddy
    Signed-off-by: James Bottomley

    Sreekanth Reddy
     
  • The intent of this patch is to perform a graceful shutdown of target drives even if
    volume doesn't exits. Changes done in this patch

    1. Removed the check for the presence of volumes before sending down
    MPI2_RAID_ACTION_SYSTEM_SHUTDOWN_INITIATED. Therefore, this RAID action
    would be sent if the card is IR Firmware.

    2. The MPI2_RAID_ACTION_SYSTEM_SHUTDOWN_INITIATED is sent even when the
    system undergoes suspend (in addition to remove/shutdown which was already
    present)

    Signed-off-by: Sreekanth Reddy
    Signed-off-by: James Bottomley

    Sreekanth Reddy
     
  • Added a check to identify if mpi_reply is NULL in mpt2sas_ctl_event_callback()
    and return without proceeding if it is the case.

    Also modified the following functions to return void instead of 0 or 1
    as returning those values from events perspective doesn't make sense.
    * _base_async_event()
    * mpt2sas_ctl_event_callback()
    * mpt2sas_scsih_event_callback()

    Signed-off-by: Sreekanth Reddy
    Signed-off-by: James Bottomley

    Sreekanth Reddy
     

26 Aug, 2013

1 commit

  • If mpt2sas_base_map_resources takes an early error path then its
    counterpart, mpt2sas_base_free_resources needs to be careful about
    cleaning up:

    1 - _base_mask_interrupts and _base_make_ioc_ready require memory
    mapped I/O registers, make sure that this is true.

    2 - _base_free_irq iterates over the adapter's reply_queue_list, so
    move this list head initialization out of _base_enable_msix to
    _scsih_probe so this will always be safe.

    3 - check that the controller PCI device and its BARs have been
    enabled before disabling them.

    Signed-off-by: Joe Lawrence
    Acked-by: Sreekanth Reddy
    Signed-off-by: James Bottomley

    Joe Lawrence
     

25 Jun, 2013

8 commits


09 May, 2013

1 commit

  • Pull block core updates from Jens Axboe:

    - Major bit is Kents prep work for immutable bio vecs.

    - Stable candidate fix for a scheduling-while-atomic in the queue
    bypass operation.

    - Fix for the hang on exceeded rq->datalen 32-bit unsigned when merging
    discard bios.

    - Tejuns changes to convert the writeback thread pool to the generic
    workqueue mechanism.

    - Runtime PM framework, SCSI patches exists on top of these in James'
    tree.

    - A few random fixes.

    * 'for-3.10/core' of git://git.kernel.dk/linux-block: (40 commits)
    relay: move remove_buf_file inside relay_close_buf
    partitions/efi.c: replace useless kzalloc's by kmalloc's
    fs/block_dev.c: fix iov_shorten() criteria in blkdev_aio_read()
    block: fix max discard sectors limit
    blkcg: fix "scheduling while atomic" in blk_queue_bypass_start
    Documentation: cfq-iosched: update documentation help for cfq tunables
    writeback: expose the bdi_wq workqueue
    writeback: replace custom worker pool implementation with unbound workqueue
    writeback: remove unused bdi_pending_list
    aoe: Fix unitialized var usage
    bio-integrity: Add explicit field for owner of bip_buf
    block: Add an explicit bio flag for bios that own their bvec
    block: Add bio_alloc_pages()
    block: Convert some code to bio_for_each_segment_all()
    block: Add bio_for_each_segment_all()
    bounce: Refactor __blk_queue_bounce to not use bi_io_vec
    raid1: use bio_copy_data()
    pktcdvd: Use bio_reset() in disabled code to kill bi_idx usage
    pktcdvd: use bio_copy_data()
    block: Add bio_copy_data()
    ...

    Linus Torvalds
     

30 Apr, 2013

1 commit


24 Mar, 2013

1 commit

  • More prep work for immutable bvecs/effecient bio splitting - usage of
    bi_vcnt has to be auditing, so getting rid of all the unnecessary usage
    makes that easier.

    Plus, bio_segments() is really what this code wanted, as it respects the
    current value of bi_idx.

    Signed-off-by: Kent Overstreet
    CC: Jens Axboe
    CC: Eric Moore
    CC: "James E.J. Bottomley"
    CC: linux-scsi@vger.kernel.org

    Kent Overstreet
     

24 Feb, 2013

1 commit


29 Jan, 2013

1 commit


04 Jan, 2013

1 commit

  • CONFIG_HOTPLUG is going away as an option. As a result, the __dev*
    markings need to be removed.

    This change removes the use of __devinit, __devexit_p, __devinitdata,
    __devinitconst, and __devexit from these drivers.

    Based on patches originally written by Bill Pemberton, but redone by me
    in order to handle some of the coding style issues better, by hand.

    Cc: Bill Pemberton
    Cc: Adam Radford
    Cc: "James E.J. Bottomley"
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     

03 Oct, 2012

1 commit

  • Pull first round of SCSI updates from James Bottomley:
    "This is a large set of updates, mostly for drivers (qla2xxx [including
    support for new 83xx based card], qla4xxx, mpt2sas, bfa, zfcp, hpsa,
    be2iscsi, isci, lpfc, ipr, ibmvfc, ibmvscsi, megaraid_sas).

    There's also a rework for tape adding virtually unlimited numbers of
    tape drives plus a set of dif fixes for sd and a fix for a live lock
    on hot remove of SCSI devices.

    This round includes a signed tag pull of isci-for-3.6

    Signed-off-by: James Bottomley "

    Fix up trivial conflict in drivers/scsi/qla2xxx/qla_nx.c due to new PCI
    helper function use in a function that was removed by this pull.

    * tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (198 commits)
    [SCSI] st: remove st_mutex
    [SCSI] sd: Ensure we correctly disable devices with unknown protection type
    [SCSI] hpsa: gen8plus Smart Array IDs
    [SCSI] qla4xxx: Update driver version to 5.03.00-k1
    [SCSI] qla4xxx: Disable generating pause frames for ISP83XX
    [SCSI] qla4xxx: Fix double clearing of risc_intr for ISP83XX
    [SCSI] qla4xxx: IDC implementation for Loopback
    [SCSI] qla4xxx: update copyrights in LICENSE.qla4xxx
    [SCSI] qla4xxx: Fix panic while rmmod
    [SCSI] qla4xxx: Fail probe_adapter if IRQ allocation fails
    [SCSI] qla4xxx: Prevent MSI/MSI-X falling back to INTx for ISP82XX
    [SCSI] qla4xxx: Update idc reg in case of PCI AER
    [SCSI] qla4xxx: Fix double IDC locking in qla4_8xxx_error_recovery
    [SCSI] qla4xxx: Clear interrupt while unloading driver for ISP83XX
    [SCSI] qla4xxx: Print correct IDC version
    [SCSI] qla4xxx: Added new mbox cmd to pass driver version to FW
    [SCSI] scsi_dh_alua: Enable STPG for unavailable ports
    [SCSI] scsi_remove_target: fix softlockup regression on hot remove
    [SCSI] ibmvscsi: Fix host config length field overflow
    [SCSI] ibmvscsi: Remove backend abstraction
    ...

    Linus Torvalds
     

02 Oct, 2012

2 commits

  • James Bottomley
     
  • Pull PCI changes from Bjorn Helgaas:
    "Host bridge hotplug
    - Protect acpi_pci_drivers and acpi_pci_roots (Taku Izumi)
    - Clear host bridge resource info to avoid issue when releasing
    (Yinghai Lu)
    - Notify acpi_pci_drivers when hot-plugging host bridges (Jiang Liu)
    - Use standard list ops for acpi_pci_drivers (Jiang Liu)

    Device hotplug
    - Use pci_get_domain_bus_and_slot() to close hotplug races (Jiang
    Liu)
    - Remove fakephp driver (Bjorn Helgaas)
    - Fix VGA ref count in hotplug remove path (Yinghai Lu)
    - Allow acpiphp to handle PCIe ports without native hotplug (Jiang
    Liu)
    - Implement resume regardless of pciehp_force param (Oliver Neukum)
    - Make pci_fixup_irqs() work after init (Thierry Reding)

    Miscellaneous
    - Add pci_pcie_type(dev) and remove pci_dev.pcie_type (Yijing Wang)
    - Factor out PCI Express Capability accessors (Jiang Liu)
    - Add pcibios_window_alignment() so powerpc EEH can use generic
    resource assignment (Gavin Shan)
    - Make pci_error_handlers const (Stephen Hemminger)
    - Cleanup drivers/pci/remove.c (Bjorn Helgaas)
    - Improve Vendor-Specific Extended Capability support (Bjorn
    Helgaas)
    - Use standard list ops for bus->devices (Bjorn Helgaas)
    - Avoid kmalloc in pci_get_subsys() and pci_get_class() (Feng Tang)
    - Reassign invalid bus number ranges (Intel DP43BF workaround)
    (Yinghai Lu)"

    * tag 'for-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (102 commits)
    PCI: acpiphp: Handle PCIe ports without native hotplug capability
    PCI/ACPI: Use acpi_driver_data() rather than searching acpi_pci_roots
    PCI/ACPI: Protect acpi_pci_roots list with mutex
    PCI/ACPI: Use acpi_pci_root info rather than looking it up again
    PCI/ACPI: Pass acpi_pci_root to acpi_pci_drivers' add/remove interface
    PCI/ACPI: Protect acpi_pci_drivers list with mutex
    PCI/ACPI: Notify acpi_pci_drivers when hot-plugging PCI root bridges
    PCI/ACPI: Use normal list for struct acpi_pci_driver
    PCI/ACPI: Use DEVICE_ACPI_HANDLE rather than searching acpi_pci_roots
    PCI: Fix default vga ref_count
    ia64/PCI: Clear host bridge aperture struct resource
    x86/PCI: Clear host bridge aperture struct resource
    PCI: Stop all children first, before removing all children
    Revert "PCI: Use hotplug-safe pci_get_domain_bus_and_slot()"
    PCI: Provide a default pcibios_update_irq()
    PCI: Discard __init annotations for pci_fixup_irqs() and related functions
    PCI: Use correct type when freeing bus resource list
    PCI: Check P2P bridge for invalid secondary/subordinate range
    PCI: Convert "new_id"/"remove_id" into generic pci_bus driver attributes
    xen-pcifront: Use hotplug-safe pci_get_domain_bus_and_slot()
    ...

    Linus Torvalds
     

24 Sep, 2012

3 commits


17 Sep, 2012

1 commit


08 Sep, 2012

1 commit


24 Aug, 2012

8 commits