26 Dec, 2016

3 commits

  • Pull timer type cleanups from Thomas Gleixner:
    "This series does a tree wide cleanup of types related to
    timers/timekeeping.

    - Get rid of cycles_t and use a plain u64. The type is not really
    helpful and caused more confusion than clarity

    - Get rid of the ktime union. The union has become useless as we use
    the scalar nanoseconds storage unconditionally now. The 32bit
    timespec alike storage got removed due to the Y2038 limitations
    some time ago.

    That leaves the odd union access around for no reason. Clean it up.

    Both changes have been done with coccinelle and a small amount of
    manual mopping up"

    * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    ktime: Get rid of ktime_equal()
    ktime: Cleanup ktime_set() usage
    ktime: Get rid of the union
    clocksource: Use a plain u64 instead of cycle_t

    Linus Torvalds
     
  • Pull SMP hotplug notifier removal from Thomas Gleixner:
    "This is the final cleanup of the hotplug notifier infrastructure. The
    series has been reintgrated in the last two days because there came a
    new driver using the old infrastructure via the SCSI tree.

    Summary:

    - convert the last leftover drivers utilizing notifiers

    - fixup for a completely broken hotplug user

    - prevent setup of already used states

    - removal of the notifiers

    - treewide cleanup of hotplug state names

    - consolidation of state space

    There is a sphinx based documentation pending, but that needs review
    from the documentation folks"

    * 'smp-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    irqchip/armada-xp: Consolidate hotplug state space
    irqchip/gic: Consolidate hotplug state space
    coresight/etm3/4x: Consolidate hotplug state space
    cpu/hotplug: Cleanup state names
    cpu/hotplug: Remove obsolete cpu hotplug register/unregister functions
    staging/lustre/libcfs: Convert to hotplug state machine
    scsi/bnx2i: Convert to hotplug state machine
    scsi/bnx2fc: Convert to hotplug state machine
    cpu/hotplug: Prevent overwriting of callbacks
    x86/msr: Remove bogus cleanup from the error path
    bus: arm-ccn: Prevent hotplug callback leak
    perf/x86/intel/cstate: Prevent hotplug callback leak
    ARM/imx/mmcd: Fix broken cpu hotplug handling
    scsi: qedi: Convert to hotplug state machine

    Linus Torvalds
     
  • ktime_set(S,N) was required for the timespec storage type and is still
    useful for situations where a Seconds and Nanoseconds part of a time value
    needs to be converted. For anything where the Seconds argument is 0, this
    is pointless and can be replaced with a simple assignment.

    Signed-off-by: Thomas Gleixner
    Cc: Peter Zijlstra

    Thomas Gleixner
     

25 Dec, 2016

4 commits

  • Install the callbacks via the state machine. No functional change.

    This is the minimal fixup so we can remove the hotplug notifier mess
    completely.

    The real rework of this driver to use work queues is still stuck in
    review/testing on the SCSI mailing list.

    Signed-off-by: Sebastian Andrzej Siewior
    Cc: "James E.J. Bottomley"
    Cc: linux-scsi@vger.kernel.org
    Cc: "Martin K. Petersen"
    Cc: Peter Zijlstra
    Cc: Chad Dupuis
    Cc: QLogic-Storage-Upstream@qlogic.com
    Cc: Johannes Thumshirn
    Cc: Christoph Hellwig
    Link: http://lkml.kernel.org/r/20161221192111.836895753@linutronix.de
    Signed-off-by: Thomas Gleixner

    Sebastian Andrzej Siewior
     
  • Install the callbacks via the state machine. No functional change.

    This is the minimal fixup so we can remove the hotplug notifier mess
    completely.

    The real rework of this driver to use work queues is still stuck in
    review/testing on the SCSI mailing list.

    Signed-off-by: Sebastian Andrzej Siewior
    Cc: "James E.J. Bottomley"
    Cc: linux-scsi@vger.kernel.org
    Cc: "Martin K. Petersen"
    Cc: Peter Zijlstra
    Cc: Chad Dupuis
    Cc: QLogic-Storage-Upstream@qlogic.com
    Cc: Johannes Thumshirn
    Cc: Christoph Hellwig
    Link: http://lkml.kernel.org/r/20161221192111.757309869@linutronix.de
    Signed-off-by: Thomas Gleixner

    Sebastian Andrzej Siewior
     
  • The CPU hotplug code is a trainwreck. It leaks a notifier in case of driver
    registration error and the per cpu loop is racy against cpu hotplug. Aside
    of that the driver should have been written and merged with the new state
    machine interfaces in the first place.

    Mop up the mess and Convert it to the hotplug state machine.

    Signed-off-by: Thomas Grumpy Gleixner
    Cc: Nilesh Javali
    Cc: Adheer Chandravanshi
    Cc: Chad Dupuis
    Cc: Saurav Kashyap
    Cc: Arun Easi
    Cc: Manish Rangankar
    Cc: Johannes Thumshirn
    Cc: Hannes Reinecke
    Cc: Martin K. Petersen
    Cc: James Bottomley

    Thomas Gleixner
     
  • This was entirely automated, using the script by Al:

    PATT='^[[:blank:]]*#[[:blank:]]*include[[:blank:]]*'
    sed -i -e "s!$PATT!#include !" \
    $(git grep -l "$PATT"|grep -v ^include/linux/uaccess.h)

    to do the replacement at the end of the merge window.

    Requested-by: Al Viro
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

