From: Ingo Molnar <mingo@elte.hu>
To: Jan Beulich <jbeulich@novell.com>
Cc: linux-kernel@vger.kernel.org,
Thomas Gleixner <tglx@linutronix.de>,
"H. Peter Anvin" <hpa@zytor.com>,
Miguel Boton <mboton.lkml@gmail.com>
Subject: Re: mach_reboot_fixups()
Date: Thu, 6 Mar 2008 18:43:12 +0100 [thread overview]
Message-ID: <20080306174311.GA23029@elte.hu> (raw)
In-Reply-To: <47D031CD.76E4.0078.0@novell.com>
* Jan Beulich <jbeulich@novell.com> wrote:
> Ingo,
>
> was it intentional to remove the call to mach_reboot_fixups() during
> the merge of reboot_{32,64}.c? If so, it seems odd that
> reboot_fixups_32.c was left in the tree (and there was even stuff
> added to it). But it would rather seem that those machines dealt with
> in that file would not reboot properly anymore (for one of my boxes I
> added an entry in that table to make it boot properly, which is why I
> noticed the code not being called anymore)...
good catch Jan! The patch below should fix it.
Can you see any other material difference due to the unification?
reboot_mode is now written to 0x472 unconditionally, but we can consider
that a bugfix. Otherwise the mode and ordering of reboot sequences seems
to be equivalent to me.
Ingo
------------------->
Subject: x86: re-add reboot fixups
From: Ingo Molnar <mingo@elte.hu>
Date: Thu Mar 06 18:29:43 CET 2008
Jan Beulich noticed that the reboot fixups went missing during
reboot.c unification.
(commit 4d022e35fd7e07c522c7863fee6f07e53cf3fc14)
Geode and a few other rare boards with special reboot quirks are
affected.
Reported-by: Jan Beulich <jbeulich@novell.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
---
arch/x86/kernel/reboot.c | 6 ++++++
1 file changed, 6 insertions(+)
Index: linux-x86.q/arch/x86/kernel/reboot.c
===================================================================
--- linux-x86.q.orig/arch/x86/kernel/reboot.c
+++ linux-x86.q/arch/x86/kernel/reboot.c
@@ -335,6 +335,10 @@ static inline void kb_wait(void)
}
}
+void __attribute__((weak)) mach_reboot_fixups(void)
+{
+}
+
void native_machine_emergency_restart(void)
{
int i;
@@ -342,6 +346,8 @@ void native_machine_emergency_restart(vo
/* Tell the BIOS if we want cold or warm reboot */
*((unsigned short *)__va(0x472)) = reboot_mode;
+ mach_reboot_fixups(); /* for board specific fixups */
+
for (;;) {
/* Could also try the reset bit in the Hammer NB */
switch (reboot_type) {
next prev parent reply other threads:[~2008-03-06 17:43 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-03-06 17:02 mach_reboot_fixups() Jan Beulich
2008-03-06 17:43 ` Ingo Molnar [this message]
2008-03-06 17:49 ` mach_reboot_fixups() Ingo Molnar
2008-03-07 7:58 ` mach_reboot_fixups() Jan Beulich
2008-03-07 8:24 ` mach_reboot_fixups() Ingo Molnar
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=20080306174311.GA23029@elte.hu \
--to=mingo@elte.hu \
--cc=hpa@zytor.com \
--cc=jbeulich@novell.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mboton.lkml@gmail.com \
--cc=tglx@linutronix.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.