Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1df05483 authored by Mikulas Patocka's avatar Mikulas Patocka Committed by Alasdair G Kergon
Browse files

dm stripe: remove stripes_mask



The structure stripe_c contains a stripes_mask field. This field is
useless because it can be trivially calculated by subtracting one from
stripes. It is used only at one place. This patch removes it.

The patch also changes ffs(stripes) - 1 to __ffs(stripes).

Signed-off-by: default avatarMikulas Patocka <mpatocka@redhat.com>
Signed-off-by: default avatarAlasdair G Kergon <agk@redhat.com>
parent f14fa693
Loading
Loading
Loading
Loading
+3 −6
Original line number Diff line number Diff line
@@ -26,7 +26,6 @@ struct stripe {
struct stripe_c {
	uint32_t stripes;
	int stripes_shift;
	sector_t stripes_mask;

	/* The size of this target / num. stripes */
	sector_t stripe_width;
@@ -163,10 +162,8 @@ static int stripe_ctr(struct dm_target *ti, unsigned int argc, char **argv)

	if (stripes & (stripes - 1))
		sc->stripes_shift = -1;
	else {
		sc->stripes_shift = ffs(stripes) - 1;
		sc->stripes_mask = ((sector_t) stripes) - 1;
	}
	else
		sc->stripes_shift = __ffs(stripes);

	ti->split_io = chunk_size;
	ti->num_flush_requests = stripes;
@@ -218,7 +215,7 @@ static void stripe_map_sector(struct stripe_c *sc, sector_t sector,
	if (sc->stripes_shift < 0)
		*stripe = sector_div(chunk, sc->stripes);
	else {
		*stripe = chunk & sc->stripes_mask;
		*stripe = chunk & (sc->stripes - 1);
		chunk >>= sc->stripes_shift;
	}