Thread (16 messages) 16 messages, 7 authors, 2021-05-04

Re: [RFC PATCH 1/2] block: export block_class and disk_type symbols

From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Date: 2021-05-03 04:48:36
Also in: linux-leds, lkml

On Sun, May 02, 2021 at 11:37:35PM -0300, Enzo Matsumiya wrote:
On 05/01, Greg Kroah-Hartman wrote:
quoted
On Fri, Apr 30, 2021 at 03:32:10PM -0300, Enzo Matsumiya wrote:
quoted
Export symbols to be used by _for_each_blk() helper in LED block
trigger.

Signed-off-by: Enzo Matsumiya <redacted>
---
 block/genhd.c | 2 ++
 1 file changed, 2 insertions(+)
diff --git a/block/genhd.c b/block/genhd.c
index 8c8f543572e6..516495179230 100644
--- a/block/genhd.c
+++ b/block/genhd.c
@@ -1218,6 +1218,7 @@ static void disk_release(struct device *dev)
 struct class block_class = {
 	.name		= "block",
 };
+EXPORT_SYMBOL(block_class);

 static char *block_devnode(struct device *dev, umode_t *mode,
 			   kuid_t *uid, kgid_t *gid)
@@ -1235,6 +1236,7 @@ const struct device_type disk_type = {
 	.release	= disk_release,
 	.devnode	= block_devnode,
 };
+EXPORT_SYMBOL(disk_type);

 #ifdef CONFIG_PROC_FS
 /*
Please please no.  These should not be needed by anything.

And if they really do, they must be EXPORT_SYMBOL_GPL().

thanks,

greg k-h
Thanks. I was indeed skeptical about submitting this particular change.

Do you think it's more acceptable if I implement a for_each_blk() helper
(cf. patch 2 on this series) on block code?

I couldn't find any other way to do this (get all block devices on the
system), so please let me know if I missed something.
Why would you want a list of all block devices in the system?  What are
you going to do with such a thing?  How does the block core handle other
random drivers getting references to the things it thinks it controls?

thanks,

greg k-h
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help