|
|
|
|
|
|
|
|
|
|
xen-tools
[Xen-tools] Re: [Fwd: Question about use of xenstore]
On Wed, 2005-08-10 at 10:44 +0100, harry wrote:
> Say the FE pushes two requests and the BE takes the interrupt for the
> first one, happens to pick up both because the second has arrived in the
> ring by that time. The BE completes both requests so there are none now
> outstanding but there is still a BE interrupt pending. The FE gets
> completion for both requests because Xen happens to switch domains (and
> temporarily suspends execution of the BE). The FE cleans up and reuses
> the shared page, filling it with something that can be misinterpreted as
> a non empty ring filled with block IO requests. The BE restarts, takes
> the interrupt, sees the non-empty corrupt ring contents and proceeds to
> scribble all over the disks.
Wow, that's a complicated example.
Let's keep it simple. Backend doesn't remove self from store until it
has unmapped page. Frontend doesn't recycle page until backend removed
from store. Same with event channel.
Hope that clarifies,
Rusty.
--
A bad analogy is like a leaky screwdriver -- Richard Braakman
_______________________________________________
Xen-tools mailing list
Xen-tools@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-tools
|
|
|
|
|