Daniel P. Berrange wrote:
On Thu, Jun 14, 2007 at 07:16:21PM +0200, Jim Meyering wrote:"Daniel P. Berrange" <berrange@xxxxxxxxxx> wrote:And (4) can be done by libvirtd using ordinary POSIX calls, so no external library support is needed, just some work to remote those operations (which is mostly done).Isn't doing #4 portably pretty tricky? There's still too much variation, because many of the details aren't covered by POSIX. At least for GNU df, it was -- it uses the mountlist module from gnulib:We don't need to enumerate all the mount points. The admin will simplyLucky you :)configure particulra directories (eg /var/lib/xen/images) as storage repositories. So we only need to be able to call statfs/statvfs on particular paths where we want to create a new image.Of course, if your target is just Linux, then it is easier.Minimally we have to target Solaris too, since we know they already use libvirt.Ok. Then this (also used by df) might help, if you ever need portability to e.g., older Solaris, *BSD, AIX, HP-UX, etc. http://cvs.sv.gnu.org/viewcvs/gnulib/lib/fsusage.c?root=gnulib&view=markupUnfortunately we can't use that. The license is GPL, while libvirt needs to be LGPL :-(
I'm sure we can use it as guidance for possible problems though. I'm quite surprised there are portability problems with statfs. Isn't it a v7 call, didn't think there wouldn't be much that could go wrong :-)
Rich. -- Emerging Technologies, Red Hat - http://et.redhat.com/~rjones/ Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod Street, Windsor, Berkshire, SL4 1TE, United Kingdom. Registered in England and Wales under Company Registration No. 03798903
Attachment:
smime.p7s
Description: S/MIME Cryptographic Signature