linux_dsm_epyc7002/arch/arm64/kernel
Dave Martin 0495067420 arm64/sve: Enable SVE state tracking for non-task contexts
The current FPSIMD/SVE context handling support for non-task (i.e.,
KVM vcpu) contexts does not take SVE into account.  This means that
only task contexts can safely use SVE at present.

In preparation for enabling KVM guests to use SVE, it is necessary
to keep track of SVE state for non-task contexts too.

This patch adds the necessary support, removing assumptions from
the context switch code about the location of the SVE context
storage.

When binding a vcpu context, its vector length is arbitrarily
specified as SVE_VL_MIN for now.  In any case, because TIF_SVE is
presently cleared at vcpu context bind time, the specified vector
length will not be used for anything yet.  In later patches TIF_SVE
will be set here as appropriate, and the appropriate maximum vector
length for the vcpu will be passed when binding.

Signed-off-by: Dave Martin <Dave.Martin@arm.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Julien Grall <julien.grall@arm.com>
Tested-by: zhang.lei <zhang.lei@jp.fujitsu.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
2019-03-29 14:41:52 +00:00
..
probes arm64: kprobes: Use arch_populate_kprobe_blacklist() 2019-03-19 12:47:44 +00:00
vdso
.gitignore
acpi_numa.c
acpi_parking_protocol.c
acpi.c
alternative.c
armv8_deprecated.c
asm-offsets.c
cacheinfo.c
cpu_errata.c
cpu_ops.c
cpu-reset.h
cpu-reset.S
cpufeature.c arm64/sve: Check SVE virtualisability 2019-03-29 14:41:52 +00:00
cpuidle.c
cpuinfo.c
crash_core.c
crash_dump.c
debug-monitors.c
efi-entry.S
efi-header.S
efi-rt-wrapper.S
efi.c
entry-fpsimd.S
entry-ftrace.S
entry.S
fpsimd.c arm64/sve: Enable SVE state tracking for non-task contexts 2019-03-29 14:41:52 +00:00
ftrace.c
head.S
hibernate-asm.S
hibernate.c
hw_breakpoint.c
hyp-stub.S
image.h
insn.c
io.c
irq.c
jump_label.c
kaslr.c
kexec_image.c
kgdb.c
kuser32.S
machine_kexec_file.c
machine_kexec.c
Makefile
module-plts.c
module.c
module.lds
paravirt.c
pci.c
perf_callchain.c
perf_event.c
perf_regs.c
pointer_auth.c
process.c
psci.c
ptrace.c
reloc_test_core.c
reloc_test_syms.S
relocate_kernel.S
return_address.c
sdei.c
setup.c treewide: add checks for the return value of memblock_alloc*() 2019-03-12 10:04:02 -07:00
signal32.c
signal.c arm64: fpsimd: Always set TIF_FOREIGN_FPSTATE on task state flush 2019-03-29 14:41:52 +00:00
sleep.S
smccc-call.S
smp_spin_table.c
smp.c
ssbd.c
stacktrace.c arm64/stacktrace: Export save_stack_trace_regs() 2019-03-19 14:55:10 +00:00
suspend.c
sys32.c
sys_compat.c
sys.c
syscall.c
time.c
topology.c
trace-events-emulation.h
traps.c
vdso.c
vmlinux.lds.S