aboutsummaryrefslogtreecommitdiff
path: root/scripts/check-execstack.awk
diff options
context:
space:
mode:
authorDJ Delorie <dj@delorie.com>2016-07-19 15:40:11 -0400
committerDJ Delorie <dj@delorie.com>2016-07-19 15:40:11 -0400
commitb28259c68e49ce1c2cfd4092f1232cf04e9971d2 (patch)
treeb9dacc28f0dd8534febf2333f7de85f7623b05b8 /scripts/check-execstack.awk
parent25cfec597473141893cb416723aa872fb9d90c86 (diff)
downloadglibc-b28259c68e49ce1c2cfd4092f1232cf04e9971d2.tar.xz
glibc-b28259c68e49ce1c2cfd4092f1232cf04e9971d2.zip
Detect single trace inversions and correct them.
Trace inversion happens when: * thread A calls malloc, starts a trace record, and then is suspended by the kernel. * thread B calls free, writes a trace record, and frees address X. * thread A is scheduled, and returns address X. The trace would show thread A's malloc returning pointer X before thread B free's it, which is "trace inversion". This patch detects a single inversion (multiple inversions can happen, although rare) and reschedules the malloc to happen right after the free.
Diffstat (limited to 'scripts/check-execstack.awk')
0 files changed, 0 insertions, 0 deletions