diff options
author | Will Deacon <will@kernel.org> | 2021-12-02 17:10:47 +0000 |
---|---|---|
committer | Marc Zyngier <maz@kernel.org> | 2021-12-06 08:37:03 +0000 |
commit | ed4ed15d571065eb66ea718d7f6050553586417d (patch) | |
tree | 433e41374a3f48e1ef18c7008337c930da99ad5e /arch/arm64/kvm/Makefile | |
parent | 7e04f05984dd03edad7daaa4fa97958b7133c62a (diff) | |
download | linux-stable-ed4ed15d571065eb66ea718d7f6050553586417d.tar.gz linux-stable-ed4ed15d571065eb66ea718d7f6050553586417d.tar.bz2 linux-stable-ed4ed15d571065eb66ea718d7f6050553586417d.zip |
KVM: arm64: Generate hyp_constants.h for the host
In order to avoid exposing hypervisor (EL2) data structures directly to
the host, generate hyp_constants.h to provide constants such as structure
sizes to the host without dragging in the definitions themselves.
Signed-off-by: Will Deacon <will@kernel.org>
Tested-by: Fuad Tabba <tabba@google.com>
Reviewed-by: Fuad Tabba <tabba@google.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20211202171048.26924-3-will@kernel.org
Diffstat (limited to 'arch/arm64/kvm/Makefile')
-rw-r--r-- | arch/arm64/kvm/Makefile | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/arch/arm64/kvm/Makefile b/arch/arm64/kvm/Makefile index 989bb5dad2c8..0b561752f8d8 100644 --- a/arch/arm64/kvm/Makefile +++ b/arch/arm64/kvm/Makefile @@ -25,3 +25,19 @@ kvm-y := $(KVM)/kvm_main.o $(KVM)/coalesced_mmio.o $(KVM)/eventfd.o \ vgic/vgic-its.o vgic/vgic-debug.o kvm-$(CONFIG_HW_PERF_EVENTS) += pmu-emul.o + +always-y := hyp_constants.h hyp-constants.s + +define rule_gen_hyp_constants + $(call filechk,offsets,__HYP_CONSTANTS_H__) +endef + +CFLAGS_hyp-constants.o = -I $(srctree)/$(src)/hyp/include +$(obj)/hyp-constants.s: $(src)/hyp/hyp-constants.c FORCE + $(call if_changed_dep,cc_s_c) + +$(obj)/hyp_constants.h: $(obj)/hyp-constants.s FORCE + $(call if_changed_rule,gen_hyp_constants) + +obj-kvm := $(addprefix $(obj)/, $(kvm-y)) +$(obj-kvm): $(obj)/hyp_constants.h |