mirror of
https://github.com/sysprog21/lkmpg.git
synced 2024-11-24 23:40:50 +08:00
421b9b04fe
This patch introduces static key technique and adds a kernel module to demostrate how to use static key to optimize an almost unlikely branch, the module can interact with userspace thru a character device. Signed-off-by: Peter Lin <peterlin@qilai.dev>
53 lines
1.1 KiB
Makefile
53 lines
1.1 KiB
Makefile
obj-m += hello-1.o
|
|
obj-m += hello-2.o
|
|
obj-m += hello-3.o
|
|
obj-m += hello-4.o
|
|
obj-m += hello-5.o
|
|
obj-m += startstop.o
|
|
startstop-objs := start.o stop.o
|
|
obj-m += chardev.o
|
|
obj-m += procfs1.o
|
|
obj-m += procfs2.o
|
|
obj-m += procfs3.o
|
|
obj-m += procfs4.o
|
|
obj-m += hello-sysfs.o
|
|
obj-m += sleep.o
|
|
obj-m += print_string.o
|
|
obj-m += kbleds.o
|
|
obj-m += sched.o
|
|
obj-m += chardev2.o
|
|
obj-m += syscall.o
|
|
obj-m += intrpt.o
|
|
obj-m += cryptosha256.o
|
|
obj-m += cryptosk.o
|
|
obj-m += completions.o
|
|
obj-m += example_tasklet.o
|
|
obj-m += devicemodel.o
|
|
obj-m += example_spinlock.o
|
|
obj-m += example_rwlock.o
|
|
obj-m += example_atomic.o
|
|
obj-m += example_mutex.o
|
|
obj-m += bottomhalf.o
|
|
obj-m += ioctl.o
|
|
obj-m += vinput.o
|
|
obj-m += vkbd.o
|
|
obj-m += static_key.o
|
|
|
|
PWD := $(CURDIR)
|
|
|
|
ifeq ($(CONFIG_STATUS_CHECK_GCC),y)
|
|
CC=$(STATUS_CHECK_GCC)
|
|
ccflags-y += -fanalyzer
|
|
endif
|
|
|
|
all:
|
|
$(MAKE) -C /lib/modules/$(shell uname -r)/build CC=$(CC) M=$(PWD) modules
|
|
|
|
clean:
|
|
$(MAKE) -C /lib/modules/$(shell uname -r)/build CC=$(CC) M=$(PWD) clean
|
|
$(RM) other/cat_noblock *.plist
|
|
|
|
indent:
|
|
clang-format -i *.[ch]
|
|
clang-format -i other/*.[ch]
|