summaryrefslogtreecommitdiff
path: root/Kernel/Syscalls/purge.cpp
AgeCommit message (Collapse)Author
2021-04-29Kernel: Harden sys$purge Vector usage against OOM.Brian Gianforcaro
sys$purge() is a bit unique, in that it is probably in the systems advantage to attempt to limp along if we hit OOM while processing the vmobjects to purge. This change modifies the algorithm to observe OOM and continue trying to purge any previously visited VMObjects.
2021-04-22Everything: Move to SPDX license identifiers in all files.Brian Gianforcaro
SPDX License Identifiers are a more compact / standardized way of representing file license information. See: https://spdx.dev/resources/use/#identifiers This was done with the `ambr` search and replace tool. ambr --no-parent-ignore --key-from-file --rep-from-file key.txt rep.txt *
2021-03-01Kernel: Make all syscall functions return KResultOr<T>Andreas Kling
This makes it a lot easier to return errors since we no longer have to worry about negating EFOO errors and can just return them flat.
2021-01-02Kernel: Fix bad VMObject iteration in sys$purge()Andreas Kling
We were fooling ourselves into thinking all VMObjects are anonymous and then tried to call purge() on them as if they were.
2021-01-01Kernel: Merge PurgeableVMObject into AnonymousVMObjectTom
This implements memory commitments and lazy-allocation of committed memory.
2021-01-01Kernel: Remove the limited use of AK::TypeTraits we had in the kernelAndreas Kling
This was only used for VMObject and we can do without it there. This is preparation for migrating to dynamic_cast-based helpers in userspace.
2020-07-30Kernel: Move syscall implementations out of Process.cppAndreas Kling
This is something I've been meaning to do for a long time, and here we finally go. This patch moves all sys$foo functions out of Process.cpp and into files in Kernel/Syscalls/. It's not exactly one syscall per file (although it could be, but I got a bit tired of the repetitive work here..) This makes hacking on individual syscalls a lot less painful since you don't have to rebuild nearly as much code every time. I'm also hopeful that this makes it easier to understand individual syscalls. :^)