From: hujianyang <hujianyang@huawei.com>
To: linux-mtd <linux-mtd@lists.infradead.org>
Cc: Bill Pringlemeir <bpringlemeir@nbsps.com>,
Artem Bityutskiy <dedekind1@gmail.com>
Subject: [PATCH RFC v2] UBI: New ioctl() to support ubidump
Date: Tue, 29 Jul 2014 17:26:13 +0800 [thread overview]
Message-ID: <53D768B5.6090409@huawei.com> (raw)
In-Reply-To: <53D7677A.6000905@huawei.com>
An ioctl() return pnum of a specified leb.
Signed-off-by: hujianyang <hujianyang@huawei.com>
---
drivers/mtd/ubi/cdev.c | 26 ++++++++++++++++++++++++++
include/uapi/mtd/ubi-user.h | 12 ++++++++++++
2 files changed, 38 insertions(+)
diff --git a/drivers/mtd/ubi/cdev.c b/drivers/mtd/ubi/cdev.c
index 7646220..6fa7346 100644
--- a/drivers/mtd/ubi/cdev.c
+++ b/drivers/mtd/ubi/cdev.c
@@ -581,6 +581,32 @@ static long vol_cdev_ioctl(struct file *file, unsigned int cmd,
break;
}
+ /* Get pnum of a specified leb command */
+ case UBI_IOCEBGETPNUM:
+ {
+ struct ubi_lnum2pnum_req req;
+ int pnum;
+
+ err = copy_from_user(&req, argp,
+ sizeof(struct ubi_lnum2pnum_req));
+ if (err) {
+ err = -EFAULT;
+ break;
+ }
+
+ err = ubi_is_mapped(desc, req.lnum);
+ if (err <= 0)
+ break;
+ pnum = vol->eba_tbl[req.lnum];
+ req.pnum = pnum;
+
+ err = copy_to_user(argp, &req,
+ sizeof(struct ubi_lnum2pnum_req));
+ if (err)
+ err = -EFAULT;
+ break;
+ }
+
default:
err = -ENOTTY;
break;
diff --git a/include/uapi/mtd/ubi-user.h b/include/uapi/mtd/ubi-user.h
index 1927b0d..fc41ddb 100644
--- a/include/uapi/mtd/ubi-user.h
+++ b/include/uapi/mtd/ubi-user.h
@@ -205,6 +205,8 @@
#define UBI_IOCVOLCRBLK _IOW(UBI_VOL_IOC_MAGIC, 7, struct ubi_blkcreate_req)
/* Remove the R/O block device */
#define UBI_IOCVOLRMBLK _IO(UBI_VOL_IOC_MAGIC, 8)
+/* Get pnum of a specified leb */
+#define UBI_IOCEBGETPNUM _IOW(UBI_VOL_IOC_MAGIC, 9, struct ubi_lnum2pnum_req)
/* Maximum MTD device name length supported by UBI */
#define MAX_UBI_MTD_NAME_LEN 127
@@ -442,4 +444,14 @@ struct ubi_blkcreate_req {
__s8 padding[128];
} __packed;
+/**
+ * struct ubi_lnum2pnum_req - a data structure used in lnum translate requests.
+ * @lnum: logical eraseblock num to translate
+ * @pnum: physical eraseblock num @lnum mapped
+ */
+struct ubi_lnum2pnum_req {
+ __s32 lnum;
+ __s32 pnum;
+} __packed;
+
#endif /* __UBI_USER_H__ */
--
1.8.1.4
next prev parent reply other threads:[~2014-07-29 9:27 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-29 9:20 [PATCH RFC v2] ubi-utils: Introduce a utility ubidump hujianyang
2014-07-29 9:26 ` hujianyang [this message]
2014-07-29 14:48 ` [PATCH RFC v2] UBI: New ioctl() to support ubidump Bill Pringlemeir
2014-07-30 2:01 ` hujianyang
2014-07-30 15:53 ` Bill Pringlemeir
2014-07-31 3:01 ` hujianyang
2014-07-31 13:24 ` Artem Bityutskiy
2014-08-01 2:50 ` hujianyang
2014-08-01 7:30 ` Artem Bityutskiy
2014-08-01 10:10 ` hujianyang
2014-08-01 15:35 ` Bill Pringlemeir
2014-08-04 3:54 ` hujianyang
2014-08-05 21:10 ` Bill Pringlemeir
2014-07-31 13:25 ` Artem Bityutskiy
2014-07-29 16:37 ` Richard Weinberger
2014-07-30 2:19 ` hujianyang
2014-07-29 9:31 ` [PATCH 1/5] ubi-utils: Add libdump files hujianyang
2014-07-29 9:35 ` [PATCH 2/5] ubi-utils: Enable lnum2pnum ioctl in userspace hujianyang
2014-07-29 9:41 ` [PATCH 3/5] ubi-utils: Introduce ubidump hujianyang
2014-07-29 9:43 ` [PATCH 4/5] ubi-utils: Add ubifs-media.h hujianyang
2014-07-29 9:45 ` [PATCH 5/5] ubi-utils: Modified Makefile hujianyang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=53D768B5.6090409@huawei.com \
--to=hujianyang@huawei.com \
--cc=bpringlemeir@nbsps.com \
--cc=dedekind1@gmail.com \
--cc=linux-mtd@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.