1. 11 Dec, 2020 16 commits
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · a06caa4a
      Linus Torvalds authored
      Merge misc fixes from Andrew Morton:
       "8 patches.
      
        Subsystems affected by this patch series: proc, selftests, kbuild, and
        mm (pagecache, kasan, hugetlb)"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        mm/hugetlb: clear compound_nr before freeing gigantic pages
        kasan: fix object remaining in offline per-cpu quarantine
        elfcore: fix building with clang
        initramfs: fix clang build failure
        kbuild: avoid static_assert for genksyms
        selftest/fpu: avoid clang warning
        proc: use untagged_addr() for pagemap_read addresses
        revert "mm/filemap: add static for function __add_to_page_cache_locked"
      a06caa4a
    • Gerald Schaefer's avatar
      mm/hugetlb: clear compound_nr before freeing gigantic pages · ba9c1201
      Gerald Schaefer authored
      Commit 1378a5ee ("mm: store compound_nr as well as compound_order")
      added compound_nr counter to first tail struct page, overlaying with
      page->mapping.  The overlay itself is fine, but while freeing gigantic
      hugepages via free_contig_range(), a "bad page" check will trigger for
      non-NULL page->mapping on the first tail page:
      
        BUG: Bad page state in process bash  pfn:380001
        page:00000000c35f0856 refcount:0 mapcount:0 mapping:00000000126b68aa index:0x0 pfn:0x380001
        aops:0x0
        flags: 0x3ffff00000000000()
        raw: 3ffff00000000000 0000000000000100 0000000000000122 0000000100000000
        raw: 0000000000000000 0000000000000000 ffffffff00000000 0000000000000000
        page dumped because: non-NULL mapping
        Modules linked in:
        CPU: 6 PID: 616 Comm: bash Not tainted 5.10.0-rc7-next-20201208 #1
        Hardware name: IBM 3906 M03 703 (LPAR)
        Call Trace:
          show_stack+0x6e/0xe8
          dump_stack+0x90/0xc8
          bad_page+0xd6/0x130
          free_pcppages_bulk+0x26a/0x800
          free_unref_page+0x6e/0x90
          free_contig_range+0x94/0xe8
          update_and_free_page+0x1c4/0x2c8
          free_pool_huge_page+0x11e/0x138
          set_max_huge_pages+0x228/0x300
          nr_hugepages_store_common+0xb8/0x130
          kernfs_fop_write+0xd2/0x218
          vfs_write+0xb0/0x2b8
          ksys_write+0xac/0xe0
          system_call+0xe6/0x288
        Disabling lock debugging due to kernel taint
      
      This is because only the compound_order is cleared in
      destroy_compound_gigantic_page(), and compound_nr is set to
      1U << order == 1 for order 0 in set_compound_order(page, 0).
      
      Fix this by explicitly clearing compound_nr for first tail page after
      calling set_compound_order(page, 0).
      
      Link: https://lkml.kernel.org/r/20201208182813.66391-2-gerald.schaefer@linux.ibm.com
      Fixes: 1378a5ee ("mm: store compound_nr as well as compound_order")
      Signed-off-by: default avatarGerald Schaefer <gerald.schaefer@linux.ibm.com>
      Reviewed-by: default avatarMatthew Wilcox (Oracle) <willy@infradead.org>
      Cc: Heiko Carstens <hca@linux.ibm.com>
      Cc: Mike Kravetz <mike.kravetz@oracle.com>
      Cc: Christian Borntraeger <borntraeger@de.ibm.com>
      Cc: <stable@vger.kernel.org>	[5.9+]
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ba9c1201
    • Kuan-Ying Lee's avatar
      kasan: fix object remaining in offline per-cpu quarantine · 6c82d45c
      Kuan-Ying Lee authored
      We hit this issue in our internal test.  When enabling generic kasan, a
      kfree()'d object is put into per-cpu quarantine first.  If the cpu goes
      offline, object still remains in the per-cpu quarantine.  If we call
      kmem_cache_destroy() now, slub will report "Objects remaining" error.
      
        =============================================================================
        BUG test_module_slab (Not tainted): Objects remaining in test_module_slab on __kmem_cache_shutdown()
        -----------------------------------------------------------------------------
      
        Disabling lock debugging due to kernel taint
        INFO: Slab 0x(____ptrval____) objects=34 used=1 fp=0x(____ptrval____) flags=0x2ffff00000010200
        CPU: 3 PID: 176 Comm: cat Tainted: G    B             5.10.0-rc1-00007-g4525c878-dirty #10
        Hardware name: linux,dummy-virt (DT)
        Call trace:
           dump_backtrace+0x0/0x2b0
           show_stack+0x18/0x68
           dump_stack+0xfc/0x168
           slab_err+0xac/0xd4
           __kmem_cache_shutdown+0x1e4/0x3c8
           kmem_cache_destroy+0x68/0x130
           test_version_show+0x84/0xf0
           module_attr_show+0x40/0x60
           sysfs_kf_seq_show+0x128/0x1c0
           kernfs_seq_show+0xa0/0xb8
           seq_read+0x1f0/0x7e8
           kernfs_fop_read+0x70/0x338
           vfs_read+0xe4/0x250
           ksys_read+0xc8/0x180
           __arm64_sys_read+0x44/0x58
           el0_svc_common.constprop.0+0xac/0x228
           do_el0_svc+0x38/0xa0
           el0_sync_handler+0x170/0x178
           el0_sync+0x174/0x180
        INFO: Object 0x(____ptrval____) @offset=15848
        INFO: Allocated in test_version_show+0x98/0xf0 age=8188 cpu=6 pid=172
           stack_trace_save+0x9c/0xd0
           set_track+0x64/0xf0
           alloc_debug_processing+0x104/0x1a0
           ___slab_alloc+0x628/0x648
           __slab_alloc.isra.0+0x2c/0x58
           kmem_cache_alloc+0x560/0x588
           test_version_show+0x98/0xf0
           module_attr_show+0x40/0x60
           sysfs_kf_seq_show+0x128/0x1c0
           kernfs_seq_show+0xa0/0xb8
           seq_read+0x1f0/0x7e8
           kernfs_fop_read+0x70/0x338
           vfs_read+0xe4/0x250
           ksys_read+0xc8/0x180
           __arm64_sys_read+0x44/0x58
           el0_svc_common.constprop.0+0xac/0x228
        kmem_cache_destroy test_module_slab: Slab cache still has objects
      
      Register a cpu hotplug function to remove all objects in the offline
      per-cpu quarantine when cpu is going offline.  Set a per-cpu variable to
      indicate this cpu is offline.
      
      [qiang.zhang@windriver.com: fix slab double free when cpu-hotplug]
        Link: https://lkml.kernel.org/r/20201204102206.20237-1-qiang.zhang@windriver.com
      
      Link: https://lkml.kernel.org/r/1606895585-17382-2-git-send-email-Kuan-Ying.Lee@mediatek.comSigned-off-by: default avatarKuan-Ying Lee <Kuan-Ying.Lee@mediatek.com>
      Signed-off-by: default avatarZqiang <qiang.zhang@windriver.com>
      Suggested-by: default avatarDmitry Vyukov <dvyukov@google.com>
      Reported-by: default avatarGuangye Yang <guangye.yang@mediatek.com>
      Reviewed-by: default avatarDmitry Vyukov <dvyukov@google.com>
      Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
      Cc: Alexander Potapenko <glider@google.com>
      Cc: Matthias Brugger <matthias.bgg@gmail.com>
      Cc: Nicholas Tang <nicholas.tang@mediatek.com>
      Cc: Miles Chen <miles.chen@mediatek.com>
      Cc: Qian Cai <qcai@redhat.com>
      Cc: Stephen Rothwell <sfr@canb.auug.org.au>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      6c82d45c
    • Arnd Bergmann's avatar
      elfcore: fix building with clang · 6e7b64b9
      Arnd Bergmann authored
      kernel/elfcore.c only contains weak symbols, which triggers a bug with
      clang in combination with recordmcount:
      
        Cannot find symbol for section 2: .text.
        kernel/elfcore.o: failed
      
      Move the empty stubs into linux/elfcore.h as inline functions.  As only
      two architectures use these, just use the architecture specific Kconfig
      symbols to key off the declaration.
      
      Link: https://lkml.kernel.org/r/20201204165742.3815221-2-arnd@kernel.orgSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Cc: Nathan Chancellor <natechancellor@gmail.com>
      Cc: Nick Desaulniers <ndesaulniers@google.com>
      Cc: Barret Rhoden <brho@google.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      6e7b64b9
    • Arnd Bergmann's avatar
      initramfs: fix clang build failure · 55d5b7dd
      Arnd Bergmann authored
      There is only one function in init/initramfs.c that is in the .text
      section, and it is marked __weak.  When building with clang-12 and the
      integrated assembler, this leads to a bug with recordmcount:
      
        ./scripts/recordmcount  "init/initramfs.o"
        Cannot find symbol for section 2: .text.
        init/initramfs.o: failed
      
      I'm not quite sure what exactly goes wrong, but I notice that this
      function is only ever called from an __init function, and normally
      inlined.  Marking it __init as well is clearly correct and it leads to
      recordmcount no longer complaining.
      
      Link: https://lkml.kernel.org/r/20201204165742.3815221-1-arnd@kernel.orgSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Cc: Nathan Chancellor <natechancellor@gmail.com>
      Cc: Nick Desaulniers <ndesaulniers@google.com>
      Cc: Barret Rhoden <brho@google.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      55d5b7dd
    • Arnd Bergmann's avatar
      kbuild: avoid static_assert for genksyms · 14dc3983
      Arnd Bergmann authored
      genksyms does not know or care about the _Static_assert() built-in, and
      sometimes falls back to ignoring the later symbols, which causes
      undefined behavior such as
      
        WARNING: modpost: EXPORT symbol "ethtool_set_ethtool_phy_ops" [vmlinux] version generation failed, symbol will not be versioned.
        ld: net/ethtool/common.o: relocation R_AARCH64_ABS32 against `__crc_ethtool_set_ethtool_phy_ops' can not be used when making a shared object
        net/ethtool/common.o:(_ftrace_annotated_branch+0x0): dangerous relocation: unsupported relocation
      
      Redefine static_assert for genksyms to avoid that.
      
      Link: https://lkml.kernel.org/r/20201203230955.1482058-1-arnd@kernel.orgSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Suggested-by: default avatarArd Biesheuvel <ardb@kernel.org>
      Cc: Masahiro Yamada <masahiroy@kernel.org>
      Cc: Michal Marek <michal.lkml@markovi.net>
      Cc: Kees Cook <keescook@chromium.org>
      Cc: Rikard Falkeborn <rikard.falkeborn@gmail.com>
      Cc: Marco Elver <elver@google.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      14dc3983
    • Arnd Bergmann's avatar
      selftest/fpu: avoid clang warning · 84edc2ef
      Arnd Bergmann authored
      With extra warnings enabled, clang complains about the redundant
      -mhard-float argument:
      
        clang: error: argument unused during compilation: '-mhard-float' [-Werror,-Wunused-command-line-argument]
      
      Move this into the gcc-only part of the Makefile.
      
      Link: https://lkml.kernel.org/r/20201203223652.1320700-1-arnd@kernel.org
      Fixes: 4185b3b9 ("selftests/fpu: Add an FPU selftest")
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Cc: Nathan Chancellor <natechancellor@gmail.com>
      Cc: Nick Desaulniers <ndesaulniers@google.com>
      Cc: Petteri Aimonen <jpa@git.mail.kapsi.fi>
      Cc: Borislav Petkov <bp@suse.de>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      84edc2ef
    • Miles Chen's avatar
      proc: use untagged_addr() for pagemap_read addresses · 40d6366e
      Miles Chen authored
      When we try to visit the pagemap of a tagged userspace pointer, we find
      that the start_vaddr is not correct because of the tag.
      To fix it, we should untag the userspace pointers in pagemap_read().
      
      I tested with 5.10-rc4 and the issue remains.
      
      Explanation from Catalin in [1]:
      
       "Arguably, that's a user-space bug since tagged file offsets were never
        supported. In this case it's not even a tag at bit 56 as per the arm64
        tagged address ABI but rather down to bit 47. You could say that the
        problem is caused by the C library (malloc()) or whoever created the
        tagged vaddr and passed it to this function. It's not a kernel
        regression as we've never supported it.
      
        Now, pagemap is a special case where the offset is usually not
        generated as a classic file offset but rather derived by shifting a
        user virtual address. I guess we can make a concession for pagemap
        (only) and allow such offset with the tag at bit (56 - PAGE_SHIFT + 3)"
      
      My test code is based on [2]:
      
      A userspace pointer which has been tagged by 0xb4: 0xb400007662f541c8
      
      userspace program:
      
        uint64 OsLayer::VirtualToPhysical(void *vaddr) {
      	uint64 frame, paddr, pfnmask, pagemask;
      	int pagesize = sysconf(_SC_PAGESIZE);
      	off64_t off = ((uintptr_t)vaddr) / pagesize * 8; // off = 0xb400007662f541c8 / pagesize * 8 = 0x5a00003b317aa0
      	int fd = open(kPagemapPath, O_RDONLY);
      	...
      
      	if (lseek64(fd, off, SEEK_SET) != off || read(fd, &frame, 8) != 8) {
      		int err = errno;
      		string errtxt = ErrorString(err);
      		if (fd >= 0)
      			close(fd);
      		return 0;
      	}
        ...
        }
      
      kernel fs/proc/task_mmu.c:
      
        static ssize_t pagemap_read(struct file *file, char __user *buf,
      		size_t count, loff_t *ppos)
        {
      	...
      	src = *ppos;
      	svpfn = src / PM_ENTRY_BYTES; // svpfn == 0xb400007662f54
      	start_vaddr = svpfn << PAGE_SHIFT; // start_vaddr == 0xb400007662f54000
      	end_vaddr = mm->task_size;
      
      	/* watch out for wraparound */
      	// svpfn == 0xb400007662f54
      	// (mm->task_size >> PAGE) == 0x8000000
      	if (svpfn > mm->task_size >> PAGE_SHIFT) // the condition is true because of the tag 0xb4
      		start_vaddr = end_vaddr;
      
      	ret = 0;
      	while (count && (start_vaddr < end_vaddr)) { // we cannot visit correct entry because start_vaddr is set to end_vaddr
      		int len;
      		unsigned long end;
      		...
      	}
      	...
        }
      
      [1] https://lore.kernel.org/patchwork/patch/1343258/
      [2] https://github.com/stressapptest/stressapptest/blob/master/src/os.cc#L158
      
      Link: https://lkml.kernel.org/r/20201204024347.8295-1-miles.chen@mediatek.comSigned-off-by: default avatarMiles Chen <miles.chen@mediatek.com>
      Reviewed-by: default avatarVincenzo Frascino <vincenzo.frascino@arm.com>
      Reviewed-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
      Cc: Alexey Dobriyan <adobriyan@gmail.com>
      Cc: Andrey Konovalov <andreyknvl@google.com>
      Cc: Alexander Potapenko <glider@google.com>
      Cc: Vincenzo Frascino <vincenzo.frascino@arm.com>
      Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: Dmitry Vyukov <dvyukov@google.com>
      Cc: Marco Elver <elver@google.com>
      Cc: Will Deacon <will@kernel.org>
      Cc: Eric W. Biederman <ebiederm@xmission.com>
      Cc: Song Bao Hua (Barry Song) <song.bao.hua@hisilicon.com>
      Cc: <stable@vger.kernel.org>	[5.4-]
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      40d6366e
    • Andrew Morton's avatar
      revert "mm/filemap: add static for function __add_to_page_cache_locked" · 16c0cc0c
      Andrew Morton authored
      Revert commit 3351b16a ("mm/filemap: add static for function
      __add_to_page_cache_locked") due to incompatibility with
      ALLOW_ERROR_INJECTION which result in build errors.
      
      Link: https://lkml.kernel.org/r/CAADnVQJ6tmzBXvtroBuEH6QA0H+q7yaSKxrVvVxhqr3KBZdEXg@mail.gmail.comTested-by: default avatarJustin Forbes <jmforbes@linuxtx.org>
      Tested-by: default avatarGreg Thelen <gthelen@google.com>
      Acked-by: default avatarAlexei Starovoitov <ast@kernel.org>
      Cc: Michal Kubecek <mkubecek@suse.cz>
      Cc: Alex Shi <alex.shi@linux.alibaba.com>
      Cc: Souptick Joarder <jrdr.linux@gmail.com>
      Cc: Daniel Borkmann <daniel@iogearbox.net>
      Cc: Josef Bacik <josef@toxicpanda.com>
      Cc: Tony Luck <tony.luck@gmail.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      16c0cc0c
    • Linus Torvalds's avatar
      Merge tag 'pinctrl-v5.10-3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · 94801e5c
      Linus Torvalds authored
      Pull pin control fixes from Linus Walleij:
       "Here is a late set of pin control fixes for v5.10, most concern some
        minor and major issues found in the Intel drivers. Some are so hairy
        that I have no idea what is going on there, but luckily the maintainer
        knows what's up.
      
        We also have an interesting fix for AMD, which makes AMD-based laptops
        more stable IIUC.
      
        Summary:
      
         - Fix up some SPI group and a register offset on Intel Jasperlake
      
         - Set default bias on Intel Merrifield
      
         - Preserve debouncing on Intel Baytrail
      
         - Stop .set_type() irqchip callback in the AMD driver from fiddling
           with the debounce filter
      
         - Fix access to GPIO banks that are pass-thru on the Aspeed
      
         - Fix a fix for the Intel pin control driver to disable Rx/Tx when
           requesting a UART line as GPIO"
      
      * tag 'pinctrl-v5.10-3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
        pinctrl: intel: Actually disable Tx and Rx buffers on GPIO request
        pinctrl: aspeed: Fix GPIO requests on pass-through banks
        pinctrl: amd: remove debounce filter setting in IRQ type setting
        pinctrl: baytrail: Avoid clearing debounce value when turning it off
        pinctrl: merrifield: Set default bias in case no particular value given
        pinctrl: jasperlake: Fix HOSTSW_OWN offset
        pinctrl: jasperlake: Unhide SPI group of pins
      94801e5c
    • Linus Torvalds's avatar
      Merge tag 'v5.10-3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio · 6d47cdec
      Linus Torvalds authored
      Pull GPIO fixes from Linus Walleij:
       "These are hopefully the last GPIO fixes for this cycle.
      
        All are driver fixes except a small resource leak for pin ranges in
        the gpiolib. Two are PM related, which is nice because when developers
        start to find PM bugs it is usually because they have smoked out the
        bugs of more severe nature.
      
        Summary:
      
         - Fix runtime PM balancing on the errorpath of the Arizona driver
      
         - Fix a suspend NULL pointer reference in the dwapb driver
      
         - Balance free:ing in gpiochip_generic_free()
      
         - Fix runtime PM balancing on the errorpath of the zynq driver
      
         - Fix irqdomain use-after-free in the mvebu driver
      
         - Break an eternal loop in the spreadtrum EIC driver"
      
      * tag 'v5.10-3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio:
        gpio: eic-sprd: break loop when getting NULL device resource
        gpio: mvebu: fix potential user-after-free on probe
        gpio: zynq: fix reference leak in zynq_gpio functions
        gpiolib: Don't free if pin ranges are not defined
        gpio: dwapb: fix NULL pointer dereference at dwapb_gpio_suspend()
        gpio: arizona: disable pm_runtime in case of failure
      6d47cdec
    • Linus Torvalds's avatar
      Merge tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · c1cea112
      Linus Torvalds authored
      Pull clk fixes from Stephen Boyd:
       "Two small clk driver build fixes
      
         - Remove __packed from a Renesas struct to improve portability
      
         - Fix a linking problem with i.MX when config options don't agree"
      
      * tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
        clk: renesas: r9a06g032: Drop __packed for portability
        clk: imx: scu: fix MXC_CLK_SCU module build break
      c1cea112
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-2020-12-11' of git://anongit.freedesktop.org/drm/drm · 059fe829
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Last week of fixes, just amdgpu and i915 collections. We had a i915
        regression reported by HJ Lu reported this morning, and this contains
        a fix for that he has tested.
      
        There are a fair few other fixes, but they are spread across the two
        drivers, and all fairly self contained.
      
        amdgpu:
         - Fan fix for CI asics
         - Fix a warning in possible_crtcs
         - Build fix for when debugfs is disabled
         - Display overflow fix
         - Display watermark fixes for Renoir
         - SDMA 5.2 fix
         - Stolen vga memory regression fix
         - Power profile fixes
         - Fix a regression from removal of GEM and PRIME callbacks
      
        amdkfd:
         - Fix a memory leak in dmabuf import
      
        i915:
         - rc7 regression fix for modesetting
         - vdsc/dp slice fixes
         - gen9 mocs entries fix
         - preemption timeout fix
         - unsigned compare against 0 fix
         - selftest fix
         - submission error propogatig fix
         - request flow suspend fix"
      
      * tag 'drm-fixes-2020-12-11' of git://anongit.freedesktop.org/drm/drm:
        drm/i915/display: Go softly softly on initial modeset failure
        drm/amd/pm: typo fix (CUSTOM -> COMPUTE)
        drm/amdgpu: Initialise drm_gem_object_funcs for imported BOs
        drm/amdgpu: fix size calculation with stolen vga memory
        drm/amd/pm: update smu10.h WORKLOAD_PPLIB setting for raven
        drm/amdkfd: Fix leak in dmabuf import
        drm/amdgpu: fix sdma instance fw version and feature version init
        drm/amd/display: Add wm table for Renoir
        drm/amd/display: Prevent bandwidth overflow
        drm/amdgpu: fix debugfs creation/removal, again
        drm/amdgpu/disply: set num_crtc earlier
        drm/amdgpu/powerplay: parse fan table for CI asics
        drm/i915/gt: Declare gen9 has 64 mocs entries!
        drm/i915/display/dp: Compute the correct slice count for VDSC on DP
        drm/i915: fix size_t greater or equal to zero comparison
        drm/i915/gt: Cancel the preemption timeout on responding to it
        drm/i915/gt: Ignore repeated attempts to suspend request flow across reset
        drm/i915/gem: Propagate error from cancelled submit due to context closure
        drm/i915/gem: Check the correct variable in selftest
      059fe829
    • Linus Torvalds's avatar
      Merge tag 'ktest-v5.10-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest · 33dc9614
      Linus Torvalds authored
      Pull ktest fix from Steven Rostedt:
       "Fix issues with grub2bls in ktest.pl
      
        ktest.pl did not know about grub2bls that was introduced in Fedora 30,
        and now it does"
      
      * tag 'ktest-v5.10-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest:
        ktest.pl: Fix incorrect reboot for grub2bls
      33dc9614
    • Linus Torvalds's avatar
      Merge tag 'powerpc-5.10-6' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 47003b99
      Linus Torvalds authored
      Pull powerpc fix from Michael Ellerman:
       "One commit to implement copy_from_kernel_nofault_allowed(), otherwise
        copy_from_kernel_nofault() can trigger warnings when accessing bad
        addresses in some configurations.
      
        Thanks to Christophe Leroy and Qian Cai"
      
      * tag 'powerpc-5.10-6' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/mm: Fix KUAP warning by providing copy_from_kernel_nofault_allowed()
      47003b99
    • Linus Torvalds's avatar
      Merge tag 'fixes-v5.10a' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · 197c61cb
      Linus Torvalds authored
      Pull namespaced fscaps fix from James Morris:
       "Fix namespaced fscaps when !CONFIG_SECURITY (Serge Hallyn)"
      
      * tag 'fixes-v5.10a' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
        [SECURITY] fix namespaced fscaps when !CONFIG_SECURITY
      197c61cb
  2. 10 Dec, 2020 24 commits
    • Chris Wilson's avatar
      drm/i915/display: Go softly softly on initial modeset failure · b1f195fc
      Chris Wilson authored
      Reduce the module/device probe error into a mere debug to hide issues
      where the initial modeset is failing (after lies told by hw probe) and
      the system hangs with a livelock in cleaning up the failed commit.
      Reported-by: default avatarH.J. Lu <hjl.tools@gmail.com>
      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=210619
      Fixes: b3bf99da ("drm/i915/display: Defer initial modeset until after GGTT is initialised")
      Fixes: ccc9e67a ("drm/i915/display: Defer initial modeset until after GGTT is initialised")
      Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Cc: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
      Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
      Cc: H.J. Lu <hjl.tools@gmail.com>
      Cc: Dave Airlie <airlied@redhat.com>
      Reviewed-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20201210230741.17140-1-chris@chris-wilson.co.uk
      b1f195fc
    • Dave Airlie's avatar
      Merge tag 'drm-intel-fixes-2020-12-09' of... · de2df164
      Dave Airlie authored
      Merge tag 'drm-intel-fixes-2020-12-09' of git://anongit.freedesktop.org/drm/drm-intel into drm-fixes
      
      Fixes for VDSC/DP, selftests, shmem_utils, preemption, submission, and gt reset:
      
      - Check the correct variable in selftest (Dan)
      - Propagate error from canceled submit due to context closure (Chris)
      - Ignore repeated attempts to suspend request flow across reset (Chris)
      - Cancel the preemption timeout on responding to it (Chris)
      - Fix unsigned compared against 0 (Colin)
      - Compute the correct slice count for VDSC on DP (Manasi)
      - Declar gen9 has 64 mocs entries (Chris)
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Rodrigo Vivi <rodrigo.vivi@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20201209235010.GA10554@intel.com
      de2df164
    • Dave Airlie's avatar
      Merge tag 'amd-drm-fixes-5.10-2020-12-09' of... · a81ac299
      Dave Airlie authored
      Merge tag 'amd-drm-fixes-5.10-2020-12-09' of git://people.freedesktop.org/~agd5f/linux into drm-fixes
      
      amd-drm-fixes-5.10-2020-12-09:
      
      amdgpu:
      - Fan fix for CI asics
      - Fix a warning in possible_crtcs
      - Build fix for when debugfs is disabled
      - Display overflow fix
      - Display watermark fixes for Renoir
      - SDMA 5.2 fix
      - Stolen vga memory regression fix
      - Power profile fixes
      - Fix a regression from removal of GEM and PRIME callbacks
      
      amdkfd:
      - Fix a memory leak in dmabuf import
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Alex Deucher <alexdeucher@gmail.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20201210034848.18108-1-alexander.deucher@amd.com
      a81ac299
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-5.10-3' of git://git.linux-nfs.org/projects/anna/linux-nfs · 6840a3dc
      Linus Torvalds authored
      Pull NFS client fixes from Anna Schumaker:
       "Here are a handful more bugfixes for 5.10.
      
        Unfortunately, we found some problems with the new READ_PLUS operation
        that aren't easy to fix. We've decided to disable this codepath
        through a Kconfig option for now, but a series of patches going into
        5.11 will clean up the code and fix the issues at the same time. This
        seemed like the best way to go about it.
      
        Summary:
      
         - Fix array overflow when flexfiles mirroring is enabled
      
         - Fix rpcrdma_inline_fixup() crash with new LISTXATTRS
      
         - Fix 5 second delay when doing inter-server copy
      
         - Disable READ_PLUS by default"
      
      * tag 'nfs-for-5.10-3' of git://git.linux-nfs.org/projects/anna/linux-nfs:
        NFS: Disable READ_PLUS by default
        NFSv4.2: Fix 5 seconds delay when doing inter server copy
        NFS: Fix rpcrdma_inline_fixup() crash with new LISTXATTRS operation
        pNFS/flexfiles: Fix array overflow when flexfiles mirroring is enabled
      6840a3dc
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · 4d31058b
      Linus Torvalds authored
      Pull networking fixes from David Miller:
      
       1) IPsec compat fixes, from Dmitry Safonov.
      
       2) Fix memory leak in xfrm_user_policy(). Fix from Yu Kuai.
      
       3) Fix polling in xsk sockets by using sk_poll_wait() instead of
          datagram_poll() which keys off of sk_wmem_alloc and such which xsk
          sockets do not update. From Xuan Zhuo.
      
       4) Missing init of rekey_data in cfgh80211, from Sara Sharon.
      
       5) Fix destroy of timer before init, from Davide Caratti.
      
       6) Missing CRYPTO_CRC32 selects in ethernet driver Kconfigs, from Arnd
          Bergmann.
      
       7) Missing error return in rtm_to_fib_config() switch case, from Zhang
          Changzhong.
      
       8) Fix some src/dest address handling in vrf and add a testcase. From
          Stephen Suryaputra.
      
       9) Fix multicast handling in Seville switches driven by mscc-ocelot
          driver. From Vladimir Oltean.
      
      10) Fix proto value passed to skb delivery demux in udp, from Xin Long.
      
      11) HW pkt counters not reported correctly in enetc driver, from Claudiu
          Manoil.
      
      12) Fix deadlock in bridge, from Joseph Huang.
      
      13) Missing of_node_pur() in dpaa2 driver, fromn Christophe JAILLET.
      
      14) Fix pid fetching in bpftool when there are a lot of results, from
          Andrii Nakryiko.
      
      15) Fix long timeouts in nft_dynset, from Pablo Neira Ayuso.
      
      16) Various stymmac fixes, from Fugang Duan.
      
      17) Fix null deref in tipc, from Cengiz Can.
      
      18) When mss is biog, coose more resonable rcvq_space in tcp, fromn Eric
          Dumazet.
      
      19) Revert a geneve change that likely isnt necessary, from Jakub
          Kicinski.
      
      20) Avoid premature rx buffer reuse in various Intel driversm from Björn
          Töpel.
      
      21) retain EcT bits during TIS reflection in tcp, from Wei Wang.
      
      22) Fix Tso deferral wrt. cwnd limiting in tcp, from Neal Cardwell.
      
      23) MPLS_OPT_LSE_LABEL attribute is 342 ot 8 bits, from Guillaume Nault
      
      24) Fix propagation of 32-bit signed bounds in bpf verifier and add test
          cases, from Alexei Starovoitov.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (81 commits)
        selftests: fix poll error in udpgro.sh
        selftests/bpf: Fix "dubious pointer arithmetic" test
        selftests/bpf: Fix array access with signed variable test
        selftests/bpf: Add test for signed 32-bit bound check bug
        bpf: Fix propagation of 32-bit signed bounds from 64-bit bounds.
        MAINTAINERS: Add entry for Marvell Prestera Ethernet Switch driver
        net: sched: Fix dump of MPLS_OPT_LSE_LABEL attribute in cls_flower
        net/mlx4_en: Handle TX error CQE
        net/mlx4_en: Avoid scheduling restart task if it is already running
        tcp: fix cwnd-limited bug for TSO deferral where we send nothing
        net: flow_offload: Fix memory leak for indirect flow block
        tcp: Retain ECT bits for tos reflection
        ethtool: fix stack overflow in ethnl_parse_bitset()
        e1000e: fix S0ix flow to allow S0i3.2 subset entry
        ice: avoid premature Rx buffer reuse
        ixgbe: avoid premature Rx buffer reuse
        i40e: avoid premature Rx buffer reuse
        igb: avoid transmit queue timeout in xdp path
        igb: use xdp_do_flush
        igb: skb add metasize for xdp
        ...
      4d31058b
    • David S. Miller's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf · d9838b1d
      David S. Miller authored
      Alexei Starovoitov says:
      
      ====================
      pull-request: bpf 2020-12-10
      
      The following pull-request contains BPF updates for your *net* tree.
      
      We've added 21 non-merge commits during the last 12 day(s) which contain
      a total of 21 files changed, 163 insertions(+), 88 deletions(-).
      
      The main changes are:
      
      1) Fix propagation of 32-bit signed bounds from 64-bit bounds, from Alexei.
      
      2) Fix ring_buffer__poll() return value, from Andrii.
      
      3) Fix race in lwt_bpf, from Cong.
      
      4) Fix test_offload, from Toke.
      
      5) Various xsk fixes.
      
      Please consider pulling these changes from:
      
        git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf.git
      
      Thanks a lot!
      
      Also thanks to reporters, reviewers and testers of commits in this pull-request:
      
      Cong Wang, Hulk Robot, Jakub Kicinski, Jean-Philippe Brucker, John
      Fastabend, Magnus Karlsson, Maxim Mikityanskiy, Yonghong Song
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d9838b1d
    • Anna Schumaker's avatar
      NFS: Disable READ_PLUS by default · 21e31401
      Anna Schumaker authored
      We've been seeing failures with xfstests generic/091 and generic/263
      when using READ_PLUS. I've made some progress on these issues, and the
      tests fail later on but still don't pass. Let's disable READ_PLUS by
      default until we can work out what is going on.
      Signed-off-by: default avatarAnna Schumaker <Anna.Schumaker@Netapp.com>
      21e31401
    • Dai Ngo's avatar
      NFSv4.2: Fix 5 seconds delay when doing inter server copy · fe8eb820
      Dai Ngo authored
      Since commit b4868b44 ("NFSv4: Wait for stateid updates after
      CLOSE/OPEN_DOWNGRADE"), every inter server copy operation suffers 5
      seconds delay regardless of the size of the copy. The delay is from
      nfs_set_open_stateid_locked when the check by nfs_stateid_is_sequential
      fails because the seqid in both nfs4_state and nfs4_stateid are 0.
      
      Fix __nfs42_ssc_open to delay setting of NFS_OPEN_STATE in nfs4_state,
      until after the call to update_open_stateid, to indicate this is the 1st
      open. This fix is part of a 2 patches, the other patch is the fix in the
      source server to return the stateid for COPY_NOTIFY request with seqid 1
      instead of 0.
      
      Fixes: ce0887ac ("NFSD add nfs4 inter ssc to nfsd4_copy")
      Signed-off-by: default avatarDai Ngo <dai.ngo@oracle.com>
      Signed-off-by: default avatarAnna Schumaker <Anna.Schumaker@Netapp.com>
      fe8eb820
    • Chuck Lever's avatar
      NFS: Fix rpcrdma_inline_fixup() crash with new LISTXATTRS operation · 1c87b851
      Chuck Lever authored
      By switching to an XFS-backed export, I am able to reproduce the
      ibcomp worker crash on my client with xfstests generic/013.
      
      For the failing LISTXATTRS operation, xdr_inline_pages() is called
      with page_len=12 and buflen=128.
      
      - When ->send_request() is called, rpcrdma_marshal_req() does not
        set up a Reply chunk because buflen is smaller than the inline
        threshold. Thus rpcrdma_convert_iovs() does not get invoked at
        all and the transport's XDRBUF_SPARSE_PAGES logic is not invoked
        on the receive buffer.
      
      - During reply processing, rpcrdma_inline_fixup() tries to copy
        received data into rq_rcv_buf->pages because page_len is positive.
        But there are no receive pages because rpcrdma_marshal_req() never
        allocated them.
      
      The result is that the ibcomp worker faults and dies. Sometimes that
      causes a visible crash, and sometimes it results in a transport hang
      without other symptoms.
      
      RPC/RDMA's XDRBUF_SPARSE_PAGES support is not entirely correct, and
      should eventually be fixed or replaced. However, my preference is
      that upper-layer operations should explicitly allocate their receive
      buffers (using GFP_KERNEL) when possible, rather than relying on
      XDRBUF_SPARSE_PAGES.
      Reported-by: default avatarOlga kornievskaia <kolga@netapp.com>
      Suggested-by: default avatarOlga kornievskaia <kolga@netapp.com>
      Fixes: c10a7514 ("NFSv4.2: add the extended attribute proc functions.")
      Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
      Reviewed-by: default avatarOlga kornievskaia <kolga@netapp.com>
      Reviewed-by: default avatarFrank van der Linden <fllinden@amazon.com>
      Tested-by: default avatarOlga kornievskaia <kolga@netapp.com>
      Signed-off-by: default avatarAnna Schumaker <Anna.Schumaker@Netapp.com>
      1c87b851
    • Paolo Abeni's avatar
      selftests: fix poll error in udpgro.sh · 38bf8cd8
      Paolo Abeni authored
      The test program udpgso_bench_rx always invokes the poll()
      syscall with a timeout of 10ms. If a larger timeout is specified
      via the command line, udpgso_bench_rx is supposed to do multiple
      poll() calls till the timeout is expired or an event is received.
      
      Currently the poll() loop errors out after the first invocation with
      no events, and may causes self-tests failure alike:
      
      failed
       GRO with custom segment size            ./udpgso_bench_rx: poll: 0x0 expected 0x1
      
      This change addresses the issue allowing the poll() loop to consume
      all the configured timeout.
      
      Fixes: ada641ff ("selftests: fixes for UDP GRO")
      Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      38bf8cd8
    • Jean-Philippe Brucker's avatar
      selftests/bpf: Fix "dubious pointer arithmetic" test · 3615bdf6
      Jean-Philippe Brucker authored
      The verifier trace changed following a bugfix. After checking the 64-bit
      sign, only the upper bit mask is known, not bit 31. Update the test
      accordingly.
      Signed-off-by: default avatarJean-Philippe Brucker <jean-philippe@linaro.org>
      Acked-by: default avatarJohn Fastabend <john.fastabend@gmail.com>
      Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
      3615bdf6
    • Jean-Philippe Brucker's avatar
      selftests/bpf: Fix array access with signed variable test · 77ce220c
      Jean-Philippe Brucker authored
      The test fails because of a recent fix to the verifier, even though this
      program is valid. In details what happens is:
      
          7: (61) r1 = *(u32 *)(r0 +0)
      
      Load a 32-bit value, with signed bounds [S32_MIN, S32_MAX]. The bounds
      of the 64-bit value are [0, U32_MAX]...
      
          8: (65) if r1 s> 0xffffffff goto pc+1
      
      ... therefore this is always true (the operand is sign-extended).
      
          10: (b4) w2 = 11
          11: (6d) if r2 s> r1 goto pc+1
      
      When true, the 64-bit bounds become [0, 10]. The 32-bit bounds are still
      [S32_MIN, 10].
      
          13: (64) w1 <<= 2
      
      Because this is a 32-bit operation, the verifier propagates the new
      32-bit bounds to the 64-bit ones, and the knowledge gained from insn 11
      is lost.
      
          14: (0f) r0 += r1
          15: (7a) *(u64 *)(r0 +0) = 4
      
      Then the verifier considers r0 unbounded here, rejecting the test. To
      make the test work, change insn 8 to check the sign of the 32-bit value.
      Signed-off-by: default avatarJean-Philippe Brucker <jean-philippe@linaro.org>
      Acked-by: default avatarJohn Fastabend <john.fastabend@gmail.com>
      Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
      77ce220c
    • Jean-Philippe Brucker's avatar
      selftests/bpf: Add test for signed 32-bit bound check bug · 511a76bc
      Jean-Philippe Brucker authored
      After a 32-bit load followed by a branch, the verifier would reduce the
      maximum bound of the register to 0x7fffffff, allowing a user to bypass
      bound checks. Ensure such a program is rejected.
      
      In the second test, the 64-bit compare should not sufficient to
      determine whether the signed 32-bit lower bound is 0, so the verifier
      should reject the second branch.
      Signed-off-by: default avatarJean-Philippe Brucker <jean-philippe@linaro.org>
      Acked-by: default avatarJohn Fastabend <john.fastabend@gmail.com>
      Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
      511a76bc
    • Alexei Starovoitov's avatar
      bpf: Fix propagation of 32-bit signed bounds from 64-bit bounds. · b0270958
      Alexei Starovoitov authored
      The 64-bit signed bounds should not affect 32-bit signed bounds unless the
      verifier knows that upper 32-bits are either all 1s or all 0s. For example the
      register with smin_value==1 doesn't mean that s32_min_value is also equal to 1,
      since smax_value could be larger than 32-bit subregister can hold.
      The verifier refines the smax/s32_max return value from certain helpers in
      do_refine_retval_range(). Teach the verifier to recognize that smin/s32_min
      value is also bounded. When both smin and smax bounds fit into 32-bit
      subregister the verifier can propagate those bounds.
      
      Fixes: 3f50f132 ("bpf: Verifier, do explicit ALU32 bounds tracking")
      Reported-by: default avatarJean-Philippe Brucker <jean-philippe@linaro.org>
      Acked-by: default avatarJohn Fastabend <john.fastabend@gmail.com>
      Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
      b0270958
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma · 9fca90cf
      Linus Torvalds authored
      Pull rdma fixes from Jason Gunthorpe:
       "Two user triggerable crashers and a some EFA related regressions:
      
         - Syzkaller found a bug in CM
      
         - Restore access to the GID table and fix modify_qp for EFA
      
         - Crasher in qedr"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma:
        RDMA/cm: Fix an attempt to use non-valid pointer when cleaning timewait
        RDMA/core: Fix empty gid table for non IB/RoCE devices
        RDMA/efa: Use the correct current and new states in modify QP
        RDMA/qedr: iWARP invalid(zero) doorbell address fix
      9fca90cf
    • Linus Torvalds's avatar
      Merge tag 'media/v5.10-4' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · 40201575
      Linus Torvalds authored
      Pull media fixes from Mauro Carvalho Chehab:
       "A couple of fixes:
      
         - videobuf2: fix a DMABUF bug, preventing it to properly handle cache
           sync/flush
      
         - vidtv: an usage after free and a few sparse/smatch warning fixes
      
         - pulse8-cec: a duplicate free and a bug related to new firmware
           usage
      
         - mtk-cir: fix a regression on a clock setting"
      
      * tag 'media/v5.10-4' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
        media: vidtv: fix some warnings
        media: vidtv: fix kernel-doc markups
        media: [next] media: vidtv: fix a read from an object after it has been freed
        media: vb2: set cache sync hints when init buffers
        media: pulse8-cec: add support for FW v10 and up
        media: pulse8-cec: fix duplicate free at disconnect or probe error
        media: mtk-cir: fix calculation of chk period
      40201575
    • Mickey Rachamim's avatar
      MAINTAINERS: Add entry for Marvell Prestera Ethernet Switch driver · 177745be
      Mickey Rachamim authored
      Add maintainers info for new Marvell Prestera Ethernet switch driver.
      Signed-off-by: default avatarMickey Rachamim <mickeyr@marvell.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      177745be
    • Guillaume Nault's avatar
      net: sched: Fix dump of MPLS_OPT_LSE_LABEL attribute in cls_flower · 7fdd375e
      Guillaume Nault authored
      TCA_FLOWER_KEY_MPLS_OPT_LSE_LABEL is a u32 attribute (MPLS label is
      20 bits long).
      
      Fixes the following bug:
      
       $ tc filter add dev ethX ingress protocol mpls_uc \
           flower mpls lse depth 2 label 256             \
           action drop
      
       $ tc filter show dev ethX ingress
         filter protocol mpls_uc pref 49152 flower chain 0
         filter protocol mpls_uc pref 49152 flower chain 0 handle 0x1
           eth_type 8847
           mpls
             lse depth 2 label 0  <-- invalid label 0, should be 256
         ...
      
      Fixes: 61aec25a ("cls_flower: Support filtering on multiple MPLS Label Stack Entries")
      Signed-off-by: default avatarGuillaume Nault <gnault@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7fdd375e
    • Evan Quan's avatar
      drm/amd/pm: typo fix (CUSTOM -> COMPUTE) · c5b58c8c
      Evan Quan authored
      The "COMPUTE" was wrongly spelled as "CUSTOM".
      Signed-off-by: default avatarEvan Quan <evan.quan@amd.com>
      Reviewed-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      Cc: stable@vger.kernel.org # 5.9.x
      c5b58c8c
    • David S. Miller's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf · b7e4ba9a
      David S. Miller authored
      Pablo Neira Ayuso says:
      
      ====================
      Netfilter fixes for net
      
      The following patchset contains Netfilter fixes for net:
      
      1) Switch to RCU in x_tables to fix possible NULL pointer dereference,
         from Subash Abhinov Kasiviswanathan.
      
      2) Fix netlink dump of dynset timeouts later than 23 days.
      
      3) Add comment for the indirect serialization of the nft commit mutex
         with rtnl_mutex.
      
      4) Remove bogus check for confirmed conntrack when matching on the
         conntrack ID, from Brett Mastbergen.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b7e4ba9a
    • David S. Miller's avatar
      Merge branch '1GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/net-queue · 88287773
      David S. Miller authored
      Tony Nguyen says:
      
      ====================
      Intel Wired LAN Driver Updates 2020-12-09
      
      This series contains updates to igb, ixgbe, i40e, and ice drivers.
      
      Sven Auhagen fixes issues with igb XDP: return correct error value in XDP
      xmit back, increase header padding to include space for double VLAN, add
      an extack error when Rx buffer is too small for frame size, set metasize if
      it is set in xdp, change xdp_do_flush_map to xdp_do_flush, and update
      trans_start to avoid possible Tx timeout.
      
      Björn fixes an issue where an Rx buffer can be reused prematurely with
      XDP redirect for ixgbe, i40e, and ice drivers.
      
      The following are changes since commit 323a391a:
        can: isotp: isotp_setsockopt(): block setsockopt on bound sockets
      and are available in the git repository at:
        git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/net-queue 1GbE
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      88287773
    • David S. Miller's avatar
      Merge branch 'mlx4_en-fixes' · 9a25a30e
      David S. Miller authored
      Tariq Toukan says:
      
      ====================
      mlx4_en fixes
      
      This patchset by Moshe contains fixes to the mlx4 Eth driver,
      addressing issues in restart flow.
      
      Patch 1 protects the restart task from being rescheduled while active.
        Please queue for -stable >= v2.6.
      Patch 2 reconstructs SQs stuck in error state, and adds prints for improved
        debuggability.
        Please queue for -stable >= v3.12.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      9a25a30e
    • Moshe Shemesh's avatar
      net/mlx4_en: Handle TX error CQE · ba603d9d
      Moshe Shemesh authored
      In case error CQE was found while polling TX CQ, the QP is in error
      state and all posted WQEs will generate error CQEs without any data
      transmitted. Fix it by reopening the channels, via same method used for
      TX timeout handling.
      
      In addition add some more info on error CQE and WQE for debug.
      
      Fixes: bd2f631d ("net/mlx4_en: Notify user when TX ring in error state")
      Signed-off-by: default avatarMoshe Shemesh <moshe@mellanox.com>
      Signed-off-by: default avatarTariq Toukan <tariqt@nvidia.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ba603d9d
    • Moshe Shemesh's avatar
      net/mlx4_en: Avoid scheduling restart task if it is already running · fed91613
      Moshe Shemesh authored
      Add restarting state flag to avoid scheduling another restart task while
      such task is already running. Change task name from watchdog_task to
      restart_task to better fit the task role.
      
      Fixes: 1e338db5 ("mlx4_en: Fix a race at restart task")
      Signed-off-by: default avatarMoshe Shemesh <moshe@mellanox.com>
      Signed-off-by: default avatarTariq Toukan <tariqt@nvidia.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      fed91613