Skip to content
  1. Jan 29, 2022
    • Linus Torvalds's avatar
      Merge tag 'hyperv-fixes-signed-20220128' of... · 56a14c69
      Linus Torvalds authored
      Merge tag 'hyperv-fixes-signed-20220128' of git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux
      
      Pull hyperv fixes from Wei Liu:
      
       - Fix screen resolution for hyperv framebuffer (Michael Kelley)
      
       - Fix packet header accounting for balloon driver (Yanming Liu)
      
      * tag 'hyperv-fixes-signed-20220128' of git://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux:
        video: hyperv_fb: Fix validation of screen resolution
        Drivers: hv: balloon: account for vmbus packet header in max_pkt_size
      56a14c69
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 3cd7cd8a
      Linus Torvalds authored
      Pull kvm fixes from Paolo Bonzini:
       "Two larger x86 series:
      
         - Redo incorrect fix for SEV/SMAP erratum
      
         - Windows 11 Hyper-V workaround
      
        Other x86 changes:
      
         - Various x86 cleanups
      
         - Re-enable access_tracking_perf_test
      
         - Fix for #GP handling on SVM
      
         - Fix for CPUID leaf 0Dh in KVM_GET_SUPPORTED_CPUID
      
         - Fix for ICEBP in interrupt shadow
      
         - Avoid false-positive RCU splat
      
         - Enable Enlightened MSR-Bitmap support for real
      
        ARM:
      
         - Correctly update the shadow register on exception injection when
           running in nVHE mode
      
         - Correctly use the mm_ops indirection when performing cache
           invalidation from the page-table walker
      
         - Restrict the vgic-v3 workaround for SEIS to the two known broken
           implementations
      
        Generic code changes:
      
         - Dead code cleanup"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (43 commits)
        KVM: eventfd: Fix false positive RCU usage warning
        KVM: nVMX: Allow VMREAD when Enlightened VMCS is in use
        KVM: nVMX: Implement evmcs_field_offset() suitable for handle_vmread()
        KVM: nVMX: Rename vmcs_to_field_offset{,_table}
        KVM: nVMX: eVMCS: Filter out VM_EXIT_SAVE_VMX_PREEMPTION_TIMER
        KVM: nVMX: Also filter MSR_IA32_VMX_TRUE_PINBASED_CTLS when eVMCS
        selftests: kvm: check dynamic bits against KVM_X86_XCOMP_GUEST_SUPP
        KVM: x86: add system attribute to retrieve full set of supported xsave states
        KVM: x86: Add a helper to retrieve userspace address from kvm_device_attr
        selftests: kvm: move vm_xsave_req_perm call to amx_test
        KVM: x86: Sync the states size with the XCR0/IA32_XSS at, any time
        KVM: x86: Update vCPU's runtime CPUID on write to MSR_IA32_XSS
        KVM: x86: Keep MSR_IA32_XSS unchanged for INIT
        KVM: x86: Free kvm_cpuid_entry2 array on post-KVM_RUN KVM_SET_CPUID{,2}
        KVM: nVMX: WARN on any attempt to allocate shadow VMCS for vmcs02
        KVM: selftests: Don't skip L2's VMCALL in SMM test for SVM guest
        KVM: x86: Check .flags in kvm_cpuid_check_equal() too
        KVM: x86: Forcibly leave nested virt when SMM state is toggled
        KVM: SVM: drop unnecessary code in svm_hv_vmcb_dirty_nested_enlightenments()
        KVM: SVM: hyper-v: Enable Enlightened MSR-Bitmap support for real
        ...
      3cd7cd8a
    • Linus Torvalds's avatar
      Merge tag 'mips-fixes-5.17_1' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux · e0152705
      Linus Torvalds authored
      Pull MIPS build fix from Thomas Bogendoerfer:
       "Fix for allmodconfig build"
      
      * tag 'mips-fixes-5.17_1' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux:
        MIPS: Fix build error due to PTR used in more places
      e0152705
    • Linus Torvalds's avatar
      Merge tag 's390-5.17-3' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 7eb36254
      Linus Torvalds authored
      Pull s390 fixes from Vasily Gorbik:
      
       - Fix loading of modules with lots of relocations and add a regression
         test for it.
      
       - Fix machine check handling for vector validity and guarded storage
         validity failures in KVM guests.
      
       - Fix hypervisor performance data to include z/VM guests with access
         control group set.
      
       - Fix z900 build problem in uaccess code.
      
       - Update defconfigs.
      
      * tag 's390-5.17-3' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390/hypfs: include z/VM guests with access control group set
        s390: update defconfigs
        s390/module: test loading modules with a lot of relocations
        s390/module: fix loading modules with a lot of relocations
        s390/uaccess: fix compile error
        s390/nmi: handle vector validity failures for KVM guests
        s390/nmi: handle guarded storage validity failures for KVM guests
      7eb36254
    • Linus Torvalds's avatar
      Merge tag 'ceph-for-5.17-rc2' of git://github.com/ceph/ceph-client · 8157f470
      Linus Torvalds authored
      Pull ceph fixes from Ilya Dryomov:
       "A ZERO_SIZE_PTR dereference fix from Xiubo and two fixes for async
        creates interacting with pool namespace-constrained OSD permissions
        from Jeff (marked for stable)"
      
      * tag 'ceph-for-5.17-rc2' of git://github.com/ceph/ceph-client:
        ceph: set pool_ns in new inode layout for async creates
        ceph: properly put ceph_string reference after async create attempt
        ceph: put the requests/sessions when it fails to alloc memory
      8157f470
    • Linus Torvalds's avatar
      ocfs2: fix subdirectory registration with register_sysctl() · f6a26318
      Linus Torvalds authored
      The kernel test robot reports that commit c42ff46f ("ocfs2: simplify
      subdirectory registration with register_sysctl()") is broken, and
      results in kernel warning messages like
      
        sysctl table check failed: fs/ocfs2/nm Not a file
        sysctl table check failed: fs/ocfs2/nm No proc_handler
        sysctl table check failed: fs/ocfs2/nm bogus .mode 0555
      
      and in fact this was already reported back in linux-next, but nobody
      seems to have reacted to that report.  Possibly that original report
      only ever made it to the lkp list.
      
      The problem seems to be that the simplification didn't actually go far
      enough, and should have converted the whole directory path to the final
      sysctl file, rather than just the two first components.
      
      So take that last step.
      
      Fixes: c42ff46f
      
       ("ocfs2: simplify subdirectory registration with register_sysctl()")
      Reported-by: default avatarkernel test robot <oliver.sang@intel.com>
      Link: https://lore.kernel.org/all/20220128065310.GF8421@xsang-OptiPlex-9020/
      Link: https://lists.01.org/hyperkitty/list/lkp@lists.01.org/thread/KQ2F6TPJWMDVEXJM4WTUC4DU3EH3YJVT/
      Tested-by: default avatarJan Kara <jack@suse.cz>
      Reviewed-by: default avatarJan Kara <jack@suse.cz>
      Cc: Luis Chamberlain <mcgrof@kernel.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      f6a26318
  2. Jan 28, 2022
    • Linus Torvalds's avatar
      Merge tag 'fsnotify_for_v5.17-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · 4897e722
      Linus Torvalds authored
      Pull fsnotify fixes from Jan Kara:
       "Fixes for userspace breakage caused by fsnotify changes ~3 years ago
        and one fanotify cleanup"
      
      * tag 'fsnotify_for_v5.17-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        fsnotify: fix fsnotify hooks in pseudo filesystems
        fsnotify: invalidate dcache before IN_DELETE event
        fanotify: remove variable set but not used
      4897e722
    • Linus Torvalds's avatar
      Merge tag 'fs_for_v5.17-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · c2b19fd7
      Linus Torvalds authored
      Pull udf and quota fixes from Jan Kara:
       "Fixes for crashes in UDF when inode expansion fails and one quota
        cleanup"
      
      * tag 'fs_for_v5.17-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        quota: cleanup double word in comment
        udf: Restore i_lenAlloc when inode expansion fails
        udf: Fix NULL ptr deref when converting from inline format
      c2b19fd7
    • Paolo Bonzini's avatar
      Merge tag 'kvmarm-fixes-5.17-1' of... · 17179d00
      Paolo Bonzini authored
      Merge tag 'kvmarm-fixes-5.17-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD
      
      KVM/arm64 fixes for 5.17, take #1
      
      - Correctly update the shadow register on exception injection when
        running in nVHE mode
      
      - Correctly use the mm_ops indirection when performing cache invalidation
        from the page-table walker
      
      - Restrict the vgic-v3 workaround for SEIS to the two known broken
        implementations
      17179d00
    • Hou Wenlong's avatar
      KVM: eventfd: Fix false positive RCU usage warning · 6a0c6170
      Hou Wenlong authored
      
      
      Fix the following false positive warning:
       =============================
       WARNING: suspicious RCU usage
       5.16.0-rc4+ #57 Not tainted
       -----------------------------
       arch/x86/kvm/../../../virt/kvm/eventfd.c:484 RCU-list traversed in non-reader section!!
      
       other info that might help us debug this:
      
       rcu_scheduler_active = 2, debug_locks = 1
       3 locks held by fc_vcpu 0/330:
        #0: ffff8884835fc0b0 (&vcpu->mutex){+.+.}-{3:3}, at: kvm_vcpu_ioctl+0x88/0x6f0 [kvm]
        #1: ffffc90004c0bb68 (&kvm->srcu){....}-{0:0}, at: vcpu_enter_guest+0x600/0x1860 [kvm]
        #2: ffffc90004c0c1d0 (&kvm->irq_srcu){....}-{0:0}, at: kvm_notify_acked_irq+0x36/0x180 [kvm]
      
       stack backtrace:
       CPU: 26 PID: 330 Comm: fc_vcpu 0 Not tainted 5.16.0-rc4+
       Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.14.0-0-g155821a1990b-prebuilt.qemu.org 04/01/2014
       Call Trace:
        <TASK>
        dump_stack_lvl+0x44/0x57
        kvm_notify_acked_gsi+0x6b/0x70 [kvm]
        kvm_notify_acked_irq+0x8d/0x180 [kvm]
        kvm_ioapic_update_eoi+0x92/0x240 [kvm]
        kvm_apic_set_eoi_accelerated+0x2a/0xe0 [kvm]
        handle_apic_eoi_induced+0x3d/0x60 [kvm_intel]
        vmx_handle_exit+0x19c/0x6a0 [kvm_intel]
        vcpu_enter_guest+0x66e/0x1860 [kvm]
        kvm_arch_vcpu_ioctl_run+0x438/0x7f0 [kvm]
        kvm_vcpu_ioctl+0x38a/0x6f0 [kvm]
        __x64_sys_ioctl+0x89/0xc0
        do_syscall_64+0x3a/0x90
        entry_SYSCALL_64_after_hwframe+0x44/0xae
      
      Since kvm_unregister_irq_ack_notifier() does synchronize_srcu(&kvm->irq_srcu),
      kvm->irq_ack_notifier_list is protected by kvm->irq_srcu. In fact,
      kvm->irq_srcu SRCU read lock is held in kvm_notify_acked_irq(), making it
      a false positive warning. So use hlist_for_each_entry_srcu() instead of
      hlist_for_each_entry_rcu().
      
      Reviewed-by: default avatarSean Christopherson <seanjc@google.com>
      Signed-off-by: default avatarHou Wenlong <houwenlong93@linux.alibaba.com>
      Message-Id: <f98bac4f5052bad2c26df9ad50f7019e40434512.1643265976.git.houwenlong.hwl@antgroup.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      6a0c6170
    • Vitaly Kuznetsov's avatar
      KVM: nVMX: Allow VMREAD when Enlightened VMCS is in use · 6cbbaab6
      Vitaly Kuznetsov authored
      
      
      Hyper-V TLFS explicitly forbids VMREAD and VMWRITE instructions when
      Enlightened VMCS interface is in use:
      
      "Any VMREAD or VMWRITE instructions while an enlightened VMCS is
      active is unsupported and can result in unexpected behavior.""
      
      Windows 11 + WSL2 seems to ignore this, attempts to VMREAD VMCS field
      0x4404 ("VM-exit interruption information") are observed. Failing
      these attempts with nested_vmx_failInvalid() makes such guests
      unbootable.
      
      Microsoft confirms this is a Hyper-V bug and claims that it'll get fixed
      eventually but for the time being we need a workaround. (Temporary) allow
      VMREAD to get data from the currently loaded Enlightened VMCS.
      
      Note: VMWRITE instructions remain forbidden, it is not clear how to
      handle them properly and hopefully won't ever be needed.
      
      Reviewed-by: default avatarSean Christopherson <seanjc@google.com>
      Signed-off-by: default avatarVitaly Kuznetsov <vkuznets@redhat.com>
      Message-Id: <20220112170134.1904308-6-vkuznets@redhat.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      6cbbaab6
    • Vitaly Kuznetsov's avatar
      KVM: nVMX: Implement evmcs_field_offset() suitable for handle_vmread() · 892a42c1
      Vitaly Kuznetsov authored
      
      
      In preparation to allowing reads from Enlightened VMCS from
      handle_vmread(), implement evmcs_field_offset() to get the correct
      read offset. get_evmcs_offset(), which is being used by KVM-on-Hyper-V,
      is almost what's needed but a few things need to be adjusted. First,
      WARN_ON() is unacceptable for handle_vmread() as any field can (in
      theory) be supplied by the guest and not all fields are defined in
      eVMCS v1. Second, we need to handle 'holes' in eVMCS (missing fields).
      It also sounds like a good idea to WARN_ON() if such fields are ever
      accessed by KVM-on-Hyper-V.
      
      Implement dedicated evmcs_field_offset() helper.
      
      No functional change intended.
      
      Signed-off-by: default avatarVitaly Kuznetsov <vkuznets@redhat.com>
      Message-Id: <20220112170134.1904308-5-vkuznets@redhat.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      892a42c1
    • Vitaly Kuznetsov's avatar
      KVM: nVMX: Rename vmcs_to_field_offset{,_table} · 2423a4c0
      Vitaly Kuznetsov authored
      
      
      vmcs_to_field_offset{,_table} may sound misleading as VMCS is an opaque
      blob which is not supposed to be accessed directly. In fact,
      vmcs_to_field_offset{,_table} are related to KVM defined VMCS12 structure.
      
      Rename vmcs_field_to_offset() to get_vmcs12_field_offset() for clarity.
      
      No functional change intended.
      
      Reviewed-by: default avatarSean Christopherson <seanjc@google.com>
      Signed-off-by: default avatarVitaly Kuznetsov <vkuznets@redhat.com>
      Message-Id: <20220112170134.1904308-4-vkuznets@redhat.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      2423a4c0
    • Vitaly Kuznetsov's avatar
      KVM: nVMX: eVMCS: Filter out VM_EXIT_SAVE_VMX_PREEMPTION_TIMER · 7a601e2c
      Vitaly Kuznetsov authored
      
      
      Enlightened VMCS v1 doesn't have VMX_PREEMPTION_TIMER_VALUE field,
      PIN_BASED_VMX_PREEMPTION_TIMER is also filtered out already so it makes
      sense to filter out VM_EXIT_SAVE_VMX_PREEMPTION_TIMER too.
      
      Note, none of the currently existing Windows/Hyper-V versions are known
      to enable 'save VMX-preemption timer value' when eVMCS is in use, the
      change is aimed at making the filtering future proof.
      
      Signed-off-by: default avatarVitaly Kuznetsov <vkuznets@redhat.com>
      Message-Id: <20220112170134.1904308-3-vkuznets@redhat.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      7a601e2c
    • Vitaly Kuznetsov's avatar
      KVM: nVMX: Also filter MSR_IA32_VMX_TRUE_PINBASED_CTLS when eVMCS · f80ae0ef
      Vitaly Kuznetsov authored
      
      
      Similar to MSR_IA32_VMX_EXIT_CTLS/MSR_IA32_VMX_TRUE_EXIT_CTLS,
      MSR_IA32_VMX_ENTRY_CTLS/MSR_IA32_VMX_TRUE_ENTRY_CTLS pair,
      MSR_IA32_VMX_TRUE_PINBASED_CTLS needs to be filtered the same way
      MSR_IA32_VMX_PINBASED_CTLS is currently filtered as guests may solely rely
      on 'true' MSR data.
      
      Note, none of the currently existing Windows/Hyper-V versions are known
      to stumble upon the unfiltered MSR_IA32_VMX_TRUE_PINBASED_CTLS, the change
      is aimed at making the filtering future proof.
      
      Signed-off-by: default avatarVitaly Kuznetsov <vkuznets@redhat.com>
      Message-Id: <20220112170134.1904308-2-vkuznets@redhat.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      f80ae0ef
    • Paolo Bonzini's avatar
      selftests: kvm: check dynamic bits against KVM_X86_XCOMP_GUEST_SUPP · b19c99b9
      Paolo Bonzini authored
      
      
      Provide coverage for the new API.
      
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      b19c99b9
    • Paolo Bonzini's avatar
      KVM: x86: add system attribute to retrieve full set of supported xsave states · dd6e6312
      Paolo Bonzini authored
      
      
      Because KVM_GET_SUPPORTED_CPUID is meant to be passed (by simple-minded
      VMMs) to KVM_SET_CPUID2, it cannot include any dynamic xsave states that
      have not been enabled.  Probing those, for example so that they can be
      passed to ARCH_REQ_XCOMP_GUEST_PERM, requires a new ioctl or arch_prctl.
      The latter is in fact worse, even though that is what the rest of the
      API uses, because it would require supported_xcr0 to be moved from the
      KVM module to the kernel just for this use.  In addition, the value
      would be nonsensical (or an error would have to be returned) until
      the KVM module is loaded in.
      
      Therefore, to limit the growth of system ioctls, add a /dev/kvm
      variant of KVM_{GET,HAS}_DEVICE_ATTR, and implement it in x86
      with just one group (0) and attribute (KVM_X86_XCOMP_GUEST_SUPP).
      
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      dd6e6312
    • Sean Christopherson's avatar
      KVM: x86: Add a helper to retrieve userspace address from kvm_device_attr · 56f289a8
      Sean Christopherson authored
      
      
      Add a helper to handle converting the u64 userspace address embedded in
      struct kvm_device_attr into a userspace pointer, it's all too easy to
      forget the intermediate "unsigned long" cast as well as the truncation
      check.
      
      No functional change intended.
      
      Signed-off-by: default avatarSean Christopherson <seanjc@google.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      56f289a8
    • Linus Torvalds's avatar
      Merge tag 'ata-5.17-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata · 145d9b49
      Linus Torvalds authored
      Pull ATA fix from Damien Le Moal:
       "A single fix for 5.17-rc2, adding a missing resource allocation error
        check in the pata_platform driver, from Zhou"
      
      * tag 'ata-5.17-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata:
        ata: pata_platform: Fix a NULL pointer dereference in __pata_platform_probe()
      145d9b49
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-v5.17-rc2' of... · 374630e3
      Linus Torvalds authored
      Merge tag 'hwmon-for-v5.17-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
      
      Pull hwmon fixes from Guenter Roeck:
      
       - Fix crash in nct6775 driver
      
       - Prevent divide by zero in adt7470 driver
      
       - Fix conditional compile warning in pmbus/ir38064 driver
      
       - Various minor fixes in lm90 driver
      
      * tag 'hwmon-for-v5.17-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: (nct6775) Fix crash in clear_caseopen
        hwmon: (adt7470) Prevent divide by zero in adt7470_fan_write()
        hwmon: (pmbus/ir38064) Mark ir38064_of_match as __maybe_unused
        hwmon: (lm90) Fix sysfs and udev notifications
        hwmon: (lm90) Mark alert as broken for MAX6646/6647/6649
        hwmon: (lm90) Mark alert as broken for MAX6680
        hwmon: (lm90) Mark alert as broken for MAX6654
        hwmon: (lm90) Re-enable interrupts after alert clears
        hwmon: (lm90) Reduce maximum conversion rate for G781
      374630e3
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-2022-01-28' of git://anongit.freedesktop.org/drm/drm · 82b550fa
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "This week's regular normal fixes. amdgpu and msm make up the bulk of
        it, with a scattering of fixes elsewhere.
      
        atomic:
         - fix CRTC handling during modeset
      
        privcy-screen:
         - honor acpi=off
      
        ttm:
         - build fix for um
      
        panel:
         - add orientation quirk for 1NetBook OneXPlayer
      
        amdgpu:
         - Proper fix for otg synchronization logic regression
         - DCN3.01 fixes
         - Filter out secondary radeon PCI IDs
         - udelay fixes
         - Fix a memory leak in an error path
      
        msm:
         - parameter check fixes
         - put_device balancing
         - idle/suspend fixes
      
        etnaviv:
         - relax submit size checks
      
        vc4:
         - fix potential deadlock in DSI code
      
        ast:
         - revert 1600x900 mode change"
      
      * tag 'drm-fixes-2022-01-28' of git://anongit.freedesktop.org/drm/drm: (25 commits)
        drm/privacy-screen: honor acpi=off in detect_thinkpad_privacy_screen
        Revert "drm/ast: Support 1600x900 with 108MHz PCLK"
        drm/amdgpu/display: Remove t_srx_delay_us.
        drm/amd/display: Wrap dcn301_calculate_wm_and_dlg for FPU.
        drm/amd/display: Fix FP start/end for dcn30_internal_validate_bw.
        drm/amd/display/dc/calcs/dce_calcs: Fix a memleak in calculate_bandwidth()
        drm/amdgpu/display: use msleep rather than udelay for long delays
        drm/amdgpu/display: adjust msleep limit in dp_wait_for_training_aux_rd_interval
        drm/amdgpu: filter out radeon secondary ids as well
        drm/amd/display: change FIFO reset condition to embedded display only
        drm/amd/display: Correct MPC split policy for DCN301
        drm/amd/display: Fix for otg synchronization logic
        drm/etnaviv: relax submit size limits
        drm/msm/gpu: Cancel idle/boost work on suspend
        drm/msm/gpu: Wait for idle before suspending
        drm/atomic: Add the crtc to affected crtc only if uapi.enable = true
        drm/msm/dsi: invalid parameter check in msm_dsi_phy_enable
        drm/msm/a6xx: Add missing suspend_count increment
        drm/msm: Fix wrong size calculation
        drm/msm/dpu: invalid parameter check in dpu_setup_dspp_pcc
        ...
      82b550fa
    • Dave Airlie's avatar
      Merge tag 'amd-drm-fixes-5.17-2022-01-26' of... · db5aa149
      Dave Airlie authored
      
      Merge tag 'amd-drm-fixes-5.17-2022-01-26' of https://gitlab.freedesktop.org/agd5f/linux into drm-fixes
      
      amd-drm-fixes-5.17-2022-01-26:
      
      amdgpu:
      - Proper fix for otg synchronization logic regression
      - DCN3.01 fixes
      - Filter out secondary radeon PCI IDs
      - udelay fixes
      - Fix a memory leak in an error path
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Alex Deucher <alexander.deucher@amd.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20220127041006.5695-1-alexander.deucher@amd.com
      db5aa149
    • Dave Airlie's avatar
      Merge branch 'etnaviv/fixes' of https://git.pengutronix.de/git/lst/linux into drm-fixes · b1d83f4c
      Dave Airlie authored
      
      
      - relax submit size checks.
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Lucas Stach <l.stach@pengutronix.de>
      Link: https://patchwork.freedesktop.org/patch/msgid/8c2cb3e3a702be86db9d43ca8927b6b78ac2b1d2.camel@pengutronix.de
      b1d83f4c
    • Dave Airlie's avatar
      Merge tag 'drm-msm-fixes-2022-01-25' of https://gitlab.freedesktop.org/drm/msm into drm-fixes · 52fa904e
      Dave Airlie authored
      
      
      A few msm fixes.
      - parameter checks
      - put_device balancing
      - idle/suspend fixes
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Rob Clark <robdclark@gmail.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/CAF6AEGvAfsgtr==VM4wixAC_hSTuV=eNWXxX=BhZqQrbxHjKgg@mail.gmail.com
      52fa904e
    • Dave Airlie's avatar
      Merge tag 'drm-misc-fixes-2022-01-27' of git://anongit.freedesktop.org/drm/drm-misc into drm-fixes · 2fd0e5fb
      Dave Airlie authored
      
      
       * drm/ast: Revert 1600x800 with 108MHz PCLK
       * drm/atomic: fix CRTC handling during modeset
       * drm/privacy-screen: Honor acpi=off
       * drm/ttm: build fix for ARCH=um
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Thomas Zimmermann <tzimmermann@suse.de>
      Link: https://patchwork.freedesktop.org/patch/msgid/YfJgH9fz+oo7YSXd@linux-uq9g.fritz.box
      2fd0e5fb
    • Dave Airlie's avatar
      Merge tag 'drm-misc-next-fixes-2022-01-21' of... · 23ecd4c1
      Dave Airlie authored
      
      Merge tag 'drm-misc-next-fixes-2022-01-21' of git://anongit.freedesktop.org/drm/drm-misc into drm-fixes
      
       * vc4: Fix potential deadlock in DSI code
       * panel: Add orientation quirk for 1Netbook OneXPlayer
      
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Thomas Zimmermann <tzimmermann@suse.de>
      Link: https://patchwork.freedesktop.org/patch/msgid/Yepuhj+Ks+IyJ9Dp@linux-uq9g
      23ecd4c1
    • Linus Torvalds's avatar
      Merge tag 'net-5.17-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · 23a46422
      Linus Torvalds authored
      Pull networking fixes from Jakub Kicinski:
       "Including fixes from netfilter and can.
      
        Current release - new code bugs:
      
         - tcp: add a missing sk_defer_free_flush() in tcp_splice_read()
      
         - tcp: add a stub for sk_defer_free_flush(), fix CONFIG_INET=n
      
         - nf_tables: set last expression in register tracking area
      
         - nft_connlimit: fix memleak if nf_ct_netns_get() fails
      
         - mptcp: fix removing ids bitmap setting
      
         - bonding: use rcu_dereference_rtnl when getting active slave
      
         - fix three cases of sleep in atomic context in drivers: lan966x, gve
      
         - handful of build fixes for esoteric drivers after netdev->dev_addr
           was made const
      
        Previous releases - regressions:
      
         - revert "ipv6: Honor all IPv6 PIO Valid Lifetime values", it broke
           Linux compatibility with USGv6 tests
      
         - procfs: show net device bound packet types
      
         - ipv4: fix ip option filtering for locally generated fragments
      
         - phy: broadcom: hook up soft_reset for BCM54616S
      
        Previous releases - always broken:
      
         - ipv4: raw: lock the socket in raw_bind()
      
         - ipv4: decrease the use of shared IPID generator to decrease the
           chance of attackers guessing the values
      
         - procfs: fix cross-netns information leakage in /proc/net/ptype
      
         - ethtool: fix link extended state for big endian
      
         - bridge: vlan: fix single net device option dumping
      
         - ping: fix the sk_bound_dev_if match in ping_lookup"
      
      * tag 'net-5.17-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (86 commits)
        net: bridge: vlan: fix memory leak in __allowed_ingress
        net: socket: rename SKB_DROP_REASON_SOCKET_FILTER
        ipv4: remove sparse error in ip_neigh_gw4()
        ipv4: avoid using shared IP generator for connected sockets
        ipv4: tcp: send zero IPID in SYNACK messages
        ipv4: raw: lock the socket in raw_bind()
        MAINTAINERS: add missing IPv4/IPv6 header paths
        MAINTAINERS: add more files to eth PHY
        net: stmmac: dwmac-sun8i: use return val of readl_poll_timeout()
        net: bridge: vlan: fix single net device option dumping
        net: stmmac: skip only stmmac_ptp_register when resume from suspend
        net: stmmac: configure PTP clock source prior to PTP initialization
        Revert "ipv6: Honor all IPv6 PIO Valid Lifetime values"
        connector/cn_proc: Use task_is_in_init_pid_ns()
        pid: Introduce helper task_is_in_init_pid_ns()
        gve: Fix GFP flags when allocing pages
        net: lan966x: Fix sleep in atomic context when updating MAC table
        net: lan966x: Fix sleep in atomic context when injecting frames
        ethernet: seeq/ether3: don't write directly to netdev->dev_addr
        ethernet: 8390/etherh: don't write directly to netdev->dev_addr
        ...
      23a46422
    • Tim Yi's avatar
      net: bridge: vlan: fix memory leak in __allowed_ingress · fd20d973
      Tim Yi authored
      When using per-vlan state, if vlan snooping and stats are disabled,
      untagged or priority-tagged ingress frame will go to check pvid state.
      If the port state is forwarding and the pvid state is not
      learning/forwarding, untagged or priority-tagged frame will be dropped
      but skb memory is not freed.
      Should free skb when __allowed_ingress returns false.
      
      Fixes: a580c76d
      
       ("net: bridge: vlan: add per-vlan state")
      Signed-off-by: default avatarTim Yi <tim.yi@pica8.com>
      Acked-by: default avatarNikolay Aleksandrov <nikolay@nvidia.com>
      Link: https://lore.kernel.org/r/20220127074953.12632-1-tim.yi@pica8.com
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      fd20d973
    • Menglong Dong's avatar
      net: socket: rename SKB_DROP_REASON_SOCKET_FILTER · 364df53c
      Menglong Dong authored
      
      
      Rename SKB_DROP_REASON_SOCKET_FILTER, which is used
      as the reason of skb drop out of socket filter before
      it's part of a released kernel. It will be used for
      more protocols than just TCP in future series.
      
      Signed-off-by: default avatarMenglong Dong <imagedong@tencent.com>
      Reviewed-by: default avatarDavid Ahern <dsahern@kernel.org>
      Link: https://lore.kernel.org/all/20220127091308.91401-2-imagedong@tencent.com/
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      364df53c
    • Eric Dumazet's avatar
      ipv4: remove sparse error in ip_neigh_gw4() · 3c42b201
      Eric Dumazet authored
      ./include/net/route.h:373:48: warning: incorrect type in argument 2 (different base types)
      ./include/net/route.h:373:48:    expected unsigned int [usertype] key
      ./include/net/route.h:373:48:    got restricted __be32 [usertype] daddr
      
      Fixes: 5c9f7c1d
      
       ("ipv4: Add helpers for neigh lookup for nexthop")
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Reviewed-by: default avatarDavid Ahern <dsahern@kernel.org>
      Link: https://lore.kernel.org/r/20220127013404.1279313-1-eric.dumazet@gmail.com
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      3c42b201
    • Jakub Kicinski's avatar
      Merge branch 'ipv4-less-uses-of-shared-ip-generator' · 3ede6465
      Jakub Kicinski authored
      
      
      Eric Dumazet says:
      
      ====================
      ipv4: less uses of shared IP generator
      
      From: Eric Dumazet <edumazet@google.com>
      
      We keep receiving research reports based on linux IPID generation.
      
      Before breaking part of the Internet by switching to pure
      random generator, this series reduces the need for the
      shared IP generator for TCP sockets.
      ====================
      
      Link: https://lore.kernel.org/r/20220127011022.1274803-1-eric.dumazet@gmail.com
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      3ede6465
    • Eric Dumazet's avatar
      ipv4: avoid using shared IP generator for connected sockets · 23f57406
      Eric Dumazet authored
      ip_select_ident_segs() has been very conservative about using
      the connected socket private generator only for packets with IP_DF
      set, claiming it was needed for some VJ compression implementations.
      
      As mentioned in this referenced document, this can be abused.
      (Ref: Off-Path TCP Exploits of the Mixed IPID Assignment)
      
      Before switching to pure random IPID generation and possibly hurt
      some workloads, lets use the private inet socket generator.
      
      Not only this will remove one vulnerability, this will also
      improve performance of TCP flows using pmtudisc==IP_PMTUDISC_DONT
      
      Fixes: 73f156a6
      
       ("inetpeer: get rid of ip_id_count")
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Reviewed-by: default avatarDavid Ahern <dsahern@kernel.org>
      Reported-by: default avatarRay Che <xijiache@gmail.com>
      Cc: Willy Tarreau <w@1wt.eu>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      23f57406
    • Eric Dumazet's avatar
      ipv4: tcp: send zero IPID in SYNACK messages · 970a5a3e
      Eric Dumazet authored
      In commit 431280ee ("ipv4: tcp: send zero IPID for RST and
      ACK sent in SYN-RECV and TIME-WAIT state") we took care of some
      ctl packets sent by TCP.
      
      It turns out we need to use a similar strategy for SYNACK packets.
      
      By default, they carry IP_DF and IPID==0, but there are ways
      to ask them to use the hashed IP ident generator and thus
      be used to build off-path attacks.
      (Ref: Off-Path TCP Exploits of the Mixed IPID Assignment)
      
      One of this way is to force (before listener is started)
      echo 1 >/proc/sys/net/ipv4/ip_no_pmtu_disc
      
      Another way is using forged ICMP ICMP_FRAG_NEEDED
      with a very small MTU (like 68) to force a false return from
      ip_dont_fragment()
      
      In this patch, ip_build_and_send_pkt() uses the following
      heuristics.
      
      1) Most SYNACK packets are smaller than IPV4_MIN_MTU and therefore
      can use IP_DF regardless of the listener or route pmtu setting.
      
      2) In case the SYNACK packet is bigger than IPV4_MIN_MTU,
      we use prandom_u32() generator instead of the IPv4 hashed ident one.
      
      Fixes: 1da177e4
      
       ("Linux-2.6.12-rc2")
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Reported-by: default avatarRay Che <xijiache@gmail.com>
      Reviewed-by: default avatarDavid Ahern <dsahern@kernel.org>
      Cc: Geoff Alexander <alexandg@cs.unm.edu>
      Cc: Willy Tarreau <w@1wt.eu>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      970a5a3e
  3. Jan 27, 2022