24 Dec, 2016

2 commits

  • Pull final vfs updates from Al Viro:
    "Assorted cleanups and fixes all over the place"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
    sg_write()/bsg_write() is not fit to be called under KERNEL_DS
    ufs: fix function declaration for ufs_truncate_blocks
    fs: exec: apply CLOEXEC before changing dumpable task flags
    seq_file: reset iterator to first record for zero offset
    vfs: fix isize/pos/len checks for reflink & dedupe
    [iov_iter] fix iterate_all_kinds() on empty iterators
    move aio compat to fs/aio.c
    reorganize do_make_slave()
    clone_private_mount() doesn't need to touch namespace_sem
    remove a bogus claim about namespace_sem being held by callers of mnt_alloc_id()

    Linus Torvalds
     
  • Pull late SCSI updates from James Bottomley:
    "This is mostly stuff which missed the initial pull.

    There's a new driver: qedi, and some ufs, ibmvscsis and ncr5380
    updates plus some assorted driver fixes and also a fix for the bug
    where if a device goes into a blocked state between configuration and
    sysfs device add (which can be a long time under async probing) it
    would become permanently blocked"

    * tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (30 commits)
    scsi: avoid a permanent stop of the scsi device's request queue
    scsi: mpt3sas: Recognize and act on iopriority info
    scsi: qla2xxx: Fix Target mode handling with Multiqueue changes.
    scsi: qla2xxx: Add Block Multi Queue functionality.
    scsi: qla2xxx: Add multiple queue pair functionality.
    scsi: qla2xxx: Utilize pci_alloc_irq_vectors/pci_free_irq_vectors calls.
    scsi: qla2xxx: Only allow operational MBX to proceed during RESET.
    scsi: hpsa: remove memory allocate failure message
    scsi: Update 3ware driver email addresses
    scsi: zfcp: fix rport unblock race with LUN recovery
    scsi: zfcp: do not trace pure benign residual HBA responses at default level
    scsi: zfcp: fix use-after-"free" in FC ingress path after TMF
    scsi: libcxgbi: return error if interface is not up
    scsi: cxgb4i: libcxgbi: add missing module_put()
    scsi: cxgb4i: libcxgbi: cxgb4: add T6 iSCSI completion feature
    scsi: cxgb4i: libcxgbi: add active open cmd for T6 adapters
    scsi: cxgb4i: use cxgb4_tp_smt_idx() to get smt_idx
    scsi: qedi: Add QLogic FastLinQ offload iSCSI driver framework.
    scsi: aacraid: remove wildcard for series 9 controllers
    scsi: ibmvscsi: add write memory barrier to CRQ processing
    ...

    Linus Torvalds
     

23 Dec, 2016

2 commits


22 Dec, 2016

1 commit

  • …l/git/bvanassche/linux

    Pull scsi target cleanups from Bart Van Assche:
    "The changes here are:

    - a few small bug fixes for the iSCSI and user space target drivers.

    - minimize the target build time by about 30% by rearranging #include
    directives

    - fix the second argument passed to percpu_ida_alloc()

    - reduce the number of false positive warnings reported by sparse

    These patches pass Wu Fengguang's build bot tests and also the
    linux-next tests"

    * 'scsi-target-for-v4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/bvanassche/linux:
    iscsi-target: Return error if unable to add network portal
    target: Fix spelling mistake and unwrap multi-line text
    target/iscsi: Fix double free in lio_target_tiqn_addtpg()
    target/user: Fix use-after-free of tcmu_cmds if they are expired
    target: Minimize #include directives
    target/user: Add an #include directive
    cxgbit: Add an #include directive
    ibmvscsi_tgt: Add two #include directives
    sbp-target: Add an #include directive
    qla2xxx: Add an #include directive
    configfs: Minimize #include directives
    usb: gadget: Fix second argument of percpu_ida_alloc()
    sbp-target: Fix second argument of percpu_ida_alloc()
    target/user: Fix a data type in tcmu_queue_cmd()
    target: Use NULL instead of 0 to represent a pointer

    Linus Torvalds
     

