Looks sensible, ACK series. There's also a case for allowing plugins to choose the thread model dynamically (using the same or a similar callback). At the moment we are unable to choose a thread model in most of the language plugins because they generally require the language interpreter to be initialized after the nbdkit_plugin struct has been finalized.
For example in the Perl plugin, we don't create the interpreter until ‘.load’ is called, but that happens long after nbdkit_plugin struct has been returned to the server. I think the only exceptions to this rule are the natively compiled language plugins, ie. OCaml and Rust, where we create the struct from the language. Note also if we do this we can choose a new thread model ABI either with gaps for future threading levels, or some other kind of ABI not based on numbers. There is a case for having a threading model where everything runs from the main thread (required by VDDK). Rich. -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com virt-df lists disk usage of guests without needing to install any software inside the virtual machine. Supports Linux and Windows. http://people.redhat.com/~rjones/virt-df/ _______________________________________________ Libguestfs mailing list [email protected] https://www.redhat.com/mailman/listinfo/libguestfs
