|
|
|
|
|
|
|
|
|
|
xen-devel
RE: [Xen-devel] yanked share problem
>From: Mark Williamson
>Sent: 2005年12月14日 22:30
>
>> Could you tell me what happen if the DomU_A crash while DomU_B still
>> accesses the memory it is granted? And moreover, how can DomU_A knows
>> that his friend has just "died"?
>
>AFAIK, A will be prevented from being fully destroyed until B drops the
>reference to that page of memory. The page will be around as long as B wants
>it.
>
>Cheers,
>Mark
>
How about B is waiting for A's notification to end reference, but A crashed
before sending out notification? One immediate example is the shared ring buf
between backend and frontend. Backend may not access the shared ring buf when A
is crashed. But that doesn't mean backend won't access that address later since
that virtual address is legally allocated from linux buddy pool. We need
provide a way to notify reference side something going abnormally, and let
reference side to drop reference and release local resource.
One possible way is to register a grant call back for each driver. When Xen
detects A crashed, xen notifies registered callback. For example, backend can
register a callback which check whether any reference on-going. If yes, waiting
for those reference done. Finally release all references to grant entries of
crashed domain and also release local resource back to linux and exit the
driver. After all callbacks are done, Xen then free that machine page.
Thanks
Kevin
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|