summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--util/nvmutil/nvmutil.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/util/nvmutil/nvmutil.c b/util/nvmutil/nvmutil.c
index 1a235e01..7cad5055 100644
--- a/util/nvmutil/nvmutil.c
+++ b/util/nvmutil/nvmutil.c
@@ -759,11 +759,16 @@ write_gbe(void)
static void
write_gbe_part(size_t p)
{
- if (pwrite(fd, gbe_mem_offset(p, "pwrite"),
- GBE_PART_SIZE, gbe_file_offset(p, "pwrite")) != GBE_PART_SIZE) {
- err(ECANCELED,
- "Can't write %d b to '%s' p%d", GBE_PART_SIZE, fname, p);
- }
+ ssize_t rval = pwrite(fd, gbe_mem_offset(p, "pwrite"),
+ GBE_PART_SIZE, gbe_file_offset(p, "pwrite"));
+
+ if (rval == -1)
+ err(ECANCELED, "Can't write %zx b to '%s' p%zx",
+ GBE_PART_SIZE, fname, p);
+
+ if (rval != GBE_PART_SIZE)
+ err(ECANCELED, "CORRUPTED WRITE (%zx b) to file '%s' p%zx",
+ rval, fname, p);
}
/*