]> sourceware.org Git - lvm2.git/commitdiff
Add some stack traces for dev_close error paths
authorZdenek Kabelac <zkabelac@redhat.com>
Tue, 28 Feb 2012 10:11:35 +0000 (10:11 +0000)
committerZdenek Kabelac <zkabelac@redhat.com>
Tue, 28 Feb 2012 10:11:35 +0000 (10:11 +0000)
lib/filters/filter.c
lib/format_text/format-text.c
lib/metadata/metadata.c

index 45c3e7af9ce06b6058fbd3811a2f7c5139505d91..d8bc35904e9f36fd39efc600b1d406ee6691e42b 100644 (file)
@@ -179,7 +179,8 @@ static int _passes_lvm_type_device_filter(struct dev_filter *f __attribute__((un
        ret = 1;
 
       out:
-       dev_close(dev);
+       if (!dev_close(dev))
+               stack;
 
        return ret;
 }
index 5a6c08343f8860d198aad83df1c11752f204df10..2c23b32e8509585fed8b5d50a6add658b54e8e07 100644 (file)
@@ -1357,8 +1357,10 @@ static int _text_pv_write(const struct format_type *fmt, struct physical_volume
                return_0;
 
        if (!label_write(pv->dev, label)) {
-               dev_close(pv->dev);
-               return_0;
+               stack;
+               if (!dev_close(pv->dev))
+                       stack;
+               return 0;
        }
 
        /*
index ea487bd42887a8ed5d55dc52200332d5c2c18a48..e1b1d77cceb6b678b9e7cb42fe75dc4b415953ee 100644 (file)
@@ -1460,10 +1460,12 @@ static int _pvcreate_write(struct cmd_context *cmd, struct pv_to_create *pvc)
 
                if (!dev_set(dev, UINT64_C(0), (size_t) 2048, 0)) {
                        log_error("%s not wiped: aborting", pv_name);
-                       dev_close(dev);
+                       if (!dev_close(dev))
+                               stack;
                        return 0;
                }
-               dev_close(dev);
+               if (!dev_close(dev))
+                       stack;
        }
 
        log_error("Writing physical volume data to disk \"%s\"",
This page took 0.038514 seconds and 5 git commands to generate.