Date: Sat, 23 May 2020 17:11:55 +0000 From: bugzilla-noreply@freebsd.org To: bugs@FreeBSD.org Subject: [Bug 246630] stable/11 regression: base.txz reproducibility depends on number of cpu cores Message-ID: <bug-246630-227-rOofDR88hD@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-246630-227@https.bugs.freebsd.org/bugzilla/> References: <bug-246630-227@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D246630 --- Comment #16 from Dimitry Andric <dim@FreeBSD.org> --- Okay, I can reproduce, and it appears to be something in usr.bin/printf/printf.c, which gets built as part of sh. In particular, in = the printf_doformat function. One version gives: 0000000000000440 <printf_doformat>: 440: 55 push %rbp 441: 48 89 e5 mov %rsp,%rbp 444: 41 57 push %r15 446: 41 56 push %r14 448: 41 55 push %r13 44a: 41 54 push %r12 44c: 53 push %rbx 44d: 48 81 ec e8 00 00 00 sub $0xe8,%rsp 454: 49 89 f4 mov %rsi,%r12 457: 48 89 fb mov %rdi,%rbx 45a: 48 8b 05 00 00 00 00 mov 0x0(%rip),%rax # 461 <printf_doformat+0x21> 461: 48 89 45 d0 mov %rax,-0x30(%rbp) 465: e8 00 00 00 00 callq 46a <printf_doformat+0x2a> another: 0000000000000440 <printf_doformat>: 440: 55 push %rbp 441: 48 89 e5 mov %rsp,%rbp 444: 41 57 push %r15 446: 41 56 push %r14 448: 41 55 push %r13 44a: 41 54 push %r12 44c: 53 push %rbx 44d: 48 81 ec e8 00 00 00 sub $0xe8,%rsp 454: 49 89 f5 mov %rsi,%r13 457: 48 89 fb mov %rdi,%rbx 45a: 48 8b 05 00 00 00 00 mov 0x0(%rip),%rax # 461 <printf_doformat+0x21> 461: 48 89 45 d0 mov %rax,-0x30(%rbp) 465: e8 00 00 00 00 callq 46a <printf_doformat+0x2a> The C function starts with: static char * printf_doformat(char *fmt, int *rval) { static const char skip1[] =3D "#'-+ 0"; int fieldwidth, haveprec, havewidth, mod_ldbl, precision; char convch, nextch; char start[strlen(fmt) + 1]; char **fargv; char *dptr; int l; and the starting piece of code corresponds to the dynamic array declaration, char start[strlen(fmt) + 1]. As to why this is happening, no clue yet... I'm trying to build clang with UBSan, to see if it hits something in particular. --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-246630-227-rOofDR88hD>