Hi Shaopeng Tan, On 3/10/2022 11:21 PM, Shaopeng Tan wrote: > In kselftest framework, all tests can be build/run at a time, > and a sub test also can be build/run individually. As follows: > $ make kselftest-all TARGETS=resctrl > $ make -C tools/testing/selftests run_tests > $ make -C tools/testing/selftests TARGETS=resctrl run_tests > > However, resctrl_tests cannot be run using kselftest framework, > users have to change directory to tools/testing/selftests/resctrl/, > run "make" to build executable file "resctrl_tests", > and run "sudo ./resctrl_tests" to execute the test. > > To build/run resctrl_tests using kselftest framework. > Modify tools/testing/selftests/Makefile > and tools/testing/selftests/resctrl/Makefile. > > Even after this change, users can still build/run resctrl_tests > without using framework as before. > > Signed-off-by: Shaopeng Tan <tan.shaopeng@xxxxxxxxxxxxxx> > --- > tools/testing/selftests/Makefile | 1 + > tools/testing/selftests/resctrl/Makefile | 18 +++--------------- > 2 files changed, 4 insertions(+), 15 deletions(-) > > diff --git a/tools/testing/selftests/Makefile b/tools/testing/selftests/Makefile > index d08fe4cfe811..6138354b3760 100644 > --- a/tools/testing/selftests/Makefile > +++ b/tools/testing/selftests/Makefile > @@ -52,6 +52,7 @@ TARGETS += proc > TARGETS += pstore > TARGETS += ptrace > TARGETS += openat2 > +TARGETS += resctrl > TARGETS += rlimits > TARGETS += rseq > TARGETS += rtc > diff --git a/tools/testing/selftests/resctrl/Makefile b/tools/testing/selftests/resctrl/Makefile > index 6bcee2ec91a9..30af27b07d21 100644 > --- a/tools/testing/selftests/resctrl/Makefile > +++ b/tools/testing/selftests/resctrl/Makefile > @@ -1,17 +1,5 @@ > -CC = $(CROSS_COMPILE)gcc > -CFLAGS = -g -Wall -O2 -D_FORTIFY_SOURCE=2 Please do keep these CFLAGS. You can find motivation in a9d26a302dea ("selftests/resctrl: Enable gcc checks to detect buffer overflows") > -SRCS=$(wildcard *.c) > -OBJS=$(SRCS:.c=.o) > +TEST_GEN_PROGS := resctrl_tests > > -all: resctrl_tests > +include ../lib.mk > > -$(OBJS): $(SRCS) > - $(CC) $(CFLAGS) -c $(SRCS) > - > -resctrl_tests: $(OBJS) > - $(CC) $(CFLAGS) -o $@ $^ > - > -.PHONY: clean > - > -clean: > - $(RM) $(OBJS) resctrl_tests > +$(OUTPUT)/resctrl_tests: $(wildcard *.c) Reinette