diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2019-10-24 19:40:42 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2019-12-31 12:37:21 +0100 |
commit | b7a6c8ec56d804daa10879fce35843fe84da0ea4 (patch) | |
tree | c9afb28a52799e0be56d4bffaefb99e8157bff34 /net | |
parent | 29bfb2ee16b765b2150e03453aed33ba47578c2c (diff) | |
download | linux-stable-b7a6c8ec56d804daa10879fce35843fe84da0ea4.tar.gz linux-stable-b7a6c8ec56d804daa10879fce35843fe84da0ea4.tar.bz2 linux-stable-b7a6c8ec56d804daa10879fce35843fe84da0ea4.zip |
rfkill: allocate static minor
[ Upstream commit 8670b2b8b029a6650d133486be9d2ace146fd29a ]
udev has a feature of creating /dev/<node> device-nodes if it finds
a devnode:<node> modalias. This allows for auto-loading of modules that
provide the node. This requires to use a statically allocated minor
number for misc character devices.
However, rfkill uses dynamic minor numbers and prevents auto-loading
of the module. So allocate the next static misc minor number and use
it for rfkill.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Link: https://lore.kernel.org/r/20191024174042.19851-1-marcel@holtmann.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'net')
-rw-r--r-- | net/rfkill/core.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/net/rfkill/core.c b/net/rfkill/core.c index 2064c3a35ef8..99a2e55b01cf 100644 --- a/net/rfkill/core.c +++ b/net/rfkill/core.c @@ -1312,10 +1312,12 @@ static const struct file_operations rfkill_fops = { .llseek = no_llseek, }; +#define RFKILL_NAME "rfkill" + static struct miscdevice rfkill_miscdev = { - .name = "rfkill", .fops = &rfkill_fops, - .minor = MISC_DYNAMIC_MINOR, + .name = RFKILL_NAME, + .minor = RFKILL_MINOR, }; static int __init rfkill_init(void) @@ -1367,3 +1369,6 @@ static void __exit rfkill_exit(void) class_unregister(&rfkill_class); } module_exit(rfkill_exit); + +MODULE_ALIAS_MISCDEV(RFKILL_MINOR); +MODULE_ALIAS("devname:" RFKILL_NAME); |