PatchMixolydic / spinel

An operating system built to explore systems programming
MIT License
4 stars 1 forks source link

For a MemoryBlock x, x->prevBlock->nextBlock == x is sometimes false #16

Closed PatchMixolydic closed 3 years ago

PatchMixolydic commented 4 years ago

I've hackfixed it in malloc (and labeled it as such), but removing the hackfix reveals a hole in the invariant maintenance which causes x->prevBlock->nextBlock to sometimes fail to be set. This either causes an assertion failure or arbitrary memory access (which will probably panic since my testing showed x->prevBlock->nextBlock to be NULL when this happened).

PatchMixolydic commented 3 years ago

Spinel was since rewritten in Rust, so this is no longer an issue.