add generic kremap for kernel remapping
[lunaix-os.git] / lunaix-os / LConfig
1 import time
2
3 include("kernel")
4 include("arch")
5 include("hal")
6
7 @Term("Kernel Version")
8 @ReadOnly
9 def lunaix_ver():
10     """
11     Lunaix kernel version
12     """
13
14     type(str)
15     
16     seq_num = int(time.time() / 3600)
17     default("%s dev-2024_%d"%(v(arch), seq_num))
18
19 @Collection("Kernel Debug and Testing")
20 def debug_and_testing():
21     """
22     General settings for kernel debugging feature
23     """
24
25     @Term("Supress assertion")
26     def no_assert():
27         """
28         Supress all assertion fail activity.
29         Note: Enable this is highly NOT recommended and would result system
30               extermly unstable
31         """
32         type(bool)
33         default(False)
34
35     @Term("Report on stalled thread")
36     def check_stall():
37         """
38         Check and report on any thread that spend too much time in kernel.
39         """
40
41         type(bool)
42         default(True)
43         
44     @Term("Max kernel time allowance")
45     def stall_timeout():
46         """
47         Set the maximum time (in seconds) spent in kernel before considered
48         to be stalled.
49         """
50
51         type(int)
52         default(10)
53
54         return v(check_stall)
55     
56     @Term("Max number of preemptions")
57     def stall_max_preempts():
58         """
59         Set the maximum number of preemptions that a task can take
60         before it is considered to be stucked in some loops.
61
62         Setting it to 0 disable this check
63         """
64
65         type(int)
66         default(0)
67
68         return v(check_stall)