15 Dec, 2016

17 commits

  • A race between scanning and fc_remote_port_delete() may result in a
    permanent stop if the device gets blocked before scsi_sysfs_add_sdev()
    and unblocked after. The reason is that blocking a device sets both the
    SDEV_BLOCKED state and the QUEUE_FLAG_STOPPED. However,
    scsi_sysfs_add_sdev() unconditionally sets SDEV_RUNNING which causes the
    device to be ignored by scsi_target_unblock() and thus never have its
    QUEUE_FLAG_STOPPED cleared leading to a device which is apparently
    running but has a stopped queue.

    We actually have two places where SDEV_RUNNING is set: once in
    scsi_add_lun() which respects the blocked flag and once in
    scsi_sysfs_add_sdev() which doesn't. Since the second set is entirely
    spurious, simply remove it to fix the problem.

    Cc:
    Reported-by: Zengxi Chen
    Signed-off-by: Wei Fang
    Reviewed-by: Ewan D. Milne
    Signed-off-by: Martin K. Petersen

    Wei Fang
     
  • This patch adds support for request iopriority handling in the mpt3sas
    layer. This works only when a ATA device is behind the SATL. The ATA
    device also has to indicate that it supports command priorities in the
    identify information that is pulled from the SATL.

    Signed-off-by: Adam Manzanares
    Acked-by: Sreekanth Reddy
    Signed-off-by: Martin K. Petersen

    Adam Manzanares
     
  • - Fix race condition between dpc_thread accessing Multiqueue resources
    and qla2x00_remove_one thread trying to free resource.
    - Fix out of order free for Multiqueue resources. Also, Multiqueue
    interrupts needs a workqueue. Interrupt needed to stop before
    the wq can be destroyed.

    Reviewed-by: Hannes Reinecke
    Signed-off-by: Quinn Tran
    Signed-off-by: Himanshu Madhani
    Reviewed-by: Christoph Hellwig
    Signed-off-by: Martin K. Petersen

    Quinn Tran
     
  • Tell the SCSI layer how many hardware queues we have based on the number
    of max queue pairs created. The number of max queue pairs created will
    depend on number of MSI-X vector count.

    This feature can be turned on via CONFIG_SCSI_MQ_DEFAULT or passing
    scsi_mod.use_blk_mq=Y as a parameter to the kernel

    Reviewed-by: Hannes Reinecke
    Signed-off-by: Sawan Chandak
    Signed-off-by: Michael Hernandez
    Signed-off-by: Himanshu Madhani
    Reviewed-by: Christoph Hellwig
    Signed-off-by: Martin K. Petersen

    Michael Hernandez
     
  • Replaced existing multiple queue functionality with framework
    that allows for the creation of pairs of request and response queues,
    either at start of day or dynamically.

    Queue pair creation depend on module parameter "ql2xmqsupport",
    which need to be enabled to create queue pair.

    Signed-off-by: Sawan Chandak
    Signed-off-by: Michael Hernandez
    Signed-off-by: Himanshu Madhani
    Acked-by: Christoph Hellwig
    Signed-off-by: Martin K. Petersen

    Michael Hernandez
     
  • Replaces the old pci_enable_msi[x]* and pci_disable_msi[x] calls.

    Signed-off-by: Michael Hernandez
    Signed-off-by: Himanshu Madhani
    Reviewed-by: Christoph Hellwig
    Signed-off-by: Martin K. Petersen

    Michael Hernandez
     
  • This patch is allowing only ROM mailbox command which are
    necessary to initialize chip after a reset has been issued.
    In a target environment, there could be a user space daemon
    which can issue statistics and other management mailbox command
    which are non-critical. This patch will timeout non critical
    mailbox commands immediately rather than waiting for timeout,
    if driver detects that chip reset has been issued or chip reset
    is in progress.

    Reviewed-by: Hannes Reinecke
    Reviewed-by: Christoph Hellwig
    Signed-off-by: Himanshu Madhani
    Signed-off-by: Giridhar Malavali
    Signed-off-by: Martin K. Petersen

    himanshu.madhani@cavium.com
     
  • This patch cleanup warning reported by checkpatch.pl WARNING: Possible
    unnecessary 'out of memory' message With no available memory, a warn on
    message already gets printed by page alloc apis and modified goto use if
    memory unallocated.

    Signed-off-by: Amit Kushwaha
    Acked-by: Don Brace
    Signed-off-by: Martin K. Petersen

    Amit Kushwaha
     
  • This change updates the 3ware drivers (3w-xxxx, 3w-9xxx, 3w-sas) email
    addresses from linuxraid@lsi.com to aradford@gmail.com, since the old
    email address doesn't exist.

    This patch was updated to remove www.lsi.com text.

    [mkp: applied by hand]

    Signed-off-by: Adam Radford
    Acked-by: Sumit Saxena
    Signed-off-by: Martin K. Petersen

    adam radford
     
  • Do not post hw active open cmd if IFF_UP is not set or link is down on
    the interface, return -ENETDOWN in this case.

    Signed-off-by: Varun Prakash
    Signed-off-by: Martin K. Petersen

    Varun Prakash
     
  • Add module_put() in cxgbi_sock_act_open_req_arp_failure() to release
    module reference in case of arp failure, also check return value of
    try_module_get() before posting active open hw cmd.

    Signed-off-by: Varun Prakash
    Signed-off-by: Martin K. Petersen

    Varun Prakash
     
  • T6 adapters reduce number of completions to host by generating single
    completion for all the directly placed(DDP) iSCSI pdus in a sequence.

    This patch adds new structure for completion hw cmd (struct
    cpl_rx_iscsi_cmp) and implements T6 completion feature.

    Signed-off-by: Varun Prakash
    Signed-off-by: Martin K. Petersen

    Varun Prakash
     
  • Add T6 active open cmd to open active connections on T6 adapters.

    Signed-off-by: Varun Prakash
    Signed-off-by: Martin K. Petersen

    Varun Prakash
     
  • cxgb4_tp_smt_idx() is defined in cxgb4 driver, it returns smt_idx for
    T4,T5,T6 adapters.

    Signed-off-by: Varun Prakash
    Signed-off-by: Martin K. Petersen

    Varun Prakash
     
  • The QLogic FastLinQ Driver for iSCSI (qedi) is the iSCSI specific module
    for 41000 Series Converged Network Adapters by QLogic.

    This patch consists of following changes:

    - MAINTAINERS Makefile and Kconfig changes for qedi,
    - PCI driver registration,
    - iSCSI host level initialization,
    - Debugfs and log level infrastructure.

    The following indiviual changes are merged into this commit:

    qedi: Add LL2 iSCSI interface for offload iSCSI.
    qedi: Add support for iSCSI session management.
    qedi: Add support for data path.

    Signed-off-by: Nilesh Javali
    Signed-off-by: Adheer Chandravanshi
    Signed-off-by: Chad Dupuis
    Signed-off-by: Saurav Kashyap
    Signed-off-by: Arun Easi
    Signed-off-by: Manish Rangankar
    Reviewed-by: Johannes Thumshirn
    Reviewed-by: Hannes Reinecke
    Reviewed-by: Martin K. Petersen
    Signed-off-by: Martin K. Petersen

    Manish Rangankar
     
  • Pull trivial updates from Jiri Kosina.

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial:
    NTB: correct ntb_spad_count comment typo
    misc: ibmasm: fix typo in error message
    Remove references to dead make variable LINUX_INCLUDE
    Remove last traces of ikconfig.h
    treewide: Fix printk() message errors
    Documentation/device-mapper: s/getsize/getsz/

    Linus Torvalds
     
  • Pull SCSI updates from James Bottomley:
    "This update includes the usual round of major driver updates (ncr5380,
    lpfc, hisi_sas, megaraid_sas, ufs, ibmvscsis, mpt3sas).

    There's also an assortment of minor fixes, mostly in error legs or
    other not very user visible stuff. The major change is the
    pci_alloc_irq_vectors replacement for the old pci_msix_.. calls; this
    effectively makes IRQ mapping generic for the drivers and allows
    blk_mq to use the information"

    * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (256 commits)
    scsi: qla4xxx: switch to pci_alloc_irq_vectors
    scsi: hisi_sas: support deferred probe for v2 hw
    scsi: megaraid_sas: switch to pci_alloc_irq_vectors
    scsi: scsi_devinfo: remove synchronous ALUA for NETAPP devices
    scsi: be2iscsi: set errno on error path
    scsi: be2iscsi: set errno on error path
    scsi: hpsa: fallback to use legacy REPORT PHYS command
    scsi: scsi_dh_alua: Fix RCU annotations
    scsi: hpsa: use %phN for short hex dumps
    scsi: hisi_sas: fix free'ing in probe and remove
    scsi: isci: switch to pci_alloc_irq_vectors
    scsi: ipr: Fix runaway IRQs when falling back from MSI to LSI
    scsi: dpt_i2o: double free on error path
    scsi: cxlflash: Migrate scsi command pointer to AFU command
    scsi: cxlflash: Migrate IOARRIN specific routines to function pointers
    scsi: cxlflash: Cleanup queuecommand()
    scsi: cxlflash: Cleanup send_tmf()
    scsi: cxlflash: Remove AFU command lock
    scsi: cxlflash: Wait for active AFU commands to timeout upon tear down
    scsi: cxlflash: Remove private command pool
    ...

    Linus Torvalds
     

14 Dec, 2016

3 commits

  • This patch fix spelling typos in printk and kconfig.

    Signed-off-by: Masanari Iida
    Acked-by: Randy Dunlap
    Signed-off-by: Jiri Kosina

    Masanari Iida
     
  • Pull xen updates from Juergen Gross:
    "Xen features and fixes for 4.10

    These are some fixes, a move of some arm related headers to share them
    between arm and arm64 and a series introducing a helper to make code
    more readable.

    The most notable change is David stepping down as maintainer of the
    Xen hypervisor interface. This results in me sending you the pull
    requests for Xen related code from now on"

    * tag 'for-linus-4.10-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip: (29 commits)
    xen/balloon: Only mark a page as managed when it is released
    xenbus: fix deadlock on writes to /proc/xen/xenbus
    xen/scsifront: don't request a slot on the ring until request is ready
    xen/x86: Increase xen_e820_map to E820_X_MAX possible entries
    x86: Make E820_X_MAX unconditionally larger than E820MAX
    xen/pci: Bubble up error and fix description.
    xen: xenbus: set error code on failure
    xen: set error code on failures
    arm/xen: Use alloc_percpu rather than __alloc_percpu
    arm/arm64: xen: Move shared architecture headers to include/xen/arm
    xen/events: use xen_vcpu_id mapping for EVTCHNOP_status
    xen/gntdev: Use VM_MIXEDMAP instead of VM_IO to avoid NUMA balancing
    xen-scsifront: Add a missing call to kfree
    MAINTAINERS: update XEN HYPERVISOR INTERFACE
    xenfs: Use proc_create_mount_point() to create /proc/xen
    xen-platform: use builtin_pci_driver
    xen-netback: fix error handling output
    xen: make use of xenbus_read_unsigned() in xenbus
    xen: make use of xenbus_read_unsigned() in xen-pciback
    xen: make use of xenbus_read_unsigned() in xen-fbfront
    ...

    Linus Torvalds
     
  • Pull block layer updates from Jens Axboe:
    "This is the main block pull request this series. Contrary to previous
    release, I've kept the core and driver changes in the same branch. We
    always ended up having dependencies between the two for obvious
    reasons, so makes more sense to keep them together. That said, I'll
    probably try and keep more topical branches going forward, especially
    for cycles that end up being as busy as this one.

    The major parts of this pull request is:

    - Improved support for O_DIRECT on block devices, with a small
    private implementation instead of using the pig that is
    fs/direct-io.c. From Christoph.

    - Request completion tracking in a scalable fashion. This is utilized
    by two components in this pull, the new hybrid polling and the
    writeback queue throttling code.

    - Improved support for polling with O_DIRECT, adding a hybrid mode
    that combines pure polling with an initial sleep. From me.

    - Support for automatic throttling of writeback queues on the block
    side. This uses feedback from the device completion latencies to
    scale the queue on the block side up or down. From me.

    - Support from SMR drives in the block layer and for SD. From Hannes
    and Shaun.

    - Multi-connection support for nbd. From Josef.

    - Cleanup of request and bio flags, so we have a clear split between
    which are bio (or rq) private, and which ones are shared. From
    Christoph.

    - A set of patches from Bart, that improve how we handle queue
    stopping and starting in blk-mq.

    - Support for WRITE_ZEROES from Chaitanya.

    - Lightnvm updates from Javier/Matias.

    - Supoort for FC for the nvme-over-fabrics code. From James Smart.

    - A bunch of fixes from a whole slew of people, too many to name
    here"

    * 'for-4.10/block' of git://git.kernel.dk/linux-block: (182 commits)
    blk-stat: fix a few cases of missing batch flushing
    blk-flush: run the queue when inserting blk-mq flush
    elevator: make the rqhash helpers exported
    blk-mq: abstract out blk_mq_dispatch_rq_list() helper
    blk-mq: add blk_mq_start_stopped_hw_queue()
    block: improve handling of the magic discard payload
    blk-wbt: don't throttle discard or write zeroes
    nbd: use dev_err_ratelimited in io path
    nbd: reset the setup task for NBD_CLEAR_SOCK
    nvme-fabrics: Add FC LLDD loopback driver to test FC-NVME
    nvme-fabrics: Add target support for FC transport
    nvme-fabrics: Add host support for FC transport
    nvme-fabrics: Add FC transport LLDD api definitions
    nvme-fabrics: Add FC transport FC-NVME definitions
    nvme-fabrics: Add FC transport error codes to nvme.h
    Add type 0x28 NVME type code to scsi fc headers
    nvme-fabrics: patch target code in prep for FC transport support
    nvme-fabrics: set sqe.command_id in core not transports
    parser: add u64 number parser
    nvme-rdma: align to generic ib_event logging helper
    ...

    Linus Torvalds
     

11 Dec, 2016

1 commit


10 Dec, 2016

2 commits


09 Dec, 2016

5 commits

  • Instead of allocating a single unused biovec for discard requests, send
    them down without any payload. Instead we allow the driver to add a
    "special" payload using a biovec embedded into struct request (unioned
    over other fields never used while in the driver), and overloading
    the number of segments for this case.

    This has a couple of advantages:

    - we don't have to allocate the bio_vec
    - the amount of special casing for discard requests in the block
    layer is significantly reduced
    - using this same scheme for other request types is trivial,
    which will be important for implementing the new WRITE_ZEROES
    op on devices where it actually requires a payload (e.g. SCSI)
    - we can get rid of playing games with the request length, as
    we'll never touch it and completions will work just fine
    - it will allow us to support ranged discard operations in the
    future by merging non-contiguous discard bios into a single
    request
    - last but not least it removes a lot of code

    This patch is the common base for my WIP series for ranges discards and to
    remove discard_zeroes_data in favor of always using REQ_OP_WRITE_ZEROES,
    so it would be good to get it in quickly.

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Jens Axboe

    Christoph Hellwig
     
  • Instead of requesting a new slot on the ring to the backend early, do
    so only after all has been setup for the request to be sent. This
    makes error handling easier as we don't need to undo the request id
    allocation and ring slot allocation.

    Suggested-by: Jan Beulich
    Signed-off-by: Juergen Gross
    Reviewed-by: Boris Ostrovsky
    Signed-off-by: Juergen Gross

    Juergen Gross
     
  • Controllers with this PCI ID never shipped outside of
    PMCS/Microsemi. Remove the ID from the aacraid driver. smartpqi is the
    correct driver for these controllers.

    [mkp: patch description]

    Reviewed-by: Scott Teel
    Signed-off-by: Kevin Barnett
    Signed-off-by: Don Brace
    Signed-off-by: Martin K. Petersen

    Kevin Barnett
     
  • The first byte of each CRQ entry is used to indicate whether an entry is
    a valid response or free for the VIOS to use. After processing a
    response the driver sets the valid byte to zero to indicate the entry is
    now free to be reused. Add a memory barrier after this write to ensure
    no other stores are reordered when updating the valid byte.

    Signed-off-by: Tyrel Datwyler
    Reviewed-by: Brian King
    Signed-off-by: Martin K. Petersen

    Tyrel Datwyler
     
  • An unrecogonized or unsupported SRP response has its opcode currently
    logged in decimal format. Log it in hex format instead so it can easily
    be validated against the SRP specs values which are in hex.

    Signed-off-by: Tyrel Datwyler
    Reviewed-by: Johannes Thumshirn
    Signed-off-by: Martin K. Petersen

    Tyrel Datwyler