13 Jan, 2020

1 commit

  • The DM365 platform has a strange quirk (only present when using ancient
    u-boot - mainline u-boot v2013.01 and later works fine) where if we
    enable the second half of the timer in periodic mode before we do its
    initialization - the time won't start flowing and we can't boot.

    When using more recent u-boot, we can enable the timer, then reinitialize
    it and all works fine.

    To work around this issue only enable clockevents once tim34 is
    initialized i.e. move clockevents_config_and_register() below tim34
    initialization.

    Signed-off-by: Bartosz Golaszewski
    Signed-off-by: Sekhar Nori

    Bartosz Golaszewski
     

09 Dec, 2019

2 commits

  • Pull networking fixes from David Miller:

    1) More jumbo frame fixes in r8169, from Heiner Kallweit.

    2) Fix bpf build in minimal configuration, from Alexei Starovoitov.

    3) Use after free in slcan driver, from Jouni Hogander.

    4) Flower classifier port ranges don't work properly in the HW offload
    case, from Yoshiki Komachi.

    5) Use after free in hns3_nic_maybe_stop_tx(), from Yunsheng Lin.

    6) Out of bounds access in mqprio_dump(), from Vladyslav Tarasiuk.

    7) Fix flow dissection in dsa TX path, from Alexander Lobakin.

    8) Stale syncookie timestampe fixes from Guillaume Nault.

    [ Did an evil merge to silence a warning introduced by this pull - Linus ]

    * git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (84 commits)
    r8169: fix rtl_hw_jumbo_disable for RTL8168evl
    net_sched: validate TCA_KIND attribute in tc_chain_tmplt_add()
    r8169: add missing RX enabling for WoL on RTL8125
    vhost/vsock: accept only packets with the right dst_cid
    net: phy: dp83867: fix hfs boot in rgmii mode
    net: ethernet: ti: cpsw: fix extra rx interrupt
    inet: protect against too small mtu values.
    gre: refetch erspan header from skb->data after pskb_may_pull()
    pppoe: remove redundant BUG_ON() check in pppoe_pernet
    tcp: Protect accesses to .ts_recent_stamp with {READ,WRITE}_ONCE()
    tcp: tighten acceptance of ACKs not matching a child socket
    tcp: fix rejected syncookies due to stale timestamps
    lpc_eth: kernel BUG on remove
    tcp: md5: fix potential overestimation of TCP option space
    net: sched: allow indirect blocks to bind to clsact in TC
    net: core: rename indirect block ingress cb function
    net-sysfs: Call dev_hold always in netdev_queue_add_kobject
    net: dsa: fix flow dissection on Tx path
    net/tls: Fix return values to avoid ENOTSUPP
    net: avoid an indirect call in ____sys_recvmsg()
    ...

    Linus Torvalds
     
  • Pull more SCSI updates from James Bottomley:
    "Eleven patches, all in drivers (no core changes) that are either minor
    cleanups or small fixes.

    They were late arriving, but still safe for -rc1"

    * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
    scsi: MAINTAINERS: Add the linux-scsi mailing list to the ISCSI entry
    scsi: megaraid_sas: Make poll_aen_lock static
    scsi: sd_zbc: Improve report zones error printout
    scsi: qla2xxx: Fix qla2x00_request_irqs() for MSI
    scsi: qla2xxx: unregister ports after GPN_FT failure
    scsi: qla2xxx: fix rports not being mark as lost in sync fabric scan
    scsi: pm80xx: Remove unused include of linux/version.h
    scsi: pm80xx: fix logic to break out of loop when register value is 2 or 3
    scsi: scsi_transport_sas: Fix memory leak when removing devices
    scsi: lpfc: size cpu map by last cpu id set
    scsi: ibmvscsi_tgt: Remove unneeded variable rc

    Linus Torvalds
     

08 Dec, 2019

