On Fri, Oct 03, 2008 at 01:25:17PM +0100, Daniel P. Berrange wrote: > This patch removes the linked list in the virDomainObjPtr object, and > adds a new virDomainObjList struct to track domains as an array. The > QEMU, LXC, OpenVZ and Test drivers get updated to account for this API > change. Hum, the only danger I see is that then you can't garantee the virDomainObjPtr value for parallel access as the (semi-frequent) realloc is likely to change them. You then need to take the global lock before trying to access this structure and never cache its value. I guess that's fine though considering the expected usage. But each driver still need to access those structures directly, with the future goal of having driver loaded as shared lib modules maybe that interface should be defined as a few entry points to add, remove, lookup and iterate (with a callback). The refactoring here might be a good opportunity to hide the implementation from driver code. Opinion ? Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@xxxxxxxxxxxx | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list