Date: Sat, 12 Mar 2016 07:56:36 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-bugs@FreeBSD.org Subject: [Bug 207898] kernel linker behaves differently on amd64 vs. i386 Message-ID: <bug-207898-8-ttvuC9A8uH@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-207898-8@https.bugs.freebsd.org/bugzilla/> References: <bug-207898-8@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=3D207898 --- Comment #1 from Don Lewis <truckman@FreeBSD.org> --- Most of the kernel linker code is MI, but there is some MD code in /usr/src/sys/{amd64/amd64,i386/i386}/elf_machdep.c. I didn't see anything suspicious there. The MI code is difficult to figure out, but that is where I suspect the pro= blem is. I suspect that whether or not the problem is triggered depends on the order of the relocation entries in the .ko file. On amd64, I see this when= I run nm on the .ko file: [snip] U module_register_init 0000000000000000 b msg1 U msg1 0000000000000050 b msg2 U msg2 U strcpy U uprintf On i386, I see this: [snip] U module_register_init U msg1 000014c4 b msg1 U msg2 00001514 b msg2 U strcpy U uprintf Note that the "b" entries for msg1 and msg2 precede the "U" entries on amd6= 4, but the reverse is true on i386. Unfortunately this is difficult to test because swapping the order of SRCS = does not change the order as reported by nm. --=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-207898-8-ttvuC9A8uH>