]> err.no Git - linux-2.6/blobdiff - drivers/md/dm-linear.c
Merge git://git.infradead.org/~dwmw2/rbtree-2.6
[linux-2.6] / drivers / md / dm-linear.c
index 6a2cd5dc8a6352879d396e6a977b6508730ba0d2..daf586c0898dc2b91aa2ebe33090a0acc7721951 100644 (file)
@@ -26,6 +26,7 @@ struct linear_c {
 static int linear_ctr(struct dm_target *ti, unsigned int argc, char **argv)
 {
        struct linear_c *lc;
+       unsigned long long tmp;
 
        if (argc != 2) {
                ti->error = "dm-linear: Invalid argument count";
@@ -38,10 +39,11 @@ static int linear_ctr(struct dm_target *ti, unsigned int argc, char **argv)
                return -ENOMEM;
        }
 
-       if (sscanf(argv[1], SECTOR_FORMAT, &lc->start) != 1) {
+       if (sscanf(argv[1], "%llu", &tmp) != 1) {
                ti->error = "dm-linear: Invalid device sector";
                goto bad;
        }
+       lc->start = tmp;
 
        if (dm_get_device(ti, argv[0], lc->start, ti->len,
                          dm_table_get_mode(ti->table), &lc->dev)) {
@@ -87,8 +89,8 @@ static int linear_status(struct dm_target *ti, status_type_t type,
                break;
 
        case STATUSTYPE_TABLE:
-               snprintf(result, maxlen, "%s " SECTOR_FORMAT, lc->dev->name,
-                        lc->start);
+               snprintf(result, maxlen, "%s %llu", lc->dev->name,
+                               (unsigned long long)lc->start);
                break;
        }
        return 0;