mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-23 17:30:02 +00:00
![Vasily Gorbik](/assets/img/avatar_default.png)
Machine generations up to z9 (released in May 2006) have been officially out of service for several years now (z9 end of service - January 31, 2019). No distributions build kernels supporting those old machine generations anymore, except Debian, which seems to pick the oldest supported generation. The team supporting Debian on s390 has been notified about the change. Raising minimum supported machine generation to z10 helps to reduce maintenance cost and effectively remove code, which is not getting enough testing coverage due to lack of older hardware and distributions support. Besides that this unblocks some optimization opportunities and allows to use wider instruction set in asm files for future features implementation. Due to this change spectre mitigation and usercopy implementations could be drastically simplified and many newer instructions could be converted from ".insn" encoding to instruction names. Acked-by: Ilya Leoshkevich <iii@linux.ibm.com> Reviewed-by: Heiko Carstens <hca@linux.ibm.com> Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
24 lines
757 B
C
24 lines
757 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef _FTRACE_H
|
|
#define _FTRACE_H
|
|
|
|
#include <asm/types.h>
|
|
|
|
struct ftrace_hotpatch_trampoline {
|
|
u16 brasl_opc;
|
|
s32 brasl_disp;
|
|
s16: 16;
|
|
u64 rest_of_intercepted_function;
|
|
u64 interceptor;
|
|
} __packed;
|
|
|
|
extern struct ftrace_hotpatch_trampoline __ftrace_hotpatch_trampolines_start[];
|
|
extern struct ftrace_hotpatch_trampoline __ftrace_hotpatch_trampolines_end[];
|
|
extern const char ftrace_shared_hotpatch_trampoline_br[];
|
|
extern const char ftrace_shared_hotpatch_trampoline_br_end[];
|
|
extern const char ftrace_shared_hotpatch_trampoline_exrl[];
|
|
extern const char ftrace_shared_hotpatch_trampoline_exrl_end[];
|
|
extern const char ftrace_plt_template[];
|
|
extern const char ftrace_plt_template_end[];
|
|
|
|
#endif /* _FTRACE_H */
|