From ff3f07a74db9b7c4811eb881a6d0cac7f5176b0d Mon Sep 17 00:00:00 2001 From: Corentin Chary Date: Mon, 5 Jan 2009 14:48:59 +0100 Subject: [PATCH] --- yaml --- r: 130427 b: refs/heads/master c: a27ce8f55dd5fddf0b8ea179cce8f399c13dc94f h: refs/heads/master i: 130425: 7d9ad42502324689f07a59bad3bfb0da6a44d446 130423: 81f5669a7fe29499d7f85d0c9c76a9abffa019ec v: v3 --- [refs] | 2 +- trunk/drivers/mtd/ubi/cdev.c | 14 ++++++++++++++ trunk/include/mtd/ubi-user.h | 2 ++ 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 1f5e5bfe61b1..6a298385dc9a 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c3da23be1673be4e738aea235604b4e6cb259655 +refs/heads/master: a27ce8f55dd5fddf0b8ea179cce8f399c13dc94f diff --git a/trunk/drivers/mtd/ubi/cdev.c b/trunk/drivers/mtd/ubi/cdev.c index fd7e0f923b38..9ddbade72887 100644 --- a/trunk/drivers/mtd/ubi/cdev.c +++ b/trunk/drivers/mtd/ubi/cdev.c @@ -546,6 +546,20 @@ static int vol_cdev_ioctl(struct inode *inode, struct file *file, err = ubi_leb_unmap(desc, lnum); break; } + + /* Check if logical eraseblock is mapped command */ + case UBI_IOCEBISMAP: + { + int32_t lnum; + + err = get_user(lnum, (__user int32_t *)argp); + if (err) { + err = -EFAULT; + break; + } + err = ubi_is_mapped(desc, lnum); + break; + } #endif default: diff --git a/trunk/include/mtd/ubi-user.h b/trunk/include/mtd/ubi-user.h index ee2ea2e224af..5828d7879199 100644 --- a/trunk/include/mtd/ubi-user.h +++ b/trunk/include/mtd/ubi-user.h @@ -137,6 +137,8 @@ #define UBI_IOCEBMAP _IOW(UBI_VOL_IOC_MAGIC, 3, struct ubi_map_req) /* Unmap an eraseblock, used for debugging, disabled by default */ #define UBI_IOCEBUNMAP _IOW(UBI_VOL_IOC_MAGIC, 4, int32_t) +/* Check if an eraseblock is mapped, used for debugging, disabled by default */ +#define UBI_IOCEBISMAP _IOR(UBI_VOL_IOC_MAGIC, 5, int32_t) /* Maximum MTD device name length supported by UBI */ #define MAX_UBI_MTD_NAME_LEN 127