11 commits

  • Pull NTB update from Jon Mason:
    "Just a simple patch to add a new Hygon Device ID to the AMD NTB device
    driver"

    * tag 'ntb-5.5' of git://github.com/jonmason/ntb:
    NTB: Add Hygon Device ID

    Linus Torvalds
     
  • Pull more input updates from Dmitry Torokhov:

    - fixups for Synaptics RMI4 driver

    - a quirk for Goodinx touchscreen on Teclast tablet

    - a new keycode definition for activating privacy screen feature found
    on a few "enterprise" laptops

    - updates to snvs_pwrkey driver

    - polling uinput device for writing (which is always allowed) now works

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
    Input: synaptics-rmi4 - don't increment rmiaddr for SMBus transfers
    Input: synaptics-rmi4 - re-enable IRQs in f34v7_do_reflash
    Input: goodix - add upside-down quirk for Teclast X89 tablet
    Input: add privacy screen toggle keycode
    Input: uinput - fix returning EPOLLOUT from uinput_poll
    Input: snvs_pwrkey - remove gratuitous NULL initializers
    Input: snvs_pwrkey - send key events for i.MX6 S, DL and Q

    Linus Torvalds
     
  • Pull VFIO updates from Alex Williamson:

    - Remove hugepage checks for reserved pfns (Ben Luo)

    - Fix irq-bypass unregister ordering (Jiang Yi)

    * tag 'vfio-v5.5-rc1' of git://github.com/awilliam/linux-vfio:
    vfio/pci: call irq_bypass_unregister_producer() before freeing irq
    vfio/type1: remove hugepage checks in is_invalid_reserved_pfn()

    Linus Torvalds
     
  • Pull more xen updates from Juergen Gross:

    - a patch to fix a build warning

    - a cleanup of no longer needed code in the Xen event handling

    - a small series for the Xen grant driver avoiding high order
    allocations and replacing an insane global limit by a per-call one

    - a small series fixing Xen frontend/backend module referencing

    * tag 'for-linus-5.5b-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
    xen-blkback: allow module to be cleanly unloaded
    xen/xenbus: reference count registered modules
    xen/gntdev: switch from kcalloc() to kvcalloc()
    xen/gntdev: replace global limit of mapped pages by limit per call
    xen/gntdev: remove redundant non-zero check on ret
    xen/events: remove event handling recursion detection

    Linus Torvalds
     
  • In referenced fix we removed the RTL8168e-specific jumbo config for
    RTL8168evl in rtl_hw_jumbo_enable(). We have to do the same in
    rtl_hw_jumbo_disable().

    v2: fix referenced commit id

    Fixes: 14012c9f3bb9 ("r8169: fix jumbo configuration for RTL8168evl")
    Signed-off-by: Heiner Kallweit
    Signed-off-by: David S. Miller

    Heiner Kallweit
     
  • Signed-off-by: Jiasen Lin
    Signed-off-by: Jon Mason

    Jiasen Lin
     
  • RTL8125 also requires to enable RX for WoL.

    v2: add missing Fixes tag

    Fixes: f1bce4ad2f1c ("r8169: add support for RTL8125")
    Signed-off-by: Heiner Kallweit
    Signed-off-by: David S. Miller

    Heiner Kallweit
     
  • When we receive a new packet from the guest, we check if the
    src_cid is correct, but we forgot to check the dst_cid.

    The host should accept only packets where dst_cid is
    equal to the host CID.

    Signed-off-by: Stefano Garzarella
    Signed-off-by: David S. Miller

    Stefano Garzarella
     
  • The commit ef87f7da6b28 ("net: phy: dp83867: move dt parsing to probe")
    causes regression on TI dra71x-evm and dra72x-evm, where DP83867 PHY is
    used in "rgmii-id" mode - the networking stops working.
    Unfortunately, it's not enough to just move DT parsing code to .probe() as
    it depends on phydev->interface value, which is set to correct value abter
    the .probe() is completed and before calling .config_init(). So, RGMII
    configuration can't be loaded from DT.

    To fix and issue
    - move RGMII validation code to .config_init()
    - parse RGMII parameters in dp83867_of_init(), but consider them as
    optional.

    Fixes: ef87f7da6b28 ("net: phy: dp83867: move dt parsing to probe")
    Signed-off-by: Grygorii Strashko
    Signed-off-by: David S. Miller

    Grygorii Strashko
     
  • Now RX interrupt is triggered twice every time, because in
    cpsw_rx_interrupt() it is asked first and then disabled. So there will be
    pending interrupt always, when RX interrupt is enabled again in NAPI
    handler.

    Fix it by first disabling IRQ and then do ask.

    Fixes: 870915feabdc ("drivers: net: cpsw: remove disable_irq/enable_irq as irq can be masked from cpsw itself")
    Signed-off-by: Grygorii Strashko
    Signed-off-by: David S. Miller

    Grygorii Strashko
     
  • Passing NULL to pppoe_pernet causes a crash via BUG_ON.
    Dereferencing net in net_generici() also has the same effect. This patch
    removes the redundant BUG_ON check on the same parameter.

    Signed-off-by: Aditya Pakki
    Signed-off-by: David S. Miller

    Aditya Pakki
     

