summaryrefslogtreecommitdiff
path: root/src/kernel/mem/virt.c
AgeCommit message (Collapse)Author
2023-01-25style: typedef structs, shorter namespacesdzwdz
I've wanted to do this for a while, and since I've just had a relatively large refactor commit (pcpy), this is as good of a time as any. Typedefing structs was mostly inspired by Plan 9's coding style. It makes some lines of code much shorter at basically no expense. Everything related to userland kept old-style struct definitions, so as not to force that style onto other people. I also considered changing SCREAMING_ENUM_FIELDS to NicerLookingCamelcase, but I didn't, just in case that'd be confusing.
2023-01-25kernel/virt: replace the virt_cpy api with a more foolproof onedzwdz
2022-07-17kernel/virt_cpy: error struct, better error handlingdzwdz
2021-11-14shared: use a single implementation of mem* functions everywheredzwdz
2021-09-21start using sparse's `-Wnon-pointer-null`dzwdz
While I personally don't see a reason to use NULL instead of 0, I assume that whoever made that a sparse default knew what they were doing.
2021-09-21implement (safe) min/max macrosdzwdz
2021-09-21add `__force` for marking casts across adress spacesdzwdz
2021-09-11add some helper functions for copying between virtual and physical memorydzwdz
this was already possible, but now it's slightly safer
2021-09-11replace `user_ptr` with a linux-style `__user` annotationdzwdz
2021-09-05fix some warningsdzwdz
2021-09-05rename virt_user_cpy to virt_cpy, since it's no longer limited to virtual memorydzwdz
2021-09-05make virt_iter support iterating over physical memory toodzwdz
2021-09-05move most of the memory stuff to kernel/mem/dzwdz