Blame SOURCES/nvme-ioctl-fix-wrong-ret-case-of-get-prop-patch

b1bebd
commit 5b7506198a6872764a51e32363e219916e1e592e
b1bebd
Author: Minwoo Im <minwoo.im@samsung.com>
b1bebd
Date:   Wed Apr 24 01:48:58 2019 +0100
b1bebd
b1bebd
    ioctl: Fix wrong return case of get_property
b1bebd
    
b1bebd
    If get_property_helper() succeeds in the first time, and then fails in
b1bebd
    the next time, then the ret value will not be updated to an error value.
b1bebd
    This patch removes 'ret' variable to make 'err' to return being updated
b1bebd
    everytime get_property_helper() invoked.
b1bebd
    
b1bebd
    Signed-off-by: Minwoo Im <minwoo.im@samsung.com>
b1bebd
b1bebd
diff --git a/nvme-ioctl.c b/nvme-ioctl.c
b1bebd
index 16fdc66..75bf9fa 100644
b1bebd
--- a/nvme-ioctl.c
b1bebd
+++ b/nvme-ioctl.c
b1bebd
@@ -612,7 +612,7 @@ int nvme_get_property(int fd, int offset, uint64_t *value)
b1bebd
 int nvme_get_properties(int fd, void **pbar)
b1bebd
 {
b1bebd
 	int offset, advance;
b1bebd
-	int err, ret = -EINVAL;
b1bebd
+	int err;
b1bebd
 	int size = getpagesize();
b1bebd
 
b1bebd
 	*pbar = malloc(size);
b1bebd
@@ -624,15 +624,13 @@ int nvme_get_properties(int fd, void **pbar)
b1bebd
 	memset(*pbar, 0xff, size);
b1bebd
 	for (offset = NVME_REG_CAP; offset <= NVME_REG_CMBSZ; offset += advance) {
b1bebd
 		err = get_property_helper(fd, offset, *pbar + offset, &advance);
b1bebd
-		if (!err)
b1bebd
-			ret = 0;
b1bebd
-		else {
b1bebd
+		if (err) {
b1bebd
 			free(*pbar);
b1bebd
 			break;
b1bebd
 		}
b1bebd
 	}
b1bebd
 
b1bebd
-	return ret;
b1bebd
+	return err;
b1bebd
 }
b1bebd
 
b1bebd
 int nvme_set_property(int fd, int offset, int value)