diff --git a/commands/partition.c b/commands/partition.c index f8257222a..44b91d1a1 100644 --- a/commands/partition.c +++ b/commands/partition.c @@ -59,11 +59,11 @@ static int mtd_part_do_parse_one(char *devname, const char *partstr, size = SIZE_REMAINING; end = (char *)partstr + 1; } else { - size = strtoul_suffix(partstr, &end, 0); + size = strtoull_suffix(partstr, &end, 0); } if (*end == '@') - *offset = strtoul_suffix(end+1, &end, 0); + *offset = strtoull_suffix(end+1, &end, 0); if (size == SIZE_REMAINING) size = devsize - *offset; diff --git a/drivers/mtd/partition.c b/drivers/mtd/partition.c index 351c5831b..720c2adab 100644 --- a/drivers/mtd/partition.c +++ b/drivers/mtd/partition.c @@ -75,8 +75,8 @@ static int mtd_part_block_markbad(struct mtd_info *mtd, loff_t ofs) return res; } -struct mtd_info *mtd_add_partition(struct mtd_info *mtd, off_t offset, size_t size, - unsigned long flags, const char *name) +struct mtd_info *mtd_add_partition(struct mtd_info *mtd, off_t offset, + uint64_t size, unsigned long flags, const char *name) { struct mtd_info *part; int start = 0, end = 0, i; diff --git a/include/linux/mtd/mtd.h b/include/linux/mtd/mtd.h index 970cdb02f..c63b514f4 100644 --- a/include/linux/mtd/mtd.h +++ b/include/linux/mtd/mtd.h @@ -280,8 +280,8 @@ struct mtd_notifier { struct list_head list; }; -struct mtd_info *mtd_add_partition(struct mtd_info *mtd, off_t offset, size_t size, - unsigned long flags, const char *name); +struct mtd_info *mtd_add_partition(struct mtd_info *mtd, off_t offset, + uint64_t size, unsigned long flags, const char *name); int mtd_del_partition(struct mtd_info *mtd); extern void register_mtd_user (struct mtd_notifier *new);