Commit 781248c1 authored by Nikanth Karthikesan's avatar Nikanth Karthikesan Committed by Alasdair G Kergon
Browse files

dm stripe: avoid divide by zero with invalid stripe count



If a table containing zero as stripe count is passed into stripe_ctr
the code attempts to divide by zero.

This patch changes DM_TABLE_LOAD to return -EINVAL if the stripe count
is zero.

We now get the following error messages:
  device-mapper: table: 253:0: striped: Invalid stripe count
  device-mapper: ioctl: error adding target to table

Signed-off-by: default avatarNikanth Karthikesan <knikanth@suse.de>
Cc: stable@kernel.org
Signed-off-by: default avatarAlasdair G Kergon <agk@redhat.com>
parent 0813e22d
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -110,7 +110,7 @@ static int stripe_ctr(struct dm_target *ti, unsigned int argc, char **argv)
	}

	stripes = simple_strtoul(argv[0], &end, 10);
	if (*end) {
	if (!stripes || *end) {
		ti->error = "Invalid stripe count";
		return -EINVAL;
	}