libk  Timeline

28 check-ins that include changes to files matching 'mod/*'

2020-01-31
05:58
Add a final terminating null to first message in kcli_usage. This was causing the shared library build to segfault. Not perfect, as if there are no options, there will be two nulls, but two is better than none. check-in: 6aeac330ce user: glowpelt tags: trunk
2020-01-30
07:15
Merge the shared library build fixes into trunk check-in: d49a706cc4 user: glowpelt tags: trunk
07:13
Push r15 in linux x64 syscall This was causing the static, release, build of kcli.testbin to subtly segfault shortly after writing the first buffer. Still not sure why kcore.testbin seemingly wasn't affected, nor why the shared build still breaks worse. check-in: 6022ec08ab user: glowpelt tags: trunk
2020-01-22
00:58
Add a err.c for every module, and compile them all in. This fixes the build of the shared library version, as there are no more undefined symbols. `kexplain` likely will still not work, but it didn't work in the first place. Closed-Leaf check-in: bdc1191d6f user: glowpelt tags: fixshared
2020-01-05
17:52
Fix _start to properly find the environment. The arguments and environment are directly on the initial stack, which means that more work is needed to find the start of the environment properly. Also remove the hack in _boot that made it work if there were no arguments, as all of the math is being done in _start now. check-in: 62fd1bfe97 user: glowpelt tags: trunk
2019-11-19
05:06
add posix signal numbers; continue work on kcli check-in: 8d478e0b3c user: lexi tags: trunk
2019-10-31
03:44
add usage display for parameters and command line switches for kcli_set, the structure used to define command line syntax for the parser; add more string & buffer functions check-in: 927371b674 user: lexi tags: trunk
2019-10-30
07:44
factor out write buffer code so any module and libk users can call it; update documentation to match; add kssz string length function check-in: 8d6b36fcac user: lexi tags: trunk
03:34
begin work on kcli module; continue to build out infra for error explanation function check-in: c0e04b9015 user: lexi tags: trunk
2019-10-23
10:05
continue work on plans for kconf module check-in: 623e0fdd96 user: lexi tags: trunk
2019-10-21
04:28
don't clobber callee-saved registers check-in: 481509e134 user: lexi tags: trunk
01:46
fix broken commit check-in: bdb84af41a user: lexi tags: trunk
01:40
add volatile qualifiers, add helper functions for error mechanism check-in: 6bc8ca3cac user: lexi tags: trunk
01:03
change testbin to pass appropriate string lengths to kiosend check-in: 3626b335f2 user: lexi tags: trunk
2019-09-04
01:23
update kcli syntax check-in: 5c1200e1a8 user: lexi tags: trunk
2019-08-26
19:49
minor tweaks; update docs to explain error handling check-in: 55dc614190 user: lexi tags: trunk
2019-08-25
04:15
comment out non-standard use of enums pending rewrite with #defines :( check-in: 04ed009476 user: lexi tags: trunk
02:47
fix check for 128-bit int type check-in: 1fba7a324a user: lexi tags: trunk
2019-08-24
23:40
parse environment and add env variables to the kenv struct passed to the entry function; add example code to testbin showing use of kvars check-in: 81758652b5 user: lexi tags: trunk
23:02
stop attempting to auto-detect system constants during build process, and maintain os/arch-specific tables instead check-in: e42b590b45 user: lexi tags: trunk
00:20
improve comments check-in: 858eba7607 user: lexi tags: trunk
2019-08-22
08:52
add tests for linear allocators, fix dumb bug in kmheapf() that caused it to return an error on success check-in: f37ee769c9 user: lexi tags: trunk
08:45
check in missing files check-in: 269baab90a user: lexi tags: trunk
08:44
add kmlini() and kmlina() functions; restructure allocation functions to work more reasonably (returning a tuple struct instead of making a user pass in a void**); update docs accordingly check-in: acb4a9944e user: lexi tags: trunk
04:31
finish moving heap allocation/free functions to the posix syscall apparatus and deprecate the direct assembly implementations of platform_mmap; update the kmem docs to match new function signatures (and remove typos) check-in: 709ffb094d user: lexi tags: trunk
02:52
removed sneaky segfault in x86-64 syscall fn where %r8 (the register that contains the pointer to the syscall arguments from the C syscall wrapper, which need to be copied into the correct registers before the kernel is invoked) gets overwritten if the syscall valency > 5, because of overlapping ccall and syscall ABI argument registers - r8 is clobbered by argument 5 and any further attempts to use it as a ptr segfault at best. also modified the report function so that it immediate cancels compilation if a sub-process reports failure. changed allocator function signatures so they can return a condition code if the kernel reports an error; updated example code so it compiles and runs without fault. check-in: e50a476efe user: lexi tags: trunk
01:37
add first iteration of knum header check-in: 5560c2725b user: lexi tags: trunk
2019-08-21
06:00
move modules to a subdirectory in order to keep the directory tree organized and make room for OS-specific build files check-in: 14172a910a user: lexi tags: trunk