Tim Peters <t...@python.org> added the comment:

I'm skeptical ;-) If MTE is actually being used, system software assigns 
"random" values to 4 of the higher-order bits. When obmalloc punts to the 
system malloc, presumably those bits will be randomized in the addresses 
returned by malloc. Then it's just not possible that obmalloc's

    assert(HIGH_BITS(p) == HIGH_BITS(&arena_map_root));

can always succeed - we're insisting there that _all_ the high-order bits are 
exactly the same as in the `&arena_map_root` file static.  If `p` was actually 
obtained from the system `malloc()`, it should fail about 15 times out of 16 
(and regardless of which of the 16 bit patterns the platform C assigns to 
&arena_map_root).

But, of course, that failure would only be seen in a debug build.

----------
nosy: +tim.peters

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue43593>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to