Date: Wed, 15 Sep 2010 10:02:46 +0000 (UTC) From: Andriy Gapon <avg@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r212647 - head/sys/sys Message-ID: <201009151002.o8FA2kvO029237@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: avg Date: Wed Sep 15 10:02:46 2010 New Revision: 212647 URL: http://svn.freebsd.org/changeset/base/212647 Log: sys/pcpu.h: remove a workaround for a fixed ld bug The workaround was incorrectly documented as having something to do with set_pcpu section's progbits, but in fact it was for incorrect placement of __start_set_pcpu because of the bug in ld. The bug was fixed in r210245, see commit message for details. A side-effect of the workaround was that a zero-size set_pcpu section was produced for modules, source code of which included pcpu.h but didn't actually define any dynamic per-cpu variables. This commit should remove the side-effect. The same workaround is present sys/net/vnet.h, has an analogous side-effect and can be removed as well. An UPDATING entry that warns about a need for recent ld is following. MFC after: 1 month Modified: head/sys/sys/pcpu.h Modified: head/sys/sys/pcpu.h ============================================================================== --- head/sys/sys/pcpu.h Wed Sep 15 09:48:18 2010 (r212646) +++ head/sys/sys/pcpu.h Wed Sep 15 10:02:46 2010 (r212647) @@ -44,24 +44,10 @@ /* * Define a set for pcpu data. - * - * We don't use SET_DECLARE because it defines the set as 'a' when we - * want 'aw'. gcc considers uninitialized data in a separate section - * writable, and there is no generic zero initializer that works for - * structs and scalars. */ extern uintptr_t *__start_set_pcpu; extern uintptr_t *__stop_set_pcpu; -__asm__( -#ifdef __arm__ - ".section set_pcpu, \"aw\", %progbits\n" -#else - ".section set_pcpu, \"aw\", @progbits\n" -#endif - "\t.p2align " __XSTRING(CACHE_LINE_SHIFT) "\n" - "\t.previous"); - /* * Array of dynamic pcpu base offsets. Indexed by id. */
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201009151002.o8FA2kvO029237>