[Bug 284563] Holes in struct rtld_utrace
- In reply to: bugzilla-noreply_a_freebsd.org: "[Bug 284563] Holes in struct rtld_utrace"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 05 Feb 2025 06:16:59 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=284563
--- Comment #2 from Paul Floyd <pjfloyd@wanadoo.fr> ---
(In reply to Konstantin Belousov from comment #1)
You're right, I was too quick looking at the struct. Here is the pahole output
struct utrace_rtld {
char sig[4]; /* 0 4 */
int event; /* 4 4 */
void * handle; /* 8 8 */
void * mapbase; /* 16 8 */
size_t mapsize; /* 24 8 */
int refcnt; /* 32 4 */
char name[1024]; /* 36 1024 */
/* size: 1064, cachelines: 17, members: 7 */
/* padding: 4 */
/* last cacheline: 40 bytes */
};
so there is just the 4 bytes of padding at the end that is uninitialized and
was triggering errors. The i386 ld.so is OK since everything is a multiple of
4.
I've already fixed this in Valgrind. I don't know whether MSAN has a similar
issue.
Zeroing the entire 1064 bytes would also fix the problem for sure.
--
You are receiving this mail because:
You are the assignee for the bug.