Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Zstd negative level #7

Closed
wants to merge 252 commits into from
Closed
This pull request is big! We’re only showing the most recent 250 commits.

Commits on Aug 29, 2022

  1. arm64: dts: qcom: thinkpad-x13s: Fix firmware location

    The firmware for the Lenovo Thinkpad X13s has been submitted, accepted
    and merged upstream, so update to the correct path.
    
    Signed-off-by: Steev Klimaszewski <[email protected]>
    Reviewed-by: Andrew Halaney <[email protected]>
    Signed-off-by: Bjorn Andersson <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    0x011011110 authored and andersson committed Aug 29, 2022
    Configuration menu
    Copy the full SHA
    b6a6535 View commit details
    Browse the repository at this point in the history
  2. arm64: dts: qcom: sc7280: move USB wakeup-source property

    Move the USB-controller wakeup-source property to the dwc3 glue node to
    match the updated binding.
    
    Signed-off-by: Johan Hovold <[email protected]>
    Reviewed-by: Matthias Kaehlcke <[email protected]>
    Signed-off-by: Bjorn Andersson <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    jhovold authored and andersson committed Aug 29, 2022
    Configuration menu
    Copy the full SHA
    d5089f7 View commit details
    Browse the repository at this point in the history
  3. MAINTAINERS: Update Bjorn's email address

    Update the email address for Bjorn's maintainer entries and fill in
    .mailmap accordingly.
    
    Signed-off-by: Bjorn Andersson <[email protected]>
    Signed-off-by: Bjorn Andersson <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    andersson committed Aug 29, 2022
    Configuration menu
    Copy the full SHA
    8c8d28e View commit details
    Browse the repository at this point in the history

Commits on Aug 30, 2022

  1. reset: imx7: Fix the iMX8MP PCIe PHY PERST support

    On i.MX7/iMX8MM/iMX8MQ, the initialized default value of PERST bit(BIT3)
    of SRC_PCIEPHY_RCR is 1b'1.
    But i.MX8MP has one inversed default value 1b'0 of PERST bit.
    
    And the PERST bit should be kept 1b'1 after power and clocks are stable.
    So fix the i.MX8MP PCIe PHY PERST support here.
    
    Fixes: e08672c ("reset: imx7: Add support for i.MX8MP SoC")
    Signed-off-by: Richard Zhu <[email protected]>
    Reviewed-by: Philipp Zabel <[email protected]>
    Tested-by: Marek Vasut <[email protected]>
    Tested-by: Richard Leitner <[email protected]>
    Tested-by: Alexander Stein <[email protected]>
    Signed-off-by: Philipp Zabel <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Richard Zhu authored and pH5 committed Aug 30, 2022
    Configuration menu
    Copy the full SHA
    051d9eb View commit details
    Browse the repository at this point in the history
  2. reset: microchip-sparx5: issue a reset on startup

    Originally this was used in by the switch core driver to issue a reset.
    But it turns out, this isn't just a switch core reset but instead it
    will reset almost the complete SoC.
    
    Instead of adding almost all devices of the SoC a shared reset line,
    issue the reset once early on startup. Keep the reset controller for
    backwards compatibility, but make the actual reset a noop.
    
    Suggested-by: Philipp Zabel <[email protected]>
    Signed-off-by: Michael Walle <[email protected]>
    Tested-by: Steen Hegelund <[email protected]> on Sparx5
    Signed-off-by: Philipp Zabel <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    mwalle authored and pH5 committed Aug 30, 2022
    Configuration menu
    Copy the full SHA
    51fd191 View commit details
    Browse the repository at this point in the history

Commits on Aug 31, 2022

  1. media: uvcvideo: Fix InterfaceProtocol for Quanta camera

    The Quanta 0408:4034 camera implements UVC 1.5, and thus sets
    bInterfaceProtocol to UVC_PC_PROTOCOL_15. Commit 95f03d9 ("media:
    uvcvideo: Limit power line control for Quanta cameras") added a quirk
    for the device that incorrectly specified the UVC 1.0 protocol,
    rendering the quirk inoperative. Fix it.
    
    Link: https://lore.kernel.org/linux-media/[email protected]
    Fixes: 95f03d9 ("media: uvcvideo: Limit power line control for Quanta cameras")
    Reviewed-by: Laurent Pinchart <[email protected]>
    Signed-off-by: Ricardo Ribalda <[email protected]>
    Signed-off-by: Mauro Carvalho Chehab <[email protected]>
    ribalda authored and mchehab committed Aug 31, 2022
    Configuration menu
    Copy the full SHA
    150f7b1 View commit details
    Browse the repository at this point in the history
  2. x86/cpu: Add CPU model numbers for Meteor Lake

    Add model numbers for client and mobile parts.
    
    Signed-off-by: Tony Luck <[email protected]>
    Signed-off-by: Dave Hansen <[email protected]>
    Link: https://lkml.kernel.org/r/[email protected]
    aegl authored and hansendc committed Aug 31, 2022
    Configuration menu
    Copy the full SHA
    5515d21 View commit details
    Browse the repository at this point in the history

Commits on Sep 1, 2022

  1. clk: ingenic-tcu: Properly enable registers before accessing timers

    Access to registers is guarded by ingenic_tcu_{enable,disable}_regs()
    so the stop bit can be cleared before accessing a timer channel, but
    those functions did not clear the stop bit on SoCs with a global TCU
    clock gate.
    
    Testing on the X1000 has revealed that the stop bits must be cleared
    _and_ the global TCU clock must be ungated to access timer registers.
    This appears to be the norm on Ingenic SoCs, and is specified in the
    documentation for the X1000 and numerous JZ47xx SoCs.
    
    If the stop bit isn't cleared, register writes don't take effect and
    the system can be left in a broken state, eg. the watchdog timer may
    not run.
    
    The bug probably went unnoticed because stop bits are zeroed when
    the SoC is reset, and the kernel does not set them unless a timer
    gets disabled at runtime. However, it is possible that a bootloader
    or a previous kernel (if using kexec) leaves the stop bits set and
    we should not rely on them being cleared.
    
    Fixing this is easy: have ingenic_tcu_{enable,disable}_regs() always
    clear the stop bit, regardless of the presence of a global TCU gate.
    
    Reviewed-by: Paul Cercueil <[email protected]>
    Tested-by: Paul Cercueil <[email protected]>
    Fixes: 4f89e4b ("clk: ingenic: Add driver for the TCU clocks")
    Cc: [email protected]
    Signed-off-by: Aidan MacDonald <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Stephen Boyd <[email protected]>
    Aidan MacDonald authored and bebarino committed Sep 1, 2022
    Configuration menu
    Copy the full SHA
    6726d55 View commit details
    Browse the repository at this point in the history
  2. perf/x86/intel: Fix unchecked MSR access error for Alder Lake N

    For some Alder Lake N machine, the below unchecked MSR access error may be
    triggered.
    
    [ 0.088017] rcu: Hierarchical SRCU implementation.
    [ 0.088017] unchecked MSR access error: WRMSR to 0x38f (tried to write
    0x0001000f0000003f) at rIP: 0xffffffffb5684de8 (native_write_msr+0x8/0x30)
    [ 0.088017] Call Trace:
    [ 0.088017] <TASK>
    [ 0.088017] __intel_pmu_enable_all.constprop.46+0x4a/0xa0
    
    The Alder Lake N only has e-cores. The X86_FEATURE_HYBRID_CPU flag is
    not set. The perf cannot retrieve the correct CPU type via
    get_this_hybrid_cpu_type(). The model specific get_hybrid_cpu_type() is
    hardcode to p-core. The wrong CPU type is given to the PMU of the
    Alder Lake N.
    
    Since Alder Lake N isn't in fact a hybrid CPU, remove ALDERLAKE_N from
    the rest of {ALDER,RAPTOP}LAKE and create a non-hybrid PMU setup.
    
    The differences between Gracemont and the previous Tremont are,
    - Number of GP counters
    - Load and store latency Events
    - PEBS event_constraints
    - Instruction Latency support
    - Data source encoding
    - Memory access latency encoding
    
    Fixes: c2a960f ("perf/x86: Add new Alder Lake and Raptor Lake support")
    Reported-by: Jianfeng Gao <[email protected]>
    Suggested-by: Peter Zijlstra (Intel) <[email protected]>
    Signed-off-by: Kan Liang <[email protected]>
    Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
    Link: https://lkml.kernel.org/r/[email protected]
    Kan Liang authored and Peter Zijlstra committed Sep 1, 2022
    Configuration menu
    Copy the full SHA
    24919fd View commit details
    Browse the repository at this point in the history
  3. perf/x86/core: Completely disable guest PEBS via guest's global_ctrl

    When a guest PEBS counter is cross-mapped by a host counter, software
    will remove the corresponding bit in the arr[global_ctrl].guest and
    expect hardware to perform a change of state "from enable to disable"
    via the msr_slot[] switch during the vmx transaction.
    
    The real world is that if user adjust the counter overflow value small
    enough, it still opens a tiny race window for the previously PEBS-enabled
    counter to write cross-mapped PEBS records into the guest's PEBS buffer,
    when arr[global_ctrl].guest has been prioritised (switch_msr_special stuff)
    to switch into the enabled state, while the arr[pebs_enable].guest has not.
    
    Close this window by clearing invalid bits in the arr[global_ctrl].guest.
    
    Fixes: 8542503 ("KVM: x86/pmu: Disable guest PEBS temporarily in two rare situations")
    Signed-off-by: Like Xu <[email protected]>
    Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
    Link: https://lkml.kernel.org/r/[email protected]
    Like Xu authored and Peter Zijlstra committed Sep 1, 2022
    Configuration menu
    Copy the full SHA
    f2aeea5 View commit details
    Browse the repository at this point in the history

Commits on Sep 6, 2022

  1. ARM: dts: am5748: keep usb4_tm disabled

    Commit bcbb63b ("ARM: dts: dra7: Separate AM57 dtsi files")
    disabled usb4_tm for am5748 devices since USB4 IP is not present
    in this SoC.
    
    The commit log explained the difference between AM5 and DRA7 families:
    
    AM5 and DRA7 SoC families have different set of modules in them so the
    SoC sepecific dtsi files need to be separated.
    
    e.g. Some of the major differences between AM576 and DRA76
    
    		DRA76x	AM576x
    
    USB3		x
    USB4		x
    ATL		x
    VCP		x
    MLB		x
    ISS		x
    PRU-ICSS1		x
    PRU-ICSS2		x
    
    Then commit 176f26b ("ARM: dts: Add support for dra762 abz
    package") removed usb4_tm part from am5748.dtsi and introcuded new
    ti-sysc errors in dmesg:
    
    ti-sysc 48940000.target-module: clock get error for fck: -2
    ti-sysc: probe of 48940000.target-module failed with error -2
    
    Fixes: 176f26b ("ARM: dts: Add support for dra762 abz package")
    
    Signed-off-by: Romain Naour <[email protected]>
    Signed-off-by: Romain Naour <[email protected]>
    Message-Id: <[email protected]>
    Reviewed-by: Roger Quadros <[email protected]>
    Signed-off-by: Tony Lindgren <[email protected]>
    Romain Naour authored and tmlind committed Sep 6, 2022
    Configuration menu
    Copy the full SHA
    6a6d9ec View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2a906db View commit details
    Browse the repository at this point in the history
  3. perf/core: Fix reentry problem in perf_output_read_group()

    perf_output_read_group may respond to IPI request of other cores and invoke
    __perf_install_in_context function. As a result, hwc configuration is modified.
    causing inconsistency and unexpected consequences.
    
    Interrupts are not disabled when perf_output_read_group reads PMU counter.
    In this case, IPI request may be received from other cores.
    As a result, PMU configuration is modified and an error occurs when
    reading PMU counter:
    
    		     CPU0                                         CPU1
    						      __se_sys_perf_event_open
    							perf_install_in_context
      perf_output_read_group                                  smp_call_function_single
        for_each_sibling_event(sub, leader) {                   generic_exec_single
          if ((sub != event) &&                                   remote_function
    	  (sub->state == PERF_EVENT_STATE_ACTIVE))                    |
      <enter IPI handler: __perf_install_in_context>   <----RAISE IPI-----+
      __perf_install_in_context
        ctx_resched
          event_sched_out
    	armpmu_del
    	  ...
    	  hwc->idx = -1; // event->hwc.idx is set to -1
      ...
      <exit IPI>
    	      sub->pmu->read(sub);
    		armpmu_read
    		  armv8pmu_read_counter
    		    armv8pmu_read_hw_counter
    		      int idx = event->hw.idx; // idx = -1
    		      u64 val = armv8pmu_read_evcntr(idx);
    			u32 counter = ARMV8_IDX_TO_COUNTER(idx); // invalid counter = 30
    			read_pmevcntrn(counter) // undefined instruction
    
    Signed-off-by: Yang Jihong <[email protected]>
    Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
    Link: https://lkml.kernel.org/r/[email protected]
    Yang Jihong authored and Peter Zijlstra committed Sep 6, 2022
    Configuration menu
    Copy the full SHA
    6b959ba View commit details
    Browse the repository at this point in the history

Commits on Sep 8, 2022

  1. soc: sunxi: sram: Actually claim SRAM regions

    sunxi_sram_claim() checks the sram_desc->claimed flag before updating
    the register, with the intent that only one device can claim a region.
    However, this was ineffective because the flag was never set.
    
    Fixes: 4af34b5 ("drivers: soc: sunxi: Introduce SoC driver to map SRAMs")
    Reviewed-by: Jernej Skrabec <[email protected]>
    Signed-off-by: Samuel Holland <[email protected]>
    Reviewed-by: Heiko Stuebner <[email protected]>
    Tested-by: Heiko Stuebner <[email protected]>
    Signed-off-by: Jernej Skrabec <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    smaeul authored and jernejsk committed Sep 8, 2022
    Configuration menu
    Copy the full SHA
    fd362ba View commit details
    Browse the repository at this point in the history
  2. soc: sunxi: sram: Prevent the driver from being unbound

    This driver exports a regmap tied to the platform device (as opposed to
    a syscon, which exports a regmap tied to the OF node). Because of this,
    the driver can never be unbound, as that would destroy the regmap. Use
    builtin_platform_driver_probe() to enforce this limitation.
    
    Fixes: 5828729 ("soc: sunxi: export a regmap for EMAC clock reg on A64")
    Reviewed-by: Jernej Skrabec <[email protected]>
    Signed-off-by: Samuel Holland <[email protected]>
    Reviewed-by: Heiko Stuebner <[email protected]>
    Tested-by: Heiko Stuebner <[email protected]>
    Signed-off-by: Jernej Skrabec <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    smaeul authored and jernejsk committed Sep 8, 2022
    Configuration menu
    Copy the full SHA
    90e10a1 View commit details
    Browse the repository at this point in the history
  3. x86/sgx: Do not fail on incomplete sanitization on premature stop of …

    …ksgxd
    
    Unsanitized pages trigger WARN_ON() unconditionally, which can panic the
    whole computer, if /proc/sys/kernel/panic_on_warn is set.
    
    In sgx_init(), if misc_register() fails or misc_register() succeeds but
    neither sgx_drv_init() nor sgx_vepc_init() succeeds, then ksgxd will be
    prematurely stopped. This may leave unsanitized pages, which will result a
    false warning.
    
    Refine __sgx_sanitize_pages() to return:
    
    1. Zero when the sanitization process is complete or ksgxd has been
       requested to stop.
    2. The number of unsanitized pages otherwise.
    
    Fixes: 51ab30e ("x86/sgx: Replace section->init_laundry_list with sgx_dirty_page_list")
    Reported-by: Paul Menzel <[email protected]>
    Signed-off-by: Jarkko Sakkinen <[email protected]>
    Signed-off-by: Dave Hansen <[email protected]>
    Reviewed-by: Reinette Chatre <[email protected]>
    Cc: [email protected]
    Link: https://lore.kernel.org/linux-sgx/[email protected]/T/#u
    Link: https://lkml.kernel.org/r/[email protected]
    jarkkojs authored and hansendc committed Sep 8, 2022
    Configuration menu
    Copy the full SHA
    133e049 View commit details
    Browse the repository at this point in the history
  4. soc: sunxi: sram: Fix probe function ordering issues

    Errors from debugfs are intended to be non-fatal, and should not prevent
    the driver from probing.
    
    Since debugfs file creation is treated as infallible, move it below the
    parts of the probe function that can fail. This prevents an error
    elsewhere in the probe function from causing the file to leak. Do the
    same for the call to of_platform_populate().
    
    Finally, checkpatch suggests an octal literal for the file permissions.
    
    Fixes: 4af34b5 ("drivers: soc: sunxi: Introduce SoC driver to map SRAMs")
    Fixes: 5828729 ("soc: sunxi: export a regmap for EMAC clock reg on A64")
    Reviewed-by: Jernej Skrabec <[email protected]>
    Signed-off-by: Samuel Holland <[email protected]>
    Tested-by: Heiko Stuebner <[email protected]>
    Signed-off-by: Jernej Skrabec <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    smaeul authored and jernejsk committed Sep 8, 2022
    Configuration menu
    Copy the full SHA
    49fad91 View commit details
    Browse the repository at this point in the history
  5. x86/sgx: Handle VA page allocation failure for EAUG on PF.

    VM_FAULT_NOPAGE is expected behaviour for -EBUSY failure path, when
    augmenting a page, as this means that the reclaimer thread has been
    triggered, and the intention is just to round-trip in ring-3, and
    retry with a new page fault.
    
    Fixes: 5a90d2c ("x86/sgx: Support adding of pages to an initialized enclave")
    Signed-off-by: Haitao Huang <[email protected]>
    Signed-off-by: Jarkko Sakkinen <[email protected]>
    Signed-off-by: Dave Hansen <[email protected]>
    Reviewed-by: Reinette Chatre <[email protected]>
    Tested-by: Vijay Dhanraj <[email protected]>
    Cc: [email protected]
    Link: https://lkml.kernel.org/r/[email protected]
    haitaohuang authored and hansendc committed Sep 8, 2022
    Configuration menu
    Copy the full SHA
    81fa6fd View commit details
    Browse the repository at this point in the history
  6. soc: sunxi: sram: Fix debugfs info for A64 SRAM C

    The labels were backward with respect to the register values. The SRAM
    is mapped to the CPU when the register value is 1.
    
    Fixes: 5e4fb64 ("drivers: soc: sunxi: add support for A64 and its SRAM C")
    Acked-by: Jernej Skrabec <[email protected]>
    Signed-off-by: Samuel Holland <[email protected]>
    Signed-off-by: Jernej Skrabec <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    smaeul authored and jernejsk committed Sep 8, 2022
    Configuration menu
    Copy the full SHA
    e3c95ed View commit details
    Browse the repository at this point in the history

Commits on Sep 11, 2022

  1. ntfs: fix BUG_ON in ntfs_lookup_inode_by_name()

    Syzkaller reported BUG_ON as follows:
    
    ------------[ cut here ]------------
    kernel BUG at fs/ntfs/dir.c:86!
    invalid opcode: 0000 [kdave#1] PREEMPT SMP KASAN PTI
    CPU: 3 PID: 758 Comm: a.out Not tainted 5.19.0-next-20220808 kdave#5
    Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.0-0-gd239552ce722-prebuilt.qemu.org 04/01/2014
    RIP: 0010:ntfs_lookup_inode_by_name+0xd11/0x2d10
    Code: ff e9 b9 01 00 00 e8 1e fe d6 fe 48 8b 7d 98 49 8d 5d 07 e8 91 85 29 ff 48 c7 45 98 00 00 00 00 e9 5a fb ff ff e8 ff fd d6 fe <0f> 0b e8 f8 fd d6 fe 0f 0b e8 f1 fd d6 fe 48 8b b5 50 ff ff ff 4c
    RSP: 0018:ffff888079607978 EFLAGS: 00010293
    RAX: 0000000000000000 RBX: 0000000000008000 RCX: 0000000000000000
    RDX: ffff88807cf10000 RSI: ffffffff82a4a081 RDI: 0000000000000003
    RBP: ffff888079607a70 R08: 0000000000000001 R09: ffff88807a6d01d7
    R10: ffffed100f4da03a R11: 0000000000000000 R12: ffff88800f0fb110
    R13: ffff88800f0ee000 R14: ffff88800f0fb000 R15: 0000000000000001
    FS:  00007f33b63c7540(0000) GS:ffff888108580000(0000) knlGS:0000000000000000
    CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    CR2: 00007f33b635c090 CR3: 000000000f39e005 CR4: 0000000000770ee0
    DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
    DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
    PKRU: 55555554
    Call Trace:
     <TASK>
     load_system_files+0x1f7f/0x3620
     ntfs_fill_super+0xa01/0x1be0
     mount_bdev+0x36a/0x440
     ntfs_mount+0x3a/0x50
     legacy_get_tree+0xfb/0x210
     vfs_get_tree+0x8f/0x2f0
     do_new_mount+0x30a/0x760
     path_mount+0x4de/0x1880
     __x64_sys_mount+0x2b3/0x340
     do_syscall_64+0x38/0x90
     entry_SYSCALL_64_after_hwframe+0x63/0xcd
    RIP: 0033:0x7f33b62ff9ea
    Code: 48 8b 0d a9 f4 0b 00 f7 d8 64 89 01 48 83 c8 ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 49 89 ca b8 a5 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d 76 f4 0b 00 f7 d8 64 89 01 48
    RSP: 002b:00007ffd0c471aa8 EFLAGS: 00000202 ORIG_RAX: 00000000000000a5
    RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007f33b62ff9ea
    RDX: 0000000020000000 RSI: 0000000020000100 RDI: 00007ffd0c471be0
    RBP: 00007ffd0c471c60 R08: 00007ffd0c471ae0 R09: 00007ffd0c471c24
    R10: 0000000000000000 R11: 0000000000000202 R12: 000055bac5afc160
    R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
     </TASK>
    Modules linked in:
    ---[ end trace 0000000000000000 ]---
    
    Fix this by adding sanity check on extended system files' directory inode
    to ensure that it is directory, just like ntfs_extend_init() when mounting
    ntfs3.
    
    Link: https://lkml.kernel.org/r/[email protected]
    Signed-off-by: ChenXiaoSong <[email protected]>
    Cc: Anton Altaparmakov <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    ChenXiaoSong authored and akpm00 committed Sep 11, 2022
    Configuration menu
    Copy the full SHA
    1b513f6 View commit details
    Browse the repository at this point in the history
  2. mm/page_alloc: fix race condition between build_all_zonelists and pag…

    …e allocation
    
    Patrick Daly reported the following problem;
    
    	NODE_DATA(nid)->node_zonelists[ZONELIST_FALLBACK] - before offline operation
    	[0] - ZONE_MOVABLE
    	[1] - ZONE_NORMAL
    	[2] - NULL
    
    	For a GFP_KERNEL allocation, alloc_pages_slowpath() will save the
    	offset of ZONE_NORMAL in ac->preferred_zoneref. If a concurrent
    	memory_offline operation removes the last page from ZONE_MOVABLE,
    	build_all_zonelists() & build_zonerefs_node() will update
    	node_zonelists as shown below. Only populated zones are added.
    
    	NODE_DATA(nid)->node_zonelists[ZONELIST_FALLBACK] - after offline operation
    	[0] - ZONE_NORMAL
    	[1] - NULL
    	[2] - NULL
    
    The race is simple -- page allocation could be in progress when a memory
    hot-remove operation triggers a zonelist rebuild that removes zones.  The
    allocation request will still have a valid ac->preferred_zoneref that is
    now pointing to NULL and triggers an OOM kill.
    
    This problem probably always existed but may be slightly easier to trigger
    due to 6aa303d ("mm, vmscan: only allocate and reclaim from zones
    with pages managed by the buddy allocator") which distinguishes between
    zones that are completely unpopulated versus zones that have valid pages
    not managed by the buddy allocator (e.g.  reserved, memblock, ballooning
    etc).  Memory hotplug had multiple stages with timing considerations
    around managed/present page updates, the zonelist rebuild and the zone
    span updates.  As David Hildenbrand puts it
    
    	memory offlining adjusts managed+present pages of the zone
    	essentially in one go. If after the adjustments, the zone is no
    	longer populated (present==0), we rebuild the zone lists.
    
    	Once that's done, we try shrinking the zone (start+spanned
    	pages) -- which results in zone_start_pfn == 0 if there are no
    	more pages. That happens *after* rebuilding the zonelists via
    	remove_pfn_range_from_zone().
    
    The only requirement to fix the race is that a page allocation request
    identifies when a zonelist rebuild has happened since the allocation
    request started and no page has yet been allocated.  Use a seqlock_t to
    track zonelist updates with a lockless read-side of the zonelist and
    protecting the rebuild and update of the counter with a spinlock.
    
    [[email protected]: make zonelist_update_seq static]
    Link: https://lkml.kernel.org/r/[email protected]
    Fixes: 6aa303d ("mm, vmscan: only allocate and reclaim from zones with pages managed by the buddy allocator")
    Signed-off-by: Mel Gorman <[email protected]>
    Reported-by: Patrick Daly <[email protected]>
    Acked-by: Michal Hocko <[email protected]>
    Reviewed-by: David Hildenbrand <[email protected]>
    Cc: <[email protected]>	[4.9+]
    Signed-off-by: Andrew Morton <[email protected]>
    gormanm authored and akpm00 committed Sep 11, 2022
    Configuration menu
    Copy the full SHA
    3d36424 View commit details
    Browse the repository at this point in the history
  3. xfs: quiet notify_failure EOPNOTSUPP cases

    Patch series "mm, xfs, dax: Fixes for memory_failure() handling".
    
    I failed to run the memory error injection section of the ndctl test suite
    on linux-next prior to the merge window and as a result some bugs were
    missed.  While the new enabling targeted reflink enabled XFS filesystems
    the bugs cropped up in the surrounding cases of DAX error injection on
    ext4-fsdax and device-dax.
    
    One new assumption / clarification in this set is the notion that if a
    filesystem's ->notify_failure() handler returns -EOPNOTSUPP, then it must
    be the case that the fsdax usage of page->index and page->mapping are
    valid.  I am fairly certain this is true for xfs_dax_notify_failure(), but
    would appreciate another set of eyes.
    
    
    This patch (of 4):
    
    XFS always registers dax_holder_operations regardless of whether the
    filesystem is capable of handling the notifications.  The expectation is
    that if the notify_failure handler cannot run then there are no scenarios
    where it needs to run.  In other words the expected semantic is that
    page->index and page->mapping are valid for memory_failure() when the
    conditions that cause -EOPNOTSUPP in xfs_dax_notify_failure() are present.
    
    A fallback to the generic memory_failure() path is expected so do not warn
    when that happens.
    
    Link: https://lkml.kernel.org/r/166153426798.2758201.15108211981034512993.stgit@dwillia2-xfh.jf.intel.com
    Link: https://lkml.kernel.org/r/166153427440.2758201.6709480562966161512.stgit@dwillia2-xfh.jf.intel.com
    Fixes: 6f643c5 ("xfs: implement ->notify_failure() for XFS")
    Signed-off-by: Dan Williams <[email protected]>
    Reviewed-by: Christoph Hellwig <[email protected]>
    Cc: Shiyang Ruan <[email protected]>
    Cc: Darrick J. Wong <[email protected]>
    Cc: Al Viro <[email protected]>
    Cc: Dave Chinner <[email protected]>
    Cc: Goldwyn Rodrigues <[email protected]>
    Cc: Jane Chu <[email protected]>
    Cc: Matthew Wilcox <[email protected]>
    Cc: Miaohe Lin <[email protected]>
    Cc: Naoya Horiguchi <[email protected]>
    Cc: Ritesh Harjani <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    djbw authored and akpm00 committed Sep 11, 2022
    Configuration menu
    Copy the full SHA
    b14d067 View commit details
    Browse the repository at this point in the history
  4. xfs: fix SB_BORN check in xfs_dax_notify_failure()

    The SB_BORN flag is stored in the vfs superblock, not xfs_sb.
    
    Link: https://lkml.kernel.org/r/166153428094.2758201.7936572520826540019.stgit@dwillia2-xfh.jf.intel.com
    Fixes: 6f643c5 ("xfs: implement ->notify_failure() for XFS")
    Signed-off-by: Dan Williams <[email protected]>
    Reviewed-by: Christoph Hellwig <[email protected]>
    Cc: Shiyang Ruan <[email protected]>
    Cc: Darrick J. Wong <[email protected]>
    Cc: Al Viro <[email protected]>
    Cc: Dave Chinner <[email protected]>
    Cc: Goldwyn Rodrigues <[email protected]>
    Cc: Jane Chu <[email protected]>
    Cc: Matthew Wilcox <[email protected]>
    Cc: Miaohe Lin <[email protected]>
    Cc: Naoya Horiguchi <[email protected]>
    Cc: Ritesh Harjani <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    djbw authored and akpm00 committed Sep 11, 2022
    Configuration menu
    Copy the full SHA
    fd63612 View commit details
    Browse the repository at this point in the history
  5. mm/memory-failure: fix detection of memory_failure() handlers

    Some pagemap types, like MEMORY_DEVICE_GENERIC (device-dax) do not even
    have pagemap ops which results in crash signatures like this:
    
      BUG: kernel NULL pointer dereference, address: 0000000000000010
      #PF: supervisor read access in kernel mode
      #PF: error_code(0x0000) - not-present page
      PGD 8000000205073067 P4D 8000000205073067 PUD 2062b3067 PMD 0
      Oops: 0000 [kdave#1] PREEMPT SMP PTI
      CPU: 22 PID: 4535 Comm: device-dax Tainted: G           OE    N 6.0.0-rc2+ torvalds#59
      Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 0.0.0 02/06/2015
      RIP: 0010:memory_failure+0x667/0xba0
     [..]
      Call Trace:
       <TASK>
       ? _printk+0x58/0x73
       do_madvise.part.0.cold+0xaf/0xc5
    
    Check for ops before checking if the ops have a memory_failure()
    handler.
    
    Link: https://lkml.kernel.org/r/166153428781.2758201.1990616683438224741.stgit@dwillia2-xfh.jf.intel.com
    Fixes: 33a8f7f ("pagemap,pmem: introduce ->memory_failure()")
    Signed-off-by: Dan Williams <[email protected]>
    Acked-by: Naoya Horiguchi <[email protected]>
    Reviewed-by: Miaohe Lin <[email protected]>
    Reviewed-by: Christoph Hellwig <[email protected]>
    Cc: Shiyang Ruan <[email protected]>
    Cc: Darrick J. Wong <[email protected]>
    Cc: Al Viro <[email protected]>
    Cc: Dave Chinner <[email protected]>
    Cc: Goldwyn Rodrigues <[email protected]>
    Cc: Jane Chu <[email protected]>
    Cc: Matthew Wilcox <[email protected]>
    Cc: Ritesh Harjani <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    djbw authored and akpm00 committed Sep 11, 2022
    Configuration menu
    Copy the full SHA
    65d3440 View commit details
    Browse the repository at this point in the history
  6. mm/memory-failure: fall back to vma_address() when ->notify_failure()…

    … fails
    
    In the case where a filesystem is polled to take over the memory failure
    and receives -EOPNOTSUPP it indicates that page->index and page->mapping
    are valid for reverse mapping the failure address.  Introduce
    FSDAX_INVALID_PGOFF to distinguish when add_to_kill() is being called from
    mf_dax_kill_procs() by a filesytem vs the typical memory_failure() path.
    
    Otherwise, vma_pgoff_address() is called with an invalid fsdax_pgoff which
    then trips this failing signature:
    
     kernel BUG at mm/memory-failure.c:319!
     invalid opcode: 0000 [kdave#1] PREEMPT SMP PTI
     CPU: 13 PID: 1262 Comm: dax-pmd Tainted: G           OE    N 6.0.0-rc2+ torvalds#62
     Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 0.0.0 02/06/2015
     RIP: 0010:add_to_kill.cold+0x19d/0x209
     [..]
     Call Trace:
      <TASK>
      collect_procs.part.0+0x2c4/0x460
      memory_failure+0x71b/0xba0
      ? _printk+0x58/0x73
      do_madvise.part.0.cold+0xaf/0xc5
    
    Link: https://lkml.kernel.org/r/166153429427.2758201.14605968329933175594.stgit@dwillia2-xfh.jf.intel.com
    Fixes: c36e202 ("mm: introduce mf_dax_kill_procs() for fsdax case")
    Signed-off-by: Dan Williams <[email protected]>
    Acked-by: Naoya Horiguchi <[email protected]>
    Reviewed-by: Miaohe Lin <[email protected]>
    Reviewed-by: Christoph Hellwig <[email protected]>
    Cc: Shiyang Ruan <[email protected]>
    Cc: Darrick J. Wong <[email protected]>
    Cc: Al Viro <[email protected]>
    Cc: Dave Chinner <[email protected]>
    Cc: Goldwyn Rodrigues <[email protected]>
    Cc: Jane Chu <[email protected]>
    Cc: Matthew Wilcox <[email protected]>
    Cc: Ritesh Harjani <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    djbw authored and akpm00 committed Sep 11, 2022
    Configuration menu
    Copy the full SHA
    ac87ca0 View commit details
    Browse the repository at this point in the history
  7. x86/mm: disable instrumentations of mm/pgprot.c

    Commit 4867fbb ("x86/mm: move protection_map[] inside the platform")
    moved accesses to protection_map[] from mem_encrypt_amd.c to pgprot.c.  As
    a result, the accesses are now targets of KASAN (and other
    instrumentations), leading to the crash during the boot process.
    
    Disable the instrumentations for pgprot.c like commit 67bb8e9
    ("x86/mm: Disable various instrumentations of mm/mem_encrypt.c and
    mm/tlb.c").
    
    Before this patch, my AMD machine cannot boot since v6.0-rc1 with KASAN
    enabled, without anything printed.  After the change, it successfully
    boots up.
    
    Fixes: 4867fbb ("x86/mm: move protection_map[] inside the platform")
    Link: https://lkml.kernel.org/r/[email protected]
    Signed-off-by: Naohiro Aota <[email protected]>
    Cc: Anshuman Khandual <[email protected]>
    Cc: Andy Lutomirski <[email protected]>
    Cc: Borislav Petkov <[email protected]>
    Cc: Dave Hansen <[email protected]>
    Cc: "H. Peter Anvin" <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Cc: Thomas Gleixner <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    naota authored and akpm00 committed Sep 11, 2022
    Configuration menu
    Copy the full SHA
    818c4fd View commit details
    Browse the repository at this point in the history
  8. mm/migrate_device.c: flush TLB while holding PTL

    When clearing a PTE the TLB should be flushed whilst still holding the PTL
    to avoid a potential race with madvise/munmap/etc.  For example consider
    the following sequence:
    
      CPU0                          CPU1
      ----                          ----
    
      migrate_vma_collect_pmd()
      pte_unmap_unlock()
                                    madvise(MADV_DONTNEED)
                                    -> zap_pte_range()
                                    pte_offset_map_lock()
                                    [ PTE not present, TLB not flushed ]
                                    pte_unmap_unlock()
                                    [ page is still accessible via stale TLB ]
      flush_tlb_range()
    
    In this case the page may still be accessed via the stale TLB entry after
    madvise returns.  Fix this by flushing the TLB while holding the PTL.
    
    Fixes: 8c3328f ("mm/migrate: migrate_vma() unmap page from vma while collecting pages")
    Link: https://lkml.kernel.org/r/9f801e9d8d830408f2ca27821f606e09aa856899.1662078528.git-series.apopple@nvidia.com
    Signed-off-by: Alistair Popple <[email protected]>
    Reported-by: Nadav Amit <[email protected]>
    Reviewed-by: "Huang, Ying" <[email protected]>
    Acked-by: David Hildenbrand <[email protected]>
    Acked-by: Peter Xu <[email protected]>
    Cc: Alex Sierra <[email protected]>
    Cc: Ben Skeggs <[email protected]>
    Cc: Felix Kuehling <[email protected]>
    Cc: huang ying <[email protected]>
    Cc: Jason Gunthorpe <[email protected]>
    Cc: John Hubbard <[email protected]>
    Cc: Karol Herbst <[email protected]>
    Cc: Logan Gunthorpe <[email protected]>
    Cc: Lyude Paul <[email protected]>
    Cc: Matthew Wilcox <[email protected]>
    Cc: Paul Mackerras <[email protected]>
    Cc: Ralph Campbell <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    apopple-nvidia authored and akpm00 committed Sep 11, 2022
    Configuration menu
    Copy the full SHA
    60bae73 View commit details
    Browse the repository at this point in the history
  9. mm/migrate_device.c: add missing flush_cache_page()

    Currently we only call flush_cache_page() for the anon_exclusive case,
    however in both cases we clear the pte so should flush the cache.
    
    Link: https://lkml.kernel.org/r/5676f30436ab71d1a587ac73f835ed8bd2113ff5.1662078528.git-series.apopple@nvidia.com
    Fixes: 8c3328f ("mm/migrate: migrate_vma() unmap page from vma while collecting pages")
    Signed-off-by: Alistair Popple <[email protected]>
    Reviewed-by: David Hildenbrand <[email protected]>
    Acked-by: Peter Xu <[email protected]>
    Cc: Alex Sierra <[email protected]>
    Cc: Ben Skeggs <[email protected]>
    Cc: Felix Kuehling <[email protected]>
    Cc: huang ying <[email protected]>
    Cc: "Huang, Ying" <[email protected]>
    Cc: Jason Gunthorpe <[email protected]>
    Cc: John Hubbard <[email protected]>
    Cc: Karol Herbst <[email protected]>
    Cc: Logan Gunthorpe <[email protected]>
    Cc: Lyude Paul <[email protected]>
    Cc: Matthew Wilcox <[email protected]>
    Cc: Nadav Amit <[email protected]>
    Cc: Paul Mackerras <[email protected]>
    Cc: Ralph Campbell <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    apopple-nvidia authored and akpm00 committed Sep 11, 2022
    Configuration menu
    Copy the full SHA
    a3589e1 View commit details
    Browse the repository at this point in the history
  10. mm/migrate_device.c: copy pte dirty bit to page

    migrate_vma_setup() has a fast path in migrate_vma_collect_pmd() that
    installs migration entries directly if it can lock the migrating page. 
    When removing a dirty pte the dirty bit is supposed to be carried over to
    the underlying page to prevent it being lost.
    
    Currently migrate_vma_*() can only be used for private anonymous mappings.
    That means loss of the dirty bit usually doesn't result in data loss
    because these pages are typically not file-backed.  However pages may be
    backed by swap storage which can result in data loss if an attempt is made
    to migrate a dirty page that doesn't yet have the PageDirty flag set.
    
    In this case migration will fail due to unexpected references but the
    dirty pte bit will be lost.  If the page is subsequently reclaimed data
    won't be written back to swap storage as it is considered uptodate,
    resulting in data loss if the page is subsequently accessed.
    
    Prevent this by copying the dirty bit to the page when removing the pte to
    match what try_to_migrate_one() does.
    
    Link: https://lkml.kernel.org/r/dd48e4882ce859c295c1a77612f66d198b0403f9.1662078528.git-series.apopple@nvidia.com
    Fixes: 8c3328f ("mm/migrate: migrate_vma() unmap page from vma while collecting pages")
    Signed-off-by: Alistair Popple <[email protected]>
    Acked-by: Peter Xu <[email protected]>
    Reviewed-by: "Huang, Ying" <[email protected]>
    Reported-by: "Huang, Ying" <[email protected]>
    Acked-by: David Hildenbrand <[email protected]>
    Cc: Alex Sierra <[email protected]>
    Cc: Ben Skeggs <[email protected]>
    Cc: Felix Kuehling <[email protected]>
    Cc: huang ying <[email protected]>
    Cc: Jason Gunthorpe <[email protected]>
    Cc: John Hubbard <[email protected]>
    Cc: Karol Herbst <[email protected]>
    Cc: Logan Gunthorpe <[email protected]>
    Cc: Lyude Paul <[email protected]>
    Cc: Matthew Wilcox <[email protected]>
    Cc: Nadav Amit <[email protected]>
    Cc: Paul Mackerras <[email protected]>
    Cc: Ralph Campbell <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    apopple-nvidia authored and akpm00 committed Sep 11, 2022
    Configuration menu
    Copy the full SHA
    fd35ca3 View commit details
    Browse the repository at this point in the history
  11. mm/damon/dbgfs: fix memory leak when using debugfs_lookup()

    When calling debugfs_lookup() the result must have dput() called on it,
    otherwise the memory will leak over time.  Fix this up by properly calling
    dput().
    
    Link: https://lkml.kernel.org/r/[email protected]
    Fixes: 75c1c2b ("mm/damon/dbgfs: support multiple contexts")
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Signed-off-by: SeongJae Park <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    gregkh authored and akpm00 committed Sep 11, 2022
    Configuration menu
    Copy the full SHA
    1552fd3 View commit details
    Browse the repository at this point in the history
  12. tools: fix compilation after gfp_types.h split

    When gfp_types.h was split from gfp.h, it broke the radix test suite.  Fix
    the test suite by using gfp_types.h in the tools gfp.h header.
    
    Link: https://lkml.kernel.org/r/[email protected]
    Fixes: cb5a065 (headers/deps: mm: Split <linux/gfp_types.h> out of <linux/gfp.h>)
    Signed-off-by: Matthew Wilcox (Oracle) <[email protected]>
    Reported-by: Liam R. Howlett <[email protected]>
    Reviewed-by: Yury Norov <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Matthew Wilcox (Oracle) authored and akpm00 committed Sep 11, 2022
    Configuration menu
    Copy the full SHA
    283c05f View commit details
    Browse the repository at this point in the history
  13. mm: fix VM_BUG_ON in __delete_from_swap_cache()

    Patch series "Folio fixes for 6.0".
    
    
    This patch (of 2):
    
    The recent folio conversion changed the VM_BUG_ON() to dump the folio
    we're storing instead of the entry we retrieved.  This was a mistake;
    the entry we retrieved is the more interesting page to dump.
    
    Link: https://lkml.kernel.org/r/[email protected]
    Link: https://lkml.kernel.org/r/[email protected]
    Fixes: ceff9d3 ("mm/swap: convert __delete_from_swap_cache() to a folio")
    Signed-off-by: Matthew Wilcox (Oracle) <[email protected]>
    Cc: Hugh Dickins <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Matthew Wilcox (Oracle) authored and akpm00 committed Sep 11, 2022
    Configuration menu
    Copy the full SHA
    b9eb777 View commit details
    Browse the repository at this point in the history
  14. vmscan: check folio_test_private(), not folio_get_private()

    These two predicates are the same for file pages, but are not the same for
    anonymous pages.
    
    Link: https://lkml.kernel.org/r/[email protected]
    Fixes: 07f67a8 ("mm/vmscan: convert shrink_active_list() to use a folio")
    Signed-off-by: Matthew Wilcox (Oracle) <[email protected]>
    Reported-by: Hugh Dickins <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Matthew Wilcox (Oracle) authored and akpm00 committed Sep 11, 2022
    Configuration menu
    Copy the full SHA
    36a3b14 View commit details
    Browse the repository at this point in the history
  15. mm: fix dereferencing possible ERR_PTR

    Smatch checker complains that 'secretmem_mnt' dereferencing possible
    ERR_PTR().  Let the function return if 'secretmem_mnt' is ERR_PTR, to
    avoid deferencing it.
    
    Link: https://lkml.kernel.org/r/20220904074647.GA64291@cloud-MacBookPro
    Fixes: 1507f51 ("mm: introduce memfd_secret system call to create "secret" memory areas")
    Signed-off-by: Binyi Han <[email protected]>
    Reviewed-by: Andrew Morton <[email protected]>
    Cc: Mike Rapoport <[email protected]>
    Cc: Ammar Faizi <[email protected]>
    Cc: Hagen Paul Pfeifer <[email protected]>
    Cc: James Bottomley <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    dantengknight authored and akpm00 committed Sep 11, 2022
    Configuration menu
    Copy the full SHA
    4eb5bbd View commit details
    Browse the repository at this point in the history

Commits on Sep 12, 2022

  1. ASoC: rt5640: Fix the issue of the abnormal JD2 status

    The patch fixes the issue of the abnormal JD2 status.
    
    Signed-off-by: Oder Chiou <[email protected]>
    Reported-by: Sameer Pujar <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    oder-chiou authored and broonie committed Sep 12, 2022
    Configuration menu
    Copy the full SHA
    b2ddf39 View commit details
    Browse the repository at this point in the history
  2. irqchip/stm32-exti: Remove check on always false condition

    The field drv_data is assigned during driver's probe, where it's
    already checked to be not NULL.
    
    Remove the always false check '!host_data->drv_data'.
    
    This fixes a warning "variable dereferenced before check" detected
    by '0-DAY CI Kernel Test Service'.
    
    Fixes: c297493 ("irqchip/stm32-exti: Simplify irq description table")
    Reported-by: kernel test robot <[email protected]>
    Reported-by: Dan Carpenter <[email protected]>
    Link: https://lore.kernel.org/lkml/[email protected]/
    Signed-off-by: Antonio Borneo <[email protected]>
    Signed-off-by: Marc Zyngier <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Antonio Borneo authored and Marc Zyngier committed Sep 12, 2022
    Configuration menu
    Copy the full SHA
    8fc7a61 View commit details
    Browse the repository at this point in the history
  3. irqchip/gic-v3-its: Remove cpumask_var_t allocation

    Running a PREEMPT_RT kernel based on v5.19-rc3-rt4 on an Ampere Altra
    triggers:
    
    [   22.616229] BUG: sleeping function called from invalid context at kernel/locking/spinlock_rt.c:46
    [   22.616239] in_atomic(): 1, irqs_disabled(): 128, non_block: 0, pid: 1884, name: kworker/80:1
    [   22.616243] preempt_count: 3, expected: 0
    [   22.616244] RCU nest depth: 0, expected: 0
    [...]
    [   22.616250] hardirqs last enabled at (33): _raw_spin_unlock_irq (/home/piegon01/linux/./arch/arm64/include/asm/irqflags.h:35)
    [   22.616273] hardirqs last disabled at (34): __schedule (/home/piegon01/linux/kernel/sched/core.c:6432 (discriminator 1))
    [   22.616283] softirqs last enabled at (0): copy_process (/home/piegon01/linux/./include/linux/lockdep.h:191)
    [   22.616297] softirqs last disabled at (0): 0x0
    [   22.616305] Preemption disabled at:
    [   22.616307] __setup_irq (/home/piegon01/linux/kernel/irq/manage.c:1612)
    [   22.616322] CPU: 80 PID: 1884 Comm: kworker/80:1 Tainted: G        W        [...]
    [   22.616328] Hardware name: WIWYNN Mt.Jade Server System B81.03001.0005/Mt.Jade Motherboard, BIOS 1.08.20220218 (SCP: 1.08.20220218) 2022/02/18
    [   22.616333] Workqueue: events work_for_cpu_fn
    [   22.616344] Call trace:
    [...]
    [   22.616403] alloc_cpumask_var_node (/home/piegon01/linux/lib/cpumask.c:115)
    [   22.616414] alloc_cpumask_var (/home/piegon01/linux/lib/cpumask.c:147)
    [   22.616417] its_select_cpu (/home/piegon01/linux/drivers/irqchip/irq-gic-v3-its.c:1580)
    [   22.616428] its_set_affinity (/home/piegon01/linux/drivers/irqchip/irq-gic-v3-its.c:1659)
    [   22.616431] msi_domain_set_affinity (/home/piegon01/linux/kernel/irq/msi.c:501)
    [   22.616440] irq_do_set_affinity (/home/piegon01/linux/kernel/irq/manage.c:276)
    [   22.616443] irq_setup_affinity (/home/piegon01/linux/kernel/irq/manage.c:633)
    [   22.616447] irq_startup (/home/piegon01/linux/kernel/irq/chip.c:280)
    [   22.616453] __setup_irq (/home/piegon01/linux/kernel/irq/manage.c:1777)
    
    Follow the pattern established in commit cba4235 ("genirq: Remove
    mask argument from setup_affinity()") and co to overcome this issue by
    defining a static struct cpumask and protecting it by a raw spinlock.
    
    Since its_select_cpu() can be executed with IRQs enabled or disabled,
    enforce that the cpumask computation is done with interrupts disabled.
    
    Signed-off-by: Pierre Gondois <[email protected]>
    Signed-off-by: Marc Zyngier <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    pierregondois authored and Marc Zyngier committed Sep 12, 2022
    Configuration menu
    Copy the full SHA
    f55a9b5 View commit details
    Browse the repository at this point in the history
  4. irqchip: Select downstream irqchip drivers for LoongArch CPU

    LoongArch irqchips have a fixed hierarchy which currently can't be
    described by ACPI tables, so upstream irqchip drivers call downstream
    irqchip drivers' initialization directly. As a result, the top level
    (CPU-level) irqchip driver should explicitly select downstream drivers
    to avoid build errors.
    
    Reported-by: kernel test robot <[email protected]>
    Signed-off-by: Huacai Chen <[email protected]>
    Signed-off-by: Marc Zyngier <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    chenhuacai authored and Marc Zyngier committed Sep 12, 2022
    Configuration menu
    Copy the full SHA
    8d5356f View commit details
    Browse the repository at this point in the history

Commits on Sep 13, 2022

  1. ASoC: imx-card: Fix refcount issue with of_node_put

    imx_card_parse_of will search all the node with loop,
    if there is defer probe happen in the middle of loop,
    the previous released codec node will be released
    twice, then cause refcount issue.
    
    Here assign NULL to pointer of released nodes to fix
    the issue.
    
    Fixes: aa73670 ("ASoC: imx-card: Add imx-card machine driver")
    Signed-off-by: Shengjiu Wang <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    TE-N-ShengjiuWang authored and broonie committed Sep 13, 2022
    Configuration menu
    Copy the full SHA
    d56ba9a View commit details
    Browse the repository at this point in the history

Commits on Sep 14, 2022

  1. clk: microchip: mpfs: fix clk_cfg array bounds violation

    There is an array bounds violation present during clock registration,
    triggered by current code by only specific toolchains. This seems to
    fail gracefully in v6.0-rc1, using a toolchain build from the riscv-
    gnu-toolchain repo and with clang-15, and life carries on. While
    converting the driver to use standard clock structs/ops, kernel panics
    were seen during boot when built with clang-15:
    
    [    0.581754] Unable to handle kernel NULL pointer dereference at virtual address 00000000000000b1
    [    0.591520] Oops [kdave#1]
    [    0.594045] Modules linked in:
    [    0.597435] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 6.0.0-rc1-00011-g8e1459cf4eca kdave#1
    [    0.606188] Hardware name: Microchip PolarFire-SoC Icicle Kit (DT)
    [    0.613012] epc : __clk_register+0x4a6/0x85c
    [    0.617759]  ra : __clk_register+0x49e/0x85c
    [    0.622489] epc : ffffffff803faf7c ra : ffffffff803faf74 sp : ffffffc80400b720
    [    0.630466]  gp : ffffffff810e93f8 tp : ffffffe77fe60000 t0 : ffffffe77ffb3800
    [    0.638443]  t1 : 000000000000000a t2 : ffffffffffffffff s0 : ffffffc80400b7c0
    [    0.646420]  s1 : 0000000000000001 a0 : 0000000000000001 a1 : 0000000000000000
    [    0.654396]  a2 : 0000000000000001 a3 : 0000000000000000 a4 : 0000000000000000
    [    0.662373]  a5 : ffffffff803a5810 a6 : 0000000200000022 a7 : 0000000000000006
    [    0.670350]  s2 : ffffffff81099d48 s3 : ffffffff80d6e28e s4 : 0000000000000028
    [    0.678327]  s5 : ffffffff810ed3c8 s6 : ffffffff810ed3d0 s7 : ffffffe77ffbc100
    [    0.686304]  s8 : ffffffe77ffb1540 s9 : ffffffe77ffb1540 s10: 0000000000000008
    [    0.694281]  s11: 0000000000000000 t3 : 00000000000000c6 t4 : 0000000000000007
    [    0.702258]  t5 : ffffffff810c78c0 t6 : ffffffe77ff88cd0
    [    0.708125] status: 0000000200000120 badaddr: 00000000000000b1 cause: 000000000000000d
    [    0.716869] [<ffffffff803fb892>] devm_clk_hw_register+0x62/0xaa
    [    0.723420] [<ffffffff80403412>] mpfs_clk_probe+0x1e0/0x244
    
    In v6.0-rc1 and later, this issue is visible without the follow on
    patches doing the conversion using toolchains provided by our Yocto
    meta layer too.
    
    It fails on "clk_periph_timer" - which uses a different parent, that it
    tries to find using the macro:
    \#define PARENT_CLK(PARENT) (&mpfs_cfg_clks[CLK_##PARENT].cfg.hw)
    
    If parent is RTCREF, so the macro becomes: &mpfs_cfg_clks[33].cfg.hw
    which is well beyond the end of the array. Amazingly, builds with GCC
    11.1 see no problem here, booting correctly and hooking the parent up
    etc. Builds with clang-15 do not, with the above panic.
    
    Change the macro to use specific offsets depending on the parent rather
    than the dt-binding's clock IDs.
    
    Fixes: 1c6a7ea ("clk: microchip: mpfs: add RTCREF clock control")
    CC: Nathan Chancellor <[email protected]>
    Signed-off-by: Conor Dooley <[email protected]>
    Reviewed-by: Claudiu Beznea <[email protected]>
    Signed-off-by: Claudiu Beznea <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    ConchuOD authored and claudiubeznea committed Sep 14, 2022
    Configuration menu
    Copy the full SHA
    5da39ac View commit details
    Browse the repository at this point in the history
  2. clk: microchip: mpfs: make the rtc's ahb clock critical

    The onboard RTC's AHB bus clock must be kept running as the RTC will
    stop & lose track of time if the AHB interface clock is disabled.
    
    Fixes: 635e5e7 ("clk: microchip: Add driver for Microchip PolarFire SoC")
    Signed-off-by: Conor Dooley <[email protected]>
    Signed-off-by: Claudiu Beznea <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    ConchuOD authored and claudiubeznea committed Sep 14, 2022
    Configuration menu
    Copy the full SHA
    05d2709 View commit details
    Browse the repository at this point in the history
  3. mmc: sdhci: Fix host->cmd is null

    When data crc occurs, the kernel will panic because host->cmd is null.
    
    Signed-off-by: Wenchao Chen <[email protected]>
    
    Fixes: efe8f5c ("mmc: sdhci: Capture eMMC and SD card errors")
    Cc: [email protected]
    Acked-by: Adrian Hunter <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Ulf Hansson <[email protected]>
    Wenchao Chen authored and storulf committed Sep 14, 2022
    Configuration menu
    Copy the full SHA
    faded9b View commit details
    Browse the repository at this point in the history
  4. mmc: moxart: fix 4-bit bus width and remove 8-bit bus width

    According to the datasheet [1] at page 377, 4-bit bus width is turned on by
    bit 2 of the Bus Width Register. Thus the current bitmask is wrong: define
    BUS_WIDTH_4 BIT(1)
    
    BIT(1) does not work but BIT(2) works. This has been verified on real MOXA
    hardware with FTSDC010 controller revision 1_6_0.
    
    The corrected value of BUS_WIDTH_4 mask collides with: define BUS_WIDTH_8
    BIT(2). Additionally, 8-bit bus width mode isn't supported according to the
    datasheet, so let's remove the corresponding code.
    
    [1]
    https://bitbucket.org/Kasreyn/mkrom-uc7112lx/src/master/documents/FIC8120_DS_v1.2.pdf
    
    Fixes: 1b66e94 ("mmc: moxart: Add MOXA ART SD/MMC driver")
    Signed-off-by: Sergei Antonov <[email protected]>
    Cc: Jonas Jensen <[email protected]>
    Cc: [email protected]
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Ulf Hansson <[email protected]>
    saproj authored and storulf committed Sep 14, 2022
    Configuration menu
    Copy the full SHA
    35ca91d View commit details
    Browse the repository at this point in the history
  5. arm64: dts: qcom: sc8280xp-x13s: Update firmware location

    The firmware location in linux-firmware has been changed to include the
    SoC name. So use the updated location in Thinkpad devicetree.
    
    Reviewed-by: Johan Hovold <[email protected]>
    Tested-by: Steev Klimaszewski <[email protected]>
    Signed-off-by: Manivannan Sadhasivam <[email protected]>
    Signed-off-by: Bjorn Andersson <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Mani-Sadhasivam authored and andersson committed Sep 14, 2022
    Configuration menu
    Copy the full SHA
    29f894e View commit details
    Browse the repository at this point in the history

Commits on Sep 15, 2022

  1. soc: bcm: brcmstb: biuctrl: Avoid double of_node_put()

    Commit 9a073d4 ("soc: bcm: brcmstb: biuctrl: Add missing
    of_node_put()") added what was thought to be a missing of_node_put() but
    now causes a double of_node_put() to be called, once from
    setup_hifcpubiuctrl_regs() and another time from brcmstb_biuctrl_init().
    
    Ensure that setup_hifcpubiuctrl_regs() is not calling of_node_put()
    since it is not obvious it does that on one of its parameters.
    
    Fixes: 9a073d4 ("soc: bcm: brcmstb: biuctrl: Add missing of_node_put()")
    Reported-by: Jim Quinlan <[email protected]>
    Signed-off-by: Florian Fainelli <[email protected]>
    Change-Id: I1c405c36c2f06c8b8c0f684143b7a52db7e809f0
    ffainelli committed Sep 15, 2022
    Configuration menu
    Copy the full SHA
    90d0002 View commit details
    Browse the repository at this point in the history

Commits on Sep 16, 2022

  1. irqchip/loongson-pch-lpc: Add dependence on LoongArch

    The loongson-pch-lpc driver may be selected in a random
    configuration, but it is only supported for LoongArch, So,
    the dependence on LoongArch is added for it to avoid compile
    error for a random configuration of other architetures.
    
    Reported-by: kernel test robot <[email protected]>
    Signed-off-by: Jianmin Lv <[email protected]>
    Signed-off-by: Marc Zyngier <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    lvjianmin-loongson authored and Marc Zyngier committed Sep 16, 2022
    Configuration menu
    Copy the full SHA
    e7ccba7 View commit details
    Browse the repository at this point in the history
  2. arm64: dts: qcom: sm8350: fix UFS PHY serdes size

    The size of the UFS PHY serdes register region is 0x1c4 and the
    corresponding 'reg' property should specifically not include the
    adjacent regions that are defined in the child node (e.g. tx and rx).
    
    Fixes: 59c7cf8 ("arm64: dts: qcom: sm8350: Add UFS nodes")
    Signed-off-by: Johan Hovold <[email protected]>
    Signed-off-by: Bjorn Andersson <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    jhovold authored and andersson committed Sep 16, 2022
    Configuration menu
    Copy the full SHA
    40e9541 View commit details
    Browse the repository at this point in the history

Commits on Sep 19, 2022

  1. ASoC: Intel: sof_sdw: add support for Dell SKU 0AFF

    Yet another SKU that needs a quirk for jack detection and four-speaker
    support.
    
    BugLink: thesofproject#3777
    Signed-off-by: Pierre-Louis Bossart <[email protected]>
    Reviewed-by: Péter Ujfalusi <[email protected]>
    Reviewed-by: Bard Liao <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    plbossart authored and broonie committed Sep 19, 2022
    Configuration menu
    Copy the full SHA
    4a13c94 View commit details
    Browse the repository at this point in the history
  2. ASoC: nau8824: Fix semaphore is released unexpectedly

    On resuming, we anticipate that the jack is detected before playback
    or capture. Therefore, we use semaphore to control the jack detection
    done without any bothering. During booting, the driver launches jack
    detection and releases the semaphore. However, it doesn't perceive the
    maniputation of semaphore is not like resuming procedure. This makes
    the semaphore's count value become to 2. There is more than one thread
    can enter into the critical section. This may get unexpected situation
    and make some chaos.
    
    Signed-off-by: SJLIN0 <[email protected]>
    Signed-off-by: Wallace Lin <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    SJLIN0 authored and broonie committed Sep 19, 2022
    Configuration menu
    Copy the full SHA
    7042bde View commit details
    Browse the repository at this point in the history
  3. ASoC: tas2770: Reinit regcache on reset

    On probe of the ASoC component, the device is reset but the regcache is
    retained. This means the regcache gets out of sync if the codec is
    rebound to a sound card for a second time. Fix it by reinitializing the
    regcache to defaults after the device is reset.
    
    Fixes: b0bcbe6 ("ASoC: tas2770: Fix calling reset in probe")
    Signed-off-by: Martin Povišer <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Mark Brown <[email protected]>
    povik authored and broonie committed Sep 19, 2022
    Configuration menu
    Copy the full SHA
    0a0342e View commit details
    Browse the repository at this point in the history

Commits on Sep 21, 2022

  1. mmc: core: Terminate infinite loop in SD-UHS voltage switch

    This loop intends to retry a max of 10 times, with some implicit
    termination based on the SD_{R,}OCR_S18A bit. Unfortunately, the
    termination condition depends on the value reported by the SD card
    (*rocr), which may or may not correctly reflect what we asked it to do.
    
    Needless to say, it's not wise to rely on the card doing what we expect;
    we should at least terminate the loop regardless. So, check both the
    input and output values, so we ensure we will terminate regardless of
    the SD card behavior.
    
    Note that SDIO learned a similar retry loop in commit 0797e5f
    ("mmc: core: Fixup signal voltage switch"), but that used the 'ocr'
    result, and so the current pre-terminating condition looks like:
    
        rocr & ocr & R4_18V_PRESENT
    
    (i.e., it doesn't have the same bug.)
    
    This addresses a number of crash reports seen on ChromeOS that look
    like the following:
    
        ... // lots of repeated: ...
        <4>[13142.846061] mmc1: Skipping voltage switch
        <4>[13143.406087] mmc1: Skipping voltage switch
        <4>[13143.964724] mmc1: Skipping voltage switch
        <4>[13144.526089] mmc1: Skipping voltage switch
        <4>[13145.086088] mmc1: Skipping voltage switch
        <4>[13145.645941] mmc1: Skipping voltage switch
        <3>[13146.153969] INFO: task halt:30352 blocked for more than 122 seconds.
        ...
    
    Fixes: f2119df ("mmc: sd: add support for signal voltage switch procedure")
    Cc: <[email protected]>
    Signed-off-by: Brian Norris <[email protected]>
    Reviewed-by: Guenter Roeck <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Ulf Hansson <[email protected]>
    computersforpeace authored and storulf committed Sep 21, 2022
    Configuration menu
    Copy the full SHA
    e923391 View commit details
    Browse the repository at this point in the history

Commits on Sep 22, 2022

  1. thunderbolt: Explicitly reset plug events delay back to USB4 spec value

    If any software has interacted with the USB4 registers before the Linux
    USB4 CM runs, it may have modified the plug events delay. It has been
    observed that if this value too large, it's possible that hotplugged
    devices will negotiate a fallback mode instead in Linux.
    
    To prevent this, explicitly align the plug events delay with the USB4
    spec value of 10ms.
    
    Cc: [email protected]
    Signed-off-by: Mario Limonciello <[email protected]>
    Signed-off-by: Mika Westerberg <[email protected]>
    superm1 authored and westeri committed Sep 22, 2022
    Configuration menu
    Copy the full SHA
    31f87f7 View commit details
    Browse the repository at this point in the history
  2. Merge tag 'asoc-fix-v6.0-rc6' of https://git.kernel.org/pub/scm/linux…

    …/kernel/git/broonie/sound into for-linus
    
    ASoC: Fixes for v6.0
    
    A few device specific fixes, nothing too large, and a new device
    ID for a Dell laptop.
    tiwai committed Sep 22, 2022
    Configuration menu
    Copy the full SHA
    cbdac8b View commit details
    Browse the repository at this point in the history
  3. ALSA: hda: intel-dsp-config: add missing RaptorLake PCI IDs

    These two missed IDs need to be added for dynamic selection of drivers.
    
    Signed-off-by: Pierre-Louis Bossart <[email protected]>
    Reviewed-by: Ranjani Sridharan <[email protected]>
    Reviewed-by: Kai Vehmanen <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Takashi Iwai <[email protected]>
    plbossart authored and tiwai committed Sep 22, 2022
    Configuration menu
    Copy the full SHA
    c35fbea View commit details
    Browse the repository at this point in the history
  4. reset: npcm: fix iprst2 and iprst4 setting

    In NPCM8XX USB reset sequence, iprst2 register was set with iprst4 value
    and iprst4 register wasn´t set.
    
    This fix sets the correct IP reset values in iprst2 and iprst4 registers
    in NPCM8XX USB reset sequence.
    
    Fixes: fc5d2a2 ("reset: npcm: Add NPCM8XX support")
    
    Signed-off-by: Tomer Maimon <[email protected]>
    Signed-off-by: Philipp Zabel <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    tmaimon authored and pH5 committed Sep 22, 2022
    Configuration menu
    Copy the full SHA
    ae358d7 View commit details
    Browse the repository at this point in the history

Commits on Sep 23, 2022

  1. Revert "firmware: arm_scmi: Add clock management to the SCMI power do…

    …main"
    
    This reverts commit a3b884c ("firmware: arm_scmi: Add clock management
    to the SCMI power domain").
    
    Using the GENPD_FLAG_PM_CLK tells genpd to gate/ungate the consumer
    device's clock(s) during runtime suspend/resume through the PM clock API.
    More precisely, in genpd_runtime_resume() the clock(s) for the consumer
    device would become ungated prior to the driver-level ->runtime_resume()
    callbacks gets invoked.
    
    This behaviour isn't a good fit for all platforms/drivers. For example, a
    driver may need to make some preparations of its device in its
    ->runtime_resume() callback, like calling clk_set_rate() before the
    clock(s) should be ungated. In these cases, it's easier to let the clock(s)
    to be managed solely by the driver, rather than at the PM domain level.
    
    For these reasons, let's drop the use GENPD_FLAG_PM_CLK for the SCMI PM
    domain, as to enable it to be more easily adopted across ARM platforms.
    
    Fixes: a3b884c ("firmware: arm_scmi: Add clock management to the SCMI power domain")
    Cc: Nicolas Pitre <[email protected]>
    Cc: [email protected]
    Signed-off-by: Ulf Hansson <[email protected]>
    Tested-by: Peng Fan <[email protected]>
    Acked-by: Sudeep Holla <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    storulf committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    3c66563 View commit details
    Browse the repository at this point in the history
  2. drm/bridge: lt8912b: add vsync hsync

    Currently the bridge driver does not take care whether or not the display
    needs positive/negative vertical/horizontal syncs. Pass these two flags
    to the bridge from the EDID that was read out from the display.
    
    Fixes: 30e2ae9 ("drm/bridge: Introduce LT8912B DSI to HDMI bridge")
    Signed-off-by: Philippe Schenker <[email protected]>
    Acked-by: Adrien Grassein <[email protected]>
    Signed-off-by: Neil Armstrong <[email protected]>
    Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
    Philippe Schenker authored and superna9999 committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    da73a94 View commit details
    Browse the repository at this point in the history
  3. drm/bridge: lt8912b: set hdmi or dvi mode

    The Lontium LT8912 does have a setting for DVI or HDMI. This patch reads
    from EDID what the display needs and sets it accordingly.
    
    Fixes: 30e2ae9 ("drm/bridge: Introduce LT8912B DSI to HDMI bridge")
    Signed-off-by: Philippe Schenker <[email protected]>
    Acked-by: Adrien Grassein <[email protected]>
    Signed-off-by: Neil Armstrong <[email protected]>
    Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
    Philippe Schenker authored and superna9999 committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    6dd1de1 View commit details
    Browse the repository at this point in the history
  4. drm/bridge: lt8912b: fix corrupted image output

    Correct I2C address for the register list in lt8912_write_lvds_config(),
    these registers are on the first I2C address (0x48), the current
    function is just writing garbage to the wrong registers and this creates
    multiple issues (artifacts and output completely corrupted) on some HDMI
    displays.
    
    Correct I2C address comes from Lontium documentation and it is the one
    used on other out-of-tree LT8912B drivers [1].
    
    [1] https://github.com/boundarydevices/linux/blob/boundary-imx_5.10.x_2.0.0/drivers/video/lt8912.c#L296
    
    Fixes: 30e2ae9 ("drm/bridge: Introduce LT8912B DSI to HDMI bridge")
    Signed-off-by: Francesco Dolcini <[email protected]>
    Signed-off-by: Philippe Schenker <[email protected]>
    Acked-by: Adrien Grassein <[email protected]>
    Signed-off-by: Neil Armstrong <[email protected]>
    Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
    dolcini authored and superna9999 committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    051ad27 View commit details
    Browse the repository at this point in the history
  5. tun: support not enabling carrier in TUNSETIFF

    This change adds support for not enabling carrier during TUNSETIFF
    interface creation by specifying the IFF_NO_CARRIER flag.
    
    Our tests make heavy use of tun interfaces. In some scenarios, the test
    process creates the interface but another process brings it up after the
    interface is discovered via netlink notification. In that case, it is
    not possible to create a tun/tap interface with carrier off without it
    racing against the bring up. Immediately setting carrier off via
    TUNSETCARRIER is still too late.
    
    Signed-off-by: Patrick Rohr <[email protected]>
    Cc: Maciej Żenczykowski <[email protected]>
    Cc: Lorenzo Colitti <[email protected]>
    Cc: Jason Wang <[email protected]>
    Cc: Stephen Hemminger <[email protected]>
    Cc: Nicolas Dichtel <[email protected]>
    Reviewed-by: Maciej Żenczykowski <[email protected]>
    Acked-by: Jason Wang <[email protected]>
    Reviewed-by: Nicolas Dichtel <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Patrick Rohr authored and davem330 committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    195624d View commit details
    Browse the repository at this point in the history
  6. net: macb: Fix ZynqMP SGMII non-wakeup source resume failure

    When GEM is in SGMII mode and disabled as a wakeup source, the power
    management controller can power down the entire full power domain(FPD)
    if none of the FPD devices are in use.
    
    Incase of FPD off, there are below ethernet link up issues on non-wakeup
    suspend/resume. To fix it add phy_exit() in suspend and phy_init() in the
    resume path which reinitializes PS GTR SGMII lanes.
    
    $ echo +20 > /sys/class/rtc/rtc0/wakealarm
    $ echo mem > /sys/power/state
    
    After resume:
    
    $ ifconfig eth0 up
    xilinx-psgtr fd400000.phy: lane 0 (type 10, protocol 5): PLL lock timeout
    phy phy-fd400000.phy.0: phy poweron failed --> -110
    xilinx-psgtr fd400000.phy: lane 0 (type 10, protocol 5): PLL lock timeout
    SIOCSIFFLAGS: Connection timed out
    phy phy-fd400000.phy.0: phy poweron failed --> -110
    
    Fixes: 8b73fa3 ("net: macb: Added ZynqMP-specific initialization")
    Signed-off-by: Radhey Shyam Pandey <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Radhey Shyam Pandey authored and davem330 committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    f22bd29 View commit details
    Browse the repository at this point in the history
  7. ARM: sunplus: fix serial console kconfig and build problems

    Fix kconfig dependency warnings and subsequent build errors:
    
    WARNING: unmet direct dependencies detected for SERIAL_SUNPLUS
      Depends on [n]: TTY [=n] && HAS_IOMEM [=y] && (ARCH_SUNPLUS [=y] || COMPILE_TEST [=n])
      Selected by [y]:
      - SOC_SP7021 [=y] && ARCH_SUNPLUS [=y]
    
    WARNING: unmet direct dependencies detected for SERIAL_SUNPLUS_CONSOLE
      Depends on [n]: TTY [=n] && HAS_IOMEM [=y] && SERIAL_SUNPLUS [=y]
      Selected by [y]:
      - SOC_SP7021 [=y] && ARCH_SUNPLUS [=y]
    
    (samples, not all:)
    drivers/tty/serial/sunplus-uart.c:342: undefined reference to `uart_get_baud_rate'
    arm-linux-gnueabi-ld: drivers/tty/serial/sunplus-uart.c:379: undefined reference to `uart_update_timeout'
    drivers/tty/serial/sunplus-uart.c:526: undefined reference to `uart_console_write'
    arm-linux-gnueabi-ld: drivers/tty/serial/sunplus-uart.c:274: undefined reference to `tty_flip_buffer_push'
    arm-linux-gnueabi-ld: drivers/tty/serial/sunplus-uart.o:(.data+0xa8): undefined reference to `uart_console_device'
    drivers/tty/serial/sunplus-uart.c:720: undefined reference to `uart_register_driver'
    arm-linux-gnueabi-ld: drivers/tty/serial/sunplus-uart.c:726: undefined reference to `uart_unregister_driver'
    drivers/tty/serial/sunplus-uart.c:551: undefined reference to `uart_parse_options'
    arm-linux-gnueabi-ld: drivers/tty/serial/sunplus-uart.c:553: undefined reference to `uart_set_options'
    
    This is the same technique that is used 2 times in
    arch/arm/mach-versatile/Kconfig.
    
    Fixes: 0aa94ee ("ARM: sunplus: Add initial support for Sunplus SP7021 SoC")
    Reported-by: kernel test robot <[email protected]>
    Signed-off-by: Randy Dunlap <[email protected]>
    Cc: Qin Jian <[email protected]>
    Cc: Necip Fazil Yildiran <[email protected]>
    Cc: Arnd Bergmann <[email protected]>
    Cc: [email protected]
    Cc: [email protected]
    Signed-off-by: Arnd Bergmann <[email protected]>
    rddunlap authored and arndb committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    1e6989a View commit details
    Browse the repository at this point in the history
  8. Merge tag 'omap-for-6.0/fixes-signed' of git://git.kernel.org/pub/scm…

    …/linux/kernel/git/tmlind/linux-omap into arm/fixes
    
    Two fixes for omaps
    
    A fix to remove usb4 from am5748 as it does not exist on the SoC, and
    a fix for am335x mmc dma that wired direct and should not use the xbar.
    
    Note that the am5748 fix depends on the recent deferred probe regression
    fixes to boot. I ended up picking the merge commit to base it on as it
    describes what got fixed quite nicely rather than a -rc tag.
    
    * tag 'omap-for-6.0/fixes-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
      ARM: dts: am5748: keep usb4_tm disabled
      ARM: dts: am33xx: Fix MMCHS0 dma properties
    
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Arnd Bergmann <[email protected]>
    arndb committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    415da41 View commit details
    Browse the repository at this point in the history
  9. Merge tag 'arm-soc/for-6.0/drivers-fixes-v2' of https://github.com/Br…

    …oadcom/stblinux into arm/fixes
    
    This pull request contains Broadcom SoCs driver fixes for 6.0, please
    pull the following:
    
    - Florian fixes a double of_node_put() in the Broadcom STB Bus Interface
      Unit driver
    
    * tag 'arm-soc/for-6.0/drivers-fixes-v2' of https://github.com/Broadcom/stblinux:
      soc: bcm: brcmstb: biuctrl: Avoid double of_node_put()
    
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Arnd Bergmann <[email protected]>
    arndb committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    b58e731 View commit details
    Browse the repository at this point in the history
  10. Merge tag 'sunxi-drivers-fixes-for-6.0-1' of https://git.kernel.org/p…

    …ub/scm/linux/kernel/git/sunxi/linux into arm/fixes
    
    sunxi SRAM controller fixes for
    - loading/unloading
    - claiming regions
    - debugfs info
    
    * tag 'sunxi-drivers-fixes-for-6.0-1' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
      soc: sunxi: sram: Fix debugfs info for A64 SRAM C
      soc: sunxi: sram: Fix probe function ordering issues
      soc: sunxi: sram: Prevent the driver from being unbound
      soc: sunxi: sram: Actually claim SRAM regions
    
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Arnd Bergmann <[email protected]>
    arndb committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    7e1e2ac View commit details
    Browse the repository at this point in the history
  11. MAINTAINERS: rectify file entry in TEAM DRIVER

    Commit bbb774d ("net: Add tests for bonding and team address list
    management") adds the net team driver tests in the directory:
    
      tools/testing/selftests/drivers/net/team/
    
    The file entry in MAINTAINERS for the TEAM DRIVER however refers to:
    
      tools/testing/selftests/net/team/
    
    Hence, ./scripts/get_maintainer.pl --self-test=patterns complains about a
    broken file pattern.
    
    Repair this file entry in TEAM DRIVER.
    
    Signed-off-by: Lukas Bulwahn <[email protected]>
    Acked-by: Benjamin Poirier <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    bulwahn authored and kuba-moo committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    f8497b3 View commit details
    Browse the repository at this point in the history
  12. net: mt7531: only do PLL once after the reset

    Move the PLL init of the switch out of the pad configuration of the port
    6 (usally cpu port).
    
    Fix a unidirectional 100 mbit limitation on 1 gbit or 2.5 gbit links for
    outbound traffic on port 5 or port 6.
    
    Fixes: c288575 ("net: dsa: mt7530: Add the support of MT7531 switch")
    Cc: [email protected]
    Signed-off-by: Alexander Couzens <[email protected]>
    Signed-off-by: Jakub Kicinski <[email protected]>
    lynxis authored and kuba-moo committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    42bc4fa View commit details
    Browse the repository at this point in the history
  13. net: mt7531: ensure all MACs are powered down before reset

    The datasheet [1] explicit describes it as requirement for a reset.
    
    [1] MT7531 Reference Manual for Development Board rev 1.0, page 735
    
    Signed-off-by: Alexander Couzens <[email protected]>
    Signed-off-by: Jakub Kicinski <[email protected]>
    lynxis authored and kuba-moo committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    728c2af View commit details
    Browse the repository at this point in the history
  14. Merge branch 'net-mt7531-pll-reset-fixes'

    Alexander Couzens says:
    
    ====================
    net: mt7531: pll & reset fixes
    ====================
    
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    kuba-moo committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    6bf8e84 View commit details
    Browse the repository at this point in the history
  15. Revert "drm: bridge: analogix/dp: add panel prepare/unprepare in susp…

    …end/resume time"
    
    This reverts commit 211f276.
    
    For quite some time, core DRM helpers already ensure that any relevant
    connectors/CRTCs/etc. are disabled, as well as their associated
    components (e.g., bridges) when suspending the system. Thus,
    analogix_dp_bridge_{enable,disable}() already get called, which in turn
    call drm_panel_{prepare,unprepare}(). This makes these drm_panel_*()
    calls redundant.
    
    Besides redundancy, there are a few problems with this handling:
    
    (1) drm_panel_{prepare,unprepare}() are *not* reference-counted APIs and
    are not in general designed to be handled by multiple callers --
    although some panel drivers have a coarse 'prepared' flag that mitigates
    some damage, at least. So at a minimum this is redundant and confusing,
    but in some cases, this could be actively harmful.
    
    (2) The error-handling is a bit non-standard. We ignored errors in
    suspend(), but handled errors in resume(). And recently, people noticed
    that the clk handling is unbalanced in error paths, and getting *that*
    right is not actually trivial, given the current way errors are mostly
    ignored.
    
    (3) In the particular way analogix_dp_{suspend,resume}() get used (e.g.,
    in rockchip_dp_*(), as a late/early callback), we don't necessarily have
    a proper PM relationship between the DP/bridge device and the panel
    device. So while the DP bridge gets resumed, the panel's parent device
    (e.g., platform_device) may still be suspended, and so any prepare()
    calls may fail.
    
    So remove the superfluous, possibly-harmful suspend()/resume() handling
    of panel state.
    
    Fixes: 211f276 ("drm: bridge: analogix/dp: add panel prepare/unprepare in suspend/resume time")
    Link: https://lore.kernel.org/all/Yv2CPBD3Picg%[email protected]/
    Signed-off-by: Brian Norris <[email protected]>
    Reviewed-by: Douglas Anderson <[email protected]>
    Signed-off-by: Douglas Anderson <[email protected]>
    Link: https://patchwork.freedesktop.org/patch/msgid/20220822180729.1.I8ac5abe3a4c1c6fd5c061686c6e883c22f69022c@changeid
    computersforpeace authored and dianders committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    cc62d98 View commit details
    Browse the repository at this point in the history
  16. ARM: dts: integrator: Tag PCI host with device_type

    The DT parser is dependent on the PCI device being tagged as
    device_type = "pci" in order to parse memory ranges properly.
    Fix this up.
    
    Signed-off-by: Linus Walleij <[email protected]>
    Cc: [email protected]
    Link: https://lore.kernel.org/r/[email protected]'
    Signed-off-by: Arnd Bergmann <[email protected]>
    linusw authored and arndb committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    4952aa6 View commit details
    Browse the repository at this point in the history
  17. Merge tag 'qcom-arm64-fixes-for-6.0' of https://git.kernel.org/pub/sc…

    …m/linux/kernel/git/qcom/linux into arm/fixes
    
    Qualcomm ARM64 DTS fixes for 6.0
    
    This corrects invalid IOMMU streams for the SM8150 CDSP FastRPC, moves
    the wakeup-source of SC7280 USB nodes to the correct place, fixes the
    SM8350 UFS PHY serdes size to not overlap with the other subnodes and
    updates the firmware location for the Lenovo ThinkPad X13s to match the
    movement in linux-firmware.
    
    It also updates MAINTAINERS and .mailmap to reflect the changes in my
    email address.
    
    * tag 'qcom-arm64-fixes-for-6.0' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux:
      arm64: dts: qcom: sm8350: fix UFS PHY serdes size
      arm64: dts: qcom: sc8280xp-x13s: Update firmware location
      MAINTAINERS: Update Bjorn's email address
      arm64: dts: qcom: sc7280: move USB wakeup-source property
      arm64: dts: qcom: thinkpad-x13s: Fix firmware location
      arm64: dts: qcom: sm8150: Fix fastrpc iommu values
    
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Arnd Bergmann <[email protected]>
    arndb committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    c69badd View commit details
    Browse the repository at this point in the history
  18. Merge tag 'reset-fixes-for-v6.0' of git://git.pengutronix.de/pza/linu…

    …x into arm/fixes
    
    Reset controller fixes for v6.0
    
    Fix the i.MX8MP PCIe PHY PERST bit polarity, issue the Sparx5 "switch"
    reset (which turned out to be a rather more global reset) early on
    startup, stubbing out the reset controller driver, and fix the NPCM8XX
    USB reset sequence by setting IPSRST4 bits in the correct register.
    
    * tag 'reset-fixes-for-v6.0' of git://git.pengutronix.de/pza/linux:
      reset: npcm: fix iprst2 and iprst4 setting
      reset: microchip-sparx5: issue a reset on startup
      reset: imx7: Fix the iMX8MP PCIe PHY PERST support
    
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Arnd Bergmann <[email protected]>
    arndb committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    2653853 View commit details
    Browse the repository at this point in the history
  19. ACPI: processor idle: Practically limit "Dummy wait" workaround to ol…

    …d Intel systems
    
    Old, circa 2002 chipsets have a bug: they don't go idle when they are
    supposed to.  So, a workaround was added to slow the CPU down and
    ensure that the CPU waits a bit for the chipset to actually go idle.
    This workaround is ancient and has been in place in some form since
    the original kernel ACPI implementation.
    
    But, this workaround is very painful on modern systems.  The "inl()"
    can take thousands of cycles (see Link: for some more detailed
    numbers and some fun kernel archaeology).
    
    First and foremost, modern systems should not be using this code.
    Typical Intel systems have not used it in over a decade because it is
    horribly inferior to MWAIT-based idle.
    
    Despite this, people do seem to be tripping over this workaround on
    AMD system today.
    
    Limit the "dummy wait" workaround to Intel systems.  Keep Modern AMD
    systems from tripping over the workaround.  Remotely modern Intel
    systems use intel_idle instead of this code and will, in practice,
    remain unaffected by the dummy wait.
    
    Reported-by: K Prateek Nayak <[email protected]>
    Suggested-by: Rafael J. Wysocki <[email protected]>
    Signed-off-by: Dave Hansen <[email protected]>
    Reviewed-by: Mario Limonciello <[email protected]>
    Tested-by: K Prateek Nayak <[email protected]>
    Link: https://lore.kernel.org/all/[email protected]/
    Link: https://lkml.kernel.org/r/[email protected]
    davehansenintel authored and hansendc committed Sep 23, 2022
    Configuration menu
    Copy the full SHA
    e400ad8 View commit details
    Browse the repository at this point in the history

Commits on Sep 24, 2022

  1. sfc: correct filter_table_remove method for EF10 PFs

    A previous patch added a wrapper function to take a lock around
     efx_mcdi_filter_table_remove(), but only changed EF10 VFs' method table
     to call it.  Change it in the PF method table too.
    
    Fixes: 77eb407 ("sfc: move table locking into filter_table_{probe,remove} methods")
    Signed-off-by: Andy Moreton <[email protected]>
    Signed-off-by: Edward Cree <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    amoreton-xilinx authored and kuba-moo committed Sep 24, 2022
    Configuration menu
    Copy the full SHA
    b7ca8d5 View commit details
    Browse the repository at this point in the history

Commits on Sep 25, 2022

  1. Input: melfas_mip4 - fix return value check in mip4_probe()

    devm_gpiod_get_optional() may return ERR_PTR(-EPROBE_DEFER),
    add a minus sign to fix it.
    
    Fixes: 6ccb1d8 ("Input: add MELFAS MIP4 Touchscreen driver")
    Signed-off-by: Yang Yingliang <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Dmitry Torokhov <[email protected]>
    Yang Yingliang authored and dtor committed Sep 25, 2022
    Configuration menu
    Copy the full SHA
    a54dc27 View commit details
    Browse the repository at this point in the history
  2. Input: iqs62x-keys - drop unused device node references

    Each call to device/fwnode_get_named_child_node() must be matched
    with a call to fwnode_handle_put() once the corresponding node is
    no longer in use. This ensures a reference count remains balanced
    in the case of dynamic device tree support.
    
    Currently, the driver never calls fwnode_handle_put(). This patch
    adds the missing calls.
    
    Fixes: ce1cb0e ("input: keyboard: Add support for Azoteq IQS620A/621/622/624/625")
    Signed-off-by: Jeff LaBundy <[email protected]>
    Reviewed-by: Mattijs Korpershoek <[email protected]>
    Link: https://lore.kernel.org/r/YyYbYvlkq5cy55dc@nixie71
    Signed-off-by: Dmitry Torokhov <[email protected]>
    jlabundy authored and dtor committed Sep 25, 2022
    Configuration menu
    Copy the full SHA
    e336d85 View commit details
    Browse the repository at this point in the history
  3. Input: synaptics - disable Intertouch for Lenovo T14 and P14s AMD G1

    Since intertouch was enabled for the T14 and P14s AMD G1 laptops there
    have been a number of reports of touchpads not working well.
    
    Debugging this with Synaptics they noted that intertouch should not be
    enabled as SMBUS host notify is not available on these laptops.
    
    Reverting the previous commit (e4ce4d3)
    to restore functionality back to what it was.
    
    Note - we are working with Synaptics to see if there is a better
    solution, but nothing is confirmed as yet.
    
    Signed-off-by: Mark Pearson <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Dmitry Torokhov <[email protected]>
    mrhpearson authored and dtor committed Sep 25, 2022
    Configuration menu
    Copy the full SHA
    2fd003e View commit details
    Browse the repository at this point in the history

Commits on Sep 26, 2022

  1. gpio: mvebu: Fix check for pwm support on non-A8K platforms

    pwm support incompatible with Armada 80x0/70x0 API is not only in
    Armada 370, but also in Armada XP, 38x and 39x. So basically every non-A8K
    platform. Fix check for pwm support appropriately.
    
    Fixes: 85b7d8a ("gpio: mvebu: add pwm support for Armada 8K/7K")
    Signed-off-by: Pali Rohár <[email protected]>
    Signed-off-by: Bartosz Golaszewski <[email protected]>
    pali authored and brgl committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    4335417 View commit details
    Browse the repository at this point in the history
  2. perf tools: Get a perf cgroup more portably in BPF

    The perf_event_cgrp_id can be different on other configurations.
    
    To be more portable as CO-RE, it needs to get the cgroup subsys id using
    the bpf_core_enum_value() helper.
    
    Suggested-by: Ian Rogers <[email protected]>
    Reviewed-by: Ian Rogers <[email protected]>
    Signed-off-by: Namhyung Kim <[email protected]>
    Cc: Adrian Hunter <[email protected]>
    Cc: Hao Luo <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Cc: Song Liu <[email protected]>
    Cc: [email protected]
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    namhyung authored and acmel committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    e42c9c5 View commit details
    Browse the repository at this point in the history
  3. perf print-events: Fix "perf list" can not display the PMU prefix for…

    … some hybrid cache events
    
    Some hybrid hardware cache events are only available on one CPU PMU. For
    example, 'L1-dcache-load-misses' is only available on cpu_core.
    
    We have supported in the perf list clearly reporting this info, the
    function works fine before but recently the argument "config" in API
    is_event_supported() is changed from "u64" to "unsigned int" which
    caused a regression, the "perf list" then can not display the PMU prefix
    for some hybrid cache events.
    
    For the hybrid systems, the PMU type ID is stored at config[63:32],
    define config to "unsigned int" will miss the PMU type ID information,
    then the regression happened, the config should be defined as "u64".
    
    Before:
     # ./perf list |grep "Hardware cache event"
      L1-dcache-load-misses                              [Hardware cache event]
      L1-dcache-loads                                    [Hardware cache event]
      L1-dcache-stores                                   [Hardware cache event]
      L1-icache-load-misses                              [Hardware cache event]
      L1-icache-loads                                    [Hardware cache event]
      LLC-load-misses                                    [Hardware cache event]
      LLC-loads                                          [Hardware cache event]
      LLC-store-misses                                   [Hardware cache event]
      LLC-stores                                         [Hardware cache event]
      branch-load-misses                                 [Hardware cache event]
      branch-loads                                       [Hardware cache event]
      dTLB-load-misses                                   [Hardware cache event]
      dTLB-loads                                         [Hardware cache event]
      dTLB-store-misses                                  [Hardware cache event]
      dTLB-stores                                        [Hardware cache event]
      iTLB-load-misses                                   [Hardware cache event]
      node-load-misses                                   [Hardware cache event]
      node-loads                                         [Hardware cache event]
    
    After:
     # ./perf list |grep "Hardware cache event"
      L1-dcache-loads                                    [Hardware cache event]
      L1-dcache-stores                                   [Hardware cache event]
      L1-icache-load-misses                              [Hardware cache event]
      LLC-load-misses                                    [Hardware cache event]
      LLC-loads                                          [Hardware cache event]
      LLC-store-misses                                   [Hardware cache event]
      LLC-stores                                         [Hardware cache event]
      branch-load-misses                                 [Hardware cache event]
      branch-loads                                       [Hardware cache event]
      cpu_atom/L1-icache-loads/                          [Hardware cache event]
      cpu_core/L1-dcache-load-misses/                    [Hardware cache event]
      cpu_core/node-load-misses/                         [Hardware cache event]
      cpu_core/node-loads/                               [Hardware cache event]
      dTLB-load-misses                                   [Hardware cache event]
      dTLB-loads                                         [Hardware cache event]
      dTLB-store-misses                                  [Hardware cache event]
      dTLB-stores                                        [Hardware cache event]
      iTLB-load-misses                                   [Hardware cache event]
    
    Fixes: 9b7c772 ("perf parse-events: Break out tracepoint and printing")
    Reported-by: Yi Ammy <[email protected]>
    Reviewed-by: Kan Liang <[email protected]>
    Signed-off-by: Xing Zhengjun <[email protected]>
    Acked-by: Ian Rogers <[email protected]>
    Cc: Alexander Shishkin <[email protected]>
    Cc: Andi Kleen <[email protected]>
    Cc: Ian Rogers <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: Namhyung Kim <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    ZhengjunXing authored and acmel committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    e28c078 View commit details
    Browse the repository at this point in the history
  4. perf parse-events: Remove "not supported" hybrid cache events

    By default, we create two hybrid cache events, one is for cpu_core, and
    another is for cpu_atom. But Some hybrid hardware cache events are only
    available on one CPU PMU. For example, the 'L1-dcache-load-misses' is only
    available on cpu_core, while the 'L1-icache-loads' is only available on
    cpu_atom. We need to remove "not supported" hybrid cache events. By
    extending is_event_supported() to global API and using it to check if the
    hybrid cache events are supported before being created, we can remove the
    "not supported" hybrid cache events.
    
    Before:
    
     # ./perf stat -e L1-dcache-load-misses,L1-icache-loads -a sleep 1
    
     Performance counter stats for 'system wide':
    
                52,570      cpu_core/L1-dcache-load-misses/
       <not supported>      cpu_atom/L1-dcache-load-misses/
       <not supported>      cpu_core/L1-icache-loads/
             1,471,817      cpu_atom/L1-icache-loads/
    
           1.004915229 seconds time elapsed
    
    After:
    
     # ./perf stat -e L1-dcache-load-misses,L1-icache-loads -a sleep 1
    
     Performance counter stats for 'system wide':
    
                54,510      cpu_core/L1-dcache-load-misses/
             1,441,286      cpu_atom/L1-icache-loads/
    
           1.005114281 seconds time elapsed
    
    Fixes: 30def61 ("perf parse-events: Create two hybrid cache events")
    Reported-by: Yi Ammy <[email protected]>
    Reviewed-by: Kan Liang <[email protected]>
    Signed-off-by: Xing Zhengjun <[email protected]>
    Acked-by: Ian Rogers <[email protected]>
    Cc: Alexander Shishkin <[email protected]>
    Cc: Andi Kleen <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: Jin Yao <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: Namhyung Kim <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    ZhengjunXing authored and acmel committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    71c86cd View commit details
    Browse the repository at this point in the history
  5. perf tests powerpc: Fix branch stack sampling test to include sanity …

    …check for branch filter
    
    Commit b55878c ("perf test: Add test for branch stack
    sampling") added test for branch stack sampling. There is a sanity check
    in the beginning to skip the test if the hardware doesn't support branch
    stack sampling.
    
    Snippet
    <<>>
    skip the test if the hardware doesn't support branch stack sampling
    perf record -b -o- -B true > /dev/null 2>&1 || exit 2
    <<>>
    
    But the testcase also uses branch sample types: save_type, any. if any
    platform doesn't support the branch filters used in the test, the testcase
    will fail. In powerpc, currently mutliple branch filters are not supported
    and hence this test fails in powerpc. Fix the sanity check to look at
    the support for branch filters used in this test before proceeding with
    the test.
    
    Fixes: b55878c ("perf test: Add test for branch stack sampling")
    Reported-by: Disha Goel <[email protected]>
    Reviewed-by: Kajol Jain <[email protected]>
    Signed-off-by: Athira Jajeev <[email protected]>
    Cc: German Gomez <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: [email protected]
    Cc: Madhavan Srinivasan <[email protected]>
    Cc: Michael Ellerman <[email protected]>
    Cc: Nageswara R Sastry <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    athira-rajeev authored and acmel committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    f4a2aad View commit details
    Browse the repository at this point in the history
  6. drm/i915/gt: Restrict forced preemption to the active context

    When we submit a new pair of contexts to ELSP for execution, we start a
    timer by which point we expect the HW to have switched execution to the
    pending contexts. If the promotion to the new pair of contexts has not
    occurred, we declare the executing context to have hung and force the
    preemption to take place by resetting the engine and resubmitting the
    new contexts.
    
    This can lead to an unfair situation where almost all of the preemption
    timeout is consumed by the first context which just switches into the
    second context immediately prior to the timer firing and triggering the
    preemption reset (assuming that the timer interrupts before we process
    the CS events for the context switch). The second context hasn't yet had
    a chance to yield to the incoming ELSP (and send the ACk for the
    promotion) and so ends up being blamed for the reset.
    
    If we see that a context switch has occurred since setting the
    preemption timeout, but have not yet received the ACK for the ELSP
    promotion, rearm the preemption timer and check again. This is
    especially significant if the first context was not schedulable and so
    we used the shortest timer possible, greatly increasing the chance of
    accidentally blaming the second innocent context.
    
    Fixes: 3a7a92a ("drm/i915/execlists: Force preemption")
    Fixes: d12acee ("drm/i915/execlists: Cancel banned contexts on schedule-out")
    Reported-by: Tvrtko Ursulin <[email protected]>
    Signed-off-by: Chris Wilson <[email protected]>
    Cc: Tvrtko Ursulin <[email protected]>
    Cc: Andi Shyti <[email protected]>
    Reviewed-by: Andrzej Hajda <[email protected]>
    Tested-by: Andrzej Hajda <[email protected]>
    Cc: <[email protected]> # v5.5+
    Signed-off-by: Andi Shyti <[email protected]>
    Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
    (cherry picked from commit 107ba1a)
    Signed-off-by: Rodrigo Vivi <[email protected]>
    ickle authored and rodrigovivi committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    6ef7d36 View commit details
    Browse the repository at this point in the history
  7. Revert "net: mvpp2: debugfs: fix memory leak when using debugfs_looku…

    …p()"
    
    This reverts commit fe2c9c6.
    
    On Tue, Sep 13, 2022 at 05:48:58PM +0100, Russell King (Oracle) wrote:
    >What happens if this is built as a module, and the module is loaded,
    >binds (and creates the directory), then is removed, and then re-
    >inserted?  Nothing removes the old directory, so doesn't
    >debugfs_create_dir() fail, resulting in subsequent failure to add
    >any subsequent debugfs entries?
    >
    >I don't think this patch should be backported to stable trees until
    >this point is addressed.
    
    Revert until a proper fix is available as the original behavior was
    better.
    
    Cc: Marcin Wojtas <[email protected]>
    Cc: Eric Dumazet <[email protected]>
    Cc: Paolo Abeni <[email protected]>
    Cc: [email protected]
    Reported-by: Russell King <[email protected]>
    Fixes: fe2c9c6 ("net: mvpp2: debugfs: fix memory leak when using debugfs_lookup()")
    Signed-off-by: Sasha Levin <[email protected]>
    Reviewed-by: Greg Kroah-Hartman <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    Sasha Levin authored and kuba-moo committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    6052a4c View commit details
    Browse the repository at this point in the history
  8. ext4: fixup possible uninitialized variable access in ext4_mb_choose_…

    …next_group_cr1()
    
    Variable 'grp' may be left uninitialized if there's no group with
    suitable average fragment size (or larger). Fix the problem by
    initializing it earlier.
    
    Link: https://lore.kernel.org/r/20220922091542.pkhedytey7wzp5fi@quack3
    Fixes: 83e80a6 ("ext4: use buckets for cr 1 block scan instead of rbtree")
    Cc: [email protected]
    Reported-by: Dan Carpenter <[email protected]>
    Signed-off-by: Jan Kara <[email protected]>
    Signed-off-by: Theodore Ts'o <[email protected]>
    jankara authored and tytso committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    a078dff View commit details
    Browse the repository at this point in the history
  9. io_uring: register single issuer task at creation

    Instead of picking the task from the first submitter task, rather use the
    creator task or in the case of disabled (IORING_SETUP_R_DISABLED) the
    enabling task.
    
    This approach allows a lot of simplification of the logic here. This
    removes init logic from the submission path, which can always be a bit
    confusing, but also removes the need for locking to write (or read) the
    submitter_task.
    
    Users that want to move a ring before submitting can create the ring
    disabled and then enable it on the submitting task.
    
    Signed-off-by: Dylan Yudaken <[email protected]>
    Fixes: 97bbdc0 ("io_uring: add IORING_SETUP_SINGLE_ISSUER")
    Signed-off-by: Jens Axboe <[email protected]>
    Dylan Yudaken authored and axboe committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    7cae596 View commit details
    Browse the repository at this point in the history
  10. usbnet: Fix memory leak in usbnet_disconnect()

    Currently usbnet_disconnect() unanchors and frees all deferred URBs
    using usb_scuttle_anchored_urbs(), which does not free urb->context,
    causing a memory leak as reported by syzbot.
    
    Use a usb_get_from_anchor() while loop instead, similar to what we did
    in commit 19cfe91 ("Bluetooth: btusb: Fix memory leak in
    play_deferred").  Also free urb->sg.
    
    Reported-and-tested-by: [email protected]
    Fixes: 69ee472 ("usbnet & cdc-ether: Autosuspend for online devices")
    Fixes: 638c511 ("USBNET: support DMA SG")
    Signed-off-by: Peilin Ye <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    peilin-ye authored and kuba-moo committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    a432061 View commit details
    Browse the repository at this point in the history
  11. mm: gup: fix the fast GUP race against THP collapse

    Since general RCU GUP fast was introduced in commit 2667f50 ("mm:
    introduce a general RCU get_user_pages_fast()"), a TLB flush is no longer
    sufficient to handle concurrent GUP-fast in all cases, it only handles
    traditional IPI-based GUP-fast correctly.  On architectures that send an
    IPI broadcast on TLB flush, it works as expected.  But on the
    architectures that do not use IPI to broadcast TLB flush, it may have the
    below race:
    
       CPU A                                          CPU B
    THP collapse                                     fast GUP
                                                  gup_pmd_range() <-- see valid pmd
                                                      gup_pte_range() <-- work on pte
    pmdp_collapse_flush() <-- clear pmd and flush
    __collapse_huge_page_isolate()
        check page pinned <-- before GUP bump refcount
                                                          pin the page
                                                          check PTE <-- no change
    __collapse_huge_page_copy()
        copy data to huge page
        ptep_clear()
    install huge pmd for the huge page
                                                          return the stale page
    discard the stale page
    
    The race can be fixed by checking whether PMD is changed or not after
    taking the page pin in fast GUP, just like what it does for PTE.  If the
    PMD is changed it means there may be parallel THP collapse, so GUP should
    back off.
    
    Also update the stale comment about serializing against fast GUP in
    khugepaged.
    
    Link: https://lkml.kernel.org/r/[email protected]
    Fixes: 2667f50 ("mm: introduce a general RCU get_user_pages_fast()")
    Acked-by: David Hildenbrand <[email protected]>
    Acked-by: Peter Xu <[email protected]>
    Signed-off-by: Yang Shi <[email protected]>
    Reviewed-by: John Hubbard <[email protected]>
    Cc: "Aneesh Kumar K.V" <[email protected]>
    Cc: Hugh Dickins <[email protected]>
    Cc: Jason Gunthorpe <[email protected]>
    Cc: "Kirill A. Shutemov" <[email protected]>
    Cc: Michael Ellerman <[email protected]>
    Cc: Nicholas Piggin <[email protected]>
    Cc: Christophe Leroy <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    yang-shi authored and akpm00 committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    70cbc3c View commit details
    Browse the repository at this point in the history
  12. powerpc/64s/radix: don't need to broadcast IPI for radix pmd collapse…

    … flush
    
    The IPI broadcast is used to serialize against fast-GUP, but fast-GUP will
    move to use RCU instead of disabling local interrupts in fast-GUP.  Using
    an IPI is the old-styled way of serializing against fast-GUP although it
    still works as expected now.
    
    And fast-GUP now fixed the potential race with THP collapse by checking
    whether PMD is changed or not.  So IPI broadcast in radix pmd collapse
    flush is not necessary anymore.  But it is still needed for hash TLB.
    
    Link: https://lkml.kernel.org/r/[email protected]
    Suggested-by: Aneesh Kumar K.V <[email protected]>
    Signed-off-by: Yang Shi <[email protected]>
    Acked-by: David Hildenbrand <[email protected]>
    Acked-by: Peter Xu <[email protected]>
    Cc: Christophe Leroy <[email protected]>
    Cc: Hugh Dickins <[email protected]>
    Cc: Jason Gunthorpe <[email protected]>
    Cc: John Hubbard <[email protected]>
    Cc: "Kirill A. Shutemov" <[email protected]>
    Cc: Michael Ellerman <[email protected]>
    Cc: Nicholas Piggin <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    yang-shi authored and akpm00 committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    bedf034 View commit details
    Browse the repository at this point in the history
  13. mm: fix madivse_pageout mishandling on non-LRU page

    MADV_PAGEOUT tries to isolate non-LRU pages and gets a warning from
    isolate_lru_page below.
    
    Fix it by checking PageLRU in advance.
    
    ------------[ cut here ]------------
    trying to isolate tail page
    WARNING: CPU: 0 PID: 6175 at mm/folio-compat.c:158 isolate_lru_page+0x130/0x140
    Modules linked in:
    CPU: 0 PID: 6175 Comm: syz-executor.0 Not tainted 5.18.12 kdave#1
    Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.13.0-1ubuntu1.1 04/01/2014
    RIP: 0010:isolate_lru_page+0x130/0x140
    
    Link: https://lore.kernel.org/linux-mm/[email protected]/
    Link: https://lkml.kernel.org/r/[email protected]
    Fixes: 1a4e58c ("mm: introduce MADV_PAGEOUT")
    Signed-off-by: Minchan Kim <[email protected]>
    Reported-by: 韩天ç`� <[email protected]>
    Suggested-by: Yang Shi <[email protected]>
    Acked-by: Yang Shi <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    minchank authored and akpm00 committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    58d426a View commit details
    Browse the repository at this point in the history
  14. mm/huge_memory: use pfn_to_online_page() in split_huge_pages_all()

    NULL pointer dereference is triggered when calling thp split via debugfs
    on the system with offlined memory blocks.  With debug option enabled, the
    following kernel messages are printed out:
    
      page:00000000467f4890 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x121c000
      flags: 0x17fffc00000000(node=0|zone=2|lastcpupid=0x1ffff)
      raw: 0017fffc00000000 0000000000000000 dead000000000122 0000000000000000
      raw: 0000000000000000 0000000000000000 00000001ffffffff 0000000000000000
      page dumped because: unmovable page
      page:000000007d7ab72e is uninitialized and poisoned
      page dumped because: VM_BUG_ON_PAGE(PagePoisoned(p))
      ------------[ cut here ]------------
      kernel BUG at include/linux/mm.h:1248!
      invalid opcode: 0000 [kdave#1] PREEMPT SMP PTI
      CPU: 16 PID: 20964 Comm: bash Tainted: G          I        6.0.0-rc3-foll-numa+ torvalds#41
      ...
      RIP: 0010:split_huge_pages_write+0xcf4/0xe30
    
    This shows that page_to_nid() in page_zone() is unexpectedly called for an
    offlined memmap.
    
    Use pfn_to_online_page() to get struct page in PFN walker.
    
    Link: https://lkml.kernel.org/r/[email protected]
    Fixes: f1dd2cd ("mm, memory_hotplug: do not associate hotadded memory to zones until online")      [visible after d0dc12e]
    Signed-off-by: Naoya Horiguchi <[email protected]>
    Co-developed-by: David Hildenbrand <[email protected]>
    Signed-off-by: David Hildenbrand <[email protected]>
    Reviewed-by: Yang Shi <[email protected]>
    Acked-by: Michal Hocko <[email protected]>
    Reviewed-by: Miaohe Lin <[email protected]>
    Reviewed-by: Oscar Salvador <[email protected]>
    Acked-by: Kirill A. Shutemov <[email protected]>
    Cc: Matthew Wilcox <[email protected]>
    Cc: Muchun Song <[email protected]>
    Cc: <[email protected]>	[5.10+]
    Signed-off-by: Andrew Morton <[email protected]>
    nhoriguchi authored and akpm00 committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    2b7aa91 View commit details
    Browse the repository at this point in the history
  15. frontswap: don't call ->init if no ops are registered

    If no frontswap module (i.e.  zswap) was registered, frontswap_ops will be
    NULL.  In such situation, swapon crashes with the following stack trace:
    
      Unable to handle kernel access to user memory outside uaccess routines at virtual address 0000000000000000
      Mem abort info:
        ESR = 0x0000000096000004
        EC = 0x25: DABT (current EL), IL = 32 bits
        SET = 0, FnV = 0
        EA = 0, S1PTW = 0
        FSC = 0x04: level 0 translation fault
      Data abort info:
        ISV = 0, ISS = 0x00000004
        CM = 0, WnR = 0
      user pgtable: 4k pages, 48-bit VAs, pgdp=00000020a4fab000
      [0000000000000000] pgd=0000000000000000, p4d=0000000000000000
      Internal error: Oops: 96000004 [kdave#1] SMP
      Modules linked in: zram fsl_dpaa2_eth pcs_lynx phylink ahci_qoriq crct10dif_ce ghash_ce sbsa_gwdt fsl_mc_dpio nvme lm90 nvme_core at803x xhci_plat_hcd rtc_fsl_ftm_alarm xgmac_mdio ahci_platform i2c_imx ip6_tables ip_tables fuse
      Unloaded tainted modules: cppc_cpufreq():1
      CPU: 10 PID: 761 Comm: swapon Not tainted 6.0.0-rc2-00454-g22100432cf14 kdave#1
      Hardware name: SolidRun Ltd. SolidRun CEX7 Platform, BIOS EDK II Jun 21 2022
      pstate: 00400005 (nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
      pc : frontswap_init+0x38/0x60
      lr : __do_sys_swapon+0x8a8/0x9f4
      sp : ffff80000969bcf0
      x29: ffff80000969bcf0 x28: ffff37bee0d8fc00 x27: ffff80000a7f5000
      x26: fffffcdefb971e80 x25: ffffaba797453b90 x24: 0000000000000064
      x23: ffff37c1f209d1a8 x22: ffff37bee880e000 x21: ffffaba797748560
      x20: ffff37bee0d8fce4 x19: ffffaba797748488 x18: 0000000000000014
      x17: 0000000030ec029a x16: ffffaba795a479b0 x15: 0000000000000000
      x14: 0000000000000000 x13: 0000000000000030 x12: 0000000000000001
      x11: ffff37c63c0aba18 x10: 0000000000000000 x9 : ffffaba7956b8c88
      x8 : ffff80000969bcd0 x7 : 0000000000000000 x6 : 0000000000000000
      x5 : 0000000000000001 x4 : 0000000000000000 x3 : ffffaba79730f000
      x2 : ffff37bee0d8fc00 x1 : 0000000000000000 x0 : 0000000000000000
      Call trace:
      frontswap_init+0x38/0x60
      __do_sys_swapon+0x8a8/0x9f4
      __arm64_sys_swapon+0x28/0x3c
      invoke_syscall+0x78/0x100
      el0_svc_common.constprop.0+0xd4/0xf4
      do_el0_svc+0x38/0x4c
      el0_svc+0x34/0x10c
      el0t_64_sync_handler+0x11c/0x150
      el0t_64_sync+0x190/0x194
      Code: d000e283 910003fd f9006c41 f946d461 (f9400021)
      ---[ end trace 0000000000000000 ]---
    
    Link: https://lkml.kernel.org/r/[email protected]
    Fixes: 1da0d94 ("frontswap: remove support for multiple ops")
    Reported-by: Nathan Chancellor <[email protected]>
    Signed-off-by: Christoph Hellwig <[email protected]>
    Signed-off-by: Liu Shixin <[email protected]>
    Cc: Konrad Rzeszutek Wilk <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Christoph Hellwig authored and akpm00 committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    37dcc67 View commit details
    Browse the repository at this point in the history
  16. mm: bring back update_mmu_cache() to finish_fault()

    Running this test program on ARMv4 a few times (sometimes just once)
    reproduces the bug.
    
    int main()
    {
            unsigned i;
            char paragon[SIZE];
            void* ptr;
    
            memset(paragon, 0xAA, SIZE);
            ptr = mmap(NULL, SIZE, PROT_READ | PROT_WRITE,
                       MAP_ANON | MAP_SHARED, -1, 0);
            if (ptr == MAP_FAILED) return 1;
            printf("ptr = %p\n", ptr);
            for (i=0;i<10000;i++){
                    memset(ptr, 0xAA, SIZE);
                    if (memcmp(ptr, paragon, SIZE)) {
                            printf("Unexpected bytes on iteration %u!!!\n", i);
                            break;
                    }
            }
            munmap(ptr, SIZE);
    }
    
    In the "ptr" buffer there appear runs of zero bytes which are aligned
    by 16 and their lengths are multiple of 16.
    
    Linux v5.11 does not have the bug, "git bisect" finds the first bad commit:
    f9ce0be ("mm: Cleanup faultaround and finish_fault() codepaths")
    
    Before the commit update_mmu_cache() was called during a call to
    filemap_map_pages() as well as finish_fault(). After the commit
    finish_fault() lacks it.
    
    Bring back update_mmu_cache() to finish_fault() to fix the bug.
    Also call update_mmu_tlb() only when returning VM_FAULT_NOPAGE to more
    closely reproduce the code of alloc_set_pte() function that existed before
    the commit.
    
    On many platforms update_mmu_cache() is nop:
     x86, see arch/x86/include/asm/pgtable
     ARMv6+, see arch/arm/include/asm/tlbflush.h
    So, it seems, few users ran into this bug.
    
    Link: https://lkml.kernel.org/r/[email protected]
    Fixes: f9ce0be ("mm: Cleanup faultaround and finish_fault() codepaths")
    Signed-off-by: Sergei Antonov <[email protected]>
    Acked-by: Kirill A. Shutemov <[email protected]>
    Cc: Will Deacon <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    saproj authored and akpm00 committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    70427f6 View commit details
    Browse the repository at this point in the history
  17. mm: prevent page_frag_alloc() from corrupting the memory

    A number of drivers call page_frag_alloc() with a fragment's size >
    PAGE_SIZE.
    
    In low memory conditions, __page_frag_cache_refill() may fail the order
    3 cache allocation and fall back to order 0; In this case, the cache
    will be smaller than the fragment, causing memory corruptions.
    
    Prevent this from happening by checking if the newly allocated cache is
    large enough for the fragment; if not, the allocation will fail and
    page_frag_alloc() will return NULL.
    
    Link: https://lkml.kernel.org/r/[email protected]
    Fixes: b63ae8c ("mm/net: Rename and move page fragment handling from net/ to mm/")
    Signed-off-by: Maurizio Lombardi <[email protected]>
    Reviewed-by: Alexander Duyck <[email protected]>
    Cc: Chen Lin <[email protected]>
    Cc: Jakub Kicinski <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    maurizio-lombardi authored and akpm00 committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    dac2253 View commit details
    Browse the repository at this point in the history
  18. mm/hugetlb: correct demote page offset logic

    With gigantic pages it may not be true that struct page structures are
    contiguous across the entire gigantic page.  The nth_page macro is used
    here in place of direct pointer arithmetic to correct for this.
    
    Mike said:
    
    : This error could cause addressing exceptions.  However, this is only
    : possible in configurations where CONFIG_SPARSEMEM &&
    : !CONFIG_SPARSEMEM_VMEMMAP.  Such a configuration option is rare and
    : unknown to be the default anywhere.
    
    Link: https://lkml.kernel.org/r/[email protected]
    Fixes: 8531fc6 ("hugetlb: add hugetlb demote page support")
    Signed-off-by: Doug Berger <[email protected]>
    Reviewed-by: Mike Kravetz <[email protected]>
    Reviewed-by: Oscar Salvador <[email protected]>
    Reviewed-by: Anshuman Khandual <[email protected]>
    Cc: Muchun Song <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Doug Berger authored and akpm00 committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    3173145 View commit details
    Browse the repository at this point in the history
  19. mm,hwpoison: check mm when killing accessing process

    The GHES code calls memory_failure_queue() from IRQ context to queue work
    into workqueue and schedule it on the current CPU.  Then the work is
    processed in memory_failure_work_func() by kworker and calls
    memory_failure().
    
    When a page is already poisoned, commit a3f5d80 ("mm,hwpoison: send
    SIGBUS with error virutal address") make memory_failure() call
    kill_accessing_process() that:
    
        - holds mmap locking of current->mm
        - does pagetable walk to find the error virtual address
        - and sends SIGBUS to the current process with error info.
    
    However, the mm of kworker is not valid, resulting in a null-pointer
    dereference.  So check mm when killing the accessing process.
    
    [[email protected]: remove unrelated whitespace alteration]
    Link: https://lkml.kernel.org/r/[email protected]
    Fixes: a3f5d80 ("mm,hwpoison: send SIGBUS with error virutal address")
    Signed-off-by: Shuai Xue <[email protected]>
    Reviewed-by: Miaohe Lin <[email protected]>
    Acked-by: Naoya Horiguchi <[email protected]>
    Cc: Huang Ying <[email protected]>
    Cc: Baolin Wang <[email protected]>
    Cc: Bixuan Cui <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    axiqia authored and akpm00 committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    77677cd View commit details
    Browse the repository at this point in the history
  20. mm/page_isolation: fix isolate_single_pageblock() isolation behavior

    set_migratetype_isolate() does not allow isolating MIGRATE_CMA pageblocks
    unless it is used for CMA allocation.  isolate_single_pageblock() did not
    have the same behavior when it is used together with
    set_migratetype_isolate() in start_isolate_page_range().  This allows
    alloc_contig_range() with migratetype other than MIGRATE_CMA, like
    MIGRATE_MOVABLE (used by alloc_contig_pages()), to isolate first and last
    pageblock but fail the rest.  The failure leads to changing migratetype of
    the first and last pageblock to MIGRATE_MOVABLE from MIGRATE_CMA,
    corrupting the CMA region.  This can happen during gigantic page
    allocations.
    
    Like Doug said here:
    https://lore.kernel.org/linux-mm/[email protected]/T/#u,
    for gigantic page allocations, the user would notice no difference,
    since the allocation on CMA region will fail as well as it did before. 
    But it might hurt the performance of device drivers that use CMA, since
    CMA region size decreases.
    
    Fix it by passing migratetype into isolate_single_pageblock(), so that
    set_migratetype_isolate() used by isolate_single_pageblock() will prevent
    the isolation happening.
    
    Link: https://lkml.kernel.org/r/[email protected]
    Fixes: b2c9e2f ("mm: make alloc_contig_range work at pageblock granularity")
    Signed-off-by: Zi Yan <[email protected]>
    Reported-by: Doug Berger <[email protected]>
    Cc: David Hildenbrand <[email protected]>
    Cc: Doug Berger <[email protected]>
    Cc: Mike Kravetz <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    x-y-z authored and akpm00 committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    80e2b58 View commit details
    Browse the repository at this point in the history
  21. x86/uaccess: avoid check_object_size() in copy_from_user_nmi()

    The check_object_size() helper under CONFIG_HARDENED_USERCOPY is designed
    to skip any checks where the length is known at compile time as a
    reasonable heuristic to avoid "likely known-good" cases.  However, it can
    only do this when the copy_*_user() helpers are, themselves, inline too.
    
    Using find_vmap_area() requires taking a spinlock.  The
    check_object_size() helper can call find_vmap_area() when the destination
    is in vmap memory.  If show_regs() is called in interrupt context, it will
    attempt a call to copy_from_user_nmi(), which may call check_object_size()
    and then find_vmap_area().  If something in normal context happens to be
    in the middle of calling find_vmap_area() (with the spinlock held), the
    interrupt handler will hang forever.
    
    The copy_from_user_nmi() call is actually being called with a fixed-size
    length, so check_object_size() should never have been called in the first
    place.  Given the narrow constraints, just replace the
    __copy_from_user_inatomic() call with an open-coded version that calls
    only into the sanitizers and not check_object_size(), followed by a call
    to raw_copy_from_user().
    
    [[email protected]: no instrument_copy_from_user() in my tree...]
    Link: https://lkml.kernel.org/r/[email protected]
    Link: https://lore.kernel.org/all/CAOUHufaPshtKrTWOz7T7QFYUNVGFm0JBjvM700Nhf9qEL9b3EQ@mail.gmail.com
    Fixes: 0aef499 ("mm/usercopy: Detect vmalloc overruns")
    Signed-off-by: Kees Cook <[email protected]>
    Reported-by: Yu Zhao <[email protected]>
    Reported-by: Florian Lehner <[email protected]>
    Suggested-by: Andrew Morton <[email protected]>
    Acked-by: Peter Zijlstra (Intel) <[email protected]>
    Tested-by: Florian Lehner <[email protected]>
    Cc: Matthew Wilcox <[email protected]>
    Cc: Josh Poimboeuf <[email protected]>
    Cc: Dave Hansen <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    kees authored and akpm00 committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    5929899 View commit details
    Browse the repository at this point in the history
  22. net: sched: act_ct: fix possible refcount leak in tcf_ct_init()

    nf_ct_put need to be called to put the refcount got by tcf_ct_fill_params
    to avoid possible refcount leak when tcf_ct_flow_table_get fails.
    
    Fixes: c34b961 ("net/sched: act_ct: Create nf flow table per zone")
    Signed-off-by: Hangyu Hua <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    HBh25Y authored and kuba-moo committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    6e23ec0 View commit details
    Browse the repository at this point in the history
  23. Merge tag 'ext4_for_linus_fixes2' of git://git.kernel.org/pub/scm/lin…

    …ux/kernel/git/tytso/ext4
    
    Pull missed ext4 fix from Ted Ts'o:
     "Fix an potential unitialzied variable bug; this was a fixup that I had
      forgotten to apply before the last pull request for ext4. My bad"
    
    * tag 'ext4_for_linus_fixes2' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
      ext4: fixup possible uninitialized variable access in ext4_mb_choose_next_group_cr1()
    torvalds committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    3a71053 View commit details
    Browse the repository at this point in the history
  24. cxgb4: fix missing unlock on ETHOFLD desc collect fail path

    The label passed to the QDESC_GET for the ETHOFLD TXQ, RXQ, and FLQ, is the
    'out' one, which skips the 'out_unlock' label, and thus doesn't unlock the
    'uld_mutex' before returning. Additionally, since commit 5148e59
    ("cxgb4: add EOTID tracking and software context dump"), the access to
    these ETHOFLD hardware queues should be protected by the 'mqprio_mutex'
    instead.
    
    Fixes: 2d0cb84 ("cxgb4: add ETHOFLD hardware queue support")
    Fixes: 5148e59 ("cxgb4: add EOTID tracking and software context dump")
    Signed-off-by: Rafael Mendonca <[email protected]>
    Reviewed-by: Rahul Lakkireddy <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    rafaelmsoares authored and kuba-moo committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    c635ebe View commit details
    Browse the repository at this point in the history
  25. net/mlxbf_gige: Fix an IS_ERR() vs NULL bug in mlxbf_gige_mdio_probe

    The devm_ioremap() function returns NULL on error, it doesn't return
    error pointers.
    
    Fixes: 3a1a274 ("mlxbf_gige: compute MDIO period based on i1clk")
    Signed-off-by: Peng Wu <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    Peng Wu authored and kuba-moo committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    4774db8 View commit details
    Browse the repository at this point in the history
  26. net: hippi: Add missing pci_disable_device() in rr_init_one()

    Add missing pci_disable_device() if rr_init_one() fails
    
    Signed-off-by: ruanjinjie <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    ruanjinjie authored and kuba-moo committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    0dc3837 View commit details
    Browse the repository at this point in the history
  27. Merge tag 'mm-hotfixes-stable-2022-09-26' of git://git.kernel.org/pub…

    …/scm/linux/kernel/git/akpm/mm
    
    Pull last (?) hotfixes from Andrew Morton:
     "26 hotfixes.
    
      8 are for issues which were introduced during this -rc cycle, 18 are
      for earlier issues, and are cc:stable"
    
    * tag 'mm-hotfixes-stable-2022-09-26' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (26 commits)
      x86/uaccess: avoid check_object_size() in copy_from_user_nmi()
      mm/page_isolation: fix isolate_single_pageblock() isolation behavior
      mm,hwpoison: check mm when killing accessing process
      mm/hugetlb: correct demote page offset logic
      mm: prevent page_frag_alloc() from corrupting the memory
      mm: bring back update_mmu_cache() to finish_fault()
      frontswap: don't call ->init if no ops are registered
      mm/huge_memory: use pfn_to_online_page() in split_huge_pages_all()
      mm: fix madivse_pageout mishandling on non-LRU page
      powerpc/64s/radix: don't need to broadcast IPI for radix pmd collapse flush
      mm: gup: fix the fast GUP race against THP collapse
      mm: fix dereferencing possible ERR_PTR
      vmscan: check folio_test_private(), not folio_get_private()
      mm: fix VM_BUG_ON in __delete_from_swap_cache()
      tools: fix compilation after gfp_types.h split
      mm/damon/dbgfs: fix memory leak when using debugfs_lookup()
      mm/migrate_device.c: copy pte dirty bit to page
      mm/migrate_device.c: add missing flush_cache_page()
      mm/migrate_device.c: flush TLB while holding PTL
      x86/mm: disable instrumentations of mm/pgprot.c
      ...
    torvalds committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    3800a71 View commit details
    Browse the repository at this point in the history
  28. ARM: dts: integrator: Fix DMA ranges

    A recent change affecting the behaviour of phys_to_dma() to
    actually require the device tree ranges to work unmasked a
    bug in the Integrator DMA ranges.
    
    The PL110 uses the CMA allocator to obtain coherent allocations
    from a dedicated 1MB video memory, leading to the following
    call chain:
    
    drm_gem_cma_create()
      dma_alloc_attrs()
        dma_alloc_from_dev_coherent()
          __dma_alloc_from_coherent()
            dma_get_device_base()
              phys_to_dma()
                translate_phys_to_dma()
    
    phys_to_dma() by way of translate_phys_to_dma() will nowadays not
    provide 1:1 mappings unless the ranges are properly defined in
    the device tree and reflected into the dev->dma_range_map.
    
    There is a bug in the device trees because the DMA ranges are
    incorrectly specified, and the patch uncovers this bug.
    
    Solution:
    
    - Fix the LB (logic bus) ranges to be 1-to-1 like they should
      have always been.
    - Provide a 1:1 dma-ranges attribute to the PL110.
    - Mark the PL110 display controller as DMA coherent.
    
    This makes the DMA ranges work right and makes the PL110
    framebuffer work again.
    
    Fixes: af6f23b ("ARM/dma-mapping: use the generic versions of dma_to_phys/phys_to_dma by default")
    Signed-off-by: Linus Walleij <[email protected]>
    Cc: Christoph Hellwig <[email protected]>
    Cc: Arnd Bergmann <[email protected]>
    Cc: [email protected]
    Link: https://lore.kernel.org/r/[email protected]'
    Signed-off-by: Arnd Bergmann <[email protected]>
    linusw authored and arndb committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    7bea67a View commit details
    Browse the repository at this point in the history
  29. Merge tag 'x86_urgent_for_v6.0-rc8' of git://git.kernel.org/pub/scm/l…

    …inux/kernel/git/tip/tip
    
    Pull x86 fixes from Dave Hansen:
    
     - A performance fix for recent large AMD systems that avoids an ancient
       cpu idle hardware workaround
    
     - A new Intel model number. Folks like these upstream as soon as
       possible so that each developer doing feature development doesn't
       need to carry their own #define
    
     - SGX fixes for a userspace crash and a rare kernel warning
    
    * tag 'x86_urgent_for_v6.0-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      ACPI: processor idle: Practically limit "Dummy wait" workaround to old Intel systems
      x86/sgx: Handle VA page allocation failure for EAUG on PF.
      x86/sgx: Do not fail on incomplete sanitization on premature stop of ksgxd
      x86/cpu: Add CPU model numbers for Meteor Lake
    torvalds committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    a137556 View commit details
    Browse the repository at this point in the history
  30. libata: add ATA_HORKAGE_NOLPM for Pioneer BDR-207M and BDR-205

    Commit 1527f69 ("ata: ahci: Add Green Sardine vendor ID as
    board_ahci_mobile") added an explicit entry for AMD Green Sardine
    AHCI controller using the board_ahci_mobile configuration (this
    configuration has later been renamed to board_ahci_low_power).
    
    The board_ahci_low_power configuration enables support for low power
    modes.
    
    This explicit entry takes precedence over the generic AHCI controller
    entry, which does not enable support for low power modes.
    
    Therefore, when commit 1527f69 ("ata: ahci: Add Green Sardine
    vendor ID as board_ahci_mobile") was backported to stable kernels,
    it make some Pioneer optical drives, which was working perfectly fine
    before the commit was backported, stop working.
    
    The real problem is that the Pioneer optical drives do not handle low
    power modes correctly. If these optical drives would have been tested
    on another AHCI controller using the board_ahci_low_power configuration,
    this issue would have been detected earlier.
    
    Unfortunately, the board_ahci_low_power configuration is only used in
    less than 15% of the total AHCI controller entries, so many devices
    have never been tested with an AHCI controller with low power modes.
    
    Fixes: 1527f69 ("ata: ahci: Add Green Sardine vendor ID as board_ahci_mobile")
    Cc: [email protected]
    Reported-by: Jaap Berkhout <[email protected]>
    Signed-off-by: Niklas Cassel <[email protected]>
    Reviewed-by: Mario Limonciello <[email protected]>
    Signed-off-by: Damien Le Moal <[email protected]>
    Niklas Cassel authored and Damien Le Moal committed Sep 26, 2022
    Configuration menu
    Copy the full SHA
    ea08aec View commit details
    Browse the repository at this point in the history

Commits on Sep 27, 2022

  1. nvme: Fix IOC_PR_CLEAR and IOC_PR_RELEASE ioctls for nvme devices

    The IOC_PR_CLEAR and IOC_PR_RELEASE ioctls are
    non-functional on NVMe devices because the nvme_pr_clear()
    and nvme_pr_release() functions set the IEKEY field incorrectly.
    The IEKEY field should be set only when the key is zero (i.e,
    not specified).  The current code does it backwards.
    
    Furthermore, the NVMe spec describes the persistent
    reservation "clear" function as an option on the reservation
    release command. The current implementation of nvme_pr_clear()
    erroneously uses the reservation register command.
    
    Fix these errors. Note that NVMe version 1.3 and later specify
    that setting the IEKEY field will return an error of Invalid
    Field in Command.  The fix will set IEKEY when the key is zero,
    which is appropriate as these ioctls consider a zero key to
    be "unspecified", and the intention of the spec change is
    to require a valid key.
    
    Tested on a version 1.4 PCI NVMe device in an Azure VM.
    
    Fixes: 1673f1f ("nvme: move block_device_operations and ns/ctrl freeing to common code")
    Fixes: 1d277a6 ("NVMe: Add persistent reservation ops")
    Signed-off-by: Michael Kelley <[email protected]>
    Signed-off-by: Christoph Hellwig <[email protected]>
    kelleymh authored and Christoph Hellwig committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    c292a33 View commit details
    Browse the repository at this point in the history
  2. nvme-pci: disable Write Zeroes on Phison E3C/E4C

    E3C/E4C SSDs do support the Write Zeroes command in theory, but have very
    bad performance when using it.  As the firmware has been frozen for these
    products we can not expect firmware improvements for it, so disable
    Write Zeroes.
    
    Signed-off-by: Tina Hsu <[email protected]>
    [hch: update the commit message]
    Signed-off-by: Christoph Hellwig <[email protected]>
    Tina Hsu authored and Christoph Hellwig committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    d14c273 View commit details
    Browse the repository at this point in the history
  3. media: v4l2-compat-ioctl32.c: zero buffer passed to v4l2_compat_get_a…

    …rray_args()
    
    The v4l2_compat_get_array_args() function can leave uninitialized memory in the
    buffer it is passed. So zero it before copying array elements from userspace
    into the buffer.
    
    Signed-off-by: Hans Verkuil <[email protected]>
    Reported-by: [email protected]
    Reviewed-by: Laurent Pinchart <[email protected]>
    Signed-off-by: Mauro Carvalho Chehab <[email protected]>
    Hans Verkuil authored and mchehab committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    4e768c8 View commit details
    Browse the repository at this point in the history
  4. media: v4l2-ioctl.c: fix incorrect error path

    If allocating array_buf fails, or copying data from userspace into that
    buffer fails, then just free memory and return the error. Don't attempt
    to call video_put_user() since there is no point, and it would copy back
    data on error even if INFO_FL_ALWAYS_COPY wasn't set.
    
    So if writing the array back to userspace fails, then don't go to
    out_array_args, instead just continue with the regular code that just
    returns the error unless 'always_copy' is set.
    
    Update the VIDIOC_G/S/TRY_EXT_CTRLS ioctls to set the ALWAYS_COPY flag
    since they now need it. Before this worked due to this buggy code, but
    now that that is fixed these ioctls need to set this flag explicitly.
    
    Signed-off-by: Hans Verkuil <[email protected]>
    Signed-off-by: Mauro Carvalho Chehab <[email protected]>
    Hans Verkuil authored and mchehab committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    f0da34f View commit details
    Browse the repository at this point in the history
  5. media: dvb_vb2: fix possible out of bound access

    vb2_core_qbuf and vb2_core_querybuf don't check the range of b->index
    controlled by the user.
    
    Fix this by adding range checking code before using them.
    
    Fixes: 57868ac ("media: videobuf2: Add new uAPI for DVB streaming I/O")
    Signed-off-by: Hangyu Hua <[email protected]>
    Reviewed-by: Sergey Senozhatsky <[email protected]>
    Signed-off-by: Hans Verkuil <[email protected]>
    Signed-off-by: Mauro Carvalho Chehab <[email protected]>
    HBh25Y authored and mchehab committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    3723869 View commit details
    Browse the repository at this point in the history
  6. media: mediatek: vcodec: Drop platform_get_resource(IORESOURCE_IRQ)

    Commit a1a2b71 ("of/platform: Drop static setup of IRQ resource
    from DT core") removed support for calling platform_get_resource(...,
    IORESOURCE_IRQ, ...) on DT-based drivers, but the probe() function of
    mtk-vcodec's encoder was still making use of it. This caused the encoder
    driver to fail probe.
    
    Since the platform_get_resource() call was only being used to check for
    the presence of the interrupt (its returned resource wasn't even used)
    and platform_get_irq() was already being used to get the IRQ, simply
    drop the use of platform_get_resource(IORESOURCE_IRQ) and handle the
    failure of platform_get_irq(), to get the driver probing again.
    
    [hverkuil: drop unused struct resource *res]
    
    Fixes: a1a2b71 ("of/platform: Drop static setup of IRQ resource from DT core")
    Signed-off-by: Nícolas F. R. A. Prado <[email protected]>
    Reviewed-by: AngeloGioacchino Del Regno <[email protected]>
    Signed-off-by: Hans Verkuil <[email protected]>
    Signed-off-by: Mauro Carvalho Chehab <[email protected]>
    nfraprado authored and mchehab committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    a2d2e59 View commit details
    Browse the repository at this point in the history
  7. media: rkvdec: Disable H.264 error detection

    Quite often, the HW get stuck in error condition if a stream error
    was detected. As documented, the HW should stop immediately and self
    reset. There is likely a problem or a miss-understanding of the self
    reset mechanism, as unless we make a long pause, the next command
    will then report an error even if there is no error in it.
    
    Disabling error detection fixes the issue, and let the decoder continue
    after an error. This patch is safe for backport into older kernels.
    
    Fixes: cd33c83 ("media: rkvdec: Add the rkvdec driver")
    Signed-off-by: Nicolas Dufresne <[email protected]>
    Reviewed-by: Brian Norris <[email protected]>
    Tested-by: Brian Norris <[email protected]>
    Reviewed-by: Ezequiel Garcia <[email protected]>
    Signed-off-by: Hans Verkuil <[email protected]>
    Signed-off-by: Mauro Carvalho Chehab <[email protected]>
    ndufresne authored and mchehab committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    3a99c44 View commit details
    Browse the repository at this point in the history
  8. wifi: cfg80211: fix MCS divisor value

    The Bitrate for HE/EHT MCS6 is calculated wrongly due to the
    incorrect MCS divisor value for mcs6. Fix it with the proper
    value.
    
    previous mcs_divisor value = (11769/6144) = 1.915527
    
    fixed mcs_divisor value = (11377/6144) = 1.851725
    
    Fixes: 9c97c88 ("cfg80211: Add support to calculate and report 4096-QAM HE rates")
    Signed-off-by: Tamizh Chelvam Raja <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Johannes Berg <[email protected]>
    Tamizh Chelvam Raja authored and jmberg-intel committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    64e966d View commit details
    Browse the repository at this point in the history
  9. wifi: mac80211: don't start TX with fq->lock to fix deadlock

    ieee80211_txq_purge() calls fq_tin_reset() and
    ieee80211_purge_tx_queue(); Both are then calling
    ieee80211_free_txskb(). Which can decide to TX the skb again.
    
    There are at least two ways to get a deadlock:
    
    1) When we have a TDLS teardown packet queued in either tin or frags
       ieee80211_tdls_td_tx_handle() will call ieee80211_subif_start_xmit()
       while we still hold fq->lock. ieee80211_txq_enqueue() will thus
       deadlock.
    
    2) A variant of the above happens if aggregation is up and running:
       In that case ieee80211_iface_work() will deadlock with the original
       task: The original tasks already holds fq->lock and tries to get
       sta->lock after kicking off ieee80211_iface_work(). But the worker
       can get sta->lock prior to the original task and will then spin for
       fq->lock.
    
    Avoid these deadlocks by not sending out any skbs when called via
    ieee80211_free_txskb().
    
    Signed-off-by: Alexander Wetzel <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Johannes Berg <[email protected]>
    alexw65500 authored and jmberg-intel committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    b7ce33d View commit details
    Browse the repository at this point in the history
  10. wifi: mac80211: ensure vif queues are operational after start

    Make sure local->queue_stop_reasons and vif.txqs_stopped stay in sync.
    
    When a new vif is created the queues may end up in an inconsistent state
    and be inoperable:
    Communication not using iTXQ will work, allowing to e.g. complete the
    association. But the 4-way handshake will time out. The sta will not
    send out any skbs queued in iTXQs.
    
    All normal attempts to start the queues will fail when reaching this
    state.
    local->queue_stop_reasons will have marked all queues as operational but
    vif.txqs_stopped will still be set, creating an inconsistent internal
    state.
    
    In reality this seems to be race between the mac80211 function
    ieee80211_do_open() setting SDATA_STATE_RUNNING and the wake_txqs_tasklet:
    Depending on the driver and the timing the queues may end up to be
    operational or not.
    
    Cc: [email protected]
    Fixes: f856373 ("wifi: mac80211: do not wake queues on a vif that is being stopped")
    Signed-off-by: Alexander Wetzel <[email protected]>
    Acked-by: Felix Fietkau <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Johannes Berg <[email protected]>
    alexw65500 authored and jmberg-intel committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    527008e View commit details
    Browse the repository at this point in the history
  11. wifi: mac80211: fix regression with non-QoS drivers

    Commit 10cb8e6 ("mac80211: enable QoS support for nl80211 ctrl port")
    changed ieee80211_tx_control_port() to aways call
    __ieee80211_select_queue() without checking local->hw.queues.
    
    __ieee80211_select_queue() returns a queue-id between 0 and 3, which means
    that now ieee80211_tx_control_port() may end up setting the queue-mapping
    for a skb to a value higher then local->hw.queues if local->hw.queues
    is less then 4.
    
    Specifically this is a problem for ralink rt2500-pci cards where
    local->hw.queues is 2. There this causes rt2x00queue_get_tx_queue() to
    return NULL and the following error to be logged: "ieee80211 phy0:
    rt2x00mac_tx: Error - Attempt to send packet over invalid queue 2",
    after which association with the AP fails.
    
    Other callers of __ieee80211_select_queue() skip calling it when
    local->hw.queues < IEEE80211_NUM_ACS, add the same check to
    ieee80211_tx_control_port(). This fixes ralink rt2500-pci and
    similar cards when less then 4 tx-queues no longer working.
    
    Fixes: 10cb8e6 ("mac80211: enable QoS support for nl80211 ctrl port")
    Cc: Markus Theil <[email protected]>
    Suggested-by: Stanislaw Gruszka <[email protected]>
    Signed-off-by: Hans de Goede <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Johannes Berg <[email protected]>
    jwrdegoede authored and jmberg-intel committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    d873697 View commit details
    Browse the repository at this point in the history
  12. wifi: mac80211: fix memory corruption in minstrel_ht_update_rates()

    During our testing of WFM200 module over SDIO on i.MX6Q-based platform,
    we discovered a memory corruption on the system, tracing back to the wfx
    driver. Using kfence, it was possible to trace it back to the root
    cause, which is hw->max_rates set to 8 in wfx_init_common,
    while the maximum defined by IEEE80211_TX_TABLE_SIZE is 4.
    
    This causes array out-of-bounds writes during updates of the rate table,
    as seen below:
    
    BUG: KFENCE: memory corruption in kfree_rcu_work+0x320/0x36c
    
    Corrupted memory at 0xe0a4ffe0 [ 0x03 0x03 0x03 0x03 0x01 0x00 0x00
    0x02 0x02 0x02 0x09 0x00 0x21 0xbb 0xbb 0xbb ] (in kfence-torvalds#81):
    kfree_rcu_work+0x320/0x36c
    process_one_work+0x3ec/0x920
    worker_thread+0x60/0x7a4
    kthread+0x174/0x1b4
    ret_from_fork+0x14/0x2c
    0x0
    
    kfence-torvalds#81: 0xe0a4ffc0-0xe0a4ffdf, size=32, cache=kmalloc-64
    
    allocated by task 297 on cpu 0 at 631.039555s:
    minstrel_ht_update_rates+0x38/0x2b0 [mac80211]
    rate_control_tx_status+0xb4/0x148 [mac80211]
    ieee80211_tx_status_ext+0x364/0x1030 [mac80211]
    ieee80211_tx_status+0xe0/0x118 [mac80211]
    ieee80211_tasklet_handler+0xb0/0xe0 [mac80211]
    tasklet_action_common.constprop.0+0x11c/0x148
    __do_softirq+0x1a4/0x61c
    irq_exit+0xcc/0x104
    call_with_stack+0x18/0x20
    __irq_svc+0x80/0xb0
    wq_worker_sleeping+0x10/0x100
    wq_worker_sleeping+0x10/0x100
    schedule+0x50/0xe0
    schedule_timeout+0x2e0/0x474
    wait_for_completion+0xdc/0x1ec
    mmc_wait_for_req_done+0xc4/0xf8
    mmc_io_rw_extended+0x3b4/0x4ec
    sdio_io_rw_ext_helper+0x290/0x384
    sdio_memcpy_toio+0x30/0x38
    wfx_sdio_copy_to_io+0x88/0x108 [wfx]
    wfx_data_write+0x88/0x1f0 [wfx]
    bh_work+0x1c8/0xcc0 [wfx]
    process_one_work+0x3ec/0x920
    worker_thread+0x60/0x7a4
    kthread+0x174/0x1b4
    ret_from_fork+0x14/0x2c 0x0
    
    After discussion on the wireless mailing list it was clarified
    that the issue has been introduced by:
    commit ee0e16a ("mac80211: minstrel_ht: fill all requested rates")
    and fix shall be in minstrel_ht_update_rates in rc80211_minstrel_ht.c.
    
    Fixes: ee0e16a ("mac80211: minstrel_ht: fill all requested rates")
    Link: https://lore.kernel.org/all/[email protected]/
    Link: https://lore.kernel.org/linux-wireless/[email protected]/
    Cc: Jérôme Pouiller <[email protected]>
    Cc: Johannes Berg <[email protected]>
    Cc: Peter Seiderer <[email protected]>
    Cc: Kalle Valo <[email protected]>
    Cc: Krzysztof Drobiński <[email protected]>,
    Signed-off-by: Paweł Lenkow <[email protected]>
    Signed-off-by: Lech Perczak <[email protected]>
    Reviewed-by: Peter Seiderer <[email protected]>
    Reviewed-by: Jérôme Pouiller <[email protected]>
    Acked-by: Felix Fietkau <[email protected]>
    Signed-off-by: Johannes Berg <[email protected]>
    Paweł Lenkow authored and jmberg-intel committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    be92292 View commit details
    Browse the repository at this point in the history
  13. wifi: mac80211: mlme: Fix missing unlock on beacon RX

    Commit 98b0b46 ("wifi: mac80211: mlme: use correct link_sta")
    switched to link station instead of deflink and added some checks to do
    that, which are done with the 'sta_mtx' mutex held. However, the error
    path of these checks does not unlock 'sta_mtx' before returning.
    
    Fixes: 98b0b46 ("wifi: mac80211: mlme: use correct link_sta")
    Signed-off-by: Rafael Mendonca <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Johannes Berg <[email protected]>
    rafaelmsoares authored and jmberg-intel committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    883b8dc View commit details
    Browse the repository at this point in the history
  14. wifi: mac80211: mlme: Fix double unlock on assoc success handling

    Commit 6911458 ("wifi: mac80211: mlme: refactor assoc success
    handling") moved the per-link setup out of ieee80211_assoc_success() into a
    new function ieee80211_assoc_config_link() but missed to remove the unlock
    of 'sta_mtx' in case of HE capability/operation missing on HE AP, which
    leads to a double unlock:
    
    ieee80211_assoc_success() {
        ...
        ieee80211_assoc_config_link() {
            ...
            if (!(link->u.mgd.conn_flags & IEEE80211_CONN_DISABLE_HE) &&
                (!elems->he_cap || !elems->he_operation)) {
                mutex_unlock(&sdata->local->sta_mtx);
                ...
            }
            ...
        }
        ...
        mutex_unlock(&sdata->local->sta_mtx);
        ...
    }
    
    Fixes: 6911458 ("wifi: mac80211: mlme: refactor assoc success handling")
    Signed-off-by: Rafael Mendonca <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Johannes Berg <[email protected]>
    rafaelmsoares authored and jmberg-intel committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    6546646 View commit details
    Browse the repository at this point in the history
  15. net: stmmac: power up/down serdes in stmmac_open/release

    This commit fixes DMA engine reset timeout issue in suspend/resume
    with ADLink I-Pi SMARC Plus board which dmesg shows:
    ...
    [   54.678271] PM: suspend exit
    [   54.754066] intel-eth-pci 0000:00:1d.2 enp0s29f2: PHY [stmmac-3:01] driver [Maxlinear Ethernet GPY215B] (irq=POLL)
    [   54.755808] intel-eth-pci 0000:00:1d.2 enp0s29f2: Register MEM_TYPE_PAGE_POOL RxQ-0
    ...
    [   54.780482] intel-eth-pci 0000:00:1d.2 enp0s29f2: Register MEM_TYPE_PAGE_POOL RxQ-7
    [   55.784098] intel-eth-pci 0000:00:1d.2: Failed to reset the dma
    [   55.784111] intel-eth-pci 0000:00:1d.2 enp0s29f2: stmmac_hw_setup: DMA engine initialization failed
    [   55.784115] intel-eth-pci 0000:00:1d.2 enp0s29f2: stmmac_open: Hw setup failed
    ...
    
    The issue is related with serdes which impacts clock.  There is
    serdes in ADLink I-Pi SMARC board ethernet controller. Please refer to
    commit b9663b7 ("net: stmmac: Enable SERDES power up/down sequence")
    for detial. When issue is reproduced, DMA engine clock is not ready
    because serdes is not powered up.
    
    To reproduce DMA engine reset timeout issue with hardware which has
    serdes in GBE controller, install Ubuntu. In Ubuntu GUI, click
    "Power Off/Log Out" -> "Suspend" menu, it disables network interface,
    then goes to sleep mode. When it wakes up, it enables network
    interface again. Stmmac driver is called in this way:
    
    1. stmmac_release: Stop network interface. In this function, it
       disables DMA engine and network interface;
    2. stmmac_suspend: It is called in kernel suspend flow. But because
       network interface has been disabled(netif_running(ndev) is
       false), it does nothing and returns directly;
    3. System goes into S3 or S0ix state. Some time later, system is
       waken up by keyboard or mouse;
    4. stmmac_resume: It does nothing because network interface has
       been disabled;
    5. stmmac_open: It is called to enable network interace again. DMA
       engine is initialized in this API, but serdes is not power on so
       there will be DMA engine reset timeout issue.
    
    Similarly, serdes powerdown should be added in stmmac_release.
    Network interface might be disabled by cmd "ifconfig eth0 down",
    DMA engine, phy and mac have been disabled in ndo_stop callback,
    serdes should be powered down as well. It doesn't make sense that
    serdes is on while other components have been turned off.
    
    If ethernet interface is in enabled state(netif_running(ndev) is true)
    before suspend/resume, the issue couldn't be reproduced  because serdes
    could be powered up in stmmac_resume.
    
    Because serdes_powerup is added in stmmac_open, it doesn't need to be
    called in probe function.
    
    Fixes: b9663b7 ("net: stmmac: Enable SERDES power up/down sequence")
    Signed-off-by: Junxiao Chang <[email protected]>
    Reviewed-by: Voon Weifeng <[email protected]>
    Tested-by: Jimmy JS Chen <[email protected]>
    Tested-by: Looi, Hong Aun <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Paolo Abeni <[email protected]>
    junxiaoc authored and Paolo Abeni committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    49725ff View commit details
    Browse the repository at this point in the history
  16. Merge tag 'thunderbolt-for-v6.0' of git://git.kernel.org/pub/scm/linu…

    …x/kernel/git/westeri/thunderbolt into usb-linus
    
    Mika writes:
      "thunderbolt: Fix for v6.0 final
    
       This includes a single fix from Mario that resets the plug event delay
       back to the USB4 spec value.
    
       This has been in linux-next with no reported issues."
    
    * tag 'thunderbolt-for-v6.0' of git://git.kernel.org/pub/scm/linux/kernel/git/westeri/thunderbolt:
      thunderbolt: Explicitly reset plug events delay back to USB4 spec value
    gregkh committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    f208ce4 View commit details
    Browse the repository at this point in the history
  17. net: phy: Don't WARN for PHY_UP state in mdio_bus_phy_resume()

    Commit 744d23c ("net: phy: Warn about incorrect mdio_bus_phy_resume()
    state") introduced a WARN() on resume from system sleep if a PHY is not
    in PHY_HALTED state.
    
    Commit 6dbe852 ("net: phy: Don't WARN for PHY_READY state in
    mdio_bus_phy_resume()") added an exemption for PHY_READY state from
    the WARN().
    
    It turns out PHY_UP state needs to be exempted as well because the
    following may happen on suspend:
    
      mdio_bus_phy_suspend()
        phy_stop_machine()
          phydev->state = PHY_UP  #  if (phydev->state >= PHY_UP)
    
    Fixes: 744d23c ("net: phy: Warn about incorrect mdio_bus_phy_resume() state")
    Reported-by: Marek Szyprowski <[email protected]>
    Tested-by: Marek Szyprowski <[email protected]>
    Link: https://lore.kernel.org/netdev/[email protected]/
    Signed-off-by: Lukas Wunner <[email protected]>
    Acked-by: Florian Fainelli <[email protected]>
    Cc: Xiaolei Wang <[email protected]>
    Link: https://lore.kernel.org/r/8128fdb51eeebc9efbf3776a4097363a1317aaf1.1663905575.git.lukas@wunner.de
    Signed-off-by: Paolo Abeni <[email protected]>
    l1k authored and Paolo Abeni committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    ea64cdf View commit details
    Browse the repository at this point in the history
  18. usb: typec: ucsi: Remove incorrect warning

    Sink only devices do not have any source capabilities, so
    the driver should not warn about that. Also DRP (Dual Role
    Power) capable devices, such as USB Type-C docking stations,
    do not return any source capabilities unless they are
    plugged to a power supply themselves.
    
    Fixes: 1f4642b ("usb: typec: ucsi: Retrieve all the PDOs instead of just the first 4")
    Reported-by: Paul Menzel <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Heikki Krogerus <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Heikki Krogerus authored and gregkh committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    415ba26 View commit details
    Browse the repository at this point in the history
  19. usb: dwc3: st: Fix node's child name

    Update node's child name from "dwc3" to "usb", this fixes
    the following issue:
    
    [3.773852] usb-st-dwc3 8f94000.dwc3: failed to find dwc3 core node
    
    Fixes: 3120910 ("ARM: dts: stih407-family: Harmonize DWC USB3 DT nodes name")
    Reported-by: Jerome Audu <[email protected]>
    Signed-off-by: Patrice Chotard <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Patrice Chotard authored and gregkh committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    f5c5936 View commit details
    Browse the repository at this point in the history
  20. uas: add no-uas quirk for Hiksemi usb_disk

    The UAS mode of Hiksemi is reported to fail to work on several platforms
    with the following error message, then after re-connecting the device will
    be offlined and not working at all.
    
    [  592.518442][ 2] sd 8:0:0:0: [sda] tag#17 uas_eh_abort_handler 0 uas-tag 18
                       inflight: CMD
    [  592.527575][ 2] sd 8:0:0:0: [sda] tag#17 CDB: Write(10) 2a 00 03 6f 88 00 00
                       04 00 00
    [  592.536330][ 2] sd 8:0:0:0: [sda] tag#0 uas_eh_abort_handler 0 uas-tag 1
                       inflight: CMD
    [  592.545266][ 2] sd 8:0:0:0: [sda] tag#0 CDB: Write(10) 2a 00 07 44 1a 88 00
                       00 08 00
    
    These disks have a broken uas implementation, the tag field of the status
    iu-s is not set properly,so we need to fall-back to usb-storage.
    
    Acked-by: Alan Stern <[email protected]>
    Cc: stable <[email protected]>
    Signed-off-by: Hongling Zeng <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    zenghongling0719 authored and gregkh committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    a625a4b View commit details
    Browse the repository at this point in the history
  21. usb-storage: Add Hiksemi USB3-FW to IGNORE_UAS

    The UAS mode of Hiksemi USB_HDD is reported to fail to work on several
    platforms with the following error message, then after re-connecting the
    device will be offlined and not working at all.
    
    [  592.518442][ 2] sd 8:0:0:0: [sda] tag#17 uas_eh_abort_handler 0 uas-tag 18
                       inflight: CMD
    [  592.527575][ 2] sd 8:0:0:0: [sda] tag#17 CDB: Write(10) 2a 00 03 6f 88 00 00
                       04 00 00
    [  592.536330][ 2] sd 8:0:0:0: [sda] tag#0 uas_eh_abort_handler 0 uas-tag 1
                       inflight: CMD
    [  592.545266][ 2] sd 8:0:0:0: [sda] tag#0 CDB: Write(10) 2a 00 07 44 1a 88 00
                       00 08 00
    
    These disks have a broken uas implementation, the tag field of the status
    iu-s is not set properly,so we need to fall-back to usb-storage.
    
    Acked-by: Alan Stern <[email protected]>
    Cc: stable <[email protected]>
    Signed-off-by: Hongling Zeng <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    zenghongling0719 authored and gregkh committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    e00b488 View commit details
    Browse the repository at this point in the history
  22. uas: ignore UAS for Thinkplus chips

    The UAS mode of Thinkplus(0x17ef, 0x3899) is reported to influence
    performance and trigger kernel panic on several platforms with the
    following error message:
    
    [   39.702439] xhci_hcd 0000:0c:00.3: ERROR Transfer event for disabled
                   endpoint or incorrect stream ring
    [   39.702442] xhci_hcd 0000:0c:00.3: @000000026c61f810 00000000 00000000
                   1b000000 05038000
    
    [  720.545894][13] Workqueue: usb_hub_wq hub_event
    [  720.550971][13]  ffff88026c143c38 0000000000016300 ffff8802755bb900 ffff880
                        26cb80000
    [  720.559673][13]  ffff88026c144000 ffff88026ca88100 0000000000000000 ffff880
                        26cb80000
    [  720.568374][13]  ffff88026cb80000 ffff88026c143c50 ffffffff8186ae25 ffff880
                        26ca880f8
    [  720.577076][13] Call Trace:
    [  720.580201][13]  [<ffffffff8186ae25>] schedule+0x35/0x80
    [  720.586137][13]  [<ffffffff8186b0ce>] schedule_preempt_disabled+0xe/0x10
    [  720.593623][13]  [<ffffffff8186cb94>] __mutex_lock_slowpath+0x164/0x1e0
    [  720.601012][13]  [<ffffffff8186cc3f>] mutex_lock+0x2f/0x40
    [  720.607141][13]  [<ffffffff8162b8e9>] usb_disconnect+0x59/0x290
    
    Falling back to USB mass storage can solve this problem, so ignore UAS
    function of this chip.
    
    Acked-by: Alan Stern <[email protected]>
    Cc: stable <[email protected]>
    Signed-off-by: Hongling Zeng <[email protected]>
    Link: https://lore.kernel.org/r/1663902249837086.19.seg@mailgw
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    zenghongling0719 authored and gregkh committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    0fb9703 View commit details
    Browse the repository at this point in the history
  23. selftests: Fix the if conditions of in test_extra_filter()

    The socket 2 bind the addr in use, bind should fail with EADDRINUSE. So
    if bind success or errno != EADDRINUSE, testcase should be failed.
    
    Fixes: 3ca8e40 ("soreuseport: BPF selection functional test")
    Signed-off-by: Wang Yufen <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Paolo Abeni <[email protected]>
    wangyufen316 authored and Paolo Abeni committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    bc7a319 View commit details
    Browse the repository at this point in the history
  24. mmc: hsq: Fix data stomping during mmc recovery

    The block device uses multiple queues to access emmc. There will be up to 3
    requests in the hsq of the host. The current code will check whether there
    is a request doing recovery before entering the queue, but it will not check
    whether there is a request when the lock is issued. The request is in recovery
    mode. If there is a request in recovery, then a read and write request is
    initiated at this time, and the conflict between the request and the recovery
    request will cause the data to be trampled.
    
    Signed-off-by: Wenchao Chen <[email protected]>
    Fixes: 511ce37 ("mmc: Add MMC host software queue support")
    Cc: [email protected]
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Ulf Hansson <[email protected]>
    Wenchao Chen authored and storulf committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    e7afa79 View commit details
    Browse the repository at this point in the history
  25. KVM: selftests: Skip tests that require EPT when it is not available

    Skip selftests that require EPT support in the VM when it is not
    available. For example, if running on a machine where kvm_intel.ept=N
    since KVM does not offer EPT support to guests if EPT is not supported
    on the host.
    
    This commit causes vmx_dirty_log_test to be skipped instead of failing
    on hosts where kvm_intel.ept=N.
    
    Signed-off-by: David Matlack <[email protected]>
    Message-Id: <[email protected]>
    Signed-off-by: Paolo Bonzini <[email protected]>
    dmatlack authored and bonzini committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    0f816e0 View commit details
    Browse the repository at this point in the history
  26. Merge tag 'irqchip-fixes-6.0-2' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/maz/arm-platforms into irq/urgent
    
    Pull more irqchip fixes for 6.0 from Marc Zyngier:
    
      - A couple of configuration fixes for the recently merged Loongarch drivers
    
      - A fix to avoid dynamic allocation of a cpumask which was causing issues
        with PREEMPT_RT and the GICv3 ITS
    
      - A tightening of an error check in the stm32 exti driver
    
    Link: https://lore.kernel.org/r/[email protected]
    suryasaimadhu committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    c0cca6a View commit details
    Browse the repository at this point in the history
  27. Merge tag 'sound-6.0-rc8' of git://git.kernel.org/pub/scm/linux/kerne…

    …l/git/tiwai/sound
    
    Pull sound fixes from Takashi Iwai:
     "A few device-specific fixes, mostly for ASoC. All look small / trivial
      enough"
    
    * tag 'sound-6.0-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
      ALSA: hda: intel-dsp-config: add missing RaptorLake PCI IDs
      ASoC: tas2770: Reinit regcache on reset
      ASoC: nau8824: Fix semaphore is released unexpectedly
      ASoC: Intel: sof_sdw: add support for Dell SKU 0AFF
      ASoC: imx-card: Fix refcount issue with of_node_put
      ASoC: rt5640: Fix the issue of the abnormal JD2 status
    torvalds committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    46452d3 View commit details
    Browse the repository at this point in the history
  28. Input: snvs_pwrkey - fix SNVS_HPVIDR1 register address

    Both i.MX6 and i.MX8 reference manuals list 0xBF8 as SNVS_HPVIDR1
    (chapters 57.9 and 6.4.5 respectively).
    
    Without this, trying to read the revision number results in 0 on
    all revisions, causing the i.MX6 quirk to apply on all platforms,
    which in turn causes the driver to synthesise power button release
    events instead of passing the real one as they happen even on
    platforms like i.MX8 where that's not wanted.
    
    Fixes: 1a26c92 ("Input: snvs_pwrkey - send key events for i.MX6 S, DL and Q")
    Tested-by: Martin Kepplinger <[email protected]>
    Signed-off-by: Sebastian Krzyszkowiak <[email protected]>
    Reviewed-by: Mattijs Korpershoek <[email protected]>
    Cc: <[email protected]>
    Link: https://lore.kernel.org/r/4599101.ElGaqSPkdT@pliszka
    Signed-off-by: Dmitry Torokhov <[email protected]>
    dos1 authored and dtor committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    e62563d View commit details
    Browse the repository at this point in the history
  29. net: usb: qmi_wwan: Add new usb-id for Dell branded EM7455

    Add support for Dell 5811e (EM7455) with USB-id 0x413c:0x81c2.
    
    Signed-off-by: Frank Wunderlich <[email protected]>
    Cc: [email protected]
    Acked-by: Bjørn Mork <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    frank-w authored and kuba-moo committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    797666c View commit details
    Browse the repository at this point in the history
  30. ice: xsk: change batched Tx descriptor cleaning

    AF_XDP Tx descriptor cleaning in ice driver currently works in a "lazy"
    way - descriptors are not cleaned immediately after send. We rather hold
    on with cleaning until we see that free space in ring drops below
    particular threshold. This was supposed to reduce the amount of
    unnecessary work related to cleaning and instead of keeping the ring
    empty, ring was rather saturated.
    
    In AF_XDP realm cleaning Tx descriptors implies producing them to CQ.
    This is a way of letting know user space that particular descriptor has
    been sent, as John points out in [0].
    
    We tried to implement serial descriptor cleaning which would be used in
    conjunction with batched cleaning but it made code base more convoluted
    and probably harder to maintain in future. Therefore we step away from
    batched cleaning in a current form in favor of an approach where we set
    RS bit on every last descriptor from a batch and clean always at the
    beginning of ice_xmit_zc().
    
    This means that we give up a bit of Tx performance, but this doesn't
    hurt l2fwd scenario which is way more meaningful than txonly as this can
    be treaten as AF_XDP based packet generator. l2fwd is not hurt due to
    the fact that Tx side is much faster than Rx and Rx is the one that has
    to catch Tx up.
    
    FWIW Tx descriptors are still produced in a batched way.
    
    [0]: https://lore.kernel.org/bpf/[email protected]/
    
    Fixes: 126cdfe ("ice: xsk: Improve AF_XDP ZC Tx and use batching API")
    Signed-off-by: Maciej Fijalkowski <[email protected]>
    Tested-by: George Kuruvinakunnel <[email protected]>
    Signed-off-by: Tony Nguyen <[email protected]>
    mfijalko authored and anguy11 committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    2932279 View commit details
    Browse the repository at this point in the history
  31. ice: xsk: drop power of 2 ring size restriction for AF_XDP

    We had multiple customers in the past months that reported commit
    296f13f ("ice: xsk: Force rings to be sized to power of 2")
    makes them unable to use ring size of 8160 in conjunction with AF_XDP.
    Remove this restriction.
    
    Fixes: 296f13f ("ice: xsk: Force rings to be sized to power of 2")
    CC: Alasdair McWilliam <[email protected]>
    Signed-off-by: Maciej Fijalkowski <[email protected]>
    Tested-by: George Kuruvinakunnel <[email protected]>
    Signed-off-by: Tony Nguyen <[email protected]>
    mfijalko authored and anguy11 committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    b3056ae View commit details
    Browse the repository at this point in the history
  32. x86/alternative: Fix race in try_get_desc()

    I encountered some occasional crashes of poke_int3_handler() when
    kprobes are set, while accessing desc->vec.
    
    The text poke mechanism claims to have an RCU-like behavior, but it
    does not appear that there is any quiescent state to ensure that
    nobody holds reference to desc. As a result, the following race
    appears to be possible, which can lead to memory corruption.
    
      CPU0					CPU1
      ----					----
      text_poke_bp_batch()
      -> smp_store_release(&bp_desc, &desc)
    
      [ notice that desc is on
        the stack			]
    
    					poke_int3_handler()
    
    					[ int3 might be kprobe's
    					  so sync events are do not
    					  help ]
    
    					-> try_get_desc(descp=&bp_desc)
    					   desc = __READ_ONCE(bp_desc)
    
    					   if (!desc) [false, success]
      WRITE_ONCE(bp_desc, NULL);
      atomic_dec_and_test(&desc.refs)
    
      [ success, desc space on the stack
        is being reused and might have
        non-zero value. ]
    					arch_atomic_inc_not_zero(&desc->refs)
    
    					[ might succeed since desc points to
    					  stack memory that was freed and might
    					  be reused. ]
    
    Fix this issue with small backportable patch. Instead of trying to
    make RCU-like behavior for bp_desc, just eliminate the unnecessary
    level of indirection of bp_desc, and hold the whole descriptor as a
    global.  Anyhow, there is only a single descriptor at any given
    moment.
    
    Fixes: 1f67624 ("x86/alternatives: Implement a better poke_int3_handler() completion scheme")
    Signed-off-by: Nadav Amit <[email protected]>
    Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
    Cc: [email protected]
    Link: https://lkml.kernel.org/r/[email protected]
    anadav authored and Peter Zijlstra committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    efd608f View commit details
    Browse the repository at this point in the history
  33. drm/amdgpu: avoid gfx register accessing during gfxoff

    Make sure gfxoff is disabled before gfx register accessing.
    
    Signed-off-by: Evan Quan <[email protected]>
    Reviewed-by: Lijo Lazar <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Evan Quan authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    7516777 View commit details
    Browse the repository at this point in the history
  34. drm/amd/pm: enable gfxoff feature for SMU 13.0.0

    The feature is ready with latest 78.58.0 PMFW.
    
    Signed-off-by: Evan Quan <[email protected]>
    Reviewed-by: Lijo Lazar <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Evan Quan authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    3c48053 View commit details
    Browse the repository at this point in the history
  35. drm/amd/pm: use adverse selection for dpm features unsupported by driver

    It's vbios and pmfw instead of driver who decide whether some dpm features
    is supported or not. Driver just de-selects those features which are not
    permitted on user's request. Thus, we use adverse selects model.
    
    Signed-off-by: Evan Quan <[email protected]>
    Reviewed-by: Lijo Lazar <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Evan Quan authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    b9caead View commit details
    Browse the repository at this point in the history
  36. drm/amdkfd: fix MQD init for GFX11 in init_mqd

    Set remaining compute_static_thread_mgmt_se* accordingly.
    
    Signed-off-by: Graham Sider <[email protected]>
    Acked-by: Alex Deucher <[email protected]>
    Reviewed-by: Felix Kuehling <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Graham Sider authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    a9b4700 View commit details
    Browse the repository at this point in the history
  37. drm/amdgpu: pass queue size and is_aql_queue to MES

    Update mes_v11_api_def.h add_queue API with is_aql_queue parameter. Also
    re-use gds_size for the queue size (unused for KFD). MES requires the
    queue size in order to compute the actual wptr offset within the queue
    RB since it increases monotonically for AQL queues.
    
    v2: Make is_aql_queue assign clearer
    
    Signed-off-by: Graham Sider <[email protected]>
    Reviewed-by: Felix Kuehling <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Graham Sider authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    91ef6cf View commit details
    Browse the repository at this point in the history
  38. drm/amdkfd: fix dropped interrupt in kfd_int_process_v11

    Shader wave interrupts were getting dropped in event_interrupt_wq_v11
    if the PRIV bit was set to 1. This would often lead to a hang. Until
    debugger logic is upstreamed, expand comment to stop early return.
    
    Signed-off-by: Graham Sider <[email protected]>
    Reviewed-by: Harish Kasiviswanathan <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Graham Sider authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    664883d View commit details
    Browse the repository at this point in the history
  39. drm/amd/display: Avoid avoid unnecessary pixel rate divider programming

    [Why]
    Programming pixel rate divider when FIFO is enabled can cause FIFO error.
    
    [How]
    Skip divider programming when divider values are the same to prevent FIFO
    error.
    
    Reviewed-by: Nicholas Kazlauskas <[email protected]>
    Acked-by: Jasdeep Dhillon <[email protected]>
    Signed-off-by: Taimur Hassan <[email protected]>
    Tested-by: Daniel Wheeler <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Taimur Hassan authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    783d446 View commit details
    Browse the repository at this point in the history
  40. drm/amd/display: Update DCN32 to use new SR latencies

    [Description]
    Update to new SR latencies for DCN32
    
    Reviewed-by: Nevenko Stupar <[email protected]>
    Reviewed-by: Jun Lei <[email protected]>
    Acked-by: Jasdeep Dhillon <[email protected]>
    Signed-off-by: Alvin Lee <[email protected]>
    Tested-by: Daniel Wheeler <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Alvin Lee authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    b6d1c39 View commit details
    Browse the repository at this point in the history
  41. drm/amd/display: Do DIO FIFO enable after DP video stream enable

    [Why]
    Avoids a race condition where DIO FIFO can underflow due to no incoming
    data available.
    
    [How]
    Shift the FIFO enable below stream enable.
    
    Make sure fullness level is written before the DIO reset takes place
    and that we're not doing it twice.
    
    Reviewed-by: Syed Hassan <[email protected]>
    Acked-by: Jasdeep Dhillon <[email protected]>
    Signed-off-by: Nicholas Kazlauskas <[email protected]>
    Tested-by: Daniel Wheeler <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Nicholas Kazlauskas authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    dd37fba View commit details
    Browse the repository at this point in the history
  42. drm/amd/display: Wrap OTG disable workaround with FIFO control

    [Why]
    The DIO FIFO will underflow if we turn off the OTG before we turn
    off the FIFO.
    
    Since this happens as part of the OTG workaround and we don't reset
    the FIFO afterwards we see the error persist.
    
    [How]
    Add disable FIFO before the disable CRTC and enable FIFO after enabling
    the CRTC.
    
    Reviewed-by: Syed Hassan <[email protected]>
    Acked-by: Jasdeep Dhillon <[email protected]>
    Signed-off-by: Nicholas Kazlauskas <[email protected]>
    Tested-by: Daniel Wheeler <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Nicholas Kazlauskas authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    ec669ef View commit details
    Browse the repository at this point in the history
  43. drm/amd/display: Add explicit FIFO disable for DP blank

    [Why]
    We rely on DMCUB to do this when disabling the link but it should
    actually come before we disable the DP VID stream.
    
    If we don't then the FIFO can end up with underflow that persists
    the next time it's enabled.
    
    [How]
    Add a DCN314 specific blank sequence that will disable the DIG FIFO
    first.
    
    Reviewed-by: Syed Hassan <[email protected]>
    Acked-by: Jasdeep Dhillon <[email protected]>
    Signed-off-by: Nicholas Kazlauskas <[email protected]>
    Tested-by: Daniel Wheeler <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Nicholas Kazlauskas authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    85096a7 View commit details
    Browse the repository at this point in the history
  44. drm/amd/display: Fix audio on display after unplugging another

    Revert "dc: skip audio setup when audio stream is enabled"
    
    This reverts commit 65fbfb0
    
    [why]
    We have minimal pipe split transition method to avoid pipe
    allocation outage.However, this method will invoke audio setup
    which cause audio output stuck once pipe reallocate.
    
    [how]
    skip audio setup for pipelines which audio stream has been enabled
    
    Reviewed-by: Martin Leung <[email protected]>
    Acked-by: Jasdeep Dhillon <[email protected]>
    Signed-off-by: Aric Cyr <[email protected]>
    Tested-by: Daniel Wheeler <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    AMD-aric authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    1ec5c0e View commit details
    Browse the repository at this point in the history
  45. drm/amd/display: Fix typo in get_pixel_rate_div

    [Why & How]
    Some FIFO errors still occur due to reading wrong pixel rate divider.
    Fix typo to prevent FIFO error.
    
    Reviewed-by: Nicholas Kazlauskas <[email protected]>
    Acked-by: Jasdeep Dhillon <[email protected]>
    Signed-off-by: Taimur Hassan <[email protected]>
    Tested-by: Daniel Wheeler <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Taimur Hassan authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    391ce35 View commit details
    Browse the repository at this point in the history
  46. drm/amd/display: Remove assert for odm transition case

    Remove assert that will hit during odm transition case, since this is a
    valid case.
    
    Signed-off-by: Eric Bernstein <[email protected]>
    Reviewed-by: Rodrigo Siqueira <[email protected]>
    Tested-by: Daniel Wheeler <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Eric Bernstein authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    8dd2e87 View commit details
    Browse the repository at this point in the history
  47. drm/amd/display: Avoid unnecessary pixel rate divider programming

    [Why]
    Programming pixel rate divider when FIFO is enabled can cause FIFO error.
    
    [How]
    Skip divider programming when divider values are the same to prevent FIFO
    error.
    
    Reviewed-by: Alvin Lee <[email protected]>
    Acked-by: Jasdeep Dhillon <[email protected]>
    Signed-off-by: Taimur Hassan <[email protected]>
    Tested-by: Daniel Wheeler <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Taimur Hassan authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    a28acf7 View commit details
    Browse the repository at this point in the history
  48. drm/amd/display: fill in clock values when DPM is not enabled

    [Why]
    For individual feature testing, PMFW may not report all clock
    values back. Driver will default them to 0 but this will
    cause the BB table to be skipped and default to one state
    with max clocks.
    
    [How]
    Add helper function to scan through initial clock values and
    populate them with default clock limits so that BB table
    can be built.
    Add dpm_enabled flag to check when DPM is not enabled and
    to trigger helper function.
    
    Reviewed-by: Jun Lei <[email protected]>
    Acked-by: Jasdeep Dhillon <[email protected]>
    Signed-off-by: Samson Tam <[email protected]>
    Tested-by: Daniel Wheeler <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Samson Tam authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    2d3907c View commit details
    Browse the repository at this point in the history
  49. drm/amdgpu: Correct the position in patch_cond_exec

    The current position calulated in gfx_v9_0_ring_emit_patch_cond_exec
    underflows when the wptr is divisible by ring->buf_mask + 1.
    
    Reviewed-by: Christian König <[email protected]>
    Signed-off-by: Jiadong.Zhu <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Jiadong.Zhu authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    b3e45b1 View commit details
    Browse the repository at this point in the history
  50. drm/amdgpu: Remove fence_process in count_emitted

    The function amdgpu_fence_count_emitted used in work_hander should not call
    amdgpu_fence_process which must be used in irq handler.
    
    Reviewed-by: Christian König <[email protected]>
    Signed-off-by: Jiadong.Zhu <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Jiadong.Zhu authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    11e3836 View commit details
    Browse the repository at this point in the history
  51. drm/amdgpu: Add amdgpu suspend-resume code path under SRIOV

    - Under SRIOV, we need to send REQ_GPU_FINI to the hypervisor
      during the suspend time. Furthermore, we cannot request a
      mode 1 reset under SRIOV as VF. Therefore, we will skip it
      as it is called in suspend_noirq() function.
    
    - In the resume code path, we need to send REQ_GPU_INIT to the
      hypervisor and also resume PSP IP block under SRIOV.
    
    Signed-off-by: Bokun Zhang <[email protected]>
    Reviewed-by: Alex Deucher <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Cc: [email protected]
    bokun-xxmtg authored and alexdeucher committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    3b7329c View commit details
    Browse the repository at this point in the history
  52. vdpa/ifcvf: fix the calculation of queuepair

    The q_pair_id to address a queue pair in the lm bar should be
    calculated by queue_id / 2 rather than queue_id / nr_vring.
    
    Fixes: 2ddae77 ("vDPA/ifcvf: detect and use the onboard number of queues directly")
    Signed-off-by: Angus Chen <[email protected]>
    Reviewed-by: Jason Wang <[email protected]>
    Reviewed-by: Michael S. Tsirkin <[email protected]>
    Acked-by: Zhu Lingshan <[email protected]>
    Message-Id: <[email protected]>
    Signed-off-by: Michael S. Tsirkin <[email protected]>
    Angus Chen authored and mstsirkin committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    db5db1a View commit details
    Browse the repository at this point in the history
  53. virtio-crypto: fix memory-leak

    Fix memory-leak for virtio-crypto akcipher request, this problem is
    introduced by 59ca6c9(virtio-crypto: implement RSA algorithm).
    The leak can be reproduced and tested with the following script
    inside virtual machine:
    
    #!/bin/bash
    
    LOOP_TIMES=10000
    
    # required module: pkcs8_key_parser, virtio_crypto
    modprobe pkcs8_key_parser # if CONFIG_PKCS8_PRIVATE_KEY_PARSER=m
    modprobe virtio_crypto # if CONFIG_CRYPTO_DEV_VIRTIO=m
    rm -rf /tmp/data
    dd if=/dev/random of=/tmp/data count=1 bs=230
    
    # generate private key and self-signed cert
    openssl req -nodes -x509 -newkey rsa:2048 -keyout key.pem \
    		-outform der -out cert.der  \
    		-subj "/C=CN/ST=GD/L=SZ/O=vihoo/OU=dev/CN=always.com/[email protected]"
    # convert private key from pem to der
    openssl pkcs8 -in key.pem -topk8 -nocrypt -outform DER -out key.der
    
    # add key
    PRIV_KEY_ID=`cat key.der | keyctl padd asymmetric test_priv_key @s`
    echo "priv key id = "$PRIV_KEY_ID
    PUB_KEY_ID=`cat cert.der | keyctl padd asymmetric test_pub_key @s`
    echo "pub key id = "$PUB_KEY_ID
    
    # query key
    keyctl pkey_query $PRIV_KEY_ID 0
    keyctl pkey_query $PUB_KEY_ID 0
    
    # here we only run pkey_encrypt becasuse it is the fastest interface
    function bench_pub() {
    	keyctl pkey_encrypt $PUB_KEY_ID 0 /tmp/data enc=pkcs1 >/tmp/enc.pub
    }
    
    # do bench_pub in loop to obtain the memory leak
    for (( i = 0; i < ${LOOP_TIMES}; ++i )); do
    	bench_pub
    done
    
    Signed-off-by: lei he <[email protected]>
    Acked-by: Michael S. Tsirkin <[email protected]>
    Reviewed-by: Gonglei <[email protected]>
    Message-Id: <[email protected]>
    Signed-off-by: Michael S. Tsirkin <[email protected]>
    lei he authored and mstsirkin committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    1bedcf2 View commit details
    Browse the repository at this point in the history
  54. virtio_test: fixup for vq reset

    Fix virtio test compilation failure caused by vq reset.
    
    ../../drivers/virtio/virtio_ring.c: In function ‘vring_create_virtqueue_packed’:
    ../../drivers/virtio/virtio_ring.c:1999:8: error: ‘struct virtqueue’ has no member named ‘reset’
     1999 |  vq->vq.reset = false;
          |        ^
    ../../drivers/virtio/virtio_ring.c: In function ‘__vring_new_virtqueue’:
    ../../drivers/virtio/virtio_ring.c:2493:8: error: ‘struct virtqueue’ has no member named ‘reset’
     2493 |  vq->vq.reset = false;
          |        ^
    ../../drivers/virtio/virtio_ring.c: In function ‘virtqueue_resize’:
    ../../drivers/virtio/virtio_ring.c:2587:18: error: ‘struct virtqueue’ has no member named ‘num_max’
     2587 |  if (num > vq->vq.num_max)
          |                  ^
    ../../drivers/virtio/virtio_ring.c:2596:11: error: ‘struct virtio_device’ has no member named ‘config’
     2596 |  if (!vdev->config->disable_vq_and_reset)
          |           ^~
    ../../drivers/virtio/virtio_ring.c:2599:11: error: ‘struct virtio_device’ has no member named ‘config’
     2599 |  if (!vdev->config->enable_vq_after_reset)
          |           ^~
    ../../drivers/virtio/virtio_ring.c:2602:12: error: ‘struct virtio_device’ has no member named ‘config’
     2602 |  err = vdev->config->disable_vq_and_reset(_vq);
          |            ^~
    ../../drivers/virtio/virtio_ring.c:2614:10: error: ‘struct virtio_device’ has no member named ‘config’
     2614 |  if (vdev->config->enable_vq_after_reset(_vq))
          |          ^~
    make: *** [<builtin>: virtio_ring.o] Error 1
    
    Signed-off-by: Xuan Zhuo <[email protected]>
    Message-Id: <[email protected]>
    Signed-off-by: Michael S. Tsirkin <[email protected]>
    fengidri authored and mstsirkin committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    dbe449d View commit details
    Browse the repository at this point in the history
  55. virtio-blk: Fix WARN_ON_ONCE in virtio_queue_rq()

    If a request fails at virtio_queue_rqs(), it is inserted to requeue_list
    and passed to virtio_queue_rq(). Then blk_mq_start_request() can be called
    again at virtio_queue_rq() and trigger WARN_ON_ONCE like below trace because
    request state was already set to MQ_RQ_IN_FLIGHT in virtio_queue_rqs()
    despite the failure.
    
    [    1.890468] ------------[ cut here ]------------
    [    1.890776] WARNING: CPU: 2 PID: 122 at block/blk-mq.c:1143
    blk_mq_start_request+0x8a/0xe0
    [    1.891045] Modules linked in:
    [    1.891250] CPU: 2 PID: 122 Comm: journal-offline Not tainted 5.19.0+ torvalds#44
    [    1.891504] Hardware name: ChromiumOS crosvm, BIOS 0
    [    1.891739] RIP: 0010:blk_mq_start_request+0x8a/0xe0
    [    1.891961] Code: 12 80 74 22 48 8b 4b 10 8b 89 64 01 00 00 8b 53
    20 83 fa ff 75 08 ba 00 00 00 80 0b 53 24 c1 e1 10 09 d1 89 48 34 5b
    41 5e c3 <0f> 0b eb b8 65 8b 05 2b 39 b6 7e 89 c0 48 0f a3 05 39 77 5b
    01 0f
    [    1.892443] RSP: 0018:ffffc900002777b0 EFLAGS: 00010202
    [    1.892673] RAX: 0000000000000000 RBX: ffff888004bc0000 RCX: 0000000000000000
    [    1.892952] RDX: 0000000000000000 RSI: ffff888003d7c200 RDI: ffff888004bc0000
    [    1.893228] RBP: 0000000000000000 R08: 0000000000000001 R09: ffff888004bc0100
    [    1.893506] R10: ffffffffffffffff R11: ffffffff8185ca10 R12: ffff888004bc0000
    [    1.893797] R13: ffffc90000277900 R14: ffff888004ab2340 R15: ffff888003d86e00
    [    1.894060] FS:  00007ffa143a4640(0000) GS:ffff88807dd00000(0000)
    knlGS:0000000000000000
    [    1.894412] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    [    1.894682] CR2: 00005648577d9088 CR3: 00000000053da004 CR4: 0000000000170ee0
    [    1.894953] Call Trace:
    [    1.895139]  <TASK>
    [    1.895303]  virtblk_prep_rq+0x1e5/0x280
    [    1.895509]  virtio_queue_rq+0x5c/0x310
    [    1.895710]  ? virtqueue_add_sgs+0x95/0xb0
    [    1.895905]  ? _raw_spin_unlock_irqrestore+0x16/0x30
    [    1.896133]  ? virtio_queue_rqs+0x340/0x390
    [    1.896453]  ? sbitmap_get+0xfa/0x220
    [    1.896678]  __blk_mq_issue_directly+0x41/0x180
    [    1.896906]  blk_mq_plug_issue_direct+0xd8/0x2c0
    [    1.897115]  blk_mq_flush_plug_list+0x115/0x180
    [    1.897342]  blk_add_rq_to_plug+0x51/0x130
    [    1.897543]  blk_mq_submit_bio+0x3a1/0x570
    [    1.897750]  submit_bio_noacct_nocheck+0x418/0x520
    [    1.897985]  ? submit_bio_noacct+0x1e/0x260
    [    1.897989]  ext4_bio_write_page+0x222/0x420
    [    1.898000]  mpage_process_page_bufs+0x178/0x1c0
    [    1.899451]  mpage_prepare_extent_to_map+0x2d2/0x440
    [    1.899603]  ext4_writepages+0x495/0x1020
    [    1.899733]  do_writepages+0xcb/0x220
    [    1.899871]  ? __seccomp_filter+0x171/0x7e0
    [    1.900006]  file_write_and_wait_range+0xcd/0xf0
    [    1.900167]  ext4_sync_file+0x72/0x320
    [    1.900308]  __x64_sys_fsync+0x66/0xa0
    [    1.900449]  do_syscall_64+0x31/0x50
    [    1.900595]  entry_SYSCALL_64_after_hwframe+0x63/0xcd
    [    1.900747] RIP: 0033:0x7ffa16ec96ea
    [    1.900883] Code: b8 4a 00 00 00 0f 05 48 3d 00 f0 ff ff 77 41 c3
    48 83 ec 18 89 7c 24 0c e8 e3 02 f8 ff 8b 7c 24 0c 89 c2 b8 4a 00 00
    00 0f 05 <48> 3d 00 f0 ff ff 77 36 89 d7 89 44 24 0c e8 43 03 f8 ff 8b
    44 24
    [    1.901302] RSP: 002b:00007ffa143a3ac0 EFLAGS: 00000293 ORIG_RAX:
    000000000000004a
    [    1.901499] RAX: ffffffffffffffda RBX: 0000560277ec6fe0 RCX: 00007ffa16ec96ea
    [    1.901696] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000016
    [    1.901884] RBP: 0000560277ec5910 R08: 0000000000000000 R09: 00007ffa143a4640
    [    1.902082] R10: 00007ffa16e4d39e R11: 0000000000000293 R12: 00005602773f59e0
    [    1.902459] R13: 0000000000000000 R14: 00007fffbfc007ff R15: 00007ffa13ba4000
    [    1.902763]  </TASK>
    [    1.902877] ---[ end trace 0000000000000000 ]---
    
    To avoid calling blk_mq_start_request() twice, This patch moves the
    execution of blk_mq_start_request() to the end of virtblk_prep_rq().
    And instead of requeuing failed request to plug list in the error path of
    virtblk_add_req_batch(), it uses blk_mq_requeue_request() to change failed
    request state to MQ_RQ_IDLE. Then virtblk can safely handle the request
    on the next trial.
    
    Fixes: 0e9911f ("virtio-blk: support mq_ops->queue_rqs()")
    Reported-by: Alexandre Courbot <[email protected]>
    Tested-by: Alexandre Courbot <[email protected]>
    Signed-off-by: Suwan Kim <[email protected]>
    Message-Id: <[email protected]>
    Signed-off-by: Michael S. Tsirkin <[email protected]>
    Acked-by: Stefan Hajnoczi <[email protected]>
    Reviewed-by: Pankaj Raghav <[email protected]>
    asfaca authored and mstsirkin committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    37fafe6 View commit details
    Browse the repository at this point in the history
  56. vduse: prevent uninitialized memory accesses

    If the VDUSE application provides a smaller config space
    than the driver expects, the driver may use uninitialized
    memory from the stack.
    
    This patch prevents it by initializing the buffer passed by
    the driver to store the config value.
    
    This fix addresses CVE-2022-2308.
    
    Cc: [email protected] # v5.15+
    Fixes: c8a6153 ("vduse: Introduce VDUSE - vDPA Device in Userspace")
    Reviewed-by: Xie Yongji <[email protected]>
    Acked-by: Jason Wang <[email protected]>
    Signed-off-by: Maxime Coquelin <[email protected]>
    Message-Id: <[email protected]>
    Signed-off-by: Michael S. Tsirkin <[email protected]>
    Reviewed-by: Chaitanya Kulkarni <[email protected]>
    mcoquelin authored and mstsirkin committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    46f8a29 View commit details
    Browse the repository at this point in the history
  57. vdpa/mlx5: Fix MQ to support non power of two num queues

    RQT objects require that a power of two value be configured for both
    rqt_max_size and rqt_actual size.
    
    For create_rqt, make sure to round up to the power of two the value of
    given by the user who created the vdpa device and given by
    ndev->rqt_size. The actual size is also rounded up to the power of two
    using the current number of VQs given by ndev->cur_num_vqs.
    
    Same goes with modify_rqt where we need to make sure act size is power
    of two based on the new number of QPs.
    
    Without this patch, attempt to create a device with non power of two QPs
    would result in error from firmware.
    
    Fixes: 5289373 ("vdpa/mlx5: Add multiqueue support")
    Signed-off-by: Eli Cohen <[email protected]>
    Message-Id: <[email protected]>
    Signed-off-by: Michael S. Tsirkin <[email protected]>
    elic307i authored and mstsirkin committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    a43ae80 View commit details
    Browse the repository at this point in the history
  58. Merge tag 'soc-fixes-6.0-rc7' of git://git.kernel.org/pub/scm/linux/k…

    …ernel/git/soc/soc
    
    Pull ARM SoC fixes from Arnd Bergmann:
     "This should be the last set of bugfixes in the SoC tree:
    
       - Two fixes for Arm integrator, dealing with a regression caused by
         invalid DT properties combined with a change in dma address
         translation, and missing device_type annotations on the PCI bus
    
       - Fixes for drivers/reset/, addressing bugs in i.MX8MP, Sparx5 and
         NPCM8XX platforms
    
       - Bjorn Andersson's email address changes in the MAINTAINERS file
    
       - Multiple minor fixes to Qualcomm dts files, and a change to the
         remoteproc firmware filename that did not match the actual path in
         the linux-firmware package
    
       - Minor code fixes for the Allwinner/sunxi SRAM driver, and the
         broadcom STB Bus Interface Unit driver
    
       - A build fix for the sunplus sp7021 platform
    
       - Two dts fixes for TI OMAP family SoCs, addressing an extraneous
         usb4 device node and an incorrect DMA handle"
    
    * tag 'soc-fixes-6.0-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
      ARM: dts: integrator: Fix DMA ranges
      ARM: dts: integrator: Tag PCI host with device_type
      ARM: sunplus: fix serial console kconfig and build problems
      reset: npcm: fix iprst2 and iprst4 setting
      arm64: dts: qcom: sm8350: fix UFS PHY serdes size
      soc: bcm: brcmstb: biuctrl: Avoid double of_node_put()
      arm64: dts: qcom: sc8280xp-x13s: Update firmware location
      soc: sunxi: sram: Fix debugfs info for A64 SRAM C
      soc: sunxi: sram: Fix probe function ordering issues
      soc: sunxi: sram: Prevent the driver from being unbound
      soc: sunxi: sram: Actually claim SRAM regions
      ARM: dts: am5748: keep usb4_tm disabled
      reset: microchip-sparx5: issue a reset on startup
      reset: imx7: Fix the iMX8MP PCIe PHY PERST support
      MAINTAINERS: Update Bjorn's email address
      arm64: dts: qcom: sc7280: move USB wakeup-source property
      arm64: dts: qcom: thinkpad-x13s: Fix firmware location
      arm64: dts: qcom: sm8150: Fix fastrpc iommu values
      ARM: dts: am33xx: Fix MMCHS0 dma properties
    torvalds committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    49c13ed View commit details
    Browse the repository at this point in the history
  59. Merge tag 'wireless-2022-09-27' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/wireless/wireless
    
    Johannes Berg says:
    
    ====================
    A few late-comer fixes:
     * locking in mac80211 MLME
     * non-QoS driver crash/regression
     * minstrel memory corruption
     * TX deadlock
     * TX queues not always enabled
     * HE/EHT bitrate calculation
    
    * tag 'wireless-2022-09-27' of git://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless:
      wifi: mac80211: mlme: Fix double unlock on assoc success handling
      wifi: mac80211: mlme: Fix missing unlock on beacon RX
      wifi: mac80211: fix memory corruption in minstrel_ht_update_rates()
      wifi: mac80211: fix regression with non-QoS drivers
      wifi: mac80211: ensure vif queues are operational after start
      wifi: mac80211: don't start TX with fq->lock to fix deadlock
      wifi: cfg80211: fix MCS divisor value
    ====================
    
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    kuba-moo committed Sep 27, 2022
    Configuration menu
    Copy the full SHA
    44d70bb View commit details
    Browse the repository at this point in the history

Commits on Sep 28, 2022

  1. can: c_can: don't cache TX messages for C_CAN cores

    As Jacob noticed, the optimization introduced in 387da6b ("can:
    c_can: cache frames to operate as a true FIFO") doesn't properly work
    on C_CAN, but on D_CAN IP cores. The exact reasons are still unknown.
    
    For now disable caching if CAN frames in the TX path for C_CAN cores.
    
    Fixes: 387da6b ("can: c_can: cache frames to operate as a true FIFO")
    Link: https://lore.kernel.org/all/[email protected]
    Link: https://lore.kernel.org/all/[email protected]
    Reported-by: Jacob Kroon <[email protected]>
    Tested-by: Jacob Kroon <[email protected]>
    Cc: [email protected] # v5.15
    Signed-off-by: Marc Kleine-Budde <[email protected]>
    marckleinebudde committed Sep 28, 2022
    Configuration menu
    Copy the full SHA
    81d192c View commit details
    Browse the repository at this point in the history
  2. ata: libata-scsi: Fix initialization of device queue depth

    For SATA devices supporting NCQ, drivers using libsas first initialize a
    scsi device queue depth based on the controller and device capabilities,
    leading to the scsi device queue_depth field being 32 (ATA maximum queue
    depth) for most setup. However, if libata was loaded using the
    force=[ID]]noncq argument, the default queue depth should be set to 1 to
    reflect the fact that queuable commands will never be used. This is
    consistent with manually setting a device queue depth to 1 through sysfs
    as that disables NCQ use for the device.
    
    Fix ata_scsi_dev_config() to honor the noncq parameter by sertting the
    device queue depth to 1 for devices that do not have the ATA_DFLAG_NCQ
    flag set.
    
    Signed-off-by: Damien Le Moal <[email protected]>
    Tested-by: John Garry <[email protected]>
    Damien Le Moal committed Sep 28, 2022
    Configuration menu
    Copy the full SHA
    6a8438d View commit details
    Browse the repository at this point in the history
  3. ata: libata-sata: Fix device queue depth control

    The function __ata_change_queue_depth() uses the helper
    ata_scsi_find_dev() to get the ata_device structure of a scsi device and
    set that device maximum queue depth. However, when the ata device is
    managed by libsas, ata_scsi_find_dev() returns NULL, turning
    __ata_change_queue_depth() into a nop, which prevents the user from
    setting the maximum queue depth of ATA devices used with libsas based
    HBAs.
    
    Fix this by renaming __ata_change_queue_depth() to
    ata_change_queue_depth() and adding a pointer to the ata_device
    structure of the target device as argument. This pointer is provided by
    ata_scsi_change_queue_depth() using ata_scsi_find_dev() in the case of
    a libata managed device and by sas_change_queue_depth() using
    sas_to_ata_dev() in the case of a libsas managed ata device.
    
    Signed-off-by: Damien Le Moal <[email protected]>
    Tested-by: John Garry <[email protected]>
    Damien Le Moal committed Sep 28, 2022
    Configuration menu
    Copy the full SHA
    141f3d6 View commit details
    Browse the repository at this point in the history
  4. perf tests vmlinux-kallsyms: Update is_ignored_symbol function to mat…

    …ch the kernel ignored list
    
    The testcase “vmlinux-kallsyms.c” fails in powerpc.
    
    	vmlinux symtab matches kallsyms: FAILED!
    
    This test look at the symbols in the vmlinux DSO and check if we find
    all of them in the kallsyms dso.
    
    But from the powerpc logs , observed that the failure happens for:
    
    	ERR : 0xc0000000000fe9c8: .Lmfspr_table not on kallsyms
    	ERR : 0xc0000000001009c8: .Lmtspr_table not on kallsyms
    
    These are labels ( with .L) in the source code and has to be ignored.
    Reference code with .Lmtspr_table: arch/powerpc/xmon/spr_access.S
    
    The testcases invokes is_ignored_symbol() function to ignore hidden
    symbols in the dso like local symbols. This function is adapted from
    is_ignored_symbol() kernel function in code: scripts/kallsyms.c . The
    kernel function got some updates which is not reflected in the testcase
    function and the new updates also handles ignoring "labels".
    
    Below is the changes that went in the kernel function.
    
    	 /* Symbol names that begin with the following are ignored.*/
    	 static const char * const ignored_prefixes[] = {
    	 		"$",			/* local symbols for ARM, MIPS, etc. */
    	-		".LASANPC",		/* s390 kasan local symbols */
    	+		".L",			/* local labels, .LBB,.Ltmpxxx,.L__unnamed_xx,.LASANPC, etc. */
    	 		"__crc_",		/* modversions */
    	 		"__efistub_",		/* arm64 EFI stub namespace */
    	-		"__kvm_nvhe_",		/* arm64 non-VHE KVM namespace */
    	+		"__kvm_nvhe_$",		/* arm64 local symbols in non-VHE KVM namespace */
    	+		"__kvm_nvhe_.L",	/* arm64 local symbols in non-VHE KVM namespace */
    	 		"__AArch64ADRPThunk_",	/* arm64 lld */
    	 		"__ARMV5PILongThunk_",	/* arm lld */
    	 		"__ARMV7PILongThunk_",
    
    This change is part of below commits and will handle the
    symbols with “.L”
    
    commit d4c8586 ("kallsyms: ignore all local labels prefixed by '.L'")
    commit 6ccf9cb ("KVM: arm64: Symbolize the nVHE HYP addresses")
    
    Update the testcase function to include the new changes.
    
    Reported-by: Disha Goel <[email protected]>
    Signed-off-by: Athira Jajeev <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: Kajol Jain <[email protected]>
    Cc: Madhavan Srinivasan <[email protected]>
    Cc: Michael Ellerman <[email protected]>
    Cc: Nageswara R Sastry <[email protected]>
    Cc: [email protected]
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    athira-rajeev authored and acmel committed Sep 28, 2022
    Configuration menu
    Copy the full SHA
    5064424 View commit details
    Browse the repository at this point in the history
  5. perf arm-spe: augment the data source type with neoverse_spe list

    When synthesizing event with SPE data source, commit 4e6430c("perf
    arm-spe: Use SPE data source for neoverse cores") augment the type with
    source information by MIDR. However, is_midr_in_range only compares the
    first entry in neoverse_spe.
    
    Change is_midr_in_range to is_midr_in_range_list to traverse the
    neoverse_spe array so that all neoverse cores synthesize event with data
    source packet.
    
    Fixes: 4e6430c ("perf arm-spe: Use SPE data source for neoverse cores")
    Reviewed-by: Ali Saidi <[email protected]>
    Reviewed-by: Leo Yan <[email protected]>
    Signed-off-by: Jing Zhang <[email protected]>
    Cc: Alexander Shishkin <[email protected]>
    Cc: Ali Saidi <[email protected]>
    Cc: German Gomez <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: James Clark <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: John Garry <[email protected]>
    Cc: [email protected]
    Cc: Mark Rutland <[email protected]>
    Cc: Mike Leach <[email protected]>
    Cc: Namhyung Kim <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Cc: Shuai Xue <[email protected]>
    Cc: Timothy Hayes <[email protected]>
    Cc: Will Deacon <[email protected]>
    Cc: Zhuo Song <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    Jing Zhang authored and acmel committed Sep 28, 2022
    Configuration menu
    Copy the full SHA
    74a61d5 View commit details
    Browse the repository at this point in the history
  6. Revert "net: set proper memcg for net_init hooks allocations"

    This reverts commit 1d0403d.
    
    Anatoly Pugachev reported that the commit 1d0403d ("net: set proper
    memcg for net_init hooks allocations") is somehow causing the sparc64
    VMs failed to boot and the VMs boot fine with that patch reverted. So,
    revert the patch for now and later we can debug the issue.
    
    Link: https://lore.kernel.org/all/[email protected]/
    Reported-by: Anatoly Pugachev <[email protected]>
    Signed-off-by: Shakeel Butt <[email protected]>
    Cc: Vasily Averin <[email protected]>
    Cc: Jakub Kicinski <[email protected]>
    Cc: Michal Koutný <[email protected]>
    Cc: Andrew Morton <[email protected]>
    Cc: [email protected]
    Cc: [email protected]
    Cc: [email protected]
    Cc: [email protected]
    Tested-by: Anatoly Pugachev <[email protected]>
    Acked-by: Johannes Weiner <[email protected]>
    Fixes: 1d0403d ("net: set proper memcg for net_init hooks allocations")
    Reviewed-by: Muchun Song <[email protected]>
    Acked-by: Roman Gushchin <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    shakeelb authored and torvalds committed Sep 28, 2022
    Configuration menu
    Copy the full SHA
    b1cab78 View commit details
    Browse the repository at this point in the history
  7. x86/cacheinfo: Add a cpu_llc_shared_mask() UP variant

    On a CONFIG_SMP=n kernel, the LLC shared mask is 0, which prevents
    __cache_amd_cpumap_setup() from doing the L3 masks setup, and more
    specifically from setting up the shared_cpu_map and shared_cpu_list
    files in sysfs, leading to lscpu from util-linux getting confused and
    segfaulting.
    
    Add a cpu_llc_shared_mask() UP variant which returns a mask with a
    single bit set, i.e., for CPU0.
    
    Fixes: 2b83809 ("x86/cpu/amd: Derive L3 shared_cpu_map from cpu_llc_shared_mask")
    Reported-by: Saurabh Sengar <[email protected]>
    Signed-off-by: Borislav Petkov <[email protected]>
    Cc: <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    suryasaimadhu committed Sep 28, 2022
    Configuration menu
    Copy the full SHA
    df5b035 View commit details
    Browse the repository at this point in the history
  8. Merge tag 'linux-can-fixes-for-6.0-20220928' of git://git.kernel.org/…

    …pub/scm/linux/kernel/git/mkl/linux-can
    
    Marc Kleine-Budde says:
    
    ====================
    pull-request: can 2022-09-28
    
    The patch is by me and targets the c_can driver. It disables an
    optimization in the TX path of C_CAN cores which causes problems.
    
    * tag 'linux-can-fixes-for-6.0-20220928' of git://git.kernel.org/pub/scm/linux/kernel/git/mkl/linux-can:
      can: c_can: don't cache TX messages for C_CAN cores
    ====================
    
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    kuba-moo committed Sep 28, 2022
    Configuration menu
    Copy the full SHA
    af2faee View commit details
    Browse the repository at this point in the history
  9. Merge tag 'clk-microchip-fixes-6.0' of https://git.kernel.org/pub/scm…

    …/linux/kernel/git/at91/linux into clk-fixes
    
    Pull Microchip clock fixes for Polarfire SoCs:
    
     - fix panic at boot in clock initialization when building with clang-15
     - make RTC's AHB clock critical as rtc will stop if the AHB
       interface clock is disabled
    
    * tag 'clk-microchip-fixes-6.0' of https://git.kernel.org/pub/scm/linux/kernel/git/at91/linux:
      clk: microchip: mpfs: make the rtc's ahb clock critical
      clk: microchip: mpfs: fix clk_cfg array bounds violation
    bebarino committed Sep 28, 2022
    Configuration menu
    Copy the full SHA
    3d87f6c View commit details
    Browse the repository at this point in the history
  10. [coredump] don't use __kernel_write() on kmap_local_page()

    passing kmap_local_page() result to __kernel_write() is unsafe -
    random ->write_iter() might (and 9p one does) get unhappy when
    passed ITER_KVEC with pointer that came from kmap_local_page().
    
    Fix by providing a variant of __kernel_write() that takes an iov_iter
    from caller (__kernel_write() becomes a trivial wrapper) and adding
    dump_emit_page() that parallels dump_emit(), except that instead of
    __kernel_write() it uses __kernel_write_iter() with ITER_BVEC source.
    
    Fixes: 3159ed5 "fs/coredump: use kmap_local_page()"
    Signed-off-by: Al Viro <[email protected]>
    Al Viro committed Sep 28, 2022
    Configuration menu
    Copy the full SHA
    06bbaa6 View commit details
    Browse the repository at this point in the history
  11. Merge tag 'mmc-v6.0-rc5' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/ulfh/mmc
    
    Pull MMC fixes from Ulf Hansson:
     "A couple of MMC fixes. This time there is also a fix for the ARM SCMI
      firmware driver, which has been acked by Sudeep Holla, the maintainer.
    
      MMC core:
       - Terminate infinite loop in SD-UHS voltage switch
    
      MMC host:
       - hsq: Fix kernel crash in the recovery path
       - moxart: Fix bus width configurations
       - sdhci: Fix kernel panic for cqe irq
    
      ARM_SCMI:
       - Fixup clock management by reverting 'firmware: arm_scmi: Add clock
         management to the SCMI power domain'"
    
    * tag 'mmc-v6.0-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc:
      mmc: hsq: Fix data stomping during mmc recovery
      Revert "firmware: arm_scmi: Add clock management to the SCMI power domain"
      mmc: core: Terminate infinite loop in SD-UHS voltage switch
      mmc: moxart: fix 4-bit bus width and remove 8-bit bus width
      mmc: sdhci: Fix host->cmd is null
    torvalds committed Sep 28, 2022
    Configuration menu
    Copy the full SHA
    e817c07 View commit details
    Browse the repository at this point in the history
  12. Merge tag 'irq_urgent_for_v6.0' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/tip/tip
    
    Pull more irqchip fixes from Borislav Petkov:
     "More irqchip fixes for 6.0 from Marc Zyngier. Stuff got left hanging
      due to the whole Plumbers and vacations commotion.
    
       - A couple of configuration fixes for the recently merged Loongarch
         drivers
    
       - A fix to avoid dynamic allocation of a cpumask which was causing
         issues with PREEMPT_RT and the GICv3 ITS
    
       - A tightening of an error check in the stm32 exti driver"
    
    * tag 'irq_urgent_for_v6.0' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      irqchip/loongson-pch-lpc: Add dependence on LoongArch
      irqchip: Select downstream irqchip drivers for LoongArch CPU
      irqchip/gic-v3-its: Remove cpumask_var_t allocation
      irqchip/stm32-exti: Remove check on always false condition
    torvalds committed Sep 28, 2022
    Configuration menu
    Copy the full SHA
    c3e0e1e View commit details
    Browse the repository at this point in the history
  13. clk: imx: imx6sx: remove the SET_RATE_PARENT flag for QSPI clocks

    There is no dedicate parent clock for QSPI so SET_RATE_PARENT flag
    should not be used. For instance, the default parent clock for QSPI is
    pll2_bus, which is also the parent clock for quite a few modules, such
    as MMDC, once GPMI NAND set clock rate for EDO5 mode can cause system
    hang due to pll2_bus rate changed.
    
    Fixes: f1541e1 ("clk: imx6sx: Switch to clk_hw based API")
    Signed-off-by: Han Xu <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Tested-by: Fabio Estevam <[email protected]>
    Reviewed-by: Abel Vesa <[email protected]>
    Signed-off-by: Stephen Boyd <[email protected]>
    hanxu-nxp authored and bebarino committed Sep 28, 2022
    Configuration menu
    Copy the full SHA
    b1ff1bf View commit details
    Browse the repository at this point in the history
  14. drm/i915/gt: Perf_limit_reasons are only available for Gen11+

    Register GT0_PERF_LIMIT_REASONS (0x1381a8) is available only for
    Gen11+. Therefore ensure perf_limit_reasons sysfs files are created only
    for Gen11+. Otherwise on Gen < 5 accessing these files results in the
    following oops:
    
    <1> [88.829420] BUG: unable to handle page fault for address: ffffc90000bb81a8
    <1> [88.829438] #PF: supervisor read access in kernel mode
    <1> [88.829447] #PF: error_code(0x0000) - not-present page
    
    This patch is a backport of the drm-tip commit 0d2d201
    ("drm/i915: Perf_limit_reasons are only available for Gen11+") to
    drm-intel-fixes. The backport is not identical to the original, it only
    includes the sysfs portions of if. The debugfs portion is not available
    in drm-intel-fixes so has not been backported.
    
    Bspec: 20008
    Bug: https://gitlab.freedesktop.org/drm/intel/-/issues/6863
    Fixes: fa68bff ("drm/i915/gt: Add sysfs throttle frequency interfaces")
    Signed-off-by: Ashutosh Dixit <[email protected]>
    Reviewed-by: Rodrigo Vivi <[email protected]>
    Signed-off-by: Rodrigo Vivi <[email protected]>
    Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
    (backported from commit 0d2d201)
    ashutoshx authored and rodrigovivi committed Sep 28, 2022
    Configuration menu
    Copy the full SHA
    7738be9 View commit details
    Browse the repository at this point in the history
  15. clk: sunxi-ng: h6: Fix default PLL GPU rate

    In commit 4167ac8 ("clk: sunxi-ng: sun50i: h6: Modify GPU clock
    configuration to support DFS") divider M0 was forced to be 1 in order to
    support DFS. However, that left N as it is, at high value of 36. On
    boards without devfreq enabled (all of them in kernel 6.0), this
    effectively sets GPU frequency to 864 MHz. This is about 100 MHz above
    maximum supported frequency.
    
    In order to fix this, let's set N to 18 (register value 17). That way
    default frequency of 432 MHz is preserved.
    
    Fixes: 4167ac8 ("clk: sunxi-ng: sun50i: h6: Modify GPU clock configuration to support DFS")
    Signed-off-by: Jernej Skrabec <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Stephen Boyd <[email protected]>
    jernejsk authored and bebarino committed Sep 28, 2022
    Configuration menu
    Copy the full SHA
    4014e91 View commit details
    Browse the repository at this point in the history

Commits on Sep 29, 2022

  1. io_uring/poll: disable level triggered poll

    Stefan reports that there are issues with the level triggered
    notification. Since we're late in the cycle, and it was introduced for
    the 6.0 release, just disable it at prep time and we can bring this
    back when Samba is happy with it.
    
    Reported-by: Stefan Metzmacher <[email protected]>
    Reviewed-by: Stefan Metzmacher <[email protected]>
    Signed-off-by: Jens Axboe <[email protected]>
    axboe committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    d59bd74 View commit details
    Browse the repository at this point in the history
  2. clk: iproc: Do not rely on node name for correct PLL setup

    After commit 31fd9b7 ("ARM: dts: BCM5301X: update CRU block
    description") a warning from clk-iproc-pll.c was generated due to a
    duplicate PLL name as well as the console stopped working. Upon closer
    inspection it became clear that iproc_pll_clk_setup() used the Device
    Tree node unit name as an unique identifier as well as a parent name to
    parent all clocks under the PLL.
    
    BCM5301X was the first platform on which that got noticed because of the
    DT node unit name renaming but the same assumptions hold true for any
    user of the iproc_pll_clk_setup() function.
    
    The first 'clock-output-names' property is always guaranteed to be
    unique as well as providing the actual desired PLL clock name, so we
    utilize that to register the PLL and as a parent name of all children
    clock.
    
    Fixes: 5fe225c ("clk: iproc: add initial common clock support")
    Signed-off-by: Florian Fainelli <[email protected]>
    Acked-by: Rafał Miłecki <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Stephen Boyd <[email protected]>
    ffainelli authored and bebarino committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    1b24a13 View commit details
    Browse the repository at this point in the history
  3. clk: imx93: drop of_match_ptr

    There is build warning when CONFIG_OF is not selected.
    >> drivers/clk/imx/clk-imx93.c:324:34: warning: 'imx93_clk_of_match'
    >> defined but not used [-Wunused-const-variable=]
         324 | static const struct of_device_id imx93_clk_of_match[] = {
             |                                  ^~~~~~~~~~~~~~~~~~
    
    The driver only support DT table, no sense to use of_match_ptr.
    
    Fixes: 24defbe ("clk: imx: add i.MX93 clk")
    Reported-by: kernel test robot <[email protected]>
    Signed-off-by: Peng Fan <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Reviewed-by: Abel Vesa <[email protected]>
    Signed-off-by: Stephen Boyd <[email protected]>
    MrVan authored and bebarino committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    daaa2fb View commit details
    Browse the repository at this point in the history
  4. net: mscc: ocelot: fix tagged VLAN refusal while under a VLAN-unaware…

    … bridge
    
    Currently the following set of commands fails:
    
    $ ip link add br0 type bridge # vlan_filtering 0
    $ ip link set swp0 master br0
    $ bridge vlan
    port              vlan-id
    swp0              1 PVID Egress Untagged
    $ bridge vlan add dev swp0 vid 10
    Error: mscc_ocelot_switch_lib: Port with more than one egress-untagged VLAN cannot have egress-tagged VLANs.
    
    Dumping ocelot->vlans, one can see that the 2 egress-untagged VLANs on swp0 are
    vid 1 (the bridge PVID) and vid 4094, a PVID used privately by the driver for
    VLAN-unaware bridging. So this is why bridge vid 10 is refused, despite
    'bridge vlan' showing a single egress untagged VLAN.
    
    As mentioned in the comment added, having this private VLAN does not impose
    restrictions to the hardware configuration, yet it is a bookkeeping problem.
    
    There are 2 possible solutions.
    
    One is to make the functions that operate on VLAN-unaware pvids:
    - ocelot_add_vlan_unaware_pvid()
    - ocelot_del_vlan_unaware_pvid()
    - ocelot_port_setup_dsa_8021q_cpu()
    - ocelot_port_teardown_dsa_8021q_cpu()
    call something different than ocelot_vlan_member_(add|del)(), the latter being
    the real problem, because it allocates a struct ocelot_bridge_vlan *vlan which
    it adds to ocelot->vlans. We don't really *need* the private VLANs in
    ocelot->vlans, it's just that we have the extra convenience of having the
    vlan->portmask cached in software (whereas without these structures, we'd have
    to create a raw ocelot_vlant_rmw_mask() procedure which reads back the current
    port mask from hardware).
    
    The other solution is to filter out the private VLANs from
    ocelot_port_num_untagged_vlans(), since they aren't what callers care about.
    We only need to do this to the mentioned function and not to
    ocelot_port_num_tagged_vlans(), because private VLANs are never egress-tagged.
    
    Nothing else seems to be broken in either solution, but the first one requires
    more rework which will conflict with the net-next change  36a0bf4 ("net:
    mscc: ocelot: set up tag_8021q CPU ports independent of user port affinity"),
    and I'd like to avoid that. So go with the other one.
    
    Fixes: 54c3198 ("net: mscc: ocelot: enforce FDB isolation when VLAN-unaware")
    Signed-off-by: Vladimir Oltean <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    vladimiroltean authored and kuba-moo committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    276d37e View commit details
    Browse the repository at this point in the history
  5. net: ethernet: mtk_eth_soc: fix mask of RX_DMA_GET_SPORT{,_V2}

    The bitmasks applied in RX_DMA_GET_SPORT and RX_DMA_GET_SPORT_V2 macros
    were swapped. Fix that.
    
    Reported-by: Chen Minqiang <[email protected]>
    Fixes: 160d3a9 ("net: ethernet: mtk_eth_soc: introduce MTK_NETSYS_V2 support")
    Acked-by: Lorenzo Bianconi <[email protected]>
    Signed-off-by: Daniel Golle <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    dangowrt authored and kuba-moo committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    c9da02b View commit details
    Browse the repository at this point in the history
  6. Merge branch '100GbE' of git://git.kernel.org/pub/scm/linux/kernel/gi…

    …t/tnguy/net-queue
    
    Tony Nguyen says:
    
    ====================
    ice: xsk: ZC changes
    
    Maciej Fijalkowski says:
    
    This set consists of two fixes to issues that were either pointed out on
    indirectly (John was reviewing AF_XDP selftests that were testing ice's
    ZC support) mailing list or were directly reported by customers.
    
    First patch allows user space to see done descriptor in CQ even after a
    single frame being transmitted and second patch removes the need for
    having HW rings sized to power of 2 number of descriptors when used
    against AF_XDP.
    
    I also forgot to mention that due to the current Tx cleaning algorithm,
    4k HW ring was broken and these two patches bring it back to life, so we
    kill two birds with one stone.
    
    * '100GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/net-queue:
      ice: xsk: drop power of 2 ring size restriction for AF_XDP
      ice: xsk: change batched Tx descriptor cleaning
    ====================
    
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    kuba-moo committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    3e1308a View commit details
    Browse the repository at this point in the history
  7. mptcp: factor out __mptcp_close() without socket lock

    Factor out __mptcp_close() from mptcp_close(). The caller of
    __mptcp_close() should hold the socket lock, and cancel mptcp work when
    __mptcp_close() returns true.
    
    This function will be used in the next commit.
    
    Fixes: f296234 ("mptcp: Add handling of incoming MP_JOIN requests")
    Fixes: 6aeed90 ("mptcp: fix race on unaccepted mptcp sockets")
    Cc: [email protected]
    Reviewed-by: Jiang Biao <[email protected]>
    Reviewed-by: Mengen Sun <[email protected]>
    Acked-by: Paolo Abeni <[email protected]>
    Signed-off-by: Menglong Dong <[email protected]>
    Signed-off-by: Mat Martineau <[email protected]>
    Signed-off-by: Jakub Kicinski <[email protected]>
    menglongdong authored and kuba-moo committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    26d3e21 View commit details
    Browse the repository at this point in the history
  8. mptcp: fix unreleased socket in accept queue

    The mptcp socket and its subflow sockets in accept queue can't be
    released after the process exit.
    
    While the release of a mptcp socket in listening state, the
    corresponding tcp socket will be released too. Meanwhile, the tcp
    socket in the unaccept queue will be released too. However, only init
    subflow is in the unaccept queue, and the joined subflow is not in the
    unaccept queue, which makes the joined subflow won't be released, and
    therefore the corresponding unaccepted mptcp socket will not be released
    to.
    
    This can be reproduced easily with following steps:
    
    1. create 2 namespace and veth:
       $ ip netns add mptcp-client
       $ ip netns add mptcp-server
       $ sysctl -w net.ipv4.conf.all.rp_filter=0
       $ ip netns exec mptcp-client sysctl -w net.mptcp.enabled=1
       $ ip netns exec mptcp-server sysctl -w net.mptcp.enabled=1
       $ ip link add red-client netns mptcp-client type veth peer red-server \
         netns mptcp-server
       $ ip -n mptcp-server address add 10.0.0.1/24 dev red-server
       $ ip -n mptcp-server address add 192.168.0.1/24 dev red-server
       $ ip -n mptcp-client address add 10.0.0.2/24 dev red-client
       $ ip -n mptcp-client address add 192.168.0.2/24 dev red-client
       $ ip -n mptcp-server link set red-server up
       $ ip -n mptcp-client link set red-client up
    
    2. configure the endpoint and limit for client and server:
       $ ip -n mptcp-server mptcp endpoint flush
       $ ip -n mptcp-server mptcp limits set subflow 2 add_addr_accepted 2
       $ ip -n mptcp-client mptcp endpoint flush
       $ ip -n mptcp-client mptcp limits set subflow 2 add_addr_accepted 2
       $ ip -n mptcp-client mptcp endpoint add 192.168.0.2 dev red-client id \
         1 subflow
    
    3. listen and accept on a port, such as 9999. The nc command we used
       here is modified, which makes it use mptcp protocol by default.
       $ ip netns exec mptcp-server nc -l -k -p 9999
    
    4. open another *two* terminal and use each of them to connect to the
       server with the following command:
       $ ip netns exec mptcp-client nc 10.0.0.1 9999
       Input something after connect to trigger the connection of the second
       subflow. So that there are two established mptcp connections, with the
       second one still unaccepted.
    
    5. exit all the nc command, and check the tcp socket in server namespace.
       And you will find that there is one tcp socket in CLOSE_WAIT state
       and can't release forever.
    
    Fix this by closing all of the unaccepted mptcp socket in
    mptcp_subflow_queue_clean() with __mptcp_close().
    
    Now, we can ensure that all unaccepted mptcp sockets will be cleaned by
    __mptcp_close() before they are released, so mptcp_sock_destruct(), which
    is used to clean the unaccepted mptcp socket, is not needed anymore.
    
    The selftests for mptcp is ran for this commit, and no new failures.
    
    Fixes: f296234 ("mptcp: Add handling of incoming MP_JOIN requests")
    Fixes: 6aeed90 ("mptcp: fix race on unaccepted mptcp sockets")
    Cc: [email protected]
    Reviewed-by: Jiang Biao <[email protected]>
    Reviewed-by: Mengen Sun <[email protected]>
    Acked-by: Paolo Abeni <[email protected]>
    Signed-off-by: Menglong Dong <[email protected]>
    Signed-off-by: Mat Martineau <[email protected]>
    Signed-off-by: Jakub Kicinski <[email protected]>
    menglongdong authored and kuba-moo committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    30e51b9 View commit details
    Browse the repository at this point in the history
  9. Merge branch 'mptcp-properly-clean-up-unaccepted-subflows'

    Mat Martineau says:
    
    ====================
    mptcp: Properly clean up unaccepted subflows
    
    Patch 1 factors out part of the mptcp_close() function for use by a caller
    that already owns the socket lock. This is a prerequisite for patch 2.
    
    Patch 2 is the fix that fully cleans up the unaccepted subflow sockets.
    ====================
    
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Jakub Kicinski <[email protected]>
    kuba-moo committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    3b04cba View commit details
    Browse the repository at this point in the history
  10. LoongArch: Align the address of kernel_entry to 4KB

    Align the address of kernel_entry to 4KB, to avoid early tlb miss
    exception in case the entry code crosses page boundary.
    
    Signed-off-by: Huacai Chen <[email protected]>
    chenhuacai committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    2938431 View commit details
    Browse the repository at this point in the history
  11. LoongArch: Fix and cleanup csr_era handling in do_ri()

    We don't emulate reserved instructions and just send a signal to the
    current process now. So we don't need to call compute_return_era() to
    add 4 (point to the next instruction) to csr_era in pt_regs. RA/ERA's
    backup/restore is cleaned up as well.
    
    Signed-off-by: Jun Yi <[email protected]>
    Signed-off-by: Huacai Chen <[email protected]>
    chenhuacai committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    06e76ac View commit details
    Browse the repository at this point in the history
  12. LoongArch: Clean up loongson3_smp_ops declaration

    Since loongson3_smp_ops is not used in LoongArch anymore, let's remove
    it for cleanup.
    
    Fixes: f2ac457 ("LoongArch: Add CPU definition headers")
    Signed-off-by: Yanteng Si <[email protected]>
    Signed-off-by: Huacai Chen <[email protected]>
    Yanteng Si authored and chenhuacai committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    4f196cb View commit details
    Browse the repository at this point in the history
  13. Merge tag 'loongarch-fixes-6.0-3' of git://git.kernel.org/pub/scm/lin…

    …ux/kernel/git/chenhuacai/linux-loongson
    
    Pull LoongArch fixes from Huacai Chen:
     "Some trivial fixes and cleanup"
    
    * tag 'loongarch-fixes-6.0-3' of git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson:
      LoongArch: Clean up loongson3_smp_ops declaration
      LoongArch: Fix and cleanup csr_era handling in do_ri()
      LoongArch: Align the address of kernel_entry to 4KB
    torvalds committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    81bcd4b View commit details
    Browse the repository at this point in the history
  14. Merge tag 'ata-6.0-rc7' of git://git.kernel.org/pub/scm/linux/kernel/…

    …git/dlemoal/libata
    
    Pull ATA fixes from Damien Le Moal:
     "Three late patches to fix problems discovered recently:
    
       - Add a horkage to disable link power management by default for the
         Pioneer BDR-207M and BDR-205 DVD drives (from Niklas)
    
       - Two patches to fix setting the maximum queue depth of libsas owned
         ATA devices (from me)"
    
    * tag 'ata-6.0-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata:
      ata: libata-sata: Fix device queue depth control
      ata: libata-scsi: Fix initialization of device queue depth
      libata: add ATA_HORKAGE_NOLPM for Pioneer BDR-207M and BDR-205
    torvalds committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    71f1875 View commit details
    Browse the repository at this point in the history
  15. perf test: Fix test case 87 ("perf record tests") for hybrid systems

    The test case 87 ("perf record tests") failed on hybrid systems,the event
    "cpu/br_inst_retired.near_call/p" is only for non-hybrid system. Correct
    the test event to support both non-hybrid and hybrid systems.
    
    Before:
    
      # ./perf test 87
      87: perf record tests                                   : FAILED!
    
    After:
    
      # ./perf test 87
      87: perf record tests                                   : Ok
    
    Fixes: 24f378e ("perf test: Add basic perf record tests")
    Reviewed-by: Kan Liang <[email protected]>
    Signed-off-by: Xing Zhengjun <[email protected]>
    Acked-by: Ian Rogers <[email protected]>
    Cc: Alexander Shishkin <[email protected]>
    Cc: Andi Kleen <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: Namhyung Kim <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    ZhengjunXing authored and acmel committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    457c8b6 View commit details
    Browse the repository at this point in the history
  16. perf tests record: Fail the test if the 'errs' counter is not zero

    We were just checking for the 'err' variable, when we should really see
    if there was some of the many checked errors that don't stop the test
    right away.
    
    Detected with clang 15.0.0:
    
      44    75.23 fedora:37       : FAIL clang version 15.0.0 (Fedora 15.0.0-2.fc37)
    
        tests/perf-record.c:68:16: error: variable 'errs' set but not used [-Werror,-Wunused-but-set-variable]
                int err = -1, errs = 0, i, wakeups = 0;
                              ^
        1 error generated.
    
    The patch introducing this 'perf test' entry had that check:
    
      +       return (err < 0 || errs > 0) ? -1 : 0;
    
    But at some point we lost that:
    
      -	  return (err < 0 || errs > 0) ? -1 : 0;
      +	  if (err == -EACCES)
      +               return TEST_SKIP;
      +	  if (err < 0)
      +               return TEST_FAIL;
      +	  return TEST_OK
    
    Put it back.
    
    Fixes: 2cf88f4 ("perf test: Use skip in PERF_RECORD_*")
    Acked-by: Ian Rogers <[email protected]>
    Cc: Adrian Hunter <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: Namhyung Kim <[email protected]>
    Link: https://lore.kernel.org/lkml/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    acmel committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    25c5e67 View commit details
    Browse the repository at this point in the history
  17. drm/amd/display: Prevent OTG shutdown during PSR SU

    [Why]
    
    Enabling Z10 optimizations allows DMUB to disable the OTG during PSR
    link-off. This theoretically saves power by putting more of the display
    hardware to sleep. However, we observe that with PSR SU, it causes
    visual artifacts, higher power usage, and potential system hang.
    
    This is partly due to an odd behavior with the VStartup interrupt used
    to signal DRM vblank events. If the OTG is toggled on/off during a PSR
    link on/off cycle, the vstartup interrupt fires twice in quick
    succession. This generates incorrectly timed vblank events.
    Additionally, it can cause cursor updates to generate visual artifacts.
    
    Note that this is not observed with PSR1 since PSR is fully disabled
    when there are vblank event requestors. Cursor updates are also
    artifact-free, likely because there are no selectively-updated (SU)
    frames that can generate artifacts.
    
    [How]
    
    A potential solution is to disable z10 idle optimizations only when fast
    updates (flips & cursor updates) are committed. A mechanism to do so
    would require some thoughtful design. Let's just disable idle
    optimizations for PSR2 for now.
    
    Fixes: 7cc191e ("drm/amd/display: Implement MPO PSR SU")
    Reported-by: August Wikerfors <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]/
    Tested-by: August Wikerfors <[email protected]>
    Reviewed-by: Harry Wentland <[email protected]>
    Signed-off-by: Leo Li <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    leo-sunli1 authored and alexdeucher committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    83ca5fb View commit details
    Browse the repository at this point in the history
  18. Merge tag 'nvme-6.0-2022-09-29' of git://git.infradead.org/nvme into …

    …block-6.0
    
    Pull NVMe fixes from Christoph:
    
    "nvme fixes for Linux 6.1
    
     - fix IOC_PR_CLEAR and IOC_PR_RELEASE ioctls for nvme devices
       (Michael Kelley)
     - disable Write Zeroes on Phison E3C/E4C (Tina Hsu)"
    
    * tag 'nvme-6.0-2022-09-29' of git://git.infradead.org/nvme:
      nvme-pci: disable Write Zeroes on Phison E3C/E4C
      nvme: Fix IOC_PR_CLEAR and IOC_PR_RELEASE ioctls for nvme devices
    axboe committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    6c84501 View commit details
    Browse the repository at this point in the history
  19. Merge tag 'input-for-v6.0-rc7' of git://git.kernel.org/pub/scm/linux/…

    …kernel/git/dtor/input
    
    Pull input fixes from Dmitry Torokhov:
    
     - small fixes for iqs62x-keys and melfas_mip4 drivers
    
     - corrected register address in snvs_pwrkey driver
    
     - Synaptic driver will stop trying to use intertouch (native) mode on
       some Lenovo AMD devices
    
    * tag 'input-for-v6.0-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
      Input: snvs_pwrkey - fix SNVS_HPVIDR1 register address
      Input: synaptics - disable Intertouch for Lenovo T14 and P14s AMD G1
      Input: iqs62x-keys - drop unused device node references
      Input: melfas_mip4 - fix return value check in mip4_probe()
    torvalds committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    da9eede View commit details
    Browse the repository at this point in the history
  20. Merge tag 'net-6.0-rc8' of git://git.kernel.org/pub/scm/linux/kernel/…

    …git/netdev/net
    
    Pull networking fixes from Paolo Abeni:
     "Including fixes from wifi and can.
    
      Current release - regressions:
    
       - phy: don't WARN for PHY_UP state in mdio_bus_phy_resume()
    
       - wifi: fix locking in mac80211 mlme
    
       - eth:
          - revert "net: mvpp2: debugfs: fix memory leak when using debugfs_lookup()"
          - mlxbf_gige: fix an IS_ERR() vs NULL bug in mlxbf_gige_mdio_probe
    
      Previous releases - regressions:
    
       - wifi: fix regression with non-QoS drivers
    
      Previous releases - always broken:
    
       - mptcp: fix unreleased socket in accept queue
    
       - wifi:
          - don't start TX with fq->lock to fix deadlock
          - fix memory corruption in minstrel_ht_update_rates()
    
       - eth:
          - macb: fix ZynqMP SGMII non-wakeup source resume failure
          - mt7531: only do PLL once after the reset
          - usbnet: fix memory leak in usbnet_disconnect()
    
      Misc:
    
       - usb: qmi_wwan: add new usb-id for Dell branded EM7455"
    
    * tag 'net-6.0-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (30 commits)
      mptcp: fix unreleased socket in accept queue
      mptcp: factor out __mptcp_close() without socket lock
      net: ethernet: mtk_eth_soc: fix mask of RX_DMA_GET_SPORT{,_V2}
      net: mscc: ocelot: fix tagged VLAN refusal while under a VLAN-unaware bridge
      can: c_can: don't cache TX messages for C_CAN cores
      ice: xsk: drop power of 2 ring size restriction for AF_XDP
      ice: xsk: change batched Tx descriptor cleaning
      net: usb: qmi_wwan: Add new usb-id for Dell branded EM7455
      selftests: Fix the if conditions of in test_extra_filter()
      net: phy: Don't WARN for PHY_UP state in mdio_bus_phy_resume()
      net: stmmac: power up/down serdes in stmmac_open/release
      wifi: mac80211: mlme: Fix double unlock on assoc success handling
      wifi: mac80211: mlme: Fix missing unlock on beacon RX
      wifi: mac80211: fix memory corruption in minstrel_ht_update_rates()
      wifi: mac80211: fix regression with non-QoS drivers
      wifi: mac80211: ensure vif queues are operational after start
      wifi: mac80211: don't start TX with fq->lock to fix deadlock
      wifi: cfg80211: fix MCS divisor value
      net: hippi: Add missing pci_disable_device() in rr_init_one()
      net/mlxbf_gige: Fix an IS_ERR() vs NULL bug in mlxbf_gige_mdio_probe
      ...
    torvalds committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    511cce1 View commit details
    Browse the repository at this point in the history
  21. perf parse-events: Ignore clang 15 warning about variable set but unu…

    …sed in bison produced code
    
    clang 15 now warns:
    
      46    65.20 fedora:rawhide                : FAIL clang version 15.0.0 (Fedora 15.0.0-3.fc38)
        util/parse-events-bison.c:1401:9: error: variable 'parse_events_nerrs' set but not used [-Werror,-Wunused-but-set-variable]
            int yynerrs = 0;
                ^
        #define yynerrs         parse_events_nerrs
                                ^
        1 error generated.
        make[3]: *** [/git/perf-6.0.0-rc7/tools/build/Makefile.build:139: util] Error 2
    
    Just ignore one more compiler warning for the bison generated C code.
    
    Committer notes:
    
    Older clangs don't know about -Wunused-but-set-variable, so we need to
    add -Wno-unknown-warning-option to avoid this:
    
      37    44.92 fedora:32                     : FAIL clang version 10.0.1 (Fedora 10.0.1-3.fc32)
        error: unknown warning option '-Wno-unused-but-set-variable'; did you mean '-Wno-unused-const-variable'? [-Werror,-Wunknown-warning-option]
        make[3]: *** [/git/perf-6.0.0-rc7/tools/build/Makefile.build:139: util] Error 2
    
    Reported-by: Arnaldo Carvalho de Melo <[email protected]>
    Signed-off-by: Jiri Olsa <[email protected]>
    Tested-by: Arnaldo Carvalho de Melo <[email protected]>
    Cc: Alexander Shishkin <[email protected]>
    Cc: Ian Rogers <[email protected]>
    Cc: Mark Rutland <[email protected]>
    Cc: Namhyung Kim <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Link: https://lore.kernel.org/lkml/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    olsajiri authored and acmel committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    5149a42 View commit details
    Browse the repository at this point in the history
  22. perf tests mmap-basic: Remove unused variable to address clang 15 war…

    …ning
    
    A clang 15 build reveal several unused-but-set variables, removing the
    'foo' variable in tests/mmap-basic.o object to address one of those
    cases.
    
    Signed-off-by: Jiri Olsa <[email protected]>
    Tested-by: Arnaldo Carvalho de Melo <[email protected]>
    Cc: Alexander Shishkin <[email protected]>
    Cc: Ian Rogers <[email protected]>
    Cc: Mark Rutland <[email protected]>
    Cc: Namhyung Kim <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Link: http://lore.kernel.org/lkml/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    olsajiri authored and acmel committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    5551717 View commit details
    Browse the repository at this point in the history
  23. perf build: Fixup disabling of -Wdeprecated-declarations for the pyth…

    …on scripting engine
    
    A brown paper bag where -Wno-error=deprecated-declarations was added
    from compiler output when the right thing is to add
    -Wno-deprecated-declarations, fix it.
    
    Fixes: 4ee3c4d ("perf scripting python: Do not build fail on deprecation warnings")
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    acmel committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    8e8bf60 View commit details
    Browse the repository at this point in the history
  24. drm/amdgpu: Enable VCN DPG for GC11_0_1

    Enable VCN DPG on GC11_0_1
    
    Signed-off-by: Sonny Jiang <[email protected]>
    Reviewed-by: James Zhu <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Sonny Jiang authored and alexdeucher committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    a3aded1 View commit details
    Browse the repository at this point in the history
  25. drm/amdgpu: Enable sram on vcn_4_0_2

    Enable sram on vcn_4_0_2
    
    Signed-off-by: Sonny Jiang <[email protected]>
    Reviewed-by: James Zhu <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Sonny Jiang authored and alexdeucher committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    541540b View commit details
    Browse the repository at this point in the history
  26. Merge tag 'pull-fixes' of git://git.kernel.org/pub/scm/linux/kernel/g…

    …it/viro/vfs
    
    Pull coredump fix from Al Viro:
     "Fix for breakage in dump_user_range()"
    
    * tag 'pull-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
      [coredump] don't use __kernel_write() on kmap_local_page()
    torvalds committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    987a926 View commit details
    Browse the repository at this point in the history
  27. Merge tag 'drm-misc-fixes-2022-09-29' of git://anongit.freedesktop.or…

    …g/drm/drm-misc into drm-fixes
    
    Short summary of fixes pull:
    
     * bridge/analogix: Revert earlier suspend fix
     * bridge/lt8912b: Fix corrupt display output
    
    Signed-off-by: Dave Airlie <[email protected]>
    
    From: Thomas Zimmermann <[email protected]>
    Link: https://patchwork.freedesktop.org/patch/msgid/YzWvHhaqHhYirn4L@linux-uq9g
    airlied committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    153a97b View commit details
    Browse the repository at this point in the history
  28. Merge tag 'amd-drm-fixes-6.0-2022-09-29' of https://gitlab.freedeskto…

    …p.org/agd5f/linux into drm-fixes
    
    amd-drm-fixes-6.0-2022-09-29:
    
    amdgpu:
    - GC 11.x fixes
    - SMU 13.x fixes
    - DCN 3.1.4 fixes
    - DCN 3.2.x fixes
    - GC 9.x fix
    - Fence fix
    - SR-IOV supend/resume fix
    - PSR regression fix
    
    Signed-off-by: Dave Airlie <[email protected]>
    From: Alex Deucher <[email protected]>
    Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
    airlied committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    91462af View commit details
    Browse the repository at this point in the history
  29. Merge tag 'drm-intel-fixes-2022-09-29' of git://anongit.freedesktop.o…

    …rg/drm/drm-intel into drm-fixes
    
    - Restrict forced preemption to the active context (Chris)
    - Restrict perf_limit_reasons to the supported platforms - gen11+ (Ashutosh)
    
    Signed-off-by: Dave Airlie <[email protected]>
    
    From: Rodrigo Vivi <[email protected]>
    Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
    airlied committed Sep 29, 2022
    Configuration menu
    Copy the full SHA
    6643b38 View commit details
    Browse the repository at this point in the history

Commits on Sep 30, 2022

  1. KVM: selftests: replace assertion with warning in access_tracking_per…

    …f_test
    
    Page_idle uses {ptep/pmdp}_clear_young_notify which in turn calls
    the mmu notifier callback ->clear_young(), which purposefully
    does not flush the TLB.
    
    When running the test in a nested guest, point 1. of the test
    doc header is violated, because KVM TLB is unbounded by size
    and since no flush is forced, KVM does not update the sptes
    accessed/idle bits resulting in guest assertion failure.
    
    More precisely, only the first ACCESS_WRITE in run_test() actually
    makes visible changes, because sptes are created and the accessed
    bit is set to 1 (or idle bit is 0). Then the first mark_memory_idle()
    passes since access bit is still one, and sets all pages as idle
    (or not accessed). When the next write is performed, the update
    is not flushed therefore idle is still 1 and next mark_memory_idle()
    fails.
    
    Signed-off-by: Emanuele Giuseppe Esposito <[email protected]>
    Message-Id: <[email protected]>
    Signed-off-by: Paolo Bonzini <[email protected]>
    esposem authored and bonzini committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    6336a81 View commit details
    Browse the repository at this point in the history
  2. KVM: selftests: Gracefully handle empty stack traces

    Bail out of test_dump_stack() if the stack trace is empty rather than
    invoking addr2line with zero addresses. The problem with the latter is
    that addr2line will block waiting for addresses to be passed in via
    stdin, e.g. if running a selftest from an interactive terminal.
    
    Opportunistically fix up the comment that mentions skipping 3 frames
    since only 2 are skipped in the code.
    
    Cc: Vipin Sharma <[email protected]>
    Cc: Sean Christopherson <[email protected]>
    Signed-off-by: David Matlack <[email protected]>
    Message-Id: <[email protected]>
    [Small tweak to keep backtrace() call close to if(). - Paolo]
    Signed-off-by: Paolo Bonzini <[email protected]>
    dmatlack authored and bonzini committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    09636ef View commit details
    Browse the repository at this point in the history
  3. KVM: x86: Hide IA32_PLATFORM_DCA_CAP[31:0] from the guest

    The only thing reported by CPUID.9 is the value of
    IA32_PLATFORM_DCA_CAP[31:0] in EAX. This MSR doesn't even exist in the
    guest, since CPUID.1:ECX.DCA[bit 18] is clear in the guest.
    
    Clear CPUID.9 in KVM_GET_SUPPORTED_CPUID.
    
    Fixes: 24c82e5 ("KVM: Sanitize cpuid")
    Signed-off-by: Jim Mattson <[email protected]>
    Message-Id: <[email protected]>
    Signed-off-by: Paolo Bonzini <[email protected]>
    jsmattsonjr authored and bonzini committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    aae2e72 View commit details
    Browse the repository at this point in the history
  4. KVM: selftests: Implement memcmp(), memcpy(), and memset() for guest use

    Implement memcmp(), memcpy(), and memset() to override the compiler's
    built-in versions in order to guarantee that the compiler won't generate
    out-of-line calls to external functions via the PLT.  This allows the
    helpers to be safely used in guest code, as KVM selftests don't support
    dynamic loading of guest code.
    
    Steal the implementations from the kernel's generic versions, sans the
    optimizations in memcmp() for unaligned accesses.
    
    Put the utilities in a separate compilation unit and build with
    -ffreestanding to fudge around a gcc "feature" where it will optimize
    memset(), memcpy(), etc... by generating a recursive call.  I.e. the
    compiler optimizes itself into infinite recursion.  Alternatively, the
    individual functions could be tagged with
    optimize("no-tree-loop-distribute-patterns"), but using "optimize" for
    anything but debug is discouraged, and Linus NAK'd the use of the flag
    in the kernel proper[*].
    
    https://lore.kernel.org/lkml/CAHk-=wik-oXnUpfZ6Hw37uLykc-_P0Apyn2XuX-odh-3Nzop8w@mail.gmail.com
    
    Cc: Andrew Jones <[email protected]>
    Cc: Anup Patel <[email protected]>
    Cc: Atish Patra <[email protected]>
    Cc: Christian Borntraeger <[email protected]>
    Cc: Janosch Frank <[email protected]>
    Cc: Claudio Imbrenda <[email protected]>
    Signed-off-by: Sean Christopherson <[email protected]>
    Message-Id: <[email protected]>
    Reviewed-by: Andrew Jones <[email protected]>
    Signed-off-by: Paolo Bonzini <[email protected]>
    sean-jc authored and bonzini committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    6b6f714 View commit details
    Browse the repository at this point in the history
  5. KVM: selftests: Compare insn opcodes directly in fix_hypercall_test

    Directly compare the expected versus observed hypercall instructions when
    verifying that KVM patched in the native hypercall (FIX_HYPERCALL_INSN
    quirk enabled).  gcc rightly complains that doing a 4-byte memcpy() with
    an "unsigned char" as the source generates an out-of-bounds accesses.
    
    Alternatively, "exp" and "obs" could be declared as 3-byte arrays, but
    there's no known reason to copy locally instead of comparing directly.
    
    In function ‘assert_hypercall_insn’,
        inlined from ‘guest_main’ at x86_64/fix_hypercall_test.c:91:2:
    x86_64/fix_hypercall_test.c:63:9: error: array subscript ‘unsigned int[0]’
     is partly outside array bounds of ‘unsigned char[1]’ [-Werror=array-bounds]
       63 |         memcpy(&exp, exp_insn, sizeof(exp));
          |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    x86_64/fix_hypercall_test.c: In function ‘guest_main’:
    x86_64/fix_hypercall_test.c:42:22: note: object ‘vmx_hypercall_insn’ of size 1
       42 | extern unsigned char vmx_hypercall_insn;
          |                      ^~~~~~~~~~~~~~~~~~
    x86_64/fix_hypercall_test.c:25:22: note: object ‘svm_hypercall_insn’ of size 1
       25 | extern unsigned char svm_hypercall_insn;
          |                      ^~~~~~~~~~~~~~~~~~
    In function ‘assert_hypercall_insn’,
        inlined from ‘guest_main’ at x86_64/fix_hypercall_test.c:91:2:
    x86_64/fix_hypercall_test.c:64:9: error: array subscript ‘unsigned int[0]’
     is partly outside array bounds of ‘unsigned char[1]’ [-Werror=array-bounds]
       64 |         memcpy(&obs, obs_insn, sizeof(obs));
          |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    x86_64/fix_hypercall_test.c: In function ‘guest_main’:
    x86_64/fix_hypercall_test.c:25:22: note: object ‘svm_hypercall_insn’ of size 1
       25 | extern unsigned char svm_hypercall_insn;
          |                      ^~~~~~~~~~~~~~~~~~
    x86_64/fix_hypercall_test.c:42:22: note: object ‘vmx_hypercall_insn’ of size 1
       42 | extern unsigned char vmx_hypercall_insn;
          |                      ^~~~~~~~~~~~~~~~~~
    cc1: all warnings being treated as errors
    make: *** [../lib.mk:135: tools/testing/selftests/kvm/x86_64/fix_hypercall_test] Error 1
    
    Fixes: 6c2fa8b ("selftests: KVM: Test KVM_X86_QUIRK_FIX_HYPERCALL_INSN")
    Cc: Oliver Upton <[email protected]>
    Signed-off-by: Sean Christopherson <[email protected]>
    Reviewed-by: Oliver Upton <[email protected]>
    Message-Id: <[email protected]>
    Signed-off-by: Paolo Bonzini <[email protected]>
    sean-jc authored and bonzini committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    3942650 View commit details
    Browse the repository at this point in the history
  6. Merge tag 'drm-fixes-2022-09-30-1' of git://anongit.freedesktop.org/d…

    …rm/drm
    
    Pull drm fixes from Dave Airlie:
     "Last set of fixes for 6.0 hopefully - minor bridge fixes, i915 fixes,
      and a bunch of amdgpu fixes for new IP blocks, along with a couple of
      regression fixes. Should be all set for merge window next week.
    
      amdgpu:
       - GC 11.x fixes
       - SMU 13.x fixes
       - DCN 3.1.4 fixes
       - DCN 3.2.x fixes
       - GC 9.x fix
       - Fence fix
       - SR-IOV supend/resume fix
       - PSR regression fix
    
      i915:
       - Restrict forced preemption to the active context
       - Restrict perf_limit_reasons to the supported platforms - gen11+
    
      bridge:
       - analogix: Revert earlier suspend fix
       - lt8912b: Fix corrupt display output"
    
    * tag 'drm-fixes-2022-09-30-1' of git://anongit.freedesktop.org/drm/drm: (26 commits)
      drm/amd/display: Prevent OTG shutdown during PSR SU
      drm/i915/gt: Perf_limit_reasons are only available for Gen11+
      drm/amdgpu: Add amdgpu suspend-resume code path under SRIOV
      drm/amdgpu: Remove fence_process in count_emitted
      drm/amdgpu: Correct the position in patch_cond_exec
      drm/amd/display: fill in clock values when DPM is not enabled
      drm/amd/display: Avoid unnecessary pixel rate divider programming
      drm/amd/display: Remove assert for odm transition case
      drm/amd/display: Fix typo in get_pixel_rate_div
      drm/amd/display: Fix audio on display after unplugging another
      drm/amd/display: Add explicit FIFO disable for DP blank
      drm/amd/display: Wrap OTG disable workaround with FIFO control
      drm/amd/display: Do DIO FIFO enable after DP video stream enable
      drm/amd/display: Update DCN32 to use new SR latencies
      drm/amd/display: Avoid avoid unnecessary pixel rate divider programming
      drm/amdkfd: fix dropped interrupt in kfd_int_process_v11
      drm/amdgpu: pass queue size and is_aql_queue to MES
      drm/amdkfd: fix MQD init for GFX11 in init_mqd
      drm/amd/pm: use adverse selection for dpm features unsupported by driver
      drm/amd/pm: enable gfxoff feature for SMU 13.0.0
      ...
    torvalds committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    5a77386 View commit details
    Browse the repository at this point in the history
  7. Revert "pstore: migrate to crypto acomp interface"

    This reverts commit e4f0a7e.
    
    When using this new interface, both efi_pstore and ramoops
    backends are unable to properly decompress dmesg if using
    zstd, lz4 and lzo algorithms (and maybe more). It does succeed
    with deflate though.
    
    The message observed in the kernel log is:
    
    [2.328828] pstore: crypto_acomp_decompress failed, ret = -22!
    
    The pstore infrastructure is able to collect the dmesg with
    both backends tested, but since decompression fails it's
    unreadable. With this revert everything is back to normal.
    
    Fixes: e4f0a7e ("pstore: migrate to crypto acomp interface")
    Cc: Ard Biesheuvel <[email protected]>
    Signed-off-by: Guilherme G. Piccoli <[email protected]>
    Signed-off-by: Kees Cook <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    guilhermepiccoli authored and kees committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    40158db View commit details
    Browse the repository at this point in the history
  8. Merge tag 'gpio-fixes-for-v6.0' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/brgl/linux
    
    Pull gpio fixes from Bartosz Golaszewski:
     "One more fix for the upcoming release:
    
       - fix the check for pwm support on non-A8K platforms in gpio-mvebu"
    
    * tag 'gpio-fixes-for-v6.0' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux:
      gpio: mvebu: Fix check for pwm support on non-A8K platforms
    torvalds committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    89e10b8 View commit details
    Browse the repository at this point in the history
  9. Merge tag 'pstore-v6.0-rc8' of git://git.kernel.org/pub/scm/linux/ker…

    …nel/git/kees/linux
    
    Pull pstore revert from Kees Cook:
     "A misbehavior with some compression backends in pstore was just
      discovered due to the recent crypto acomp migration.
    
      Since we're so close to release, it seems better to just simply revert
      it, and we can figure out what's going on without leaving it broken
      for a release.
    
       - Revert crypto acomp migration (Guilherme G. Piccoli)"
    
    * tag 'pstore-v6.0-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
      Revert "pstore: migrate to crypto acomp interface"
    torvalds committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    d649d2c View commit details
    Browse the repository at this point in the history
  10. Merge tag 'io_uring-6.0-2022-09-29' of git://git.kernel.dk/linux

    Pull io_uring fixes from Jens Axboe:
     "Two fixes that should go into 6.0:
    
       - Tweak the single issuer logic to register the task at creation,
         rather than at first submit. SINGLE_ISSUER was added for 6.0, and
         after some discussion on this, we decided to make it a bit stricter
         while it's still possible to do so (Dylan).
    
       - Stefan from Samba had some doubts on the level triggered poll that
         was added for this release. Rather than attempt to mess around with
         it now, just do the quick one-liner to disable it for release and
         we have time to discuss and change it for 6.1 instead (me)"
    
    * tag 'io_uring-6.0-2022-09-29' of git://git.kernel.dk/linux:
      io_uring/poll: disable level triggered poll
      io_uring: register single issuer task at creation
    torvalds committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    a0debc4 View commit details
    Browse the repository at this point in the history
  11. Merge tag 'block-6.0-2022-09-29' of git://git.kernel.dk/linux

    Pull block fixes from Jens Axboe:
     "A single NVMe pull request via Christoph with a few fixes that should
      go into the 6.0 release:
    
       - Fix IOC_PR_CLEAR and IOC_PR_RELEASE ioctls for nvme devices
         (Michael Kelley)
    
       - Disable Write Zeroes on Phison E3C/E4C (Tina Hsu)"
    
    * tag 'block-6.0-2022-09-29' of git://git.kernel.dk/linux:
      nvme-pci: disable Write Zeroes on Phison E3C/E4C
      nvme: Fix IOC_PR_CLEAR and IOC_PR_RELEASE ioctls for nvme devices
    torvalds committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    7bc6e90 View commit details
    Browse the repository at this point in the history
  12. Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/gi…

    …t/mst/vhost
    
    Pull virtio fixes from Michael Tsirkin:
     "Some last minute fixes.
    
      The virtio-blk one is the most important one since it was actually
      seen in the field, but the rest of them are small and clearly safe,
      everything here has been in next for a while"
    
    * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
      vdpa/mlx5: Fix MQ to support non power of two num queues
      vduse: prevent uninitialized memory accesses
      virtio-blk: Fix WARN_ON_ONCE in virtio_queue_rq()
      virtio_test: fixup for vq reset
      virtio-crypto: fix memory-leak
      vdpa/ifcvf: fix the calculation of queuepair
    torvalds committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    70575e7 View commit details
    Browse the repository at this point in the history
  13. drm/amdgpu: save rlcv/rlcp ucode version in amdgpu_gfx

    cache rlcv/rlcvp ucode version info in amdgpu_gfx
    structure
    
    Signed-off-by: Hawking Zhang <[email protected]>
    Reviewed-by: Likun Gao <[email protected]>
    Reviewed-by: Feifei Xu <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Hawking Zhang authored and alexdeucher committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    af81a92 View commit details
    Browse the repository at this point in the history
  14. drm/amdgpu: add helper to init rlc fw in header v2_0

    To initialize rlc firmware in header v2_0
    
    Signed-off-by: Hawking Zhang <[email protected]>
    Acked-by: Christian König <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Hawking Zhang authored and alexdeucher committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    2f3f958 View commit details
    Browse the repository at this point in the history
  15. drm/amdgpu: add helper to init rlc fw in header v2_1

    To initialize rlc firmware in header v2_1
    
    Signed-off-by: Hawking Zhang <[email protected]>
    Acked-by: Christian König <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Hawking Zhang authored and alexdeucher committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    90df151 View commit details
    Browse the repository at this point in the history
  16. drm/amdgpu: add helper to init rlc fw in header v2_2

    To initialize rlc firmware in header v2_2
    
    Signed-off-by: Hawking Zhang <[email protected]>
    Acked-by: Christian König <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Hawking Zhang authored and alexdeucher committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    bcecb65 View commit details
    Browse the repository at this point in the history
  17. drm/amdgpu: add helper to init rlc fw in header v2_3

    To initialize rlc firmware in header v2_3
    
    Signed-off-by: Hawking Zhang <[email protected]>
    Acked-by: Christian König <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Hawking Zhang authored and alexdeucher committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    c1c3f41 View commit details
    Browse the repository at this point in the history
  18. drm/amdgpu: add helper to init rlc fw in header v2_4

    To initialize rlc firmware in header v2_4
    
    Signed-off-by: Hawking Zhang <[email protected]>
    Acked-by: Christian König <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Hawking Zhang authored and alexdeucher committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    b33139e View commit details
    Browse the repository at this point in the history
  19. drm/amdgpu: add helper to init rlc firmware

    To initialzie rlc firmware according to rlc
    firmware header version
    
    v2: squash in backwards compat fix
    
    Signed-off-by: Hawking Zhang <[email protected]>
    Acked-by: Christian König <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Hawking Zhang authored and alexdeucher committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    04fa38c View commit details
    Browse the repository at this point in the history
  20. drm/amdgpu/gfx11: switch to amdgpu_gfx_rlc_init_microcode

    switch to common helper to initialize rlc firmware
    for gfx11
    
    Signed-off-by: Hawking Zhang <[email protected]>
    Acked-by: Christian König <[email protected]>
    Signed-off-by: Alex Deucher <[email protected]>
    Hawking Zhang authored and alexdeucher committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    0fd85e8 View commit details
    Browse the repository at this point in the history
  21. Merge tag 'amd-drm-fixes-6.0-2022-09-30-1' of https://gitlab.freedesk…

    …top.org/agd5f/linux into drm-fixes
    
    amd-drm-fixes-6.0-2022-09-30-1:
    
    amdgpu:
    - VCN 4.x fixes
    - RLC fixes for GC 11.x
    
    Signed-off-by: Daniel Vetter <[email protected]>
    From: Alex Deucher <[email protected]>
    Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
    danvet committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    414208e View commit details
    Browse the repository at this point in the history
  22. Merge tag 'for-linus-6.0' of git://git.kernel.org/pub/scm/virt/kvm/kvm

    Pull kvm fixes from Paolo Bonzini:
     "A small fix to the reported set of supported CPUID bits, and selftests
      fixes:
    
       - Skip tests that require EPT when it is not available
    
       - Do not hang when a test fails with an empty stack trace
    
       - avoid spurious failure when running access_tracking_perf_test in a
         KVM guest
    
       - work around GCC's tendency to optimize loops into mem*() functions,
         which breaks because the guest code in selftests cannot call into
         PLTs
    
       - fix -Warray-bounds error in fix_hypercall_test"
    
    * tag 'for-linus-6.0' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
      KVM: selftests: Compare insn opcodes directly in fix_hypercall_test
      KVM: selftests: Implement memcmp(), memcpy(), and memset() for guest use
      KVM: x86: Hide IA32_PLATFORM_DCA_CAP[31:0] from the guest
      KVM: selftests: Gracefully handle empty stack traces
      KVM: selftests: replace assertion with warning in access_tracking_perf_test
      KVM: selftests: Skip tests that require EPT when it is not available
    torvalds committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    920541b View commit details
    Browse the repository at this point in the history
  23. Merge tag 'perf-tools-fixes-for-v6.0-2022-09-29' of git://git.kernel.…

    …org/pub/scm/linux/kernel/git/acme/linux
    
    Pull perf tools fixes from Arnaldo Carvalho de Melo:
    
     - Fail the 'perf test record' entry on error, fixing a regression where
       just setup stuff like allocating memory and not the actual things
       being tested failed.
    
     - Fixup disabling of -Wdeprecated-declarations for the python scripting
       engine, the previous attempt had a brown paper bag thinko.
    
     - Fix branch stack sampling test to include sanity check for branch
       filter on PowerPC.
    
     - Update is_ignored_symbol function to match the kernel ignored list,
       fixing running the 'perf test' entry that compares resolving symbols
       from kallsyms to resolving from vmlinux.
    
     - Augment the data source type with ARM's neoverse_spe list, the
       previous code was limited in its search resolving the data source.
    
     - Fix some clang 5 variable set but unused cases.
    
     - Get a perf cgroup more portably in BPF as the
       __builtin_preserve_enum_value builtin is not available in older
       versions of clang. In those cases we can forgo BPF's CO-RE (Compile
       Once, Run Everywhere).
    
     - More Fixes for Intel's hybrid CPU model.
    
    * tag 'perf-tools-fixes-for-v6.0-2022-09-29' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux:
      perf build: Fixup disabling of -Wdeprecated-declarations for the python scripting engine
      perf tests mmap-basic: Remove unused variable to address clang 15 warning
      perf parse-events: Ignore clang 15 warning about variable set but unused in bison produced code
      perf tests record: Fail the test if the 'errs' counter is not zero
      perf test: Fix test case 87 ("perf record tests") for hybrid systems
      perf arm-spe: augment the data source type with neoverse_spe list
      perf tests vmlinux-kallsyms: Update is_ignored_symbol function to match the kernel ignored list
      perf tests powerpc: Fix branch stack sampling test to include sanity check for branch filter
      perf parse-events: Remove "not supported" hybrid cache events
      perf print-events: Fix "perf list" can not display the PMU prefix for some hybrid cache events
      perf tools: Get a perf cgroup more portably in BPF
    torvalds committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    c816f2e View commit details
    Browse the repository at this point in the history
  24. Merge tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/clk/linux
    
    Pull clk driver fixes from Stephen Boyd:
     "Here's the last batch of clk driver fixes for this release.
    
      These patches fix serious problems, for example, i.MX has an issue
      where changing the NAND clk frequency hangs the system. On Allwinner
      H6 the GPU is being overclocked which could lead to long term hardware
      damage.
    
      And finally on some Broadcom SoCs the serial console stopped working
      because the clk tree hierarchy description got broken by an
      inadvertant DT node name change. That's fixed by using
      'clock-output-names' to generate a stable and unique name for clks so
      the framework can properly link things up.
    
      There's also a couple build fixes in here. One to fix CONFIG_OF=n
      builds and one to avoid an array out of bounds bug that happens during
      clk registration on microchip. I hope that KASAN would have found that
      OOB problem, but probably KASAN wasn't attempted. Instead LLVM/clang
      compilation caused an oops, while GCC didn't"
    
    * tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
      clk: imx93: drop of_match_ptr
      clk: iproc: Do not rely on node name for correct PLL setup
      clk: sunxi-ng: h6: Fix default PLL GPU rate
      clk: imx: imx6sx: remove the SET_RATE_PARENT flag for QSPI clocks
      clk: microchip: mpfs: make the rtc's ahb clock critical
      clk: microchip: mpfs: fix clk_cfg array bounds violation
      clk: ingenic-tcu: Properly enable registers before accessing timers
    torvalds committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    e5fa173 View commit details
    Browse the repository at this point in the history
  25. Merge tag 'drm-fixes-2022-10-01' of git://anongit.freedesktop.org/drm…

    …/drm
    
    Pull drm fixes from Daniel Vetter:
     "Some last minute amd fixes:
    
       - VCN 4.x and GC 11.x fixes, mostly around fw"
    
    * tag 'drm-fixes-2022-10-01' of git://anongit.freedesktop.org/drm/drm:
      drm/amdgpu/gfx11: switch to amdgpu_gfx_rlc_init_microcode
      drm/amdgpu: add helper to init rlc firmware
      drm/amdgpu: add helper to init rlc fw in header v2_4
      drm/amdgpu: add helper to init rlc fw in header v2_3
      drm/amdgpu: add helper to init rlc fw in header v2_2
      drm/amdgpu: add helper to init rlc fw in header v2_1
      drm/amdgpu: add helper to init rlc fw in header v2_0
      drm/amdgpu: save rlcv/rlcp ucode version in amdgpu_gfx
      drm/amdgpu: Enable sram on vcn_4_0_2
      drm/amdgpu: Enable VCN DPG for GC11_0_1
    torvalds committed Sep 30, 2022
    Configuration menu
    Copy the full SHA
    ffb4d94 View commit details
    Browse the repository at this point in the history

Commits on Oct 1, 2022

  1. MAINTAINERS: drop entry to removed file in ARM/RISCPC ARCHITECTURE

    Commit c1fe8d0 ("ARM: riscpc: use GENERIC_IRQ_MULTI_HANDLER") removes
    arch/arm/include/asm/hardware/entry-macro-iomd.S, but missed to adjust
    MAINTAINERS.
    
    Hence, ./scripts/get_maintainer.pl --self-test=patterns complains about a
    broken reference.
    
    Drop the file entry to the removed file in ARM/RISCPC ARCHITECTURE.
    
    Link: https://lkml.kernel.org/r/[email protected]
    Fixes: c1fe8d0 ("ARM: riscpc: use GENERIC_IRQ_MULTI_HANDLER")
    Signed-off-by: Lukas Bulwahn <[email protected]>
    Cc: Ard Biesheuvel <[email protected]>
    Cc: Arnd Bergmann <[email protected]>
    Cc: Russell King <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    bulwahn authored and akpm00 committed Oct 1, 2022
    Configuration menu
    Copy the full SHA
    b674ded View commit details
    Browse the repository at this point in the history
  2. mm: fix BUG splat with kvmalloc + GFP_ATOMIC

    Martin Zaharinov reports BUG with 5.19.10 kernel:
     kernel BUG at mm/vmalloc.c:2437!
     invalid opcode: 0000 [kdave#1] SMP
     CPU: 28 PID: 0 Comm: swapper/28 Tainted: G        W  O      5.19.9 kdave#1
     [..]
     RIP: 0010:__get_vm_area_node+0x120/0x130
      __vmalloc_node_range+0x96/0x1e0
      kvmalloc_node+0x92/0xb0
      bucket_table_alloc.isra.0+0x47/0x140
      rhashtable_try_insert+0x3a4/0x440
      rhashtable_insert_slow+0x1b/0x30
     [..]
    
    bucket_table_alloc uses kvzalloc(GPF_ATOMIC).  If kmalloc fails, this now
    falls through to vmalloc and hits code paths that assume GFP_KERNEL.
    
    Link: https://lkml.kernel.org/r/[email protected]
    Fixes: a421ef3 ("mm: allow !GFP_KERNEL allocations for kvmalloc")
    Signed-off-by: Florian Westphal <[email protected]>
    Suggested-by: Michal Hocko <[email protected]>
    Link: https://lore.kernel.org/linux-mm/Yy3MS2uhSgjF47dy@pc636/T/#t
    Acked-by: Michal Hocko <[email protected]>
    Reported-by: Martin Zaharinov <[email protected]>
    Cc: Uladzislau Rezki (Sony) <[email protected]>
    Cc: Vlastimil Babka <[email protected]>
    Cc: <[email protected]>
    Signed-off-by: Andrew Morton <[email protected]>
    Florian Westphal authored and akpm00 committed Oct 1, 2022
    Configuration menu
    Copy the full SHA
    30c1936 View commit details
    Browse the repository at this point in the history
  3. damon/sysfs: fix possible memleak on damon_sysfs_add_target

    When damon_sysfs_add_target couldn't find proper task, New allocated
    damon_target structure isn't registered yet, So, it's impossible to free
    new allocated one by damon_sysfs_destroy_targets.
    
    By calling damon_add_target as soon as allocating new target, Fix this
    possible memory leak.
    
    Link: https://lkml.kernel.org/r/[email protected]
    Fixes: a61ea56 ("mm/damon/sysfs: link DAMON for virtual address spaces monitoring")
    Signed-off-by: Levi Yun <[email protected]>
    Signed-off-by: SeongJae Park <[email protected]>
    Reviewed-by: SeongJae Park <[email protected]>
    Cc: <[email protected]>	[5.17.x]
    Signed-off-by: Andrew Morton <[email protected]>
    SupremacistLevi authored and akpm00 committed Oct 1, 2022
    Configuration menu
    Copy the full SHA
    1c8e234 View commit details
    Browse the repository at this point in the history
  4. Merge tag 'mm-hotfixes-stable-2022-09-30' of git://git.kernel.org/pub…

    …/scm/linux/kernel/git/akpm/mm
    
    Pull more hotfixes from Andrew Morton:
     "One MAINTAINERS update, two MM fixes, both cc:stable"
    
    The previous pull wasn't fated to be the last one..
    
    * tag 'mm-hotfixes-stable-2022-09-30' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm:
      damon/sysfs: fix possible memleak on damon_sysfs_add_target
      mm: fix BUG splat with kvmalloc + GFP_ATOMIC
      MAINTAINERS: drop entry to removed file in ARM/RISCPC ARCHITECTURE
    torvalds committed Oct 1, 2022
    Configuration menu
    Copy the full SHA
    2a4b6e1 View commit details
    Browse the repository at this point in the history
  5. Merge tag 'media/v6.0-1' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/mchehab/linux-media
    
    Pull media fixes from Mauro Carvalho Chehab:
    
     - some fixes for the v4l2 ioctl handler logic
    
     - a fix for an out of bound access in the DVB videobuf2 handler
    
     - three driver fixes (rkvdec, mediatek/vcodek and uvcvideo)
    
    * tag 'media/v6.0-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
      media: rkvdec: Disable H.264 error detection
      media: mediatek: vcodec: Drop platform_get_resource(IORESOURCE_IRQ)
      media: dvb_vb2: fix possible out of bound access
      media: v4l2-ioctl.c: fix incorrect error path
      media: v4l2-compat-ioctl32.c: zero buffer passed to v4l2_compat_get_array_args()
      media: uvcvideo: Fix InterfaceProtocol for Quanta camera
    torvalds committed Oct 1, 2022
    Configuration menu
    Copy the full SHA
    89f2ddc View commit details
    Browse the repository at this point in the history
  6. Merge tag 'usb-6.0-final' of git://git.kernel.org/pub/scm/linux/kerne…

    …l/git/gregkh/usb
    
    Pull USB/Thunderbolt fixes from Greg KH:
     "Here are some tiny USB and Thunderbolt driver fixes and quirks.
    
      Included in here are:
    
       - three uas/usb-storage driver quirks to get the devices working
         properly due to broken firmware images in them (they can not run at
         high data rates, and are also throttled on other operating systems
         because of this)
    
       - thunderbolt bugfix for plug event delays
    
       - typec runtime warning removal
    
       - dwc3 st driver bugfix. Note, a follow-on fix for this will end up
         coming in for 6.1-rc1 as the developers are still arguing over what
         the final solution will be, but this should be sufficient for now
    
      All of these have been in linux-next with no reported problems"
    
    * tag 'usb-6.0-final' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
      uas: ignore UAS for Thinkplus chips
      usb-storage: Add Hiksemi USB3-FW to IGNORE_UAS
      uas: add no-uas quirk for Hiksemi usb_disk
      usb: dwc3: st: Fix node's child name
      usb: typec: ucsi: Remove incorrect warning
      thunderbolt: Explicitly reset plug events delay back to USB4 spec value
    torvalds committed Oct 1, 2022
    Configuration menu
    Copy the full SHA
    b357fd1 View commit details
    Browse the repository at this point in the history
  7. dt-bindings: i2c: st,stm32-i2c: Document interrupt-names property

    Document interrupt-names property with "event" and "error" interrupt names.
    This fixes dtbs_check warnings when building current Linux DTs:
    
    "
    arch/arm/boot/dts/stm32mp153c-dhcom-drc02.dtb: i2c@40015000: Unevaluated properties are not allowed ('interrupt-names' was unexpected)
    "
    
    Signed-off-by: Marek Vasut <[email protected]>
    Acked-by: Rob Herring <[email protected]>
    Signed-off-by: Wolfram Sang <[email protected]>
    Marek Vasut authored and wsakernel committed Oct 1, 2022
    Configuration menu
    Copy the full SHA
    f938a52 View commit details
    Browse the repository at this point in the history
  8. dt-bindings: i2c: st,stm32-i2c: Document wakeup-source property

    Document wakeup-source property. This fixes dtbs_check warnings
    when building current Linux DTs:
    
    "
    arch/arm/boot/dts/stm32mp153c-dhcom-drc02.dtb: i2c@40015000: Unevaluated properties are not allowed ('wakeup-source' was unexpected)
    "
    
    Signed-off-by: Marek Vasut <[email protected]>
    Acked-by: Rob Herring <[email protected]>
    Signed-off-by: Wolfram Sang <[email protected]>
    Marek Vasut authored and wsakernel committed Oct 1, 2022
    Configuration menu
    Copy the full SHA
    367d4c8 View commit details
    Browse the repository at this point in the history
  9. i2c: davinci: fix PM disable depth imbalance in davinci_i2c_probe

    The pm_runtime_enable will increase power disable depth. Thus a
    pairing decrement is needed on the error handling path to keep
    it balanced according to context.
    
    Fixes: 17f8815 ("i2c: davinci: Add PM Runtime Support")
    Signed-off-by: Zhang Qilong <[email protected]>
    Reviewed-by: Bartosz Golaszewski <[email protected]>
    Signed-off-by: Wolfram Sang <[email protected]>
    Zhang Qilong authored and wsakernel committed Oct 1, 2022
    Configuration menu
    Copy the full SHA
    e2062df View commit details
    Browse the repository at this point in the history

Commits on Oct 2, 2022

  1. Merge tag 'x86_urgent_for_v6.0' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/tip/tip
    
    Pull x86 fixes from Borislav Petkov:
    
     - Add the respective UP last level cache mask accessors in order not to
       cause segfaults when lscpu accesses their representation in sysfs
    
     - Fix for a race in the alternatives batch patching machinery when
       kprobes are set
    
    * tag 'x86_urgent_for_v6.0' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      x86/cacheinfo: Add a cpu_llc_shared_mask() UP variant
      x86/alternative: Fix race in try_get_desc()
    torvalds committed Oct 2, 2022
    Configuration menu
    Copy the full SHA
    534b0ab View commit details
    Browse the repository at this point in the history
  2. Merge tag 'perf-urgent-2022-10-02' of git://git.kernel.org/pub/scm/li…

    …nux/kernel/git/tip/tip
    
    Pull misc perf fixes from Ingo Molnar:
    
     - Fix a PMU enumeration/initialization bug on Intel Alder Lake CPUs
    
     - Fix KVM guest PEBS register handling
    
     - Fix race/reentry bug in perf_output_read_group() reading of PMU
       counters
    
    * tag 'perf-urgent-2022-10-02' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      perf/core: Fix reentry problem in perf_output_read_group()
      perf/x86/core: Completely disable guest PEBS via guest's global_ctrl
      perf/x86/intel: Fix unchecked MSR access error for Alder Lake N
    torvalds committed Oct 2, 2022
    Configuration menu
    Copy the full SHA
    febae48 View commit details
    Browse the repository at this point in the history
  3. Merge tag 'i2c-for-6.0-rc8' of git://git.kernel.org/pub/scm/linux/ker…

    …nel/git/wsa/linux
    
    Pull i2c fixes from Wolfram Sang:
     "Add missing DT bindings for STM32 and a resource leak fix for DaVinci"
    
    * tag 'i2c-for-6.0-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
      i2c: davinci: fix PM disable depth imbalance in davinci_i2c_probe
      dt-bindings: i2c: st,stm32-i2c: Document wakeup-source property
      dt-bindings: i2c: st,stm32-i2c: Document interrupt-names property
    torvalds committed Oct 2, 2022
    Configuration menu
    Copy the full SHA
    a962b54 View commit details
    Browse the repository at this point in the history
  4. Linux 6.0

    torvalds committed Oct 2, 2022
    Configuration menu
    Copy the full SHA
    4fe89d0 View commit details
    Browse the repository at this point in the history

Commits on Oct 4, 2022

  1. Configuration menu
    Copy the full SHA
    897e71c View commit details
    Browse the repository at this point in the history