Re: [PATCH 6/8] xen/debug: WARN_ON when 1-1 but no _PAGE_IOMAP flag set.

Ian Campbell
2011-01-04T19:21:27Z

On Tue, 2011-01-04 at 18:46 +0000, Konrad Rzeszutek Wilk wrote:
> On Tue, Jan 04, 2011 at 05:24:38PM +0000, Ian Campbell wrote:
> > On Thu, 2010-12-30 at 19:48 +0000, Konrad Rzeszutek Wilk wrote:
> > > Only enabled if XEN_DEBUG_FS is enabled.
> >
> > Bit of an odd configuration option to use. Perhaps co-opt
> > CONFIG_PARAVIRT_DEBUG instead?
> >
> > Or maybe we need a new XEN_DEBUG option? or just make it a developer
> > only EXTRA_CFLAGS +=-DDEBUG thing?
>
> I think the 'XEN_DEBUG' works better.
> >
> > Is this only temporary until the need for _PAGE_IOMAP is removed anyway?
>
> I was thinking to leave it as a way to weed out bugs, but I could as well
> just leave it in my "debug" branch and not propose it upstream.
>
> I am not sure how to remove the _PAGE_IOMAP fully. We need some _flag_ to
> signal 'xen_pte_val' that the PTE should not be looked up in the M2P.
>
> Otherwise, for identity mappings, the value is 0xfffff.. (or 0x55555.. sometimes)
> and the PTE ends up being messed up. Instead there is a check to see if
> _PAGE_IOMAP is part of the PTE, and if so, no M2P lookup is done.
>
> I guess we could do the M2P irregardless and just see if it is 0xfffff... and
> if so just return the PTE without any changes.

Perhaps this ties in with the m2p overlay which Stefano+Jeremy have been
working on to deal with granted foreign pages? I/O pages are a bit like
foreign memory (if you squint enough)...

Ian.