For the record, Matthew Booth tracked this down:
The problem was running mkinitrd in the RHEL 3 guest. This uses the
RHEL 3 /bin/mount command to mount an ext2 filesystem. This old
command was unable to modprobe missing modules, so if the ext2 module
wasn't loaded it would simply give up.
Now, if you mount any ext2 filesystem first, then the module gets
loaded. The reason is that this uses the appliance /bin/mount which
modprobes the required modules.
RHEL 3 used ext3 filesystems, so ext2.ko was never loaded. The
mkinitrd only uses ext2 for some temporary loopback mount, but that
was sufficient to cause the failure.
The solution will be to expose a guestfs_modprobe command so that
callers can ensure the correct kernel modules are loaded so that an
external command can complete.
Rich.
--
Richard Jones, Emerging Technologies, Red Hat
http://et.redhat.com/~rjones
Read my programming blog:
http://rwmj.wordpress.com
Fedora now supports 75 OCaml packages (the OPEN alternative to F#)
http://cocan.org/getting_started_with_ocaml_on_red_hat_and_fedora