On 09/03/2009 21:25, "Timothy Hayes" <hayesti@tcd.ie> wrote:
> I''m working with some data that''s been mapped into two
virtual machine address
> spaces (this is kernel module code). Right now if I try to manipulate the
data
> there are race conditions so naturally I need a constraint like a mutex or
a
> semaphore. I''m not 100% certain, but I''m guessing the
Linux kernel semaphore
> isn''t going to work as expected since it puts a process to sleep
for a wait()
> call and wakes a process up for the signal() call. The domain in question
> won''t be the same domain that created the process.
>
> I''m wondering if there is an interdomain semaphore for Xen; maybe
someone has
> written one already? Maybe there are some "best practices" when
it comes to
> something like this. Any tips would be really appreciated.
If you already have shared memory between two domains, it would be easy to
implement a spinlock, right? If you want a sleeping semaphore then in
addition you need an inter-domain event channel. You can block on that and
the ''other end'' can wake you by pinging you on it.
-- Keir
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel