Use sector_div() rather than defining own version. [Christophe Saout]
--- diff/drivers/md/dm-stripe.c 2003-06-30 10:07:21.000000000 +0100
+++ source/drivers/md/dm-stripe.c 2003-07-31 11:31:48.000000000 +0100
@@ -64,30 +64,6 @@
}
/*
- * FIXME: Nasty function, only present because we can't link
- * against __moddi3 and __divdi3.
- *
- * returns a == b * n
- */
-static int multiple(sector_t a, sector_t b, sector_t *n)
-{
- sector_t acc, prev, i;
-
- *n = 0;
- while (a >= b) {
- for (acc = b, prev = 0, i = 1;
- acc <= a;
- prev = acc, acc <<= 1, i <<= 1)
- ;
-
- a -= prev;
- *n += i >> 1;
- }
-
- return a == 0;
-}
-
-/*
* Construct a striped mapping.
* <number of stripes> <chunk size (2^^n)> [<dev_path> <offset>]+
*/
@@ -126,7 +102,8 @@
return -EINVAL;
}
- if (!multiple(ti->len, stripes, &width)) {
+ width = ti->len;
+ if (sector_div(width, stripes)) {
ti->error = "dm-stripe: Target length not divisable by "
"number of stripes";
return -EINVAL;
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Thu Jul 31 2003 - 22:00:49 EST