The fairly obvious answer here is "OEMs don't care about security because very few people will pay for it, either with $ or time". Benchmaxxing sells better.
> The reason behind it is the hardened memory allocator, which seems to create a significant overhead for Osmand. That might be because scrolling a map requires constant loading and discarding of data.
... is this really the right hunch, over e.g. the OpenStreetMaps app lacking in discipline with its heap allocations?
Huh. Yeah, it is noticeably faster on my 9a with that disabled. I wonder what they're doing differently...
Odd. Google Pixel 7 with GrapheneOS here. OsmAnd works perfectly fine for me without disabling any exploit protection options.
Maybe the actual solution is to improve, replace the application.
Or maybe there's a reason why the mainline Android OEMs don't ship that allocator by default.
The fairly obvious answer here is "OEMs don't care about security because very few people will pay for it, either with $ or time". Benchmaxxing sells better.
Because they cut costs on hardware and not all ship MTE enabled ARMs.
There needs to be a wall of shame for apps that abuse hardware owned by users
How's it abusing anything? It's an Android app that works fine with the default Android memory allocator.
The AOSP memory allocator is seldom the one used by OEMs.
That doesn't necessarily mean it isn't being abusive, just that said allocator tolerates it okay.
If you have two apps, both maps...
> The reason behind it is the hardened memory allocator, which seems to create a significant overhead for Osmand. That might be because scrolling a map requires constant loading and discarding of data.
... is this really the right hunch, over e.g. the OpenStreetMaps app lacking in discipline with its heap allocations?
Seems unlikely, it's java so this is likely related to loading large amounts of objects and having the GC thrashing.