Memory Tagged (MTE) Allocator Learning Path #746
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This path builds on https://learn.arm.com/learning-paths/cross-platform/dynamic-memory-allocator/ by using the Memory Tagging Extension (MTE) to prevent common memory problems in the memory allocator.
Full source is included in this path so readers don't have to copy it from the previous path, however they will need to understand the basic design of the allocator to understand the changes needed to support MTE.
So the full "journey" might be:
The binary runs under qemu-user, so it is possible to follow the path on current AArch64 hardware or non-AArch64 hardware.
I'm sure we can tie this to other MTE resources but I've left the links empty as you'll probably have a better idea of what to put there.
Before submitting a pull request for a new Learning Path, please review Create a Learning Path
Please do not include any confidential information in your contribution. This includes confidential microarchitecture details and unannounced product information. No AI tool can be used to generate either content or code when creating a learning path or install guide.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the Creative Commons Attribution 4.0 International License.