X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/ebb55b7e5f0b8f31328950ec383b77b208ffbb64..50b4ecfb1b28e9b1dfc57b6a876fcdf938092152:/lunaix-os/LConfig diff --git a/lunaix-os/LConfig b/lunaix-os/LConfig index fef1221..1c151e3 100644 --- a/lunaix-os/LConfig +++ b/lunaix-os/LConfig @@ -4,7 +4,7 @@ include("kernel") include("arch") include("hal") -@Term("Version") +@Term("Kernel Version") @ReadOnly def lunaix_ver(): """ @@ -16,7 +16,7 @@ def lunaix_ver(): seq_num = int(time.time() / 3600) default("%s dev-2024_%d"%(v(arch), seq_num)) -@Collection +@Collection("Kernel Debug and Testing") def debug_and_testing(): """ General settings for kernel debugging feature @@ -30,4 +30,39 @@ def debug_and_testing(): extermly unstable """ type(bool) - default(False) \ No newline at end of file + default(False) + + @Term("Report on stalled thread") + def check_stall(): + """ + Check and report on any thread that spend too much time in kernel. + """ + + type(bool) + default(True) + + @Term("Max kernel time allowance") + def stall_timeout(): + """ + Set the maximum time (in seconds) spent in kernel before considered + to be stalled. + """ + + type(int) + default(10) + + return v(check_stall) + + @Term("Max number of preemptions") + def stall_max_preempts(): + """ + Set the maximum number of preemptions that a task can take + before it is considered to be stucked in some loops. + + Setting it to 0 disable this check + """ + + type(int) + default(0) + + return v(check_stall) \ No newline at end of file