Author: jkim
Date: Fri Jun  1 19:19:04 2012
New Revision: 236419
URL: http://svn.freebsd.org/changeset/base/236419

Log:
  Tidy up code clutter in SMP case a bit.  No functional change.

Modified:
  head/sys/amd64/acpica/acpi_wakeup.c
  head/sys/i386/acpica/acpi_wakeup.c

Modified: head/sys/amd64/acpica/acpi_wakeup.c
==============================================================================
--- head/sys/amd64/acpica/acpi_wakeup.c Fri Jun  1 19:09:17 2012        
(r236418)
+++ head/sys/amd64/acpica/acpi_wakeup.c Fri Jun  1 19:19:04 2012        
(r236419)
@@ -71,15 +71,12 @@ extern int          acpi_reset_video;
 #ifdef SMP
 extern struct pcb      **susppcbs;
 extern void            **suspfpusave;
+static cpuset_t                suspcpus;
 #else
 static struct pcb      **susppcbs;
 static void            **suspfpusave;
 #endif
 
-#ifdef SMP
-static cpuset_t                suspcpus;
-#endif
-
 int                    acpi_restorecpu(uint64_t, vm_offset_t);
 
 static void            *acpi_alloc_wakeup_handler(void);
@@ -87,7 +84,7 @@ static void           acpi_stop_beep(void *);
 
 #ifdef SMP
 static int             acpi_wakeup_ap(struct acpi_softc *, int);
-static void            acpi_wakeup_cpus(struct acpi_softc *, const cpuset_t *);
+static void            acpi_wakeup_cpus(struct acpi_softc *);
 #endif
 
 #define        WAKECODE_VADDR(sc)      ((sc)->acpi_wakeaddr + (3 * PAGE_SIZE))
@@ -184,7 +181,7 @@ acpi_wakeup_ap(struct acpi_softc *sc, in
 #define        BIOS_WARM               (0x0a)
 
 static void
-acpi_wakeup_cpus(struct acpi_softc *sc, const cpuset_t *wakeup_cpus)
+acpi_wakeup_cpus(struct acpi_softc *sc)
 {
        uint32_t        mpbioswarmvec;
        int             cpu;
@@ -203,7 +200,7 @@ acpi_wakeup_cpus(struct acpi_softc *sc, 
 
        /* Wake up each AP. */
        for (cpu = 1; cpu < mp_ncpus; cpu++) {
-               if (!CPU_ISSET(cpu, wakeup_cpus))
+               if (!CPU_ISSET(cpu, &suspcpus))
                        continue;
                if (acpi_wakeup_ap(sc, cpu) == 0) {
                        /* restore the warmstart vector */
@@ -244,8 +241,7 @@ acpi_sleep_machdep(struct acpi_softc *sc
        if (savectx(susppcbs[0])) {
                ctx_fpusave(suspfpusave[0]);
 #ifdef SMP
-               if (!CPU_EMPTY(&suspcpus) &&
-                   suspend_cpus(suspcpus) == 0) {
+               if (!CPU_EMPTY(&suspcpus) && suspend_cpus(suspcpus) == 0) {
                        device_printf(sc->acpi_dev, "Failed to suspend APs\n");
                        return (0);     /* couldn't sleep */
                }
@@ -300,7 +296,7 @@ acpi_wakeup_machdep(struct acpi_softc *s
                        PCPU_SET(switchticks, ticks);
 #ifdef SMP
                        if (!CPU_EMPTY(&suspcpus))
-                               acpi_wakeup_cpus(sc, &suspcpus);
+                               acpi_wakeup_cpus(sc);
 #endif
                }
 

Modified: head/sys/i386/acpica/acpi_wakeup.c
==============================================================================
--- head/sys/i386/acpica/acpi_wakeup.c  Fri Jun  1 19:09:17 2012        
(r236418)
+++ head/sys/i386/acpica/acpi_wakeup.c  Fri Jun  1 19:19:04 2012        
(r236419)
@@ -70,20 +70,17 @@ extern int          acpi_reset_video;
 
 #ifdef SMP
 extern struct pcb      **susppcbs;
+static cpuset_t                suspcpus;
 #else
 static struct pcb      **susppcbs;
 #endif
 
-#ifdef SMP
-static cpuset_t                suspcpus;
-#endif
-
 static void            *acpi_alloc_wakeup_handler(void);
 static void            acpi_stop_beep(void *);
 
 #ifdef SMP
 static int             acpi_wakeup_ap(struct acpi_softc *, int);
-static void            acpi_wakeup_cpus(struct acpi_softc *, const cpuset_t *);
+static void            acpi_wakeup_cpus(struct acpi_softc *);
 #endif
 
 #define ACPI_PAGETABLES        0
@@ -176,7 +173,7 @@ acpi_wakeup_ap(struct acpi_softc *sc, in
 #define        BIOS_WARM               (0x0a)
 
 static void
-acpi_wakeup_cpus(struct acpi_softc *sc, const cpuset_t *wakeup_cpus)
+acpi_wakeup_cpus(struct acpi_softc *sc)
 {
        uint32_t        mpbioswarmvec;
        int             cpu;
@@ -195,7 +192,7 @@ acpi_wakeup_cpus(struct acpi_softc *sc, 
 
        /* Wake up each AP. */
        for (cpu = 1; cpu < mp_ncpus; cpu++) {
-               if (!CPU_ISSET(cpu, wakeup_cpus))
+               if (!CPU_ISSET(cpu, &suspcpus))
                        continue;
                if (acpi_wakeup_ap(sc, cpu) == 0) {
                        /* restore the warmstart vector */
@@ -235,8 +232,7 @@ acpi_sleep_machdep(struct acpi_softc *sc
 
        if (suspendctx(susppcbs[0])) {
 #ifdef SMP
-               if (!CPU_EMPTY(&suspcpus) &&
-                   suspend_cpus(suspcpus) == 0) {
+               if (!CPU_EMPTY(&suspcpus) && suspend_cpus(suspcpus) == 0) {
                        device_printf(sc->acpi_dev, "Failed to suspend APs\n");
                        return (0);     /* couldn't sleep */
                }
@@ -286,7 +282,7 @@ acpi_wakeup_machdep(struct acpi_softc *s
                        PCPU_SET(switchticks, ticks);
 #ifdef SMP
                        if (!CPU_EMPTY(&suspcpus))
-                               acpi_wakeup_cpus(sc, &suspcpus);
+                               acpi_wakeup_cpus(sc);
 #endif
                }
 
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to