[PATCH 3/5] ubi: Fix for creating ubi volumes with 64bit size
Dmitry Lavnikevich
d.lavnikevich at sam-solutions.com
Mon Mar 10 07:39:51 EDT 2014
Since MTD is already supports >= 4GB device sizes it is better to
allow ubi valumes also be created of larger sizes.
Signed-off-by: Dmitry Lavnikevich <d.lavnikevich at sam-solutions.com>
Signed-off-by: Grigory Milev <g.milev at sam-solutions.com>
---
commands/ubi.c | 4 ++--
drivers/mtd/ubi/cdev.c | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/commands/ubi.c b/commands/ubi.c
index 57ae790..8a409c2 100644
--- a/commands/ubi.c
+++ b/commands/ubi.c
@@ -15,12 +15,12 @@ static int do_ubimkvol(int argc, char *argv[])
{
struct ubi_mkvol_req req;
int fd, ret;
- size_t size;
+ uint64_t size;
if (argc != 4)
return COMMAND_ERROR_USAGE;
- size = strtoul_suffix(argv[3], NULL, 0);
+ size = strtoull_suffix(argv[3], NULL, 0);
req.name_len = min_t(int, strlen(argv[2]), UBI_VOL_NAME_MAX);
strncpy(req.name, argv[2], req.name_len);
req.name[req.name_len] = 0;
diff --git a/drivers/mtd/ubi/cdev.c b/drivers/mtd/ubi/cdev.c
index 129f2e2..b97739a 100644
--- a/drivers/mtd/ubi/cdev.c
+++ b/drivers/mtd/ubi/cdev.c
@@ -220,7 +220,7 @@ static int ubi_cdev_ioctl(struct cdev *cdev, int cmd, void *buf)
break;
case UBI_IOCMKVOL:
if (!req->bytes)
- req->bytes = ubi->avail_pebs * ubi->leb_size;
+ req->bytes = (__s64)ubi->avail_pebs * ubi->leb_size;
return ubi_create_volume(ubi, req);
};
--
1.9.0
More information about the barebox
mailing list