Re: [PATCH] kexec for ia64

From: Khalid Aziz <>
Date: 2006-03-15 03:08:04
On Tue, 2006-03-14 at 14:48 +0800, Zou Nan hai wrote:
> 3. Is the set ar.k0 code necessary? ar.k0 is already holding the right
> value.

Purely defensive coding to ensure new kernel does not fall on its
face :)

> 4. Is the VHPT disable code necessary? kernel will soon goes into
> Physical mode and the new kernel will reset VHPT walker.

Again, playing it safe. We do not want VHPT walker waking up at this
point. Instead of assuming code will not do anything that could cause
VHPT walker to wake up, it is better to just disable it. This way, if
any code makes erroneous references to a virtual address which causes
VHPT walker to make a TLB entry, it will simply get a page fault and we
can catch that. It is much harder to debug if VHPT walker silently makes
a TLB entry for an unexpected virtual address reference and then things
go wrong further down the line.

> 5. Is the PCI disable code too complex?

I have simplified it as much as I can. Suggestions to simplify further
would be appreciated.
> The overall concern is I am afraid the code is too much than
> necessary. 

After testing this kexec code for over 10,000 iterations of kexec'ing, I
have found not shutting devices down results in many corner cases that
have been fairly hard to debug. Adding all this code to shut down as
much of the hardware as possible has resulted in much more reliable
kexec code.


Khalid Aziz                       Open Source and Linux Organization
(970)898-9214                                        Hewlett-Packard                                  Fort Collins, CO

"The Linux kernel is subject to relentless development" 
                                - Alessandro Rubini

To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to
More majordomo info at
Received on Wed Mar 15 03:08:42 2006

This archive was generated by hypermail 2.1.8 : 2006-03-15 03:08:50 EST