diff mbox

[ndctl,3/4] libndctl, test: fix a couple of unchecked returns

Message ID 20180503185050.7559-3-vishal.l.verma@intel.com (mailing list archive)
State New, archived
Headers show

Commit Message

Verma, Vishal L May 3, 2018, 6:50 p.m. UTC
-Wunused-result with -D_FORTIFY_SOURCE=2 reported a couple of unchecked
return values, fix them by appropriately failing on errors.

Cc: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Vishal Verma <vishal.l.verma@intel.com>
---
 ndctl/lib/libndctl.c | 5 ++++-
 test/dax-pmd.c       | 5 ++++-
 2 files changed, 8 insertions(+), 2 deletions(-)

Comments

Dan Williams May 4, 2018, 12:08 a.m. UTC | #1
On Thu, May 3, 2018 at 11:50 AM, Vishal Verma <vishal.l.verma@intel.com> wrote:
> -Wunused-result with -D_FORTIFY_SOURCE=2 reported a couple of unchecked
> return values, fix them by appropriately failing on errors.

*Building with '-Wunused-result -D_FORTIFY_SOURCE=2' reports...

>
> Cc: Dan Williams <dan.j.williams@intel.com>
> Signed-off-by: Vishal Verma <vishal.l.verma@intel.com>
> ---
>  ndctl/lib/libndctl.c | 5 ++++-
>  test/dax-pmd.c       | 5 ++++-
>  2 files changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/ndctl/lib/libndctl.c b/ndctl/lib/libndctl.c
> index 6733b85..47e005e 100644
> --- a/ndctl/lib/libndctl.c
> +++ b/ndctl/lib/libndctl.c
> @@ -1243,7 +1243,10 @@ NDCTL_EXPORT int ndctl_bus_wait_for_scrub_completion(struct ndctl_bus *bus)
>                                 break;
>                         }
>                         dbg(ctx, "poll wake: revents: %d\n", fds.revents);
> -                       pread(fd, buf, 1, 0);
> +                       if (pread(fd, buf, 1, 0) == -1) {
> +                               rc = -errno;
> +                               break;
> +                       }
>                         fds.revents = 0;
>                 }
>         }
> diff --git a/test/dax-pmd.c b/test/dax-pmd.c
> index 06fe522..65bee6f 100644
> --- a/test/dax-pmd.c
> +++ b/test/dax-pmd.c
> @@ -125,7 +125,10 @@ int test_dax_directio(int dax_fd, unsigned long align, void *dax_addr, off_t off
>                                 rc = -ENXIO;
>                         }
>                         ((char *) buf)[0] = 0;
> -                       pread(fd2, buf, 4096, 0);
> +                       if (pread(fd2, buf, 4096, 0) != 4096) {
> +                               faili(i);
> +                               rc = -ENXIO;
> +                       }
>                         if (strcmp(buf, "odirect data") != 0) {
>                                 faili(i);
>                                 rc = -ENXIO;


Reviewed-by: Dan Williams <dan.j.williams@intel.com>
diff mbox

Patch

diff --git a/ndctl/lib/libndctl.c b/ndctl/lib/libndctl.c
index 6733b85..47e005e 100644
--- a/ndctl/lib/libndctl.c
+++ b/ndctl/lib/libndctl.c
@@ -1243,7 +1243,10 @@  NDCTL_EXPORT int ndctl_bus_wait_for_scrub_completion(struct ndctl_bus *bus)
 				break;
 			}
 			dbg(ctx, "poll wake: revents: %d\n", fds.revents);
-			pread(fd, buf, 1, 0);
+			if (pread(fd, buf, 1, 0) == -1) {
+				rc = -errno;
+				break;
+			}
 			fds.revents = 0;
 		}
 	}
diff --git a/test/dax-pmd.c b/test/dax-pmd.c
index 06fe522..65bee6f 100644
--- a/test/dax-pmd.c
+++ b/test/dax-pmd.c
@@ -125,7 +125,10 @@  int test_dax_directio(int dax_fd, unsigned long align, void *dax_addr, off_t off
 				rc = -ENXIO;
 			}
 			((char *) buf)[0] = 0;
-			pread(fd2, buf, 4096, 0);
+			if (pread(fd2, buf, 4096, 0) != 4096) {
+				faili(i);
+				rc = -ENXIO;
+			}
 			if (strcmp(buf, "odirect data") != 0) {
 				faili(i);
 				rc = -ENXIO;