Age | Commit message (Collapse) | Author |
|
|
|
It should be now the only user of it, and it is more logical to have it
in `stdlib.h` than in `assert.h`
|
|
The symbol should be always defined, in case Serenity is built with
`NDEBUG` defined, and users wants to use `assert` from `LibC`.
|
|
If we hit an assertion while the heap isn't in a stable state, we can't
rely on dynamic memory allocation because the malloc mutex is already
held and the heap is most likely corrupted. Instead, we need to bail
out fast before we make the situation even worse.
|
|
There's no need to say USERSPACE(PID) since dbgln() will prefix lines
with that information anyway.
|
|
The C standard doesn't say anything about DEBUG, just NDEBUG :^)
|
|
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 *
|
|
This also brings LibC's abort() function closer to the spec.
|
|
This way CRASH() can be used in functions that are themselves
marked as noreturn.
|
|
|
|
This achieves two things:
- Programs can now intentionally perform arbitrary syscalls by calling
syscall(). This allows us to work on things like syscall fuzzing.
- It restricts the ability of userspace to make syscalls to a single
4KB page of code. In order to call the kernel directly, an attacker
must now locate this page and call through it.
|
|
|