07 Dec, 2019

13 commits

  • Saeed Mahameed says:

    ====================
    Mellanox, mlx5 fixes 2019-12-05

    This series introduces some fixes to mlx5 driver.

    Please pull and let me know if there is any problem.

    For -stable v4.19:
    ('net/mlx5e: Query global pause state before setting prio2buffer')

    For -stable v5.3
    ('net/mlx5e: Fix SFF 8472 eeprom length')
    ('net/mlx5e: Fix translation of link mode into speed')
    ('net/mlx5e: Fix freeing flow with kfree() and not kvfree()')
    ('net/mlx5e: ethtool, Fix analysis of speed setting')
    ('net/mlx5e: Fix TXQ indices to be sequential')
    ====================

    Signed-off-by: David S. Miller

    David S. Miller
     
  • We may have found a bug in the nxp/lpc_eth.c driver. The function
    platform_set_drvdata() is called twice, the second time it is called,
    in lpc_mii_init(), it overwrites the struct net_device which should be
    at pdev->dev->driver_data with pldat->mii_bus. When trying to remove
    the driver, in lpc_eth_drv_remove(), platform_get_drvdata() will
    return the pldat->mii_bus pointer and try to use it as a struct
    net_device pointer. This causes unregister_netdev to segfault and
    generate a kernel BUG. Is this reproducible?

    Signed-off-by: Daniel Martinez
    Signed-off-by: Bruno Carneiro da Cunha
    Signed-off-by: David S. Miller

    Bruno Carneiro da Cunha
     
  • Pull ARM SoC fixes from Olof Johansson:
    "A set of fixes that we've merged late, but for the most part that have
    been sitting in -next for a while through platform maintainer trees:

    - Fixes to suspend/resume on Tegra, caused by the added features this
    merge window

    - Cleanups and minor fixes to TI additions this merge window

    - Tee fixes queued up late before the merge window, included here.

    - A handful of other fixlets

    There's also a refresh of the shareed config files (multi_v* on
    32-bit, and defconfig on 64-bit), to avoid conflicts when we get new
    contributions"

    * tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (32 commits)
    ARM: multi_v7_defconfig: Restore debugfs support
    ARM: defconfig: re-run savedefconfig on multi_v* configs
    arm64: defconfig: re-run savedefconfig
    ARM: pxa: Fix resource properties
    soc: mediatek: cmdq: fixup wrong input order of write api
    soc: aspeed: Fix snoop_file_poll()'s return type
    MAINTAINERS: Switch to Marvell addresses
    MAINTAINERS: update Cavium ThunderX drivers
    Revert "arm64: dts: juno: add dma-ranges property"
    MAINTAINERS: Make Nicolas Saenz Julienne the new bcm2835 maintainer
    firmware: arm_scmi: Avoid double free in error flow
    arm64: dts: juno: Fix UART frequency
    ARM: dts: Fix sgx sysconfig register for omap4
    arm: socfpga: execute cold reboot by default
    ARM: dts: Fix vcsi regulator to be always-on for droid4 to prevent hangs
    ARM: dts: dra7: fix cpsw mdio fck clock
    ARM: dts: am57xx-beagle-x15: Update pinmux name to ddr_3_3v
    ARM: dts: omap3-tao3530: Fix incorrect MMC card detection GPIO polarity
    soc/tegra: pmc: Add reset sources and levels on Tegra194
    soc/tegra: pmc: Add missing IRQ callbacks on Tegra194
    ...

    Linus Torvalds
     
  • The driver forgets to call pci_release_regions() in remove like that
    in probe failure.
    Add the missed call to fix it.

    Signed-off-by: Chuhong Yuan
    Signed-off-by: David S. Miller

    Chuhong Yuan
     
  • Refer to the databook of DesignWare Cores Ethernet MAC Universal:

    6.2.1.5 Register 4 (Transmit Descriptor List Address Register

    If this register is not changed when the ST bit is set to 0, then
    the DMA takes the descriptor address where it was stopped earlier.

    The stmmac_tx_err() does zero indices to Tx descriptors, but does
    not reset HW current Tx descriptor address. To fix inconsistency,
    the base address of the Tx descriptors should be rewritten before
    restarting Tx.

    Signed-off-by: Jongsung Kim
    Signed-off-by: David S. Miller

    Jongsung Kim
     
  • The EEE support has not been enabled on ENETC, but it may connect
    to a PHY which supports EEE and advertises EEE by default, while
    its link partner also advertises EEE. If this happens, the PHY enters
    low power mode when the traffic rate is low and causes packet loss.
    This patch disables EEE advertisement by default for any PHY that
    ENETC connects to, to prevent the above unwanted outcome.

    Signed-off-by: Yangbo Lu
    Reviewed-by: Claudiu Manoil
    Signed-off-by: David S. Miller

    Yangbo Lu
     
  • Prepare second round of updates for 5.5 merge window.

    Dmitry Torokhov
     
  • Pull more drm updates from Dave Airlie:
    "Rob pointed out I missed his pull request for msm-next, it's been in
    next for a while outside of my tree so shouldn't cause any unexpected
    issues, it has some OCMEM support in drivers/soc that is acked by
    other maintainers as it's outside my tree.

    Otherwise it's a usual fixes pull, i915, amdgpu, the main ones, with
    some tegra, omap, mgag200 and one core fix.

    Summary:

    msm-next:
    - OCMEM support for a3xx and a4xx GPUs.
    - a510 support + display support

    core:
    - mst payload deletion fix

    i915:
    - uapi alignment fix
    - fix for power usage regression due to security fixes
    - change default preemption timeout to 640ms from 100ms
    - EHL voltage level display fixes
    - TGL DGL PHY fix
    - gvt - MI_ATOMIC cmd parser fix, CFL non-priv warning
    - CI spotted deadlock fix
    - EHL port D programming fix

    amdgpu:
    - VRAM lost fixes on BACO for CI/VI
    - navi14 DC fixes
    - misc SR-IOV, gfx10 fixes
    - XGMI fixes for arcturus
    - SRIOV fixes

    amdkfd:
    - KFD on ppc64le enabled
    - page table optimisations

    radeon:
    - fix for r1xx/2xx register checker.

    tegra:
    - displayport regression fixes
    - DMA API regression fixes

    mgag200:
    - fix devices that can't scanout except at 0 addr

    omap:
    - fix dma_addr refcounting"

    * tag 'drm-next-2019-12-06' of git://anongit.freedesktop.org/drm/drm: (100 commits)
    drm/dp_mst: Correct the bug in drm_dp_update_payload_part1()
    drm/omap: fix dma_addr refcounting
    drm/tegra: Run hub cleanup on ->remove()
    drm/tegra: sor: Make the +5V HDMI supply optional
    drm/tegra: Silence expected errors on IOMMU attach
    drm/tegra: vic: Export module device table
    drm/tegra: sor: Implement system suspend/resume
    drm/tegra: Use proper IOVA address for cursor image
    drm/tegra: gem: Remove premature import restrictions
    drm/tegra: gem: Properly pin imported buffers
    drm/tegra: hub: Remove bogus connection mutex check
    ia64: agp: Replace empty define with do while
    agp: Add bridge parameter documentation
    agp: remove unused variable num_segments
    agp: move AGPGART_MINOR to include/linux/miscdevice.h
    agp: remove unused variable size in agp_generic_create_gatt_table
    drm/dp_mst: Fix build on systems with STACKTRACE_SUPPORT=n
    drm/radeon: fix r1xx/r2xx register checker for POT textures
    drm/amdgpu: fix GFX10 missing CSIB set(v3)
    drm/amdgpu: should stop GFX ring in hw_fini
    ...

    Linus Torvalds
     
  • Pull more block and io_uring updates from Jens Axboe:
    "I wasn't expecting this to be so big, and if I was, I would have used
    separate branches for this. Going forward I'll be doing separate
    branches for the current tree, just like for the next kernel version
    tree. In any case, this contains:

    - Series from Christoph that fixes an inherent race condition with
    zoned devices and revalidation.

    - null_blk zone size fix (Damien)

    - Fix for a regression in this merge window that caused busy spins by
    sending empty disk uevents (Eric)

    - Fix for a regression in this merge window for bfq stats (Hou)

    - Fix for io_uring creds allocation failure handling (me)

    - io_uring -ERESTARTSYS send/recvmsg fix (me)

    - Series that fixes the need for applications to retain state across
    async request punts for io_uring. This one is a bit larger than I
    would have hoped, but I think it's important we get this fixed for
    5.5.

    - connect(2) improvement for io_uring, handling EINPROGRESS instead
    of having applications needing to poll for it (me)

    - Have io_uring use a hash for poll requests instead of an rbtree.
    This turned out to work much better in practice, so I think we
    should make the switch now. For some workloads, even with a fair
    amount of cancellations, the insertion sort is just too expensive.
    (me)

    - Various little io_uring fixes (me, Jackie, Pavel, LimingWu)

    - Fix for brd unaligned IO, and a warning for the future (Ming)

    - Fix for a bio integrity data leak (Justin)

    - bvec_iter_advance() improvement (Pavel)

    - Xen blkback page unmap fix (SeongJae)

    The major items in here are all well tested, and on the liburing side
    we continue to add regression and feature test cases. We're up to 50
    topic cases now, each with anywhere from 1 to more than 10 cases in
    each"

    * tag 'for-linus-20191205' of git://git.kernel.dk/linux-block: (33 commits)
    block: fix memleak of bio integrity data
    io_uring: fix a typo in a comment
    bfq-iosched: Ensure bio->bi_blkg is valid before using it
    io_uring: hook all linked requests via link_list
    io_uring: fix error handling in io_queue_link_head
    io_uring: use hash table for poll command lookups
    io-wq: clear node->next on list deletion
    io_uring: ensure deferred timeouts copy necessary data
    io_uring: allow IO_SQE_* flags on IORING_OP_TIMEOUT
    null_blk: remove unused variable warning on !CONFIG_BLK_DEV_ZONED
    brd: warn on un-aligned buffer
    brd: remove max_hw_sectors queue limit
    xen/blkback: Avoid unmapping unmapped grant pages
    io_uring: handle connect -EINPROGRESS like -EAGAIN
    block: set the zone size in blk_revalidate_disk_zones atomically
    block: don't handle bio based drivers in blk_revalidate_disk_zones
    block: allocate the zone bitmaps lazily
    block: replace seq_zones_bitmap with conv_zones_bitmap
    block: simplify blkdev_nr_zones
    block: remove the empty line at the end of blk-zoned.c
    ...

    Linus Torvalds
     
  • …nel/git/tegra/linux into arm/fixes

    memory: tegra: Fixes for v5.5-rc1

    This contains a fix for a kernel panic that can occur on suspend if EMC
    timings are not available in device tree.

    * tag 'tegra-for-5.5-memory-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
    memory: tegra30-emc: Fix panic on suspend

    Link: https://lore.kernel.org/r/20191204130753.3614278-1-thierry.reding@gmail.com
    Signed-off-by: Olof Johansson <olof@lixom.net>

    Olof Johansson
     
  • …/git/tegra/linux into arm/fixes

    soc/tegra: Fixes for v5.5-rc1

    Fixes a regression for wake events on Tegra194 caused by the Tegra210
    support that was added in v5.5-rc1 as well as wrong reset sources and
    levels on Tegra194.

    * tag 'tegra-for-5.5-soc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
    soc/tegra: pmc: Add reset sources and levels on Tegra194
    soc/tegra: pmc: Add missing IRQ callbacks on Tegra194
    soc/tegra: pmc: Use lower-case for hexadecimal literals

    Link: https://lore.kernel.org/r/20191204130753.3614278-2-thierry.reding@gmail.com
    Signed-off-by: Olof Johansson <olof@lixom.net>

    Olof Johansson
     
  • …it/tegra/linux into arm/fixes

    cpufreq: tegra: Changes for v5.5-rc1

    Implements support for suspend/resume on Tegra124.

    * tag 'tegra-for-5.5-cpufreq' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
    cpufreq: tegra124: Add suspend and resume support

    Link: https://lore.kernel.org/r/20191204130753.3614278-3-thierry.reding@gmail.com
    Signed-off-by: Olof Johansson <olof@lixom.net>

    Olof Johansson
     
  • …nux/kernel/git/tmlind/linux-omap into arm/fixes

    Few ti-sysc related fixes for v5.5 merge window

    Just few minor changes that can be merged when suitable, but would
    be good to have these in v5.5-rc1 to remove dependencies between branches
    for more changes later on in v5.6:

    - Add quirk handling for AESS (Audio Engine Sub System)

    - We want to drop the useless gptimer option for omap4 as there are local
    timers

    - A minor error path handling improvment for sysc_child_add_named_clock()
    that will make further patching a bit easier

    * tag 'omap-for-v5.5/ti-sysc-late-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
    bus: ti-sysc: Adjust exception handling in sysc_child_add_named_clock()
    ARM: OMAP2+: Drop useless gptimer option for omap4
    bus: ti-sysc: Add module enable quirk for audio AESS

    Link: https://lore.kernel.org/r/pull-1574273726-31367@atomide.com
    Signed-off-by: Olof Johansson <olof@lixom.net>

    Olof Johansson
     

06 Dec, 2019

13 commits

  • …/drm-intel into drm-next

    - Includes gvt-next-fixes-2019-12-02 pull
    - Fixes for CI spotted eadlock and a race condition in GEM contexts
    - Fix for EHL port D programming

    Signed-off-by: Dave Airlie <airlied@redhat.com>
    From: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20191205092412.GA8089@jlahtine-desk.ger.corp.intel.com

    Dave Airlie
     
  • sock_fprog_kern::len is in units of struct sock_filter, not bytes.

    Fixes: 3e859adf3643 ("compat_ioctl: unify copy-in of ppp filters")
    Reported-by: syzbot+eb853b51b10f1befa0b7@syzkaller.appspotmail.com
    Signed-off-by: Eric Biggers
    Reviewed-by: Arnd Bergmann
    Signed-off-by: David S. Miller

    Eric Biggers
     
  • Previously, when set VF VLAN with command "ip link set
    vf vlan ", the VF ID 0 is handled as PF incorrectly,
    which should be the first VF. This patch fixes it.

    Fixes: 21e043cd8124 ("net: hns3: fix set port based VLAN for PF")
    Signed-off-by: Jian Shen
    Signed-off-by: Huazhong Tan
    Signed-off-by: David S. Miller

    Jian Shen
     
  • Currently, hns3_nic_maybe_stop_tx() uses skb_copy() to linearize a
    SKB if the BD num required by the SKB does not meet the hardware
    limitation, and it linearizes the SKB by allocating a new linearized SKB
    and freeing the old SKB, if hns3_nic_maybe_stop_tx() returns -EBUSY
    because there are no enough space in the ring to send the linearized
    skb to hardware, the sch_direct_xmit() still hold reference to old SKB
    and try to retransmit the old SKB when dev_hard_start_xmit() return
    TX_BUSY, which may cause use after freed problem.

    This patch fixes it by using __skb_linearize() to linearize the
    SKB in hns3_nic_maybe_stop_tx().

    Fixes: 51e8439f3496 ("net: hns3: add 8 BD limit for tx flow")
    Signed-off-by: Yunsheng Lin
    Signed-off-by: Huazhong Tan
    Signed-off-by: David S. Miller

    Yunsheng Lin
     
  • There is timing window between ring_space checking and
    netif_stop_subqueue when transmiting a SKB, and the TX BD
    cleaning may be executed during the time window, which may
    caused TX queue not restarted problem.

    This patch fixes it by rechecking the ring_space after
    netif_stop_subqueue to make sure TX queue is restarted.

    Also, the ring->next_to_clean is updated even when pkts is
    zero, because all the TX BD cleaned may be non-SKB, so it
    needs to check if TX queue need to be restarted.

    Fixes: 76ad4f0ee747 ("net: hns3: Add support of HNS3 Ethernet Driver for hip08 SoC")
    Signed-off-by: Yunsheng Lin
    Signed-off-by: Huazhong Tan
    Signed-off-by: David S. Miller

    Yunsheng Lin
     
  • Replace "select NET_SWITCHDEV" vs "depends on NET_SWITCHDEV" to fix Kconfig
    warning with CONFIG_COMPILE_TEST=y

    WARNING: unmet direct dependencies detected for NET_SWITCHDEV
    Depends on [n]: NET [=y] && INET [=n]
    Selected by [y]:
    - TI_CPSW_SWITCHDEV [=y] && NETDEVICES [=y] && ETHERNET [=y] && NET_VENDOR_TI [=y] && (ARCH_DAVINCI || ARCH_OMAP2PLUS || COMPILE_TEST [=y])

    because TI_CPSW_SWITCHDEV blindly selects NET_SWITCHDEV even though
    INET is not set/enabled, while NET_SWITCHDEV depends on INET.

    Reported-by: Randy Dunlap
    Fixes: ed3525eda4c4 ("net: ethernet: ti: introduce cpsw switchdev based driver part 1 - dual-emac")
    Signed-off-by: Grygorii Strashko
    Acked-by: Randy Dunlap # build-tested
    Signed-off-by: David S. Miller

    Grygorii Strashko
     
  • This brings in the mainline tree right after armsoc contents was merged
    this release cycle, so that we can re-run savedefconfig, etc.

    Signed-off-by: Olof Johansson

    Olof Johansson
     
  • Pull ceph updates from Ilya Dryomov:
    "The two highlights are a set of improvements to how rbd read-only
    mappings are handled and a conversion to the new mount API (slightly
    complicated by the fact that we had a common option parsing framework
    that called out into rbd and the filesystem instead of them calling
    into it).

    Also included a few scattered fixes and a MAINTAINERS update for rbd,
    adding Dongsheng as a reviewer"

    * tag 'ceph-for-5.5-rc1' of git://github.com/ceph/ceph-client:
    libceph, rbd, ceph: convert to use the new mount API
    rbd: ask for a weaker incompat mask for read-only mappings
    rbd: don't query snapshot features
    rbd: remove snapshot existence validation code
    rbd: don't establish watch for read-only mappings
    rbd: don't acquire exclusive lock for read-only mappings
    rbd: disallow read-write partitions on images mapped read-only
    rbd: treat images mapped read-only seriously
    rbd: introduce RBD_DEV_FLAG_READONLY
    rbd: introduce rbd_is_snap()
    ceph: don't leave ino field in ceph_mds_request_head uninitialized
    ceph: tone down loglevel on ceph_mdsc_build_path warning
    rbd: update MAINTAINERS info
    ceph: fix geting random mds from mdsmap
    rbd: fix spelling mistake "requeueing" -> "requeuing"
    ceph: make several helper accessors take const pointers
    libceph: drop unnecessary check from dispatch() in mon_client.c

    Linus Torvalds
     
  • In cited commit, when prio tag mode is enabled, FTE creation fails
    due to missing group with valid match criteria.

    Hence,
    (a) create prio tag group metadata_prio_tag_grp when prio tag is
    enabled with match criteria for vlan push FTE.
    (b) Rename metadata_grp to metadata_allmatch_grp to reflect its purpose.

    Also when priority tag is enabled, delete metadata settings after
    deleting ingress rules, which are using it.

    Tide up rest of the ingress config code for unnecessary labels.

    Fixes: 10652f39943e ("net/mlx5: Refactor ingress acl configuration")
    Signed-off-by: Parav Pandit
    Reviewed-by: Eli Britstein
    Signed-off-by: Saeed Mahameed

    Parav Pandit
     
  • When setting speed to 100G via ethtool (AN is set to off), only 25G*4 is
    configured while the user, who has an advanced HW which supports
    extended PTYS, expects also 50G*2 to be configured.
    With this patch, when extended PTYS mode is available, configure
    PTYS via extended fields.

    Fixes: 4b95840a6ced ("net/mlx5e: Fix matching of speed to PRM link modes")
    Signed-off-by: Aya Levin
    Reviewed-by: Eran Ben Elisha
    Signed-off-by: Saeed Mahameed

    Aya Levin
     
  • Add a missing value in translation of PTYS ext_eth_proto_oper to its
    corresponding speed. When ext_eth_proto_oper bit 10 is set, ethtool
    shows unknown speed. With this fix, ethtool shows speed is 100G as
    expected.

    Fixes: a08b4ed1373d ("net/mlx5: Add support to ext_* fields introduced in Port Type and Speed register")
    Signed-off-by: Aya Levin
    Reviewed-by: Eran Ben Elisha
    Signed-off-by: Saeed Mahameed

    Aya Levin
     
  • It could be neigh update flow took a refcount on peer flow so
    sometimes we cannot release peer flow even if parent flow is
    being freed now.

    Fixes: 5a7e5bcb663d ("net/mlx5e: Extend tc flow struct with reference counter")
    Signed-off-by: Roi Dayan
    Reviewed-by: Eli Britstein
    Signed-off-by: Saeed Mahameed

    Roi Dayan
     
  • Flows are allocated with kzalloc() so free with kfree().

    Fixes: 04de7dda7394 ("net/mlx5e: Infrastructure for duplicated offloading of TC flows")
    Signed-off-by: Roi Dayan
    Reviewed-by: Eli Britstein
    Signed-off-by: Saeed Mahameed

    Roi Dayan