> Synopsis:      sys/arch/i386/i386/bios.c won't compile if NACPI ==0 and NAPM>0
> Category:      system
> Environment:
       System      : OpenBSD 6.1
       Details     : OpenBSD 6.1-stable (PIGEON) #5: Thu Jul 13 17:09:51 PDT 
2017
                        briggs@pigeon:/usr/obj/sys/arch/i386/compile/PIGEON

       Architecture: OpenBSD.i386
       Machine     : i386
> Description:

In  bios.c:171 "usingacpi" is declared with

#if NACPI > 0
        int usingacpi = 0;
#endif

but at bios.c:390, we find

#if NAPM > 0
        if (usingacpi == 0 && apm && ncpu < 2 && smbiosrev < 240) {

> How-To-Repeat:

       recompile kernel for i386 with apm but without acpi in the configuration.

> Fix:

One possibility:

Index: sys/arch/i386/i386/bios.c
===================================================================
RCS file: /cvs/src/sys/arch/i386/i386/bios.c,v
retrieving revision 1.115
diff -u -p -r1.115 bios.c
--- sys/arch/i386/i386/bios.c   7 Mar 2016 05:32:46 -0000       1.115
+++ sys/arch/i386/i386/bios.c   14 Jul 2017 19:33:20 -0000
@@ -171,7 +171,7 @@ biosattach(struct device *parent, struct
        volatile u_int8_t *va;
        char scratch[64], *str;
        int flags, smbiosrev = 0, ncpu = 0, isa_hole_exec = 0;
-#if NACPI > 0
+#if NACPI > 0 || NAPM > 0
        int usingacpi = 0;
 #endif
 
Alternatively, make the reference to usingacpi conditional on NACPI > 0.


Reply via email to