Having built world and kernel from the 1.9.0 preview #4 sources, I found this in the system boot messages:

   DragonFly 1.9.0-PREVIEW #4: Sun May 20 22:43:30 BST 2007
   ...
Preloaded elf kernel "/kernel" at 0xc048b000.
   Preloaded elf module "/modules/acpi.ko" at 0xc048b210.
   link_elf: symbol r_esp undefined

I presume this means the acpi module wasn't loading; its sysctls were certainly missing.

r_esp is defined static in sys/platform/pc32/acpica5/acpi_wakeup.c. Removing the static...

   % cvs diff acpi_wakeup.c
   Index: /usr/src/sys/platform/pc32/acpica5/acpi_wakeup.c
   =============================================================
RCS file: /home/dragonfly/cvs/src/sys/platform/pc32/acpica5/acpi_wakeup.c,v
   retrieving revision 1.14
   diff -r1.14 acpi_wakeup.c
   69c69
   < static uint32_t               r_esp = 0;
   ---
   > uint32_t              r_esp = 0;

..made the problem go away. But since this variable has always been static, since v1.1 of this file, that doesn't feel right.

I did, by accident, build the kernel as well as the world with GCC v4.1, so maybe that's the problem.

Apologies if this is user error, and I have a workaround with the removed static for now.


--
David Murray

Reply via email to