Skip to content
  1. May 29, 2020
    • Konstantin Khlebnikov's avatar
      mm: remove VM_BUG_ON(PageSlab()) from page_mapcount() · 6988f31d
      Konstantin Khlebnikov authored
      Replace superfluous VM_BUG_ON() with comment about correct usage.
      
      Technically reverts commit 1d148e21 ("mm: add VM_BUG_ON_PAGE() to
      page_mapcount()"), but context lines have changed.
      
      Function isolate_migratepages_block() runs some checks out of lru_lock
      when choose pages for migration.  After checking PageLRU() it checks
      extra page references by comparing page_count() and page_mapcount().
      Between these two checks page could be removed from lru, freed and taken
      by slab.
      
      As a result this race triggers VM_BUG_ON(PageSlab()) in page_mapcount().
      Race window is tiny.  For certain workload this happens around once a
      year.
      
          page:ffffea0105ca9380 count:1 mapcount:0 mapping:ffff88ff7712c180 index:0x0 compound_mapcount: 0
          flags: 0x500000000008100(slab|head)
          raw: 0500000000008100 dead000000000100 dead000000000200 ffff88ff7712c180
          raw: 0000000000000000 0000000080200020 00000001ffffffff 0000000000000000
          page dumped because: VM_BUG_ON_PAGE(PageSlab(page))
          ------------[ cut here ]------------
          kernel BUG at ./include/linux/mm.h:628!
          invalid opcode: 0000 [#1] SMP NOPTI
          CPU: 77 PID: 504 Comm: kcompactd1 Tainted: G        W         4.19.109-27 #1
          Hardware name: Yandex T175-N41-Y3N/MY81-EX0-Y3N, BIOS R05 06/20/2019
          RIP: 0010:isolate_migratepages_block+0x986/0x9b0
      
      The code in isolate_migratepages_block() was added in commit
      119d6d59 ("mm, compaction: avoid isolating pinned pages") before
      adding VM_BUG_ON into page_mapcount().
      
      This race has been predicted in 2015 by Vlastimil Babka (see link
      below).
      
      [akpm@linux-foundation.org: comment tweaks, per Hugh]
      Fixes: 1d148e21
      
       ("mm: add VM_BUG_ON_PAGE() to page_mapcount()")
      Signed-off-by: default avatarKonstantin Khlebnikov <khlebnikov@yandex-team.ru>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Acked-by: default avatarHugh Dickins <hughd@google.com>
      Acked-by: default avatarKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Acked-by: default avatarVlastimil Babka <vbabka@suse.cz>
      Cc: David Rientjes <rientjes@google.com>
      Cc: <stable@vger.kernel.org>
      Link: http://lkml.kernel.org/r/159032779896.957378.7852761411265662220.stgit@buzz
      Link: https://lore.kernel.org/lkml/557710E1.6060103@suse.cz/
      Link: https://lore.kernel.org/linux-mm/158937872515.474360.5066096871639561424.stgit@buzz/T/ (v1)
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      6988f31d
    • Hugh Dickins's avatar
      mm,thp: stop leaking unreleased file pages · 2f33a706
      Hugh Dickins authored
      When collapse_file() calls try_to_release_page(), it has already isolated
      the page: so if releasing buffers happens to fail (as it sometimes does),
      remember to putback_lru_page(): otherwise that page is left unreclaimable
      and unfreeable, and the file extent uncollapsible.
      
      Fixes: 99cb0dbd
      
       ("mm,thp: add read-only THP support for (non-shmem) FS")
      Signed-off-by: default avatarHugh Dickins <hughd@google.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Acked-by: default avatarSong Liu <songliubraving@fb.com>
      Acked-by: default avatarKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Acked-by: default avatarJohannes Weiner <hannes@cmpxchg.org>
      Cc: Rik van Riel <riel@surriel.com>
      Cc: <stable@vger.kernel.org>	[5.4+]
      Link: http://lkml.kernel.org/r/alpine.LSU.2.11.2005231837500.1766@eggly.anvils
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      2f33a706
    • Qian Cai's avatar
      mm/z3fold: silence kmemleak false positives of slots · af4798a5
      Qian Cai authored
      
      
      Kmemleak reported many leaks while under memory pressue in,
      
          slots = alloc_slots(pool, gfp);
      
      which is referenced by "zhdr" in init_z3fold_page(),
      
          zhdr->slots = slots;
      
      However, "zhdr" could be gone without freeing slots as the later will be
      freed separately when the last "handle" off of "handles" array is freed.
      It will be within "slots" which is always aligned.
      
        unreferenced object 0xc000000fdadc1040 (size 104):
        comm "oom04", pid 140476, jiffies 4295359280 (age 3454.970s)
        hex dump (first 32 bytes):
          00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
          00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
        backtrace:
          z3fold_zpool_malloc+0x7b0/0xe10
          alloc_slots at mm/z3fold.c:214
          (inlined by) init_z3fold_page at mm/z3fold.c:412
          (inlined by) z3fold_alloc at mm/z3fold.c:1161
          (inlined by) z3fold_zpool_malloc at mm/z3fold.c:1735
          zpool_malloc+0x34/0x50
          zswap_frontswap_store+0x60c/0xda0
          zswap_frontswap_store at mm/zswap.c:1093
          __frontswap_store+0x128/0x330
          swap_writepage+0x58/0x110
          pageout+0x16c/0xa40
          shrink_page_list+0x1ac8/0x25c0
          shrink_inactive_list+0x270/0x730
          shrink_lruvec+0x444/0xf30
          shrink_node+0x2a4/0x9c0
          do_try_to_free_pages+0x158/0x640
          try_to_free_pages+0x1bc/0x5f0
          __alloc_pages_slowpath.constprop.60+0x4dc/0x15a0
          __alloc_pages_nodemask+0x520/0x650
          alloc_pages_vma+0xc0/0x420
          handle_mm_fault+0x1174/0x1bf0
      
      Signed-off-by: default avatarQian Cai <cai@lca.pw>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Acked-by: default avatarVitaly Wool <vitaly.wool@konsulko.com>
      Acked-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      Link: http://lkml.kernel.org/r/20200522220052.2225-1-cai@lca.pw
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      af4798a5
  2. May 26, 2020
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm · 444fc5cd
      Linus Torvalds authored
      Pull ARM fixes from Russell King:
      
       - correct value of decompressor tag size in header
      
       - fix DACR value when we have nested exceptions
      
       - fix a missing newline on a kernel message
      
       - fix mask for ptrace thumb breakpoint hook
      
      * tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm:
        ARM: 8977/1: ptrace: Fix mask for thumb breakpoint hook
        ARM: 8973/1: Add missing newline terminator to kernel message
        ARM: uaccess: fix DACR mismatch with nested exceptions
        ARM: uaccess: integrate uaccess_save and uaccess_restore
        ARM: uaccess: consolidate uaccess asm to asm/uaccess-asm.h
        ARM: 8970/1: decompressor: increase tag size
      444fc5cd
  3. May 25, 2020
    • Linus Torvalds's avatar
      Linux 5.7-rc7 · 9cb1fd0e
      Linus Torvalds authored
      v5.7-rc7
      9cb1fd0e
    • Linus Torvalds's avatar
      Merge tag 'efi-urgent-2020-05-24' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 98790bba
      Linus Torvalds authored
      Pull EFI fixes from Thomas Gleixner:
       "A set of EFI fixes:
      
         - Don't return a garbage screen info when EFI framebuffer is not
           available
      
         - Make the early EFI console work properly with wider fonts instead
           of drawing garbage
      
         - Prevent a memory buffer leak in allocate_e820()
      
         - Print the firmware error record properly so it can be decoded by
           users
      
         - Fix a symbol clash in the host tool build which only happens with
           newer compilers.
      
         - Add a missing check for the event log version of TPM which caused
           boot failures on several Dell systems due to an attempt to decode
           SHA-1 format with the crypto agile algorithm"
      
      * tag 'efi-urgent-2020-05-24' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        tpm: check event log version before reading final events
        efi: Pull up arch-specific prototype efi_systab_show_arch()
        x86/boot: Mark global variables as static
        efi: cper: Add support for printing Firmware Error Record Reference
        efi/libstub/x86: Avoid EFI map buffer alloc in allocate_e820()
        efi/earlycon: Fix early printk for wider fonts
        efi/libstub: Avoid returning uninitialized data from setup_graphics()
      98790bba
    • Linus Torvalds's avatar
      Merge tag 'x86-urgent-2020-05-24' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 667b6249
      Linus Torvalds authored
      Pull x86 fixes from Thomas Gleixner:
       "Two fixes for x86:
      
         - Unbreak stack dumps for inactive tasks by interpreting the special
           first frame left by __switch_to_asm() correctly.
      
           The recent change not to skip the first frame so ORC and frame
           unwinder behave in the same way caused all entries to be
           unreliable, i.e. prepended with '?'.
      
         - Use cpumask_available() instead of an implicit NULL check of a
           cpumask_var_t in mmio trace to prevent a Clang build warning"
      
      * tag 'x86-urgent-2020-05-24' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/unwind/orc: Fix unwind_get_return_address_ptr() for inactive tasks
        x86/mmiotrace: Use cpumask_available() for cpumask_var_t variables
      667b6249
    • Linus Torvalds's avatar
      Merge tag 'sched-urgent-2020-05-24' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9e61d12b
      Linus Torvalds authored
      Pull scheduler fixes from Thomas Gleixner:
       "A set of fixes for the scheduler:
      
         - Fix handling of throttled parents in enqueue_task_fair() completely.
      
           The recent fix overlooked a corner case where the first iteration
           terminates due to an entity already being on the runqueue which
           makes the list management incomplete and later triggers the
           assertion which checks for completeness.
      
         - Fix a similar problem in unthrottle_cfs_rq().
      
         - Show the correct uclamp values in procfs which prints the effective
           value twice instead of requested and effective"
      
      * tag 'sched-urgent-2020-05-24' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/fair: Fix unthrottle_cfs_rq() for leaf_cfs_rq list
        sched/debug: Fix requested task uclamp values shown in procfs
        sched/fair: Fix enqueue_task_fair() warning some more
      9e61d12b
  4. May 24, 2020
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · caffb99b
      Linus Torvalds authored
      Pull networking fixes from David Miller:
      
       1) Fix RCU warnings in ipv6 multicast router code, from Madhuparna
          Bhowmik.
      
       2) Nexthop attributes aren't being checked properly because of
          mis-initialized iterator, from David Ahern.
      
       3) Revert iop_idents_reserve() change as it caused performance
          regressions and was just working around what is really a UBSAN bug
          in the compiler. From Yuqi Jin.
      
       4) Read MAC address properly from ROM in bmac driver (double iteration
          proceeds past end of address array), from Jeremy Kerr.
      
       5) Add Microsoft Surface device IDs to r8152, from Marc Payne.
      
       6) Prevent reference to freed SKB in __netif_receive_skb_core(), from
          Boris Sukholitko.
      
       7) Fix ACK discard behavior in rxrpc, from David Howells.
      
       8) Preserve flow hash across packet scrubbing in wireguard, from Jason
          A. Donenfeld.
      
       9) Cap option length properly for SO_BINDTODEVICE in AX25, from Eric
          Dumazet.
      
      10) Fix encryption error checking in kTLS code, from Vadim Fedorenko.
      
      11) Missing BPF prog ref release in flow dissector, from Jakub Sitnicki.
      
      12) dst_cache must be used with BH disabled in tipc, from Eric Dumazet.
      
      13) Fix use after free in mlxsw driver, from Jiri Pirko.
      
      14) Order kTLS key destruction properly in mlx5 driver, from Tariq
          Toukan.
      
      15) Check devm_platform_ioremap_resource() return value properly in
          several drivers, from Tiezhu Yang.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (71 commits)
        net: smsc911x: Fix runtime PM imbalance on error
        net/mlx4_core: fix a memory leak bug.
        net: ethernet: ti: cpsw: fix ASSERT_RTNL() warning during suspend
        net: phy: mscc: fix initialization of the MACsec protocol mode
        net: stmmac: don't attach interface until resume finishes
        net: Fix return value about devm_platform_ioremap_resource()
        net/mlx5: Fix error flow in case of function_setup failure
        net/mlx5e: CT: Correctly get flow rule
        net/mlx5e: Update netdev txq on completions during closure
        net/mlx5: Annotate mutex destroy for root ns
        net/mlx5: Don't maintain a case of del_sw_func being null
        net/mlx5: Fix cleaning unmanaged flow tables
        net/mlx5: Fix memory leak in mlx5_events_init
        net/mlx5e: Fix inner tirs handling
        net/mlx5e: kTLS, Destroy key object after destroying the TIS
        net/mlx5e: Fix allowed tc redirect merged eswitch offload cases
        net/mlx5: Avoid processing commands before cmdif is ready
        net/mlx5: Fix a race when moving command interface to events mode
        net/mlx5: Add command entry handling completion
        rxrpc: Fix a memory leak in rxkad_verify_response()
        ...
      caffb99b
    • Dinghao Liu's avatar
      net: smsc911x: Fix runtime PM imbalance on error · 539d39ad
      Dinghao Liu authored
      
      
      Remove runtime PM usage counter decrement when the
      increment function has not been called to keep the
      counter balanced.
      
      Signed-off-by: default avatarDinghao Liu <dinghao.liu@zju.edu.cn>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      539d39ad
    • David S. Miller's avatar
      Merge tag 'mlx5-fixes-2020-05-22' of git://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux · e3181e9a
      David S. Miller authored
      
      
      Saeed Mahameed says:
      
      ====================
      mlx5 fixes 2020-05-22
      
      This series introduces some fixes to mlx5 driver.
      
      Please pull and let me know if there is any problem.
      
      For -stable v4.13
         ('net/mlx5: Add command entry handling completion')
      
      For -stable v5.2
         ('net/mlx5: Fix error flow in case of function_setup failure')
         ('net/mlx5: Fix memory leak in mlx5_events_init')
      
      For -stable v5.3
         ('net/mlx5e: Update netdev txq on completions during closure')
         ('net/mlx5e: kTLS, Destroy key object after destroying the TIS')
         ('net/mlx5e: Fix inner tirs handling')
      
      For -stable v5.6
         ('net/mlx5: Fix cleaning unmanaged flow tables')
         ('net/mlx5: Fix a race when moving command interface to events mode')
      ====================
      
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      e3181e9a
    • Qiushi Wu's avatar
      net/mlx4_core: fix a memory leak bug. · febfd9d3
      Qiushi Wu authored
      In function mlx4_opreq_action(), pointer "mailbox" is not released,
      when mlx4_cmd_box() return and error, causing a memory leak bug.
      Fix this issue by going to "out" label, mlx4_free_cmd_mailbox() can
      free this pointer.
      
      Fixes: fe6f700d
      
       ("net/mlx4_core: Respond to operation request by firmware")
      Signed-off-by: default avatarQiushi Wu <wu000273@umn.edu>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      febfd9d3
    • Grygorii Strashko's avatar
      net: ethernet: ti: cpsw: fix ASSERT_RTNL() warning during suspend · 4c64b83d
      Grygorii Strashko authored
      vlan_for_each() are required to be called with rtnl_lock taken, otherwise
      ASSERT_RTNL() warning will be triggered - which happens now during System
      resume from suspend:
        cpsw_suspend()
        |- cpsw_ndo_stop()
          |- __hw_addr_ref_unsync_dev()
            |- cpsw_purge_all_mc()
               |- vlan_for_each()
                  |- ASSERT_RTNL();
      
      Hence, fix it by surrounding cpsw_ndo_stop() by rtnl_lock/unlock() calls.
      
      Fixes: 15180eca
      
       ("net: ethernet: ti: cpsw: fix vlan mcast")
      Signed-off-by: default avatarGrygorii Strashko <grygorii.strashko@ti.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      4c64b83d
    • Antoine Tenart's avatar
      net: phy: mscc: fix initialization of the MACsec protocol mode · 0ddfee1f
      Antoine Tenart authored
      At the very end of the MACsec block initialization in the MSCC PHY
      driver, the MACsec "protocol mode" is set. This setting should be set
      based on the PHY id within the package, as the bank used to access the
      register used depends on this. This was not done correctly, and only the
      first bank was used leading to the two upper PHYs being unstable when
      using the VSC8584. This patch fixes it.
      
      Fixes: 1bbe0ecc
      
       ("net: phy: mscc: macsec initialization")
      Signed-off-by: default avatarAntoine Tenart <antoine.tenart@bootlin.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      0ddfee1f
    • Leon Yu's avatar
      net: stmmac: don't attach interface until resume finishes · 31096c3e
      Leon Yu authored
      Commit 14b41a29
      
       ("net: stmmac: Delete txtimer in suspend") was the
      first attempt to fix a race between mod_timer() and setup_timer()
      during stmmac_resume(). However the issue still exists as the commit
      only addressed half of the issue.
      
      Same race can still happen as stmmac_resume() re-attaches interface
      way too early - even before hardware is fully initialized.  Worse,
      doing so allows network traffic to restart and stmmac_tx_timer_arm()
      being called in the middle of stmmac_resume(), which re-init tx timers
      in stmmac_init_coalesce().  timer_list will be corrupted and system
      crashes as a result of race between mod_timer() and setup_timer().
      
        systemd--1995    2.... 552950018us : stmmac_suspend: 4994
        ksoftirq-9       0..s2 553123133us : stmmac_tx_timer_arm: 2276
        systemd--1995    0.... 553127896us : stmmac_resume: 5101
        systemd--320     7...2 553132752us : stmmac_tx_timer_arm: 2276
        (sd-exec-1999    5...2 553135204us : stmmac_tx_timer_arm: 2276
        ---------------------------------
        pc : run_timer_softirq+0x468/0x5e0
        lr : run_timer_softirq+0x570/0x5e0
        Call trace:
         run_timer_softirq+0x468/0x5e0
         __do_softirq+0x124/0x398
         irq_exit+0xd8/0xe0
         __handle_domain_irq+0x6c/0xc0
         gic_handle_irq+0x60/0xb0
         el1_irq+0xb8/0x180
         arch_cpu_idle+0x38/0x230
         default_idle_call+0x24/0x3c
         do_idle+0x1e0/0x2b8
         cpu_startup_entry+0x28/0x48
         secondary_start_kernel+0x1b4/0x208
      
      Fix this by deferring netif_device_attach() to the end of
      stmmac_resume().
      
      Signed-off-by: default avatarLeon Yu <leoyu@nvidia.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      31096c3e
    • Tiezhu Yang's avatar
      net: Fix return value about devm_platform_ioremap_resource() · ef24d6c3
      Tiezhu Yang authored
      
      
      When call function devm_platform_ioremap_resource(), we should use IS_ERR()
      to check the return value and return PTR_ERR() if failed.
      
      Signed-off-by: default avatarTiezhu Yang <yangtiezhu@loongson.cn>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ef24d6c3
    • Mike Rapoport's avatar
      sparc32: fix page table traversal in srmmu_nocache_init() · 0cfc8a8d
      Mike Rapoport authored
      The srmmu_nocache_init() uses __nocache_fix() macro to add an offset to
      page table entry to access srmmu_nocache_pool.
      
      But since sparc32 has only three actual page table levels, pgd, p4d and
      pud are essentially the same thing and pgd_offset() and p4d_offset() are
      no-ops, the __nocache_fix() should be done only at PUD level.
      
      Remove __nocache_fix() for p4d_offset() and pud_offset() and keep it
      only for PUD and lower levels.
      
      Fixes: c2bc26f7
      
       ("sparc32: use PUD rather than PGD to get PMD in srmmu_nocache_init()")
      Signed-off-by: default avatarMike Rapoport <rppt@linux.ibm.com>
      Cc: David S. Miller <davem@davemloft.net>
      Cc: Anatoly Pugachev <matorola@gmail.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      0cfc8a8d
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · 423b8baf
      Linus Torvalds authored
      Merge misc fixes from Andrew Morton:
       "11 fixes"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        MAINTAINERS: add files related to kdump
        z3fold: fix use-after-free when freeing handles
        sparc32: use PUD rather than PGD to get PMD in srmmu_nocache_init()
        MAINTAINERS: update email address for Naoya Horiguchi
        sh: include linux/time_types.h for sockios
        kasan: disable branch tracing for core runtime
        selftests/vm/write_to_hugetlbfs.c: fix unused variable warning
        selftests/vm/.gitignore: add mremap_dontunmap
        rapidio: fix an error in get_user_pages_fast() error handling
        x86: bitops: fix build regression
        device-dax: don't leak kernel memory to user space after unloading kmem
      423b8baf
    • Linus Torvalds's avatar
      Merge tag 'driver-core-5.7-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core · 23f0dac8
      Linus Torvalds authored
      Pull driver core fixes from Greg KH:
       "So, turns out the kobject fix didn't quite work, so here are four
        patches that in the end, result in just two driver core fixes for
        reported issues that no one has had problems with.
      
        The kobject patch that was originally in here has now been reverted,
        as Guenter reported boot problems with it on some of his systems"
      
      * tag 'driver-core-5.7-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        Revert "kobject: Make sure the parent does not get released before its children"
        kobject: Make sure the parent does not get released before its children
        driver core: Fix handling of SYNC_STATE_ONLY + STATELESS device links
        driver core: Fix SYNC_STATE_ONLY device link implementation
      23f0dac8
    • Linus Torvalds's avatar
      Merge tag 'char-misc-5.7-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 0e36fd45
      Linus Torvalds authored
      Pull char/misc fixes from Greg KH:
       "Here are some small char/misc driver fixes for 5.7-rc7 that resolve
        some reported issues. Included in here are tiny fixes for the mei,
        coresight, rtsx, ipack, and mhi drivers.
      
        All of these have been in linux-next with no reported issues"
      
      * tag 'char-misc-5.7-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
        misc: rtsx: Add short delay after exit from ASPM
        bus: mhi: core: Fix some error return code
        ipack: tpci200: fix error return code in tpci200_register()
        coresight: cti: remove incorrect NULL return check
        mei: release me_cl object reference
      0e36fd45
    • Linus Torvalds's avatar
      Merge tag 'staging-5.7-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · 8f261041
      Linus Torvalds authored
      Pull staging/iio fixes from Greg KH:
       "Here are some small staging and IIO driver fixes for 5.7-rc7
      
        Nothing major, just a collection of IIO driver fixes for reported
        issues, and a few small staging driver fixes that people have found.
        Full details are in the shortlog.
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'staging-5.7-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
        staging: wfx: unlock on error path
        staging: greybus: Fix uninitialized scalar variable
        staging: kpc2000: fix error return code in kp2000_pcie_probe()
        iio: sca3000: Remove an erroneous 'get_device()'
        iio: adc: stm32-dfsdm: fix device used to request dma
        iio: adc: stm32-adc: fix device used to request dma
        iio: adc: ti-ads8344: Fix channel selection
        staging: iio: ad2s1210: Fix SPI reading
        iio: dac: vf610: Fix an error handling path in 'vf610_dac_probe()'
        iio: imu: st_lsm6dsx: unlock on error in st_lsm6dsx_shub_write_raw()
        iio: chemical: atlas-sensor: correct DO-SM channels
      8f261041
    • Linus Torvalds's avatar
      Merge tag 'tty-5.7-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · d3044d7d
      Linus Torvalds authored
      Pull tty/serial fix from Greg KH:
       "Here is a single serial driver fix for 5.7-rc7. It resolves an issue
        with the SiFive serial console init sequence that was reported a
        number of times.
      
        It has been in linux-next for a while now with no reported issues"
      
      * tag 'tty-5.7-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
        tty: serial: add missing spin_lock_init for SiFive serial console
      d3044d7d
    • Linus Torvalds's avatar
      Merge tag 's390-5.7-4' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 9bca7c40
      Linus Torvalds authored
      Pull s390 fixes from Vasily Gorbik:
      
       - Add missing R_390_JMP_SLOT relocation type in KASLR code.
      
       - Fix set_huge_pte_at for empty ptes issue which has been uncovered
         with arch page table helper tests.
      
       - Correct initrd location for kdump kernel.
      
       - Fix s390_mmio_read/write with MIO in PCI code.
      
      * tag 's390-5.7-4' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390/kaslr: add support for R_390_JMP_SLOT relocation type
        s390/mm: fix set_huge_pte_at() for empty ptes
        s390/kexec_file: fix initrd location for kdump kernel
        s390/pci: Fix s390_mmio_read/write with MIO
      9bca7c40
    • Baoquan He's avatar
      MAINTAINERS: add files related to kdump · ca6edee6
      Baoquan He authored
      
      
      Kdump is implemented based on kexec, however some files are only related
      to crash dumping and missing, add them to KDUMP entry.
      
      Signed-off-by: default avatarBaoquan He <bhe@redhat.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Acked-by: default avatarDave Young <dyoung@redhat.com>
      Link: http://lkml.kernel.org/r/20200520103633.GW5029@MiWiFi-R3L-srv
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ca6edee6
    • Uladzislau Rezki's avatar
      z3fold: fix use-after-free when freeing handles · d8f117ab
      Uladzislau Rezki authored
      
      
      free_handle() for a foreign handle may race with inter-page compaction,
      what can lead to memory corruption.
      
      To avoid that, take write lock not read lock in free_handle to be
      synchronized with __release_z3fold_page().
      
      For example KASAN can detect it:
      
        ==================================================================
        BUG: KASAN: use-after-free in LZ4_decompress_safe+0x2c4/0x3b8
        Read of size 1 at addr ffffffc976695ca3 by task GoogleApiHandle/4121
      
        CPU: 0 PID: 4121 Comm: GoogleApiHandle Tainted: P S         OE     4.19.81-perf+ #162
        Hardware name: Sony Mobile Communications. PDX-203(KONA) (DT)
        Call trace:
           LZ4_decompress_safe+0x2c4/0x3b8
           lz4_decompress_crypto+0x3c/0x70
           crypto_decompress+0x58/0x70
           zcomp_decompress+0xd4/0x120
           ...
      
      Apart from that, initialize zhdr->mapped_count in init_z3fold_page() and
      remove "newpage" variable because it is not used anywhere.
      
      Signed-off-by: default avatarUladzislau Rezki <uladzislau.rezki@sony.com>
      Signed-off-by: default avatarVitaly Wool <vitaly.wool@konsulko.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Cc: Qian Cai <cai@lca.pw>
      Cc: Raymond Jennings <shentino@gmail.com>
      Cc: <stable@vger.kernel.org>
      Link: http://lkml.kernel.org/r/20200520082100.28876-1-vitaly.wool@konsulko.com
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d8f117ab
    • Mike Rapoport's avatar
      sparc32: use PUD rather than PGD to get PMD in srmmu_nocache_init() · c2bc26f7
      Mike Rapoport authored
      The kbuild test robot reported the following warning:
      
        arch/sparc/mm/srmmu.c: In function 'srmmu_nocache_init': arch/sparc/mm/srmmu.c:300:9: error: variable 'pud' set but not used [-Werror=unused-but-set-variable]
        300 |  pud_t *pud;
      
      This warning is caused by misprint in the page table traversal in
      srmmu_nocache_init() function which accessed a PMD entry using PGD
      rather than PUD.
      
      Since sparc32 has only 3 page table levels, the PGD and PUD are
      essentially the same and usage of __nocache_fix() removed the type
      checking.
      
      Use PUD for the consistency and to silence the compiler warning.
      
      Fixes: 7235db26
      
       ("sparc32: use pgtable-nopud instead of 4level-fixup")
      Reported-by: default avatarkbuild test robot <lkp@intel.com>
      Signed-off-by: default avatarMike Rapoport <rppt@linux.ibm.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Cc: David S. Miller <davem@davemloft.net>
      Cc: Anatoly Pugachev <matorola@gmail.com>
      Cc: <stable@vger.kernel.org>
      Link: http://lkml.kernel.org/r/20200520132005.GM1059226@linux.ibm.com
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      c2bc26f7
    • Naoya Horiguchi's avatar
      MAINTAINERS: update email address for Naoya Horiguchi · f7fa1876
      Naoya Horiguchi authored
      
      
      My email address has changed due to system upgrade, so please update it
      in MAINTAINERS list.  My old address (n-horiguchi@ah.jp.nec.com) will be
      still active for a few months.
      
      Note that my email system has some encoding issue and can't send patches
      in raw format via git-send-email.  So patches from me will be delivered
      via my free address (nao.horiguchi@gmail.com) or GitHub.
      
      Signed-off-by: default avatarNaoya Horiguchi <naoya.horiguchi@nec.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Link: http://lkml.kernel.org/r/1589874488-9247-1-git-send-email-naoya.horiguchi@nec.com
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      f7fa1876
    • Arnd Bergmann's avatar
      sh: include linux/time_types.h for sockios · fc94cf20
      Arnd Bergmann authored
      Using the socket ioctls on arch/sh (and only there) causes build time
      problems when __kernel_old_timeval/__kernel_old_timespec are not already
      visible to the compiler.
      
      Add an explict include line for the header that defines these
      structures.
      
      Fixes: 8c709f9a ("y2038: sh: remove timeval/timespec usage from headers")
      Fixes: 0768e170
      
       ("net: socket: implement 64-bit timestamps")
      Reported-by: default avatarJohn Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Tested-by: default avatarJohn Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
      Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
      Cc: Rich Felker <dalias@libc.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
      Cc: <stable@vger.kernel.org>
      Link: http://lkml.kernel.org/r/20200519131327.1836482-1-arnd@arndb.de
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      fc94cf20
    • Marco Elver's avatar
      kasan: disable branch tracing for core runtime · 33cd65e7
      Marco Elver authored
      
      
      During early boot, while KASAN is not yet initialized, it is possible to
      enter reporting code-path and end up in kasan_report().
      
      While uninitialized, the branch there prevents generating any reports,
      however, under certain circumstances when branches are being traced
      (TRACE_BRANCH_PROFILING), we may recurse deep enough to cause kernel
      reboots without warning.
      
      To prevent similar issues in future, we should disable branch tracing
      for the core runtime.
      
      [elver@google.com: remove duplicate DISABLE_BRANCH_PROFILING, per Qian Cai]
        Link: https://lore.kernel.org/lkml/20200517011732.GE24705@shao2-debian/
        Link: http://lkml.kernel.org/r/20200522075207.157349-1-elver@google.com
      Reported-by: default avatarkernel test robot <rong.a.chen@intel.com>
      Signed-off-by: default avatarMarco Elver <elver@google.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Reviewed-by: default avatarAndrey Konovalov <andreyknvl@google.com>
      Cc: Dmitry Vyukov <dvyukov@google.com>
      Cc: Alexander Potapenko <glider@google.com>
      Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
      Cc: Qian Cai <cai@lca.pw>
      Cc: <stable@vger.kernel.org>
      Link: http://lkml.kernel.org/r//20200517011732.GE24705@shao2-debian/
      Link: http://lkml.kernel.org/r/20200519182459.87166-1-elver@google.com
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      33cd65e7
    • John Hubbard's avatar
      selftests/vm/write_to_hugetlbfs.c: fix unused variable warning · 380e5c1d
      John Hubbard authored
      Remove unused variable "i", which was triggering a compiler warning.
      
      Fixes: 29750f71
      
       ("hugetlb_cgroup: add hugetlb_cgroup reservation tests")
      Signed-off-by: default avatarJohn Hubbard <jhubbard@nvidia.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Reviewed-By: default avatarMina Almasry <almasrymina@google.com>
      Cc: Brian Geffon <bgeffon@google.com>
      Cc: "Kirill A . Shutemov" <kirill.shutemov@linux.intel.com>
      Cc: Shuah Khan <shuah@kernel.org>
      Cc: Ralph Campbell <rcampbell@nvidia.com>
      Link: http://lkml.kernel.org/r/20200517001245.361762-2-jhubbard@nvidia.com
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      380e5c1d
    • John Hubbard's avatar
      selftests/vm/.gitignore: add mremap_dontunmap · 98097701
      John Hubbard authored
      Add mremap_dontunmap to .gitignore.
      
      Fixes: 0c28759e
      
       ("selftests: add MREMAP_DONTUNMAP selftest")
      Signed-off-by: default avatarJohn Hubbard <jhubbard@nvidia.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Cc: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Cc: Brian Geffon <bgeffon@google.com>
      Link: http://lkml.kernel.org/r/20200517002509.362401-2-jhubbard@nvidia.com
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      98097701
    • John Hubbard's avatar
      rapidio: fix an error in get_user_pages_fast() error handling · ffca476a
      John Hubbard authored
      In the case of get_user_pages_fast() returning fewer pages than
      requested, rio_dma_transfer() does not quite do the right thing.  It
      attempts to release all the pages that were requested, rather than just
      the pages that were pinned.
      
      Fix the error handling so that only the pages that were successfully
      pinned are released.
      
      Fixes: e8de3701
      
       ("rapidio: add mport char device driver")
      Signed-off-by: default avatarJohn Hubbard <jhubbard@nvidia.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Reviewed-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Cc: Matt Porter <mporter@kernel.crashing.org>
      Cc: Alexandre Bounine <alex.bou9@gmail.com>
      Cc: Sumit Semwal <sumit.semwal@linaro.org>
      Cc: Dan Carpenter <dan.carpenter@oracle.com>
      Cc: <stable@vger.kernel.org>
      Link: http://lkml.kernel.org/r/20200517235620.205225-2-jhubbard@nvidia.com
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ffca476a
    • Nick Desaulniers's avatar
      x86: bitops: fix build regression · c071b0f1
      Nick Desaulniers authored
      This is easily reproducible via CC=clang + CONFIG_STAGING=y +
      CONFIG_VT6656=m.
      
      It turns out that if your config tickles __builtin_constant_p via
      differences in choices to inline or not, these statements produce
      invalid assembly:
      
          $ cat foo.c
          long a(long b, long c) {
            asm("orb	%1, %0" : "+q"(c): "r"(b));
            return c;
          }
          $ gcc foo.c
          foo.c: Assembler messages:
          foo.c:2: Error: `%rax' not allowed with `orb'
      
      Use the `%b` "x86 Operand Modifier" to instead force register allocation
      to select a lower-8-bit GPR operand.
      
      The "q" constraint only has meaning on -m32 otherwise is treated as
      "r".  Not all GPRs have low-8-bit aliases for -m32.
      
      Fixes: 1651e700
      
       ("x86: Fix bitops.h warning with a moved cast")
      Reported-by: default avatarkernelci.org bot <bot@kernelci.org>
      Suggested-by: default avatarAndy Shevchenko <andriy.shevchenko@intel.com>
      Suggested-by: default avatarBrian Gerst <brgerst@gmail.com>
      Suggested-by: default avatarH. Peter Anvin <hpa@zytor.com>
      Suggested-by: default avatarIlie Halip <ilie.halip@gmail.com>
      Signed-off-by: default avatarNick Desaulniers <ndesaulniers@google.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Tested-by: default avatarSedat Dilek <sedat.dilek@gmail.com>
      Tested-by: Nathan Chancellor <natechancellor@gmail.com>	[build, clang-11]
      Reviewed-by: default avatarNathan Chancellor <natechancellor@gmail.com>
      Reviewed-By: default avatarBrian Gerst <brgerst@gmail.com>
      Reviewed-by: default avatarJesse Brandeburg <jesse.brandeburg@intel.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Marco Elver <elver@google.com>
      Cc: "Paul E. McKenney" <paulmck@kernel.org>
      Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
      Cc: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
      Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
      Cc: Daniel Axtens <dja@axtens.net>
      Cc: "Peter Zijlstra (Intel)" <peterz@infradead.org>
      Link: http://lkml.kernel.org/r/20200508183230.229464-1-ndesaulniers@google.com
      Link: https://github.com/ClangBuiltLinux/linux/issues/961
      Link: https://lore.kernel.org/lkml/20200504193524.GA221287@google.com/
      Link: https://gcc.gnu.org/onlinedocs/gcc/Extended-Asm.html#x86Operandmodifiers
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      c071b0f1
    • David Hildenbrand's avatar
      device-dax: don't leak kernel memory to user space after unloading kmem · 60858c00
      David Hildenbrand authored
      Assume we have kmem configured and loaded:
      
        [root@localhost ~]# cat /proc/iomem
        ...
        140000000-33fffffff : Persistent Memory$
          140000000-1481fffff : namespace0.0
          150000000-33fffffff : dax0.0
            150000000-33fffffff : System RAM
      
      Assume we try to unload kmem. This force-unloading will work, even if
      memory cannot get removed from the system.
      
        [root@localhost ~]# rmmod kmem
        [   86.380228] removing memory fails, because memory [0x0000000150000000-0x0000000157ffffff] is onlined
        ...
        [   86.431225] kmem dax0.0: DAX region [mem 0x150000000-0x33fffffff] cannot be hotremoved until the next reboot
      
      Now, we can reconfigure the namespace:
      
        [root@localhost ~]# ndctl create-namespace --force --reconfig=namespace0.0 --mode=devdax
        [  131.409351] nd_pmem namespace0.0: could not reserve region [mem 0x140000000-0x33fffffff]dax
        [  131.410147] nd_pmem: probe of namespace0.0 failed with error -16namespace0.0 --mode=devdax
        ...
      
      This fails as expected due to the busy memory resource, and the memory
      cannot be used.  However, the dax0.0 device is removed, and along its
      name.
      
      The name of the memory resource now points at freed memory (name of the
      device):
      
        [root@localhost ~]# cat /proc/iomem
        ...
        140000000-33fffffff : Persistent Memory
          140000000-1481fffff : namespace0.0
          150000000-33fffffff : �_�^7_��/_��wR��WQ���^��� ...
          150000000-33fffffff : System RAM
      
      We have to make sure to duplicate the string.  While at it, remove the
      superfluous setting of the name and fixup a stale comment.
      
      Fixes: 9f960da7
      
       ("device-dax: "Hotremove" persistent memory that is used like normal RAM")
      Signed-off-by: default avatarDavid Hildenbrand <david@redhat.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Cc: Dan Williams <dan.j.williams@intel.com>
      Cc: Vishal Verma <vishal.l.verma@intel.com>
      Cc: Dave Jiang <dave.jiang@intel.com>
      Cc: Pavel Tatashin <pasha.tatashin@soleen.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: <stable@vger.kernel.org>	[5.3]
      Link: http://lkml.kernel.org/r/20200508084217.9160-2-david@redhat.com
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      60858c00
  5. May 23, 2020
    • Greg Kroah-Hartman's avatar
      Revert "kobject: Make sure the parent does not get released before its children" · e6764aa0
      Greg Kroah-Hartman authored
      This reverts commit 4ef12f71
      
      .
      
      Guenter reports:
      
      	All my arm64be (arm64 big endian) boot tests crash with this
      	patch applied. Reverting it fixes the problem. Crash log and
      	bisect results (from pending-fixes branch) below.
      
      And also:
      	arm64 images don't crash but report lots of "poison overwritten"
      	backtraces like the one below. On arm, I see "refcount_t:
      	underflow", also attached.  I didn't bisect those, but given the
      	context I would suspect the same culprit.
      
      Reported-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Link: https://lore.kernel.org/r/20200513151840.36400-1-heikki.krogerus@linux.intel.com
      Cc: Naresh Kamboju <naresh.kamboju@linaro.org>
      Cc: kernel test robot <rong.a.chen@intel.com>
      Cc: "Rafael J. Wysocki" <rafael@kernel.org>
      Cc: Heikki Krogerus <heikki.krogerus@linux.intel.com>
      Cc: Brendan Higgins <brendanhiggins@google.com>
      Cc: Randy Dunlap <rdunlap@infradead.org>
      Cc: stable <stable@vger.kernel.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      e6764aa0
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · e644645a
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "Three minor fixes, two in drivers, one to fix a hang after reset with
        iSCSI, and one to avoid a spurious log message; and the final core one
        to correct a suspend/resume miscount with quiesced devices"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: target: Put lun_ref at end of tmr processing
        scsi: pm: Balance pm_only counter of request queue during system resume
        scsi: qla2xxx: Do not log message when reading port speed via sysfs
      e644645a
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-2020-05-23' of git://anongit.freedesktop.org/drm/drm · a24deb9d
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Things seemed to have quieten down, though no i915 pull (I even gave
        them an extra 12 hours in case they were late).
      
        The amdgpu floating point fix is probably the largest, but it just
        moves some code around to it doesn't do fpu stuff outside the fpu
        boundaries. Otherwise it's just a couple of vmwgfx fixes (maintainer
        change) and two etnaviv fixes.
      
        vmwgfx:
         - change maintainers
         - fix redundant assignment
         - fix parameter name
         - fix return value
      
        etnaviv:
         - memory leak fix when userspace passes a invalid softpin address
         - off-by-one crashing the kernel in the perfmon domain iteration when
           the GPU core has both 2D and 3D capabilities
      
        amdgpu:
         - DP fix
         - Floating point fix
         - Fix cursor stutter issue"
      
      * tag 'drm-fixes-2020-05-23' of git://anongit.freedesktop.org/drm/drm:
        drm/amd/display: Defer cursor lock until after VUPDATE
        drm/amd/display: Remove dml_common_def file
        drm/amd/display: DP training to set properly SCRAMBLING_DISABLE
        drm/edid: Add Oculus Rift S to non-desktop list
        drm/etnaviv: Fix a leak in submit_pin_objects()
        drm/etnaviv: fix perfmon domain interation
        drm/vmwgfx: Return true in function vmw_fence_obj_signaled()
        drm/vmwgfx: remove redundant assignment to variable ret
        drm/vmwgfx: Fix parameter name in vmw_bo_init
        drm/vmwgfx: update MAINTAINERS entry
      a24deb9d
    • Shay Drory's avatar
      net/mlx5: Fix error flow in case of function_setup failure · 4f7400d5
      Shay Drory authored
      Currently, if an error occurred during mlx5_function_setup(), we
      keep dev->state as DEVICE_STATE_UP.
      Fixing it by adding a goto label.
      
      Fixes: e161105e
      
       ("net/mlx5: Function setup/teardown procedures")
      Signed-off-by: default avatarShay Drory <shayd@mellanox.com>
      Reviewed-by: default avatarMoshe Shemesh <moshe@mellanox.com>
      Signed-off-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
      4f7400d5
    • Roi Dayan's avatar
      net/mlx5e: CT: Correctly get flow rule · d37bd5e8
      Roi Dayan authored
      The correct way is to us the flow_cls_offload_flow_rule() wrapper
      instead of f->rule directly.
      
      Fixes: 4c3844d9
      
       ("net/mlx5e: CT: Introduce connection tracking")
      Signed-off-by: default avatarRoi Dayan <roid@mellanox.com>
      Reviewed-by: default avatarOz Shlomo <ozsh@mellanox.com>
      Signed-off-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
      d37bd5e8
    • Moshe Shemesh's avatar
      net/mlx5e: Update netdev txq on completions during closure · 5e911e2c
      Moshe Shemesh authored
      On sq closure when we free its descriptors, we should also update netdev
      txq on completions which would not arrive. Otherwise if we reopen sqs
      and attach them back, for example on fw fatal recovery flow, we may get
      tx timeout.
      
      Fixes: 29429f33
      
       ("net/mlx5e: Timeout if SQ doesn't flush during close")
      Signed-off-by: default avatarMoshe Shemesh <moshe@mellanox.com>
      Reviewed-by: default avatarTariq Toukan <tariqt@mellanox.com>
      Signed-off-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
      5e911e2c