formatted and combined logic #1
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "x02/scythe:develop"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
fixed the unsafe where the mutable borrow was occuring on the immutable reference to self :)
':w 'bf4adb374cthank you a ton! very happy to have people helping to make my terribly hacked together code better :p
i'll test this in a bit and probably merge since everything looks good from what i can tell
you're welcome 🙏
I wasn't able to test it as i dont have the device that its built for however it did build without any warnings or errors
just tested it, it seems a bug was introduced in the memory allocator's block merging algorithm; because debugging in this environment is a nightmare, all i can tell you is that the number of buddy blocks before the allocations does not match the number of buddy blocks after the frees (which is what the following code i've included tests; output is "mem bad ):")
i can look further into this later if you'd like since you don't have access to hardware for testing, however i have some changes i'd like to push to develop first
since i hadn't until now considered that other people might wanna work on this, i'll start doing that stuff on a separate branch to keep develop cleaner for merges in the future
oh hell yea
alright thats cool I’ll have a look myself tonight and push any interesting changes if you can test it for me 😇
im not too familiar with this paging (i've only really seen XOR allocators) is there any reason its different?
that latest commit should be the fix if you could test that pls and ty
formatted and combined logicto WIP: formatted and combined logicWIP: formatted and combined logicto formatted and combined logicthis is pretty much just as much of a direct port of the buddy block allocator pseudocode from wikipedia as i could do, i chose this because i wanted something with speed / flexibility in between a standard free list and like a user runtime allocator
i'll test the code now!
seems to work fine! before i merge this, since this is the first outside contribution and i haven't yet published this, i'm going to license this repo under AGPL, do you have any issues with this?
I have no issues with that