Re: [PATCH] ia64, kexec: allow base of crashkernel to be auto-discovered

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Jun 29, 2006 at 02:51:33PM -0700, Luck, Tony wrote:
> > >   Also it is wrong to put TLB map of RAM that does not exist together
> > > with kernel text and data.
> > 
> > Sorry, I don't understand that.
> 
> Here's an example.  Many systems have (for legacy reasons) mapped
> VGA memory at 0xA0000-0xC0000.  This memory is typically uncacheable
> so that when you write to those addresses the bits show up on the
> screen (rather than sitting in the processor cache for some indeterminate
> amount of time).
> 
> Now if Linux is using a 64MB entry to map the kernel, and the kernel
> has been loaded into the bottom 64M of memory, the mapping for the
> kernel (which has a WB attribute) will overlap the VGA memory (which
> doesn't support WB) ... and so you will most probably machine check
> when someone accesses the VGA (or worse if some speculative access or
> prefetch happens to pull from the VGA area).
> 
> So the rule is that Linux must never create TLB mappings for things
> that don't exist, or for blocks of memory with incompatible attributes.

I might be confused, but I'm not exactly sure that my patch would run
into this problem. It only tries to insert the "Crash kernel" resource
as a sub-resource of an existing "System RAM" resource, and does so in
such a way that it should not overlap with any existing sub-resources.
Surely VGA and the like are in completely different resources not
covered by a "System RAM" resource.

-- 
Horms                                           
H: http://www.vergenet.net/~horms/          W: http://www.valinux.co.jp/en/

-
: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel]     [Sparc Linux]     [DCCP]     [Linux ARM]     [Yosemite News]     [Linux SCSI]     [Linux x86_64]     [Linux for Ham Radio]

  Powered by Linux