ptr_compress: fix build for Arm v7Fix the type of offset to use portable uintptr_t instead of uint64_t.Fixes: 077596a4b077 ("ptr_compress: add pointer compression library")Reported-by: Luca Boc
ptr_compress: fix build for Arm v7Fix the type of offset to use portable uintptr_t instead of uint64_t.Fixes: 077596a4b077 ("ptr_compress: add pointer compression library")Reported-by: Luca Boccassi <bluca@debian.org>Signed-off-by: Paul Szczepanek <paul.szczepanek@arm.com>Reviewed-by: Nick Connolly <nick.connolly@arm.com>Tested-by: Luca Vizzarro <luca.vizzarro@arm.com>
show more ...
ptr_compress: add pointer compression libraryAdd a new utility header for compressing pointers. The providedfunctions can store pointers as 32-bit or 16-bit offsets.The compression takes advanta
ptr_compress: add pointer compression libraryAdd a new utility header for compressing pointers. The providedfunctions can store pointers as 32-bit or 16-bit offsets.The compression takes advantage of the fact that pointers areusually located in a limited memory region (like a mempool).We can compress them by converting them to offsets from a basememory address. Offsets can be stored in fewer bytes (dictatedby the memory region size and alignment of the pointer).For example: an 8 byte aligned pointer which is part of a 32GBmemory pool can be stored in 4 bytes.Suggested-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>Signed-off-by: Paul Szczepanek <paul.szczepanek@arm.com>Signed-off-by: Kamalakshitha Aligeri <kamalakshitha.aligeri@arm.com>Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>Reviewed-by: Nathan Brown <nathan.brown@arm.com>Reviewed-by: Jack Bond-Preston <jack.bond-preston@foss.arm.com>Acked-by: Morten Brørup <mb@smartsharesystems.com>