From: Tomas Szepe <szepe@pinerecords.com>
To: Eyal Lebedinsky <eyal@eyal.emu.id.au>
Cc: list linux-kernel <linux-kernel@vger.kernel.org>,
Alan Cox <laughing@shared-source.org>
Subject: Re: 2.4.20-pre1-ac1: apm.c non SMP compile error
Date: Wed, 7 Aug 2002 17:15:08 +0200 [thread overview]
Message-ID: <20020807151508.GA6127@louise.pinerecords.com> (raw)
In-Reply-To: <3D511AD8.3C7CF2A7@eyal.emu.id.au>
> apm_save_cpus() is defined without parameters for non-SMP, breaks
> compile.
>
> --
> Eyal Lebedinsky (eyal@eyal.emu.id.au) <http://samba.org/eyal/>
> --- linux/arch/i386/kernel/apm.c.orig Wed Aug 7 22:59:06 2002
> +++ linux/arch/i386/kernel/apm.c Wed Aug 7 22:56:55 2002
> @@ -524,7 +524,7 @@
> * No CPU lockdown needed on a uniprocessor
> */
>
> -#define apm_save_cpus 0
> +#define apm_save_cpus() 0
> #define apm_restore_cpus(x)
>
> #endif
or alternatively the following, which for the cost of a couple ifdefs
also removes the unused variable 'cpus' on UP:
diff -urN linux-2.4.20-pre1-ac1/arch/i386/kernel/apm.c linux-2.4.20-pre1-ac1.n/arch/i386/kernel/apm.c
--- linux-2.4.20-pre1-ac1/arch/i386/kernel/apm.c 2002-08-07 17:11:09.000000000 +0200
+++ linux-2.4.20-pre1-ac1.n/arch/i386/kernel/apm.c 2002-08-07 17:08:10.000000000 +0200
@@ -496,9 +496,9 @@
}
/*
- * Lock APM functionality to physical CPU 0
+ * Lock APM functionality to physical CPU 0 in SMP kernels
*/
-
+
#ifdef CONFIG_SMP
static unsigned long apm_save_cpus(void)
@@ -518,15 +518,6 @@
set_cpus_allowed(current, mask);
}
-#else
-
-/*
- * No CPU lockdown needed on a uniprocessor
- */
-
-#define apm_save_cpus 0
-#define apm_restore_cpus(x)
-
#endif
/*
@@ -602,8 +593,10 @@
{
APM_DECL_SEGS
unsigned long flags;
+#ifdef CONFIG_SMP
unsigned long cpus = apm_save_cpus();
-
+#endif
+
__save_flags(flags);
APM_DO_CLI;
APM_DO_SAVE_SEGS;
@@ -625,9 +618,11 @@
: "memory", "cc");
APM_DO_RESTORE_SEGS;
__restore_flags(flags);
-
+
+#ifdef CONFIG_SMP
apm_restore_cpus(cpus);
-
+#endif
+
return *eax & 0xff;
}
@@ -651,8 +646,10 @@
APM_DECL_SEGS
unsigned long flags;
+#ifdef CONFIG_SMP
unsigned long cpus = apm_save_cpus();
-
+#endif
+
__save_flags(flags);
APM_DO_CLI;
APM_DO_SAVE_SEGS;
@@ -679,8 +676,10 @@
APM_DO_RESTORE_SEGS;
__restore_flags(flags);
+#ifdef CONFIG_SMP
apm_restore_cpus(cpus);
-
+#endif
+
return error;
}
@@ -935,7 +934,9 @@
*/
if (apm_info.realmode_power_off)
{
+#ifdef CONFIG_SMP
apm_save_cpus();
+#endif
machine_real_restart(po_bios_call, sizeof(po_bios_call));
/* Never returns */
}
next prev parent reply other threads:[~2002-08-07 15:12 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-08-07 13:04 Eyal Lebedinsky
2002-08-07 15:15 ` Tomas Szepe [this message]
2002-08-07 17:19 ` Alan Cox
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20020807151508.GA6127@louise.pinerecords.com \
--to=szepe@pinerecords.com \
--cc=eyal@eyal.emu.id.au \
--cc=laughing@shared-source.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®