summaryrefslogtreecommitdiffstats
path: root/Makefile
blob: 33886089013ab8d405dd1d1fdf171d0762f88cd4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
LINUX ?= /usr/src/linux
PWD := $(shell pwd)

all: build test/eviction test/access test/kvm test/sev test/sev-es test/sevstep

clean:
	$(MAKE) -C $(LINUX) SUBDIRS=arch/x86/kvm clean

$(LINUX)/arch/x86/kvm/svm/cachepc:
	ln -sf $(PWD)/cachepc $@

$(LINUX)/arch/x86/kvm/sevstep:
	ln -sf $(PWD)/sevstep $@

build: $(LINUX)/arch/x86/kvm/svm/cachepc $(LINUX)/arch/x86/kvm/sevstep
	$(MAKE) -C $(LINUX) -j6 M=arch/x86/kvm

load:
	sudo rmmod kvm_amd || true
	sudo rmmod kvm || true
	sudo insmod $(LINUX)/arch/x86/kvm/kvm.ko
	sudo insmod $(LINUX)/arch/x86/kvm/kvm-amd.ko

test/%: test/%.c cachepc/cachepc_user.h
	clang -o $@ $< -fsanitize=address -I . -Wunused-variable


update:
	git -C $(LINUX) diff 0aaa1e599bee256b3b15643bbb95e80ce7aa9be5 -G. > patch.diff

.PHONY: all clean build load update