mirror of
https://github.com/Fennix-Project/Kernel.git
synced 2025-05-28 15:34:33 +00:00
Added Xalloc_StopOnFail
This commit is contained in:
parent
69518a172c
commit
8c87037069
@ -8,6 +8,7 @@
|
|||||||
typedef long unsigned Xuint64_t;
|
typedef long unsigned Xuint64_t;
|
||||||
typedef long unsigned Xsize_t;
|
typedef long unsigned Xsize_t;
|
||||||
|
|
||||||
|
#define Xalloc_StopOnFail true
|
||||||
#define Xalloc_PAGE_SIZE PAGE_SIZE
|
#define Xalloc_PAGE_SIZE PAGE_SIZE
|
||||||
#define Xalloc_trace(m, ...) trace(m, ##__VA_ARGS__)
|
#define Xalloc_trace(m, ...) trace(m, ##__VA_ARGS__)
|
||||||
#define Xalloc_warn(m, ...) warn(m, ##__VA_ARGS__)
|
#define Xalloc_warn(m, ...) warn(m, ##__VA_ARGS__)
|
||||||
|
@ -150,7 +150,10 @@ namespace Xalloc
|
|||||||
{
|
{
|
||||||
if (!CurrentBlock->Check())
|
if (!CurrentBlock->Check())
|
||||||
{
|
{
|
||||||
Xalloc_err("Block %#lx checksum failed!", (Xuint64_t)CurrentBlock);
|
Xalloc_err("Block %#lx has an invalid checksum! (%#x != %#x)",
|
||||||
|
(Xuint64_t)CurrentBlock, CurrentBlock->Checksum, Xalloc_BlockChecksum);
|
||||||
|
while (Xalloc_StopOnFail)
|
||||||
|
;
|
||||||
}
|
}
|
||||||
else if (CurrentBlock->IsFree && CurrentBlock->Size >= Size)
|
else if (CurrentBlock->IsFree && CurrentBlock->Size >= Size)
|
||||||
{
|
{
|
||||||
@ -190,6 +193,8 @@ namespace Xalloc
|
|||||||
if (!CurrentBlock->Check())
|
if (!CurrentBlock->Check())
|
||||||
{
|
{
|
||||||
Xalloc_err("Block %#lx checksum failed!", (Xuint64_t)CurrentBlock);
|
Xalloc_err("Block %#lx checksum failed!", (Xuint64_t)CurrentBlock);
|
||||||
|
while (Xalloc_StopOnFail)
|
||||||
|
;
|
||||||
}
|
}
|
||||||
else if (CurrentBlock->Address == Address)
|
else if (CurrentBlock->Address == Address)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user