Change xs_read_watch interfaces to support variable arguments
cover Change xs_read_watch interfaces to support variable arguments
The following set of changes modify the read_watch interface in userspace and in the kernel to support variable arguments. This is in preparation for adding domid to @{introduce,release}Domain watches. This will allow backends to automatically reap on domain destruction which should eliminate a large number of the zombie problems we're having on domain destruction since Xend no longer plays a role in freeing that memory.
The interface for read_watch is now consistent between userspace and kernel space. It's modelled after xs_read_directory. The returned array is indexable via XS_WATCH_* macros.
While slightly awkward, IMHO it seems like the cleanest and most flexible option of the proposed interfaces.
Regards,
Anthony Liguori
I should mention that I ran the xenstore testsuite (which rocks btw) and tested the block devices and network devices. I haven't tested blktap and vtpm but the changes are identical (and I don't have any test cases for those).
Regards,
Anthony Liguori
Quoted 17 lines · Anthony Liguori
The following set of changes modify the
read_watchinterface in userspace and in the kernel to support variable arguments. This is in preparation for adding domid to @{introduce,release}Domain watches. This will allow backends to automatically reap on domain destruction which should eliminate a large number of the zombie problems we're having on domain destruction since Xend no longer plays a role in freeing that memory.The interface for
read_watchis now consistent between userspace and kernel space. It's modelled afterxs_read_directory. The returned array is indexable via XS_WATCH_* macros.While slightly awkward, IMHO it seems like the cleanest and most flexible option of the proposed interfaces.
Signed-off-by Anthony Liguori <[email protected]>Regards,
Anthony Liguori
_______________________________________________
Xen-devel mailing list
[email protected]
http://lists.xensource.com/xen-devel
Quoted 7 lines · Anthony Liguori
The following set of changes modify the
read_watchinterface in userspace and in the kernel to support variable arguments. This is in preparation for adding domid to @{introduce,release}Domain watches. This will allow backends to automatically reap on domain destruction which should eliminate a large number of the zombie problems we're having on domain destruction since Xend no longer plays a role in freeing that memory.
Hi Anthony,
What you've done in your patch stands as a sensible thing on its own, I think, so I'm not objecting to that, but I am interested in why you think it will help with the zombies. On domain destruction, xend is _supposed_ to remove all the relevant entries of the store, and the backend drivers are _supposed_ to notice this and close themselves down. If you have evidence that either of those things aren't happening, then we should regard that as a bug, independent of your patch. Have you seen that happening?
Ewan.
Quoted 7 lines · Ewan Mellor
On domain destruction, xend is _supposed_ to remove
all the relevant entries of the store, and the backend drivers are _supposed_ to notice this and close themselves down. If you have evidence that either of those things aren't happening, then we should regard that as a bug, independent of your patch. Have you seen that happening?
Hi Ewan,
I should have been more specific. Zombie domains is a bug that frequently appears. I've not seen it recently but it's one of those things that frequently creeps into the tree.
Regards,
Anthony Liguori
Quoted 9 lines
Ewan.
_______________________________________________
Xen-devel mailing list
[email protected]
http://lists.xensource.com/xen-devel
Quoted 3 lines · Anthony Liguori
I should have been more specific. Zombie domains is a bug that frequently appears. I've not seen it recently but it's one of those things that frequently creeps into the tree.
Good, that's fine. Hopefully there'll be fewer creeping zombies and a lot more slaying from now on ;-)
Ewan.