kmax
kmax copied to clipboard
A collection of analysis tools for Kconfig and Kbuild constraints.
Currently, `kclause` emits a pickled dictionary from configuration option names to z3-formatted formulas representing the options' constraints. Add a command-line flag to make this output the combined z3 formula for...
At linux-next commit b01739fb865a: ``` klocalizer -a x86_64 drivers/gpu/drm/i915/gvt/display.o make olddefconfig; make clean drivers/gpu/drm/i915/gvt/display.o ``` Results in: ``` [...] UPD include/generated/timeconst.h UPD include/generated/bounds.h CC arch/x86/kernel/asm-offsets.s UPD include/generated/asm-offsets.h CALL scripts/checksyscalls.sh make[6]:...
Given an empty kextract file, and a kclause file generated from it (which is an empty list of smt constraints list), klocalizer will output empty .config files without any warnings/errors.
Although not supported, klocalizer might be run for non-kernel files. kmax may terminate with non-zero exit code, which leads klocalizer to throw an exception. Catch the exception and fail gracefully....
Currently, kismet can either analyze all select constructs of an architecture or a user-specified set of select constructs. Alternatively, given Kconfig specs and modifications to it, it may look for...
kismet will generate a few kclause formulas (including select mappings and direct dependency mappings). kismet outputs similar messages for prefetching each formula without formula type distinction, which looks like some...
Currently, running klocalizer on a C file in `linux/samples/bpf/` on Linux 5.13 gives an error that may be difficult for end users to understand. Example: ``` julian@kde-neon-desktop:~/linux$ klocalizer samples/bpf/sampleip_kern.c INFO:...
The cached formulas can be large, so delete these automatically after they are a certain age.
Currently klocalizer has to try each architecture’s kclause formulas one-at-a-time. It’s current ordering is fairly arbitrary. Take Julia Lawall’s suggestion to base the ordering on “make allyesconfig”: pick the next...
It would be useful to conduct the experiment to check unused configs using **_kanalysis_**. for example, if .config file of Kbuild project contains set CONFIG_A and CONFIG_B configurations and only...