07 Apr, 2017

13 commits

  • Module owner will be set by driver core, so drop it.

    Signed-off-by: Kefeng Wang
    Signed-off-by: Hanjun Guo
    Reviewed-by: Ma Jun
    Tested-by: Ming Lei
    Tested-by: Wei Xu
    Cc: Marc Zyngier
    Cc: Thomas Gleixner
    Signed-off-by: Marc Zyngier

    Kefeng Wang
     
  • The irqdomain creation that is carried out in:

    platform_msi_create_device_domain()

    relies on the fwnode_handle interrupt controller token to associate the
    interrupt controller with a specific irqdomain. Current code relies on
    the OF layer to retrieve a fwnode_handle for the device representing the
    interrupt controller from its device->of_node pointer. This makes
    platform_msi_create_device_domain() DT specific whilst it really is not
    because after the merge of commit f94277af03ea ("of/platform: Initialise
    dev->fwnode appropriately") the fwnode_handle can easily be retrieved
    from the dev->fwnode pointer in a firmware agnostic way.

    Update platform_msi_create_device_domain() to retrieve the interrupt
    controller fwnode_handle from the dev->fwnode pointer so that it can
    be used seamlessly in ACPI and DT systems.

    Signed-off-by: Hanjun Guo
    Signed-off-by: Lorenzo Pieralisi
    Tested-by: Ming Lei
    Tested-by: Wei Xu
    Cc: Greg KH
    Cc: Thomas Gleixner
    Signed-off-by: Marc Zyngier

    Hanjun Guo
     
  • With the introduction of its_pmsi_init_one(), support for ACPI
    firmware interface can be plugged into the gicv3 ITS driver.

    Add code to scan the MADT table to get the ITS entry(ies), then use
    the information to create the platform msi domain for devices
    connected to it, mirroring the ITS PCI MSI code path.

    Signed-off-by: Hanjun Guo
    [lorenzo.pieralisi@arm.com: rewrote commit log]
    Signed-off-by: Lorenzo Pieralisi
    Reviewed-by: Matthias Brugger
    Tested-by: Ming Lei
    Tested-by: Wei Xu
    Tested-by: Sinan Kaya
    Cc: Tomasz Nowicki
    Cc: Thomas Gleixner
    Signed-off-by: Marc Zyngier

    Hanjun Guo
     
  • Introduce its_pmsi_init_one() to separate firmware dependent
    code (ie OF dependent code) and firmware agnostic code so
    that gic3-its code can be made to support other firmware
    bindings easily.

    Signed-off-by: Hanjun Guo
    [lorenzo.pieralisi@arm.com: rewrote commit log]
    Signed-off-by: Lorenzo Pieralisi
    Reviewed-by: Matthias Brugger
    Tested-by: Ming Lei
    Tested-by: Wei Xu
    Tested-by: Sinan Kaya
    Cc: Tomasz Nowicki
    Cc: Thomas Gleixner
    Signed-off-by: Marc Zyngier

    Hanjun Guo
     
  • By adding ACPI support for platform MSI, the gicv3 driver has to
    provide code to retrieve the dev id through ACPI instead of device
    tree bindings; given that its_pmsi_prepare() allows already to get
    the dev id but it is OF dependent, factor OF related code out into
    a single function to make its_pmsi_prepare() ready to be used with
    other firmware interfaces.

    Signed-off-by: Hanjun Guo
    [lorenzo.pieralisi@arm.com: rewrote commit log]
    Signed-off-by: Lorenzo Pieralisi
    Reviewed-by: Matthias Brugger
    Tested-by: Ming Lei
    Tested-by: Wei Xu
    Tested-by: Sinan Kaya
    Cc: Tomasz Nowicki
    Cc: Thomas Gleixner
    Signed-off-by: Marc Zyngier

    Hanjun Guo
     
  • Rearrange header file includes in alphabetic order.

    Signed-off-by: Hanjun Guo
    [lorenzo.pieralisi@arm.com: fixed commit log]
    Signed-off-by: Lorenzo Pieralisi
    Tested-by: Ming Lei
    Tested-by: Wei Xu
    Tested-by: Sinan Kaya
    Cc: Tomasz Nowicki
    Signed-off-by: Marc Zyngier

    Hanjun Guo
     
  • This prevent unnecessary visibility when configuring trigger type

    Signed-off-by: Mars Cheng
    Signed-off-by: Marc Zyngier

    Mars Cheng
     
  • Originally driver only supports one base. However, MT6797 has
    more than one bases to configure interrupt polarity. To support
    possible design change, here comes a solution to use arbitrary
    number of bases.

    Signed-off-by: Mars Cheng
    Signed-off-by: Marc Zyngier

    Mars Cheng
     
  • This describes how to specify multiple base addresses for sysirq
    in mediatek platforms.

    Acked-by: Rob Herring
    Signed-off-by: Mars Cheng
    Signed-off-by: Marc Zyngier

    Mars Cheng
     
  • The Moxa Art interrupt controller is very very likely just an instance
    of the Faraday FTINTC010 interrupt controller from Faraday Technology.
    An indication would be its close association with the FA526 ARM core
    and the fact that the register layout is the same.

    The implementation in irq-moxart.c can probably be right off replaced
    with the irq-ftintc010.c driver by adding a compatible string, selecting
    this irqchip from the machine and run.

    As a bonus we have an irqchip driver supporting high/low and
    rising/falling edges for the Moxa Art, and shared code with the Gemini
    platform.

    Acked-by: Olof Johansson
    Tested-by: Jonas Jensen
    Signed-off-by: Linus Walleij
    Signed-off-by: Marc Zyngier

    Linus Walleij
     
  • The triggers in the driver were right for high level triggered
    IRQs but the edge detection on edge triggered IRQs was wrong.
    After studying a proper driver from Po-Yu Chuang I now know how
    to handle these right, and we can properly implement low level
    IRQs as well.

    The device trees for the Gemini had polarity switched around
    so these have been fixed to conform to the right polarity as
    well.

    Cc: Greentime Hu
    Signed-off-by: Linus Walleij
    Signed-off-by: Marc Zyngier

    Linus Walleij
     
  • The Gemini irqchip turns out to be a standard IP component from
    Faraday Technology named FTINTC010 after some research and new
    information.

    - Rename the driver and all symbols to reflect the new information.
    - Add the new compatible string "faraday,ftintc010"
    - Create a Kconfig symbol CONFIG_FARADAY_FTINTC010 so that SoCs
    using this interrupt controller can easily select and reuse it
    instead of hardwiring it to ARCH_GEMINI

    I have created a separate patch to select the new Kconfig symbol
    from the Gemini machine, which will be merged through the ARM
    SoC tree.

    Cc: Greentime Hu
    Cc: Paulius Zaleckas
    Signed-off-by: Linus Walleij
    Signed-off-by: Marc Zyngier

    Linus Walleij
     
  • When we merged the Gemini interrupt controller it was not yet
    discovered that this IP block is actually a standard Faraday
    Technology interrupt controller.

    As the IP block will probably appear in other designs as well,
    let's augment the DT bindings to reflect that it is first and
    foremost a standard Faraday part with a function name (FTINTC010)
    so that people reusing the IP easily find the driver they need.

    Sorry for the mistakes due to lack of information.

    Cc: Greentime Hu
    Acked-by: Rob Herring
    Acked-by: Hans Ulli Kroll
    Signed-off-by: Linus Walleij
    Signed-off-by: Marc Zyngier

    Linus Walleij
     

27 Mar, 2017

8 commits

  • Linus Torvalds
     
  • Pull char/misc driver fixes from Greg KH:
    "A smattering of different small fixes for some random driver
    subsystems. Nothing all that major, just resolutions for reported
    issues and bugs.

    All have been in linux-next with no reported issues"

    * tag 'char-misc-4.11-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (21 commits)
    extcon: int3496: Set the id pin to direction-input if necessary
    extcon: int3496: Use gpiod_get instead of gpiod_get_index
    extcon: int3496: Add dependency on X86 as it's Intel specific
    extcon: int3496: Add GPIO ACPI mapping table
    extcon: int3496: Rename GPIO pins in accordance with binding
    vmw_vmci: handle the return value from pci_alloc_irq_vectors correctly
    ppdev: fix registering same device name
    parport: fix attempt to write duplicate procfiles
    auxdisplay: img-ascii-lcd: add missing sentinel entry in img_ascii_lcd_matches
    Drivers: hv: vmbus: Don't leak memory when a channel is rescinded
    Drivers: hv: vmbus: Don't leak channel ids
    Drivers: hv: util: don't forget to init host_ts.lock
    Drivers: hv: util: move waiting for release to hv_utils_transport itself
    vmbus: remove hv_event_tasklet_disable/enable
    vmbus: use rcu for per-cpu channel list
    mei: don't wait for os version message reply
    mei: fix deadlock on mei reset
    intel_th: pci: Add Gemini Lake support
    intel_th: pci: Add Denverton SOC support
    intel_th: Don't leak module refcount on failure to activate
    ...

    Linus Torvalds
     
  • Pull driver core fix from Greg KH:
    "Here is a single kernfs fix for 4.11-rc4 that resolves a reported
    issue.

    It has been in linux-next with no reported issues"

    * tag 'driver-core-4.11-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
    kernfs: Check KERNFS_HAS_RELEASE before calling kernfs_release_file()

    Linus Torvalds
     
  • Pull tty/serial driver fixes from Greg KH:
    "Here are some tty and serial driver fixes for 4.11-rc4.

    One of these fix a long-standing issue in the ldisc code that was
    found by Dmitry Vyukov with his great fuzzing work. The other fixes
    resolve other reported issues, and there is one revert of a patch in
    4.11-rc1 that wasn't correct.

    All of these have been in linux-next for a while with no reported
    issues"

    * tag 'tty-4.11-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
    tty: fix data race in tty_ldisc_ref_wait()
    tty: don't panic on OOM in tty_set_ldisc()
    Revert "tty: serial: pl011: add ttyAMA for matching pl011 console"
    tty: acpi/spcr: QDF2400 E44 checks for wrong OEM revision
    serial: 8250_dw: Fix breakage when HAVE_CLK=n
    serial: 8250_dw: Honor clk_round_rate errors in dw8250_set_termios

    Linus Torvalds
     
  • Pull IIO driver fixes from Greg KH:
    "Here are some small IIO driver fixes for 4.11-rc4 that resolve a
    number of tiny reported issues. All of these have been in linux-next
    for a while with no reported issues"

    * tag 'staging-4.11-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
    iio: imu: st_lsm6dsx: fix FIFO_CTRL2 overwrite during watermark configuration
    iio: adc: ti_am335x_adc: fix fifo overrun recovery
    iio: sw-device: Fix config group initialization
    iio: magnetometer: ak8974: remove incorrect __exit markups
    iio: hid-sensor-trigger: Change get poll value function order to avoid sensor properties losing after resume from S3

    Linus Torvalds
     
  • Pull USB/PHY fixes from Greg KH:
    "Here are a number of small USB and PHY driver fixes for 4.11-rc4.

    Nothing major here, just an bunch of small fixes, and a handfull of
    good fixes from Johan for devices with crazy descriptors. There are a
    few new device ids in here as well.

    All of these have been in linux-next with no reported issues"

    * tag 'usb-4.11-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (26 commits)
    usb: gadget: f_hid: fix: Don't access hidg->req without spinlock held
    usb: gadget: udc: remove pointer dereference after free
    usb: gadget: f_uvc: Sanity check wMaxPacketSize for SuperSpeed
    usb: gadget: f_uvc: Fix SuperSpeed companion descriptor's wBytesPerInterval
    usb: gadget: acm: fix endianness in notifications
    usb: dwc3: gadget: delay unmap of bounced requests
    USB: serial: qcserial: add Dell DW5811e
    usb: hub: Fix crash after failure to read BOS descriptor
    ACM gadget: fix endianness in notifications
    USB: usbtmc: fix probe error path
    USB: usbtmc: add missing endpoint sanity check
    USB: serial: option: add Quectel UC15, UC20, EC21, and EC25 modems
    usb: musb: fix possible spinlock deadlock
    usb: musb: dsps: fix iounmap in error and exit paths
    usb: musb: cppi41: don't check early-TX-interrupt for Isoch transfer
    usb-core: Add LINEAR_FRAME_INTR_BINTERVAL USB quirk
    uwb: i1480-dfu: fix NULL-deref at probe
    uwb: hwa-rc: fix NULL-deref at probe
    USB: wusbcore: fix NULL-deref at probe
    USB: uss720: fix NULL-deref at probe
    ...

    Linus Torvalds
     
  • Pull more powerpc fixes from Michael Ellerman:
    "These are all pretty minor. The fix for idle wakeup would be a bad bug
    but has not been observed in practice.

    The update to the gcc-plugins docs was Cc'ed to Kees and Jon, Kees
    OK'ed it going via powerpc and I didn't hear from Jon.

    - cxl: Route eeh events to all slices for pci_channel_io_perm_failure state

    - powerpc/64s: Fix idle wakeup potential to clobber registers

    - Revert "powerpc/64: Disable use of radix under a hypervisor"

    - gcc-plugins: update architecture list in documentation

    Thanks to: Andrew Donnellan, Nicholas Piggin, Paul Mackerras, Vaibhav
    Jain"

    * tag 'powerpc-4.11-6' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
    gcc-plugins: update architecture list in documentation
    Revert "powerpc/64: Disable use of radix under a hypervisor"
    powerpc/64s: Fix idle wakeup potential to clobber registers
    cxl: Route eeh events to all slices for pci_channel_io_perm_failure state

    Linus Torvalds
     
  • Pull ext4 fixes from Ted Ts'o:
    "Fix a memory leak on an error path, and two races when modifying
    inodes relating to the inline_data and metadata checksum features"

    * tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
    ext4: fix two spelling nits
    ext4: lock the xattr block before checksuming it
    jbd2: don't leak memory if setting up journal fails
    ext4: mark inode dirty after converting inline directory

    Linus Torvalds
     

26 Mar, 2017

7 commits

  • Pull fscrypto fixes from Ted Ts'o:
    "A code cleanup and bugfix for fs/crypto"

    * tag 'fscrypt-for-linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/fscrypt:
    fscrypt: eliminate ->prepare_context() operation
    fscrypt: remove broken support for detecting keyring key revocation

    Linus Torvalds
     
  • …el/git/groeck/linux-staging

    Pull hwmon fixes from Guenter Roeck:

    - bug fixes in asus_atk0110, it87 and max31790 drivers

    - added missing API definition to hwmon core

    * tag 'hwmon-for-linus-v4.11-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
    hwmon: (asus_atk0110) fix uninitialized data access
    hwmon: Add missing HWMON_T_ALARM
    hwmon: (it87) Avoid registering the same chip on both SIO addresses
    hwmon: (max31790) Set correct PWM value

    Linus Torvalds
     
  • Pull rdma fixes from Doug Ledford:
    "This has been a slow -rc cycle for the RDMA subsystem. We really
    haven't had a lot of rc fixes come in. This pull request is the first
    of this entire rc cycle and it has all of the suitable fixes so far
    and it's still only about 20 patches. The fix for the minor breakage
    cause by the dma mapping patchset is in here, as well as a couple
    other potential oops fixes, but the rest is more minor.

    Summary:

    - fix for dma_ops change in this kernel, resolving the s390, powerpc,
    and IOMMU operation

    - a few other oops fixes

    - the rest are all minor fixes"

    * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma:
    IB/qib: fix false-postive maybe-uninitialized warning
    RDMA/iser: Fix possible mr leak on device removal event
    IB/device: Convert ib-comp-wq to be CPU-bound
    IB/cq: Don't process more than the given budget
    IB/rxe: increment msn only when completing a request
    uapi: fix rdma/mlx5-abi.h userspace compilation errors
    IB/core: Restore I/O MMU, s390 and powerpc support
    IB/rxe: Update documentation link
    RDMA/ocrdma: fix a type issue in ocrdma_put_pd_num()
    IB/rxe: double free on error
    RDMA/vmw_pvrdma: Activate device on ethernet link up
    RDMA/vmw_pvrdma: Dont hardcode QP header page
    RDMA/vmw_pvrdma: Cleanup unused variables
    infiniband: Fix alignment of mmap cookies to support VIPT caching
    IB/core: Protect against self-requeue of a cq work item
    i40iw: Receive netdev events post INET_NOTIFIER state

    Linus Torvalds
     
  • Pull audit fix from Paul Moore:
    "We've got an audit fix, and unfortunately it is big.

    While I'm not excited that we need to be sending you something this
    large during the -rcX phase, it does fix some very real, and very
    tangled, problems relating to locking, backlog queues, and the audit
    daemon connection.

    This code has passed our testsuite without problem and it has held up
    to my ad-hoc stress tests (arguably better than the existing code),
    please consider pulling this as fix for the next v4.11-rcX tag"

    * 'stable-4.11' of git://git.infradead.org/users/pcmoore/audit:
    audit: fix auditd/kernel connection state tracking

    Linus Torvalds
     
  • Signed-off-by: Theodore Ts'o

    Theodore Ts'o
     
  • We must lock the xattr block before calculating or verifying the
    checksum in order to avoid spurious checksum failures.

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

    Reported-by: Colin Ian King
    Signed-off-by: Theodore Ts'o
    Cc: stable@vger.kernel.org

    Theodore Ts'o
     
  • Pull clk fixes from Stephen Boyd:
    "A handful of Sunxi and Rockchip clk driver fixes and a core framework
    one where we need to copy a string because we can't guarantee it isn't
    freed sometime later"

    * tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
    clk: sunxi-ng: fix recalc_rate formula of NKMP clocks
    clk: sunxi-ng: Fix div/mult settings for osc12M on A64
    clk: rockchip: Make uartpll a child of the gpll on rk3036
    clk: rockchip: add "," to mux_pll_src_apll_dpll_gpll_usb480m_p on rk3036
    clk: core: Copy connection id
    dt-bindings: arm: update Armada CP110 system controller binding
    clk: sunxi-ng: sun6i: Fix enable bit offset for hdmi-ddc module clock
    clk: sunxi: ccu-sun5i needs nkmp
    clk: sunxi-ng: mp: Adjust parent rate for pre-dividers

    Linus Torvalds
     

25 Mar, 2017

12 commits

  • aarch64-linux-gcc-7 complains about code it doesn't fully understand:

    drivers/infiniband/hw/qib/qib_iba7322.c: In function 'qib_7322_txchk_change':
    include/asm-generic/bitops/non-atomic.h:105:35: error: 'shadow' may be used uninitialized in this function [-Werror=maybe-uninitialized]

    The code is right, and despite trying hard, I could not come up with a version
    that I liked better than just adding a fake initialization here to shut up the
    warning.

    Fixes: f931551bafe1 ("IB/qib: Add new qib driver for QLogic PCIe InfiniBand adapters")
    Signed-off-by: Arnd Bergmann
    Acked-by: Ira Weiny
    Signed-off-by: Doug Ledford

    Arnd Bergmann
     
  • When the rdma device is removed, we must cleanup all
    the rdma resources within the DEVICE_REMOVAL event
    handler to let the device teardown gracefully. When
    this happens with live I/O, some memory regions are
    occupied. Thus, track them too and dereg all the mr's.

    We are safe with mr access by iscsi_iser_cleanup_task.

    Reported-by: Raju Rangoju
    Signed-off-by: Sagi Grimberg
    Reviewed-by: Max Gurtovoy
    Reviewed-by: Max Gurtovoy
    Signed-off-by: Doug Ledford

    Sagi Grimberg
     
  • This workqueue is used by our storage target mode ULPs
    via the new CQ API. Recent observations when working
    with very high-end flash storage devices reveal that
    UNBOUND workqueue threads can migrate between cpu cores
    and even numa nodes (although some numa locality is accounted
    for).

    While this attribute can be useful in some workloads,
    it does not fit in very nicely with the normal
    run-to-completion model we usually use in our target-mode
    ULPs and the block-mq irqcpu affinity facilities.

    The whole block-mq concept is that the completion will
    land on the same cpu where the submission was performed.
    The fact that our submitter thread is migrating cpus
    can break this locality.

    We assume that as a target mode ULP, we will serve multiple
    initiators/clients and we can spread the load enough without
    having to use unbound kworkers.

    Also, while we're at it, expose this workqueue via sysfs which
    is harmless and can be useful for debug.

    Signed-off-by: Sagi Grimberg
    Reviewed-by: Bart Van Assche --
    Signed-off-by: Doug Ledford

    Sagi Grimberg
     
  • The caller might not want this overhead.

    Reviewed-by: Bart Van Assche
    Reviewed-by: Leon Romanovsky
    Signed-off-by: Sagi Grimberg
    Reviewed-by: Yuval Shaia
    Signed-off-by: Doug Ledford

    Sagi Grimberg
     
  • According to C9-147, MSN should only be incremented when the last packet of
    a multi packet request has been received.

    "Logically, the requester associates a sequential Send Sequence Number
    (SSN) with each WQE posted to the send queue. The SSN bears a one-
    to-one relationship to the MSN returned by the responder in each re-
    sponse packet. Therefore, when the requester receives a response, it in-
    terprets the MSN as representing the SSN of the most recent request
    completed by the responder to determine which send WQE(s) can be
    completed."

    Fixes: 8700e3e7c485 ("Soft RoCE driver")

    Signed-off-by: David Marchand
    Signed-off-by: Doug Ledford

    David Marchand
     
  • Consistently use types from linux/types.h to fix the following
    rdma/mlx5-abi.h userspace compilation errors:

    /usr/include/rdma/mlx5-abi.h:69:25: error: 'u64' undeclared here (not in a function)
    MLX5_LIB_CAP_4K_UAR = (u64)1 << 0,
    /usr/include/rdma/mlx5-abi.h:69:29: error: expected ',' or '}' before numeric constant
    MLX5_LIB_CAP_4K_UAR = (u64)1 << 0,

    Include to fix the following rdma/mlx5-abi.h
    userspace compilation error:

    /usr/include/rdma/mlx5-abi.h:286:12: error: 'ETH_ALEN' undeclared here (not in a function)
    __u8 dmac[ETH_ALEN];

    Signed-off-by: Dmitry V. Levin
    Signed-off-by: Doug Ledford

    Dmitry V. Levin
     
  • Avoid that the following error message is reported on the console
    while loading an RDMA driver with I/O MMU support enabled:

    DMAR: Allocating domain for mlx5_0 failed

    Ensure that DMA mapping operations that use to_pci_dev() to
    access to struct pci_dev see the correct PCI device. E.g. the s390
    and powerpc DMA mapping operations use to_pci_dev() even with I/O
    MMU support disabled.

    This patch preserves the following changes of the DMA mapping updates
    patch series:
    - Introduction of dma_virt_ops.
    - Removal of ib_device.dma_ops.
    - Removal of struct ib_dma_mapping_ops.
    - Removal of an if-statement from each ib_dma_*() operation.
    - IB HW drivers no longer set dma_device directly.

    Reported-by: Sebastian Ott
    Reported-by: Parav Pandit
    Fixes: commit 99db9494035f ("IB/core: Remove ib_device.dma_device")
    Signed-off-by: Bart Van Assche
    Reviewed-by: parav@mellanox.com
    Tested-by: parav@mellanox.com
    Reviewed-by: Leon Romanovsky
    Signed-off-by: Doug Ledford

    Bart Van Assche
     
  • All Soft-RoCE (rxe) is handled now in rdma-core user space library,
    so the documentation. The patch below updates the documentation
    link to that new location.

    Reported-by: Josh Beavers
    Signed-off-by: Leon Romanovsky
    Reviewed-by: Ira Weiny
    Signed-off-by: Doug Ledford

    Leon Romanovsky
     
  • We want to return zero on success or negative error codes. The type
    should be int and not u8.

    Signed-off-by: Dan Carpenter
    Reviewed-by: Yuval Shaia
    Signed-off-by: Doug Ledford

    Dan Carpenter
     
  • "goto err;" has it's own kfree_skb() call so it's a double free. We
    only need to free on the "goto exit;" path.

    Fixes: 8700e3e7c485 ("Soft RoCE driver")
    Signed-off-by: Dan Carpenter
    Signed-off-by: Doug Ledford

    Dan Carpenter
     
  • Restore device state when ethernet link changes to active.

    Acked-by: George Zhang
    Acked-by: Jorgen Hansen
    Acked-by: Bryan Tan
    Signed-off-by: Aditya Sarwade
    Signed-off-by: Adit Ranadive
    Signed-off-by: Doug Ledford

    Aditya Sarwade
     
  • Moved the header page count to a macro.

    Reported-by: Yuval Shaia
    Signed-off-by: Adit Ranadive
    Reviewed-by: Aditya Sarwade
    Tested-by: Andrew Boyer
    Signed-off-by: Doug Ledford

    Adit Ranadive