Whamcloud - gitweb
LU-7220 llog: fix fd lost and correct error reporting 07/19407/3
authorDmitry Eremin <dmitry.eremin@intel.com>
Fri, 8 Apr 2016 15:09:23 +0000 (18:09 +0300)
committerOleg Drokin <oleg.drokin@intel.com>
Sun, 17 Apr 2016 20:52:16 +0000 (20:52 +0000)
A file descriptor acquired to 'fd' may be lost in case of
error in is_fstype_ext() function.

Fix error code of is_fstype_ext() propagation.

Change-Id: I0894cfad83854c503e2cdcfff78d44f6f2746ef3
Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-on: http://review.whamcloud.com/19407
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Jenkins
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lustre/utils/llog_reader.c

index 1c862d7..c5922c1 100644 (file)
@@ -186,9 +186,10 @@ int main(int argc, char **argv)
 
        is_ext = is_fstype_ext(fd);
        if (is_ext < 0) {
+               rc = is_ext;
                printf("Unable to determine type of filesystem containing %s\n",
                       argv[1]);
-               goto out;
+               goto out_fd;
        }
 
        rc = llog_pack_buffer(fd, &llog_buf, &recs_buf, &rec_number);