diff options
author | Phillip Susi | 2011-12-05 21:02:51 +0100 |
---|---|---|
committer | Karel Zak | 2011-12-08 13:41:39 +0100 |
commit | ab025087f91b66ee8e23a16bc49eb0d9bd421d65 (patch) | |
tree | f90e254072cec011982336e8eaad8f9a0c17f28f /partx/partx.c | |
parent | agetty: don't use log_err() for non-fatal errors (diff) | |
download | kernel-qcow2-util-linux-ab025087f91b66ee8e23a16bc49eb0d9bd421d65.tar.gz kernel-qcow2-util-linux-ab025087f91b66ee8e23a16bc49eb0d9bd421d65.tar.xz kernel-qcow2-util-linux-ab025087f91b66ee8e23a16bc49eb0d9bd421d65.zip |
partx: don't print error when partition already doesn't exist
If you run partx -d to delete partitions, and there are gaps
in the sequence ( partition 2 exists, but 1 doesn't ), then it
would complain that it had errors trying to remove the partitions
that already don't exist. Changed to ignore the error when
errno == ENXIO.
Signed-off-by: Phillip Susi <psusi@cfl.rr.com>
Diffstat (limited to 'partx/partx.c')
-rw-r--r-- | partx/partx.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/partx/partx.c b/partx/partx.c index d2fde3f4e..7c4235bb0 100644 --- a/partx/partx.c +++ b/partx/partx.c @@ -302,10 +302,15 @@ static int del_parts(int fd, const char *device, dev_t devno, } for (i = lower; i <= upper; i++) { - if (partx_del_partition(fd, i) == 0) { + rc = partx_del_partition(fd, i); + if (rc == 0) { if (verbose) printf(_("%s: partition #%d removed\n"), device, i); continue; + } else if (errno == ENXIO) { + if (verbose) + printf(_("%s: partition #%d already doesn't exist\n"), device, i); + continue; } rc = -1; if (verbose) |