X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=TODO;h=ad9e6e9b37ab344b7bd57f5248c98cbeb79a1f11;hp=18b3fe93e273a7661896d644937b57a0791d6f82;hb=ad8a256f54a6cb99f89bb444c8597a152a793dce;hpb=4aa4ecc380edc509aba886417c67d9c39ab51c9a diff --git a/TODO b/TODO index 18b3fe9..ad9e6e9 100644 --- a/TODO +++ b/TODO @@ -24,5 +24,105 @@ Limit on transfers would still be 2MB for these types. Implement febootstrap command. -zerofree: -ftp://ftp.owlriver.com/pub/mirror/ORC/zerofree/ +---------------------------------------------------------------------- + +Complete the Haskell bindings (see discussion on haskell-cafe). + +---------------------------------------------------------------------- + +Complete the bindings tests - must test the return values and +error cases. + +---------------------------------------------------------------------- + +For virt-inspector: + + - Make a libvirt XML config + + - Test over available OSes + + - Add 'reged' / NT registry support. + +---------------------------------------------------------------------- + +Use virtio_blk by default. It's faster and more natural. +Unfortunately it seems like this will rename all devices - see next +item. + +Note: virtio_blk *IS* supported by all our minimum platforms, +ie. CentOS 5.3, Fedora 11, Debian. + +---------------------------------------------------------------------- + +Qemu options -- After discussion with the KVM developers, they have +recommended some flags which will improve the safety and reliability +of KVM. Need to test that these also work under qemu (or at least, do +no harm): + +-no-hpet HPET support is broken and should be disabled. + +-rtc-td-hack Keeps the rtc clock source track time correctly. + +-drive file=...,if=[ide|virtio],cache=off + cache=off is necessary to improve reliability in the + event of a system crash when writing. + +---------------------------------------------------------------------- + +"Standalone/local mode" + +Instead of running guestfsd (the daemon) inside qemu, there should be +an option to just run guestfsd directly. + +The architecture in this mode would look like: + + +------------------+ + | main program | + |------------------| + | libguestfs | + +--------^---------+ + | | reply + cmd | | + +----v-------------+ + | guestfsd | + +------------------+ + +Notes: + +(1) This only makes sense if we are running as root. + +(2) There is no console / kernel messages in this configuration, but +we might consider capturing stderr from the daemon. + +(3) guestfs_config and guestfs_add_drive become no-ops. + +Obviously in this configuration, commands are run directly on the +local machine's disks. You could just run the commands themselves +directly, but libguestfs provides a convenient API and language +bindings. Also deals with tricky stuff like parsing the output of the +LVM commands. Also we get to leverage other code such as +virt-inspector. + +This is mainly useful from live CDs, ie. virt-p2v. + +Should we bother having the daemon at all and just link the guestfsd +code directly into libguestfs? + +---------------------------------------------------------------------- + +PPC problems: + + ppc (32 bit) works with qemu from git, however there is no serial console + + ppc64 requires extra parameters: + -M mac99 -cpu ppc64 + however it still fails: + invalid/unsupported opcode: 01 - 01 - 1a (06301e83) 00000000018c2738 1 + invalid bits: 00400000 for opcode: 0b - 19 - 15 (2d746572) 0000000000009230 + + no serial console in ppc or ppc64 because no one can tell us what + console=ttyXX option to use + +---------------------------------------------------------------------- + +Supermin appliance should be moved into febootstrap.