Re: [PATCH 2/2] chardev: showing minor range for chardev in the output of /proc/devices

From: cgxu519
Date: Tue Feb 12 2019 - 10:18:37 EST


On 2/12/19 5:02 PM, Greg KH wrote:
On Tue, Feb 12, 2019 at 04:47:39PM +0800, Chengguang Xu wrote:
Currently chardev allows to share major, showing
major with minor range for chardev will be more
helpful.

Signed-off-by: Chengguang Xu <cgxu519@xxxxxxx>
---
fs/char_dev.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/fs/char_dev.c b/fs/char_dev.c
index b25b1da097d5..6f00acdeb308 100644
--- a/fs/char_dev.c
+++ b/fs/char_dev.c
@@ -55,7 +55,9 @@ void chrdev_show(struct seq_file *f, off_t offset)
mutex_lock(&chrdevs_lock);
for (cd = chrdevs[major_to_index(offset)]; cd; cd = cd->next) {
if (cd->major == offset)
- seq_printf(f, "%3d %s\n", cd->major, cd->name);
+ seq_printf(f, "%3d %s (%u-%u)\n", cd->major, cd->name,
+ cd->baseminor,
+ cd->baseminor + cd->minorct - 1);
You are changing the format of a userspace file, what tools are going to
break when you do this?

I'll remove this part in V2. Do you have any idea how to get the minor
range info for particular major? Or adding a similar file to somewhere
under /sys is acceptable?

Thanks