WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] mapped memory delay?

Thanks for your advice. I tried rmb() and wmb() before I sent last email,
they does not help.

Actually I am running a single processor core. :( So it should not have
any delay. But I still ran into the problem. Another interesting thing is
that my working flow should be as follows:

domU issue a request -> generate an irq at dom0 -> domU waits for reply->
dom0 gets the request, processes it and reply -> domU wakes up by irq
caused by notification event sent by dom0, gets the result -> DomU sends
another request

That means, if domU does not get the irq from dom0, it will not issue next
request. Because of the problem of req_prod updates, dom0 failed to get
the request and thus will not process it, not mention to reply. So dom0
should not be able to receive next request or next irq.

But the fact is that dom0 can still get irq even it failed to get last
request. It appears that dom0 issues multiple irqs for one event. How
could that happed?

-x


On Fri, 18 Feb 2005, Christopher Clark wrote:

> Are you running this on a single processor core?
>
> If not, it sounds to me like a cache coherency issue - you'll need a
> write memory barrier after writing to the req_prod.  If you're using
> the ring macros from io/ring.h this should be already taken care of
> for you in the push macros.
>
> c.
>
>
> On Fri, 18 Feb 2005 16:44:30 -0500 (EST), Xin Zhao
> <zhaoxin@xxxxxxxxxxxxxx> wrote:
> > I ran into the following problem:
> >
> > I setup a shared ring page and an event channel between two domains (dom0
> > and one domU), DomU increases req_prod by one and notify the dom0 via the
> > event channel, dom0 then check req_prod pointer and process the request in
> > the shared ring. But I noticed that sometimes dom0 get the irq triggered
> > by the notification event, but the req_prod remains the same. This
> > situation only happened occasionally. Why? Because the req_prod is saved
> > in the shared, mapped page, I suspect that there is a delay of updates
> > between two domains. Is that true? If so, how to handle this problem?
> >
> > Your advice is highly appreciated!
> >
> > -x
> >
> > -------------------------------------------------------
> > SF email is sponsored by - The IT Product Guide
> > Read honest & candid reviews on hundreds of IT Products from real users.
> > Discover which products truly live up to the hype. Start reading now.
> > http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
> > _______________________________________________
> > Xen-devel mailing list
> > Xen-devel@xxxxxxxxxxxxxxxxxxxxx
> > https://lists.sourceforge.net/lists/listinfo/xen-devel
> >
>


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel