[Bug 263124] sys/x86/isa/clock.c: lapic_calibrate_timer() in cpu_initclocks() breaks compiling for non-SMP
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 263124] sys/x86/isa/clock.c: lapic_calibrate_timer() in cpu_initclocks() breaks compiling for non-SMP"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 263124] sys/x86/isa/clock.c: lapic_calibrate_timer() in cpu_initclocks() breaks compiling for non-SMP"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 263124] sys/x86/isa/clock.c: lapic_calibrate_timer() in cpu_initclocks() breaks compiling for non-SMP"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 07 Apr 2022 16:52:08 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=263124 Bug ID: 263124 Summary: sys/x86/isa/clock.c: lapic_calibrate_timer() in cpu_initclocks() breaks compiling for non-SMP Product: Base System Version: 13.1-RELEASE Hardware: Any OS: Any Status: New Severity: Affects Only Me Priority: --- Component: kern Assignee: bugs@FreeBSD.org Reporter: d8zNeCFG@aon.at Created attachment 233034 --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=233034&action=edit config file for non-SMP build Scenario: - FreeBSD 13.0 latest - Checking out releng/13.1 (= RC1) into /usr/src - Building a non-SMP kernel with a custom config previously used for 13.0 ("XYZZY") Result: - The build fails when linking the kernel with linking kernel.full ld: error: undefined symbol: apic_ops >>> referenced by apicvar.h:386 (/net/hal/z/SRC/FreeBSD/src/MBi/releng/13.1/sys/x86/include/apicvar.h:386) >>> clock.o:(cpu_initclocks) *** Error code 1 Expected result: - The build should succeed even without "options SMP" and "device apic" being defined in the kernel configuration file Note: Diffing sys/x86/isa/clock.c between 13.0 and 13.1 yields: 68a69 > #include <x86/apicvar.h> 413a415,417 > > tsc_calibrate(); > lapic_calibrate_timer(); 427a432,433 > tsc_calibrate(); > lapic_calibrate_timer(); 457c463 < CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, --- > CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, It seems the calls to lapic_calibrate_timer() should be made conditional on the SMP case. The config file is attached. -- Martin -- You are receiving this mail because: You are the assignee for the bug.