Isaku Yamahata wrote:
> On Fri, Oct 17, 2008 at 05:36:58PM +0800, Xu, Anthony wrote:
>
> It's correct that xen VMM doesn't fully understand io area.
> However the VMM know all about RAM.

Thanks for your explanation, see my comment.

>
> So far !mfn_valid() has sufficed for the current implementation
> in order to detect IO area.
> However you are going to into the case which needs more precise
> detection. But what we want is the way to detect whether
> the page is NOT conventional memory. Not io area.
> There are three (or four) cases
>
> - !mfn_valid() case
>   This means that there isn't a corresponding struct page_info.
>   So we just skip reference counting over this type.

Mfn_valid maybe not precise.
One page can accommodate several page_info.
page_infos in the same page have different status, some page_infos refer to 
normal memory.
Other page_infos are supposed not to exist, due to they are in the same page, 
probe in function ia64_frametable_probe succeeds.
Is it possible?



>
> - mfn_valid() case
>   - no ram
>     I suppose this is the case you want to address.
>     In this case, the corresponding struct page_info can
>     be owned by DOMID_IO.
>     This case needs to be addressed.

Does mfn_vaild return true for MMIO now?

If it return faule for MMIO,
We can use mfn_valid for VTD, means DOMID_IO is not used so far.

Thanks,
Anthony



>
>   - RAM
>     - conventional memory (EFI_MEMORY_CONVENTIONAL)
>       This case was already handled by the current implementation.
>
>     - other type RAM
>       I'm not sure whether this case matters.
>       If it matters, we can handle this case as same as no ram case.
>
>
> thanks,

_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@lists.xensource.com
http://lists.xensource.com/xen-ia64-devel

Reply via email to