On Thu, Jan 29, 2015 at 06:54:31PM +0100, Pino Toscano wrote: > In copy mode, make sure to not zero-free-space devices mounted as > read-only, as we cannot write to them. > > Related to RHBZ#1079625. > --- > sparsify/copying.ml | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/sparsify/copying.ml b/sparsify/copying.ml > index 4c23939..9c2c545 100644 > --- a/sparsify/copying.ml > +++ b/sparsify/copying.ml > @@ -233,6 +233,13 @@ You can ignore this warning or change it to a hard > failure using the > with Not_found -> false > in > > + let is_readonly_device mp = > + let statvfs = g#statvfs mp in > + let flags = statvfs.G.flag in > + (* 0x01 is ST_RDONLY in Linux' GNU libc. *) > + flags <> -1_L && (flags &^ 0x1_L) <> 0_L > + in > + > List.iter ( > fun fs -> > if not (is_ignored fs) then ( > @@ -250,6 +257,9 @@ You can ignore this warning or change it to a hard > failure using the > if is_readonly_btrfs_snapshot fs "/" then ( > if not quiet then > printf (f_"Skipping %s, as it is a read-only btrfs > snapshot.\n%!") fs; > + ) else if is_readonly_device "/" then ( > + if not quiet then > + printf (f_"Skipping %s, as it is a read-only device.\n%!") > fs; > ) else ( > if not quiet then > printf (f_"Fill free space in %s with zero ...\n%!") fs;
Looks good, ACK. Rich. -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com Fedora Windows cross-compiler. Compile Windows programs, test, and build Windows installers. Over 100 libraries supported. http://fedoraproject.org/wiki/MinGW _______________________________________________ Libguestfs mailing list [email protected] https://www.redhat.com/mailman/listinfo/libguestfs
