From: Sasha Levin <sashal@kernel.org> To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Ard Biesheuvel <ardb@kernel.org>, Steven Rostedt <rostedt@goodmis.org>, Sasha Levin <sashal@kernel.org>, linux@armlinux.org.uk, linux-arm-kernel@lists.infradead.org Subject: [PATCH AUTOSEL 5.17 23/66] ARM: ftrace: avoid redundant loads or clobbering IP Date: Wed, 30 Mar 2022 07:46:02 -0400 [thread overview] Message-ID: <20220330114646.1669334-23-sashal@kernel.org> (raw) In-Reply-To: <20220330114646.1669334-1-sashal@kernel.org> From: Ard Biesheuvel <ardb@kernel.org> [ Upstream commit d11967870815b5ab89843980e35aab616c97c463 ] Tweak the ftrace return paths to avoid redundant loads of SP, as well as unnecessary clobbering of IP. This also fixes the inconsistency of using MOV to perform a function return, which is sub-optimal on recent micro-architectures but more importantly, does not perform an interworking return, unlike compiler generated function returns in Thumb2 builds. Let's fix this by popping PC from the stack like most ordinary code does. Signed-off-by: Ard Biesheuvel <ardb@kernel.org> Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org> Signed-off-by: Sasha Levin <sashal@kernel.org> --- arch/arm/kernel/entry-ftrace.S | 51 +++++++++++++++------------------- 1 file changed, 22 insertions(+), 29 deletions(-) diff --git a/arch/arm/kernel/entry-ftrace.S b/arch/arm/kernel/entry-ftrace.S index a74289ebc803..5f1b1ce10473 100644 --- a/arch/arm/kernel/entry-ftrace.S +++ b/arch/arm/kernel/entry-ftrace.S @@ -22,10 +22,7 @@ * mcount can be thought of as a function called in the middle of a subroutine * call. As such, it needs to be transparent for both the caller and the * callee: the original lr needs to be restored when leaving mcount, and no - * registers should be clobbered. (In the __gnu_mcount_nc implementation, we - * clobber the ip register. This is OK because the ARM calling convention - * allows it to be clobbered in subroutines and doesn't use it to hold - * parameters.) + * registers should be clobbered. * * When using dynamic ftrace, we patch out the mcount call by a "pop {lr}" * instead of the __gnu_mcount_nc call (see arch/arm/kernel/ftrace.c). @@ -70,26 +67,25 @@ .macro __ftrace_regs_caller - sub sp, sp, #8 @ space for PC and CPSR OLD_R0, + str lr, [sp, #-8]! @ store LR as PC and make space for CPSR/OLD_R0, @ OLD_R0 will overwrite previous LR - add ip, sp, #12 @ move in IP the value of SP as it was - @ before the push {lr} of the mcount mechanism + ldr lr, [sp, #8] @ get previous LR - str lr, [sp, #0] @ store LR instead of PC + str r0, [sp, #8] @ write r0 as OLD_R0 over previous LR - ldr lr, [sp, #8] @ get previous LR + str lr, [sp, #-4]! @ store previous LR as LR - str r0, [sp, #8] @ write r0 as OLD_R0 over previous LR + add lr, sp, #16 @ move in LR the value of SP as it was + @ before the push {lr} of the mcount mechanism - stmdb sp!, {ip, lr} - stmdb sp!, {r0-r11, lr} + push {r0-r11, ip, lr} @ stack content at this point: @ 0 4 48 52 56 60 64 68 72 - @ R0 | R1 | ... | LR | SP + 4 | previous LR | LR | PSR | OLD_R0 | + @ R0 | R1 | ... | IP | SP + 4 | previous LR | LR | PSR | OLD_R0 | - mov r3, sp @ struct pt_regs* + mov r3, sp @ struct pt_regs* ldr r2, =function_trace_op ldr r2, [r2] @ pointer to the current @@ -112,11 +108,9 @@ ftrace_graph_regs_call: #endif @ pop saved regs - ldmia sp!, {r0-r12} @ restore r0 through r12 - ldr ip, [sp, #8] @ restore PC - ldr lr, [sp, #4] @ restore LR - ldr sp, [sp, #0] @ restore SP - mov pc, ip @ return + pop {r0-r11, ip, lr} @ restore r0 through r12 + ldr lr, [sp], #4 @ restore LR + ldr pc, [sp], #12 .endm #ifdef CONFIG_FUNCTION_GRAPH_TRACER @@ -132,11 +126,9 @@ ftrace_graph_regs_call: bl prepare_ftrace_return @ pop registers saved in ftrace_regs_caller - ldmia sp!, {r0-r12} @ restore r0 through r12 - ldr ip, [sp, #8] @ restore PC - ldr lr, [sp, #4] @ restore LR - ldr sp, [sp, #0] @ restore SP - mov pc, ip @ return + pop {r0-r11, ip, lr} @ restore r0 through r12 + ldr lr, [sp], #4 @ restore LR + ldr pc, [sp], #12 .endm #endif @@ -202,16 +194,17 @@ ftrace_graph_call\suffix: .endm .macro mcount_exit - ldmia sp!, {r0-r3, ip, lr} - ret ip + ldmia sp!, {r0-r3} + ldr lr, [sp, #4] + ldr pc, [sp], #8 .endm ENTRY(__gnu_mcount_nc) UNWIND(.fnstart) #ifdef CONFIG_DYNAMIC_FTRACE - mov ip, lr - ldmia sp!, {lr} - ret ip + push {lr} + ldr lr, [sp, #4] + ldr pc, [sp], #8 #else __mcount #endif -- 2.34.1
WARNING: multiple messages have this Message-ID (diff)
From: Sasha Levin <sashal@kernel.org> To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Ard Biesheuvel <ardb@kernel.org>, Steven Rostedt <rostedt@goodmis.org>, Sasha Levin <sashal@kernel.org>, linux@armlinux.org.uk, linux-arm-kernel@lists.infradead.org Subject: [PATCH AUTOSEL 5.17 23/66] ARM: ftrace: avoid redundant loads or clobbering IP Date: Wed, 30 Mar 2022 07:46:02 -0400 [thread overview] Message-ID: <20220330114646.1669334-23-sashal@kernel.org> (raw) In-Reply-To: <20220330114646.1669334-1-sashal@kernel.org> From: Ard Biesheuvel <ardb@kernel.org> [ Upstream commit d11967870815b5ab89843980e35aab616c97c463 ] Tweak the ftrace return paths to avoid redundant loads of SP, as well as unnecessary clobbering of IP. This also fixes the inconsistency of using MOV to perform a function return, which is sub-optimal on recent micro-architectures but more importantly, does not perform an interworking return, unlike compiler generated function returns in Thumb2 builds. Let's fix this by popping PC from the stack like most ordinary code does. Signed-off-by: Ard Biesheuvel <ardb@kernel.org> Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org> Signed-off-by: Sasha Levin <sashal@kernel.org> --- arch/arm/kernel/entry-ftrace.S | 51 +++++++++++++++------------------- 1 file changed, 22 insertions(+), 29 deletions(-) diff --git a/arch/arm/kernel/entry-ftrace.S b/arch/arm/kernel/entry-ftrace.S index a74289ebc803..5f1b1ce10473 100644 --- a/arch/arm/kernel/entry-ftrace.S +++ b/arch/arm/kernel/entry-ftrace.S @@ -22,10 +22,7 @@ * mcount can be thought of as a function called in the middle of a subroutine * call. As such, it needs to be transparent for both the caller and the * callee: the original lr needs to be restored when leaving mcount, and no - * registers should be clobbered. (In the __gnu_mcount_nc implementation, we - * clobber the ip register. This is OK because the ARM calling convention - * allows it to be clobbered in subroutines and doesn't use it to hold - * parameters.) + * registers should be clobbered. * * When using dynamic ftrace, we patch out the mcount call by a "pop {lr}" * instead of the __gnu_mcount_nc call (see arch/arm/kernel/ftrace.c). @@ -70,26 +67,25 @@ .macro __ftrace_regs_caller - sub sp, sp, #8 @ space for PC and CPSR OLD_R0, + str lr, [sp, #-8]! @ store LR as PC and make space for CPSR/OLD_R0, @ OLD_R0 will overwrite previous LR - add ip, sp, #12 @ move in IP the value of SP as it was - @ before the push {lr} of the mcount mechanism + ldr lr, [sp, #8] @ get previous LR - str lr, [sp, #0] @ store LR instead of PC + str r0, [sp, #8] @ write r0 as OLD_R0 over previous LR - ldr lr, [sp, #8] @ get previous LR + str lr, [sp, #-4]! @ store previous LR as LR - str r0, [sp, #8] @ write r0 as OLD_R0 over previous LR + add lr, sp, #16 @ move in LR the value of SP as it was + @ before the push {lr} of the mcount mechanism - stmdb sp!, {ip, lr} - stmdb sp!, {r0-r11, lr} + push {r0-r11, ip, lr} @ stack content at this point: @ 0 4 48 52 56 60 64 68 72 - @ R0 | R1 | ... | LR | SP + 4 | previous LR | LR | PSR | OLD_R0 | + @ R0 | R1 | ... | IP | SP + 4 | previous LR | LR | PSR | OLD_R0 | - mov r3, sp @ struct pt_regs* + mov r3, sp @ struct pt_regs* ldr r2, =function_trace_op ldr r2, [r2] @ pointer to the current @@ -112,11 +108,9 @@ ftrace_graph_regs_call: #endif @ pop saved regs - ldmia sp!, {r0-r12} @ restore r0 through r12 - ldr ip, [sp, #8] @ restore PC - ldr lr, [sp, #4] @ restore LR - ldr sp, [sp, #0] @ restore SP - mov pc, ip @ return + pop {r0-r11, ip, lr} @ restore r0 through r12 + ldr lr, [sp], #4 @ restore LR + ldr pc, [sp], #12 .endm #ifdef CONFIG_FUNCTION_GRAPH_TRACER @@ -132,11 +126,9 @@ ftrace_graph_regs_call: bl prepare_ftrace_return @ pop registers saved in ftrace_regs_caller - ldmia sp!, {r0-r12} @ restore r0 through r12 - ldr ip, [sp, #8] @ restore PC - ldr lr, [sp, #4] @ restore LR - ldr sp, [sp, #0] @ restore SP - mov pc, ip @ return + pop {r0-r11, ip, lr} @ restore r0 through r12 + ldr lr, [sp], #4 @ restore LR + ldr pc, [sp], #12 .endm #endif @@ -202,16 +194,17 @@ ftrace_graph_call\suffix: .endm .macro mcount_exit - ldmia sp!, {r0-r3, ip, lr} - ret ip + ldmia sp!, {r0-r3} + ldr lr, [sp, #4] + ldr pc, [sp], #8 .endm ENTRY(__gnu_mcount_nc) UNWIND(.fnstart) #ifdef CONFIG_DYNAMIC_FTRACE - mov ip, lr - ldmia sp!, {lr} - ret ip + push {lr} + ldr lr, [sp, #4] + ldr pc, [sp], #8 #else __mcount #endif -- 2.34.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2022-03-30 11:49 UTC|newest] Thread overview: 124+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-03-30 11:45 [PATCH AUTOSEL 5.17 01/66] media: staging: media: zoran: move videodev alloc Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 02/66] media: staging: media: zoran: calculate the right buffer number for zoran_reap_stat_com Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 03/66] media: staging: media: zoran: fix various V4L2 compliance errors Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 04/66] media: atmel: atmel-isc-base: report frame sizes as full supported range Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 05/66] media: ir_toy: free before error exiting Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 06/66] ASoC: sh: rz-ssi: Make the data structures available before registering the handlers Sasha Levin 2022-03-30 11:45 ` Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 07/66] ASoC: cs42l42: Report full jack status when plug is detected Sasha Levin 2022-03-30 11:45 ` Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 08/66] ASoC: SOF: Intel: match sdw version on link_slaves_found Sasha Levin 2022-03-30 11:45 ` Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 09/66] media: imx-jpeg: Prevent decoding NV12M jpegs into single-planar buffers Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 10/66] ASoC: SOF: Intel: hda: Remove link assignment limitation Sasha Levin 2022-03-30 11:45 ` Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 11/66] media: iommu/mediatek-v1: Free the existed fwspec if the master dev already has Sasha Levin 2022-03-30 11:45 ` Sasha Levin 2022-03-30 11:45 ` Sasha Levin 2022-03-30 11:45 ` Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 12/66] media: iommu/mediatek: Return ENODEV if the device is NULL Sasha Levin 2022-03-30 11:45 ` Sasha Levin 2022-03-30 11:45 ` Sasha Levin 2022-03-30 11:45 ` Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 13/66] media: iommu/mediatek: Add device_link between the consumer and the larb devices Sasha Levin 2022-03-30 11:45 ` Sasha Levin 2022-03-30 11:45 ` Sasha Levin 2022-03-30 11:45 ` Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 14/66] video: fbdev: nvidiafb: Use strscpy() to prevent buffer overflow Sasha Levin 2022-03-30 11:45 ` Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 15/66] video: fbdev: w100fb: Reset global state Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 16/66] video: fbdev: cirrusfb: check pixclock to avoid divide by zero Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 17/66] video: fbdev: omapfb: acx565akm: replace snprintf with sysfs_emit Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 18/66] ARM: dts: qcom: fix gic_irq_domain_translate warnings for msm8960 Sasha Levin 2022-03-30 11:45 ` Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 19/66] ARM: dts: bcm2837: Add the missing L1/L2 cache information Sasha Levin 2022-03-30 11:45 ` Sasha Levin 2022-03-30 11:45 ` [PATCH AUTOSEL 5.17 20/66] ASoC: madera: Add dependencies on MFD Sasha Levin 2022-03-30 11:45 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 21/66] media: atomisp_gmin_platform: Add DMI quirk to not turn AXP ELDO2 regulator off on some boards Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 22/66] media: atomisp: fix dummy_ptr check to avoid duplicate active_bo Sasha Levin 2022-03-30 11:46 ` Sasha Levin [this message] 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 23/66] ARM: ftrace: avoid redundant loads or clobbering IP Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 24/66] ALSA: hda: Fix driver index handling at re-binding Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 25/66] ARM: dts: imx7: Use audio_mclk_post_div instead audio_mclk_root_clk Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 26/66] arm64: defconfig: build imx-sdma as a module Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 27/66] video: fbdev: omapfb: panel-dsi-cm: Use sysfs_emit() instead of snprintf() Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 28/66] video: fbdev: omapfb: panel-tpo-td043mtea1: " Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 29/66] video: fbdev: udlfb: replace snprintf in show functions with sysfs_emit Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 30/66] ARM: dts: bcm2711: Add the missing L1/L2 cache information Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 31/66] printk: Add panic_in_progress helper Sasha Levin 2022-03-30 11:51 ` Greg KH 2022-03-31 16:58 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 32/66] printk: Avoid livelock with heavy printk during panic Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 33/66] printk: Drop console_sem " Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 34/66] ASoC: soc-core: skip zero num_dai component in searching dai name Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 35/66] printk: use atomic updates for klogd work Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 36/66] ASoC: Intel: sof_es8336: add quirk for Huawei D15 2021 Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 37/66] media: imx-jpeg: fix a bug of accessing array out of bounds Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 38/66] media: cx88-mpeg: clear interrupt status register before streaming video Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 39/66] ASoC: rt5682s: Fix the wrong jack type detected Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 40/66] ARM: tegra: transformer: Drop reg-shift for Tegra HS UART Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 41/66] uaccess: fix type mismatch warnings from access_ok() Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 42/66] lib/test_lockup: fix kernel pointer check for separate address spaces Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 43/66] ARM: tegra: tamonten: Fix I2C3 pad setting Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 44/66] ARM: mmp: Fix failure to remove sram device Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 45/66] ASoC: amd: vg: fix for pm resume callback sequence Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 46/66] ASoC: amd: vangogh: fix uninitialized symbol warning in machine driver Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 47/66] video: fbdev: sm712fb: Fix crash in smtcfb_write() Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 48/66] media: i2c: ov5648: Fix lockdep error Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 49/66] media: Revert "media: em28xx: add missing em28xx_close_extension" Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 50/66] media: hdpvr: initialize dev->worker at hdpvr_register_videodev Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 51/66] ASoC: SOF: debug: clarify operator precedence Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 52/66] ASoC: Intel: sof_sdw: fix quirks for 2022 HP Spectre x360 13" Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 53/66] ASoC: SOF: Intel: hda: retrieve DMIC number for I2S boards Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 54/66] ALSA: intel-nhlt: add helper to detect SSP link mask Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 55/66] ALSA: intel-dsp-config: add more ACPI HIDs for ES83x6 devices Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 56/66] ASoC: Intel: soc-acpi: " Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 57/66] ALSA: intel-dspconfig: add ES8336 support for CNL Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 58/66] ASoC: Intel: Revert "ASoC: Intel: sof_es8336: add quirk for Huawei D15 2021" Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 12:00 ` Mark Brown 2022-03-30 12:00 ` Mark Brown 2022-03-31 16:57 ` Sasha Levin 2022-03-31 16:57 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 59/66] ASoC: Intel: sof_es8336: use NHLT information to set dmic and SSP Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 60/66] ASoC: Intel: sof_es8336: log all quirks Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 61/66] tracing: Have TRACE_DEFINE_ENUM affect trace event types as well Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 62/66] mmc: host: Return an error when ->enable_sdio_irq() ops is missing Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 63/66] ASoC: mediatek: Fix error handling in mt8183_da7219_max98357_dev_probe Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 64/66] ASoC: ak4642: Use of_device_get_match_data() Sasha Levin 2022-03-30 11:46 ` Sasha Levin 2022-03-30 12:05 ` Mark Brown 2022-03-30 12:05 ` Mark Brown 2022-03-31 16:57 ` Sasha Levin 2022-03-31 16:57 ` Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 65/66] media: atomisp: fix bad usage at error handling logic Sasha Levin 2022-03-30 11:46 ` [PATCH AUTOSEL 5.17 66/66] ALSA: hda/realtek: Add alc256-samsung-headphone fixup Sasha Levin 2022-03-30 11:46 ` Sasha Levin
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20220330114646.1669334-23-sashal@kernel.org \ --to=sashal@kernel.org \ --cc=ardb@kernel.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux@armlinux.org.uk \ --cc=rostedt@goodmis.org \ --cc=stable@vger.kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.