[PATCH] MODULE_ALIAS for md

From: Rusty Russell
Date: Wed Sep 03 2003 - 03:08:13 EST


Rather than hardcoded names in modprobe, modules can offer their own
aliases (which are overridden by config files).

Here are the drivers/md ones. Also uses try_then_request_module() to
clean up some request_module code.

Name: Module Aliases Inside Modules: md
Author: Rusty Russell
Status: Trivial

D: MODULE_ALIAS() macros for md. Also uses try_then_request_module in
D: dm_get_target_type().

diff -urpN --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff --minimal .12741-linux-2.6.0-test4-bk4/drivers/md/dm-target.c .12741-linux-2.6.0-test4-bk4.updated/drivers/md/dm-target.c
--- .12741-linux-2.6.0-test4-bk4/drivers/md/dm-target.c 2003-06-15 11:29:53.000000000 +1000
+++ .12741-linux-2.6.0-test4-bk4.updated/drivers/md/dm-target.c 2003-09-03 15:58:19.000000000 +1000
@@ -56,20 +56,11 @@ static struct tt_internal *get_target_ty
return ti;
}

-static void load_module(const char *name)
-{
- request_module("dm-%s", name);
-}
-
struct target_type *dm_get_target_type(const char *name)
{
- struct tt_internal *ti = get_target_type(name);
-
- if (!ti) {
- load_module(name);
- ti = get_target_type(name);
- }
+ struct tt_internal *ti;

+ ti = try_then_request_module(get_target_type(name), "dm-%s", name);
return ti ? &ti->tt : NULL;
}

diff -urpN --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff --minimal .12741-linux-2.6.0-test4-bk4/drivers/md/linear.c .12741-linux-2.6.0-test4-bk4.updated/drivers/md/linear.c
--- .12741-linux-2.6.0-test4-bk4/drivers/md/linear.c 2003-08-25 11:58:18.000000000 +1000
+++ .12741-linux-2.6.0-test4-bk4.updated/drivers/md/linear.c 2003-09-03 15:55:16.000000000 +1000
@@ -296,3 +296,4 @@ static void linear_exit (void)
module_init(linear_init);
module_exit(linear_exit);
MODULE_LICENSE("GPL");
+MODULE_ALIAS("md-personality-1"); /* LINEAR */
diff -urpN --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff --minimal .12741-linux-2.6.0-test4-bk4/drivers/md/multipath.c .12741-linux-2.6.0-test4-bk4.updated/drivers/md/multipath.c
--- .12741-linux-2.6.0-test4-bk4/drivers/md/multipath.c 2003-08-25 11:58:18.000000000 +1000
+++ .12741-linux-2.6.0-test4-bk4.updated/drivers/md/multipath.c 2003-09-03 15:55:16.000000000 +1000
@@ -509,3 +509,4 @@ static void __exit multipath_exit (void)
module_init(multipath_init);
module_exit(multipath_exit);
MODULE_LICENSE("GPL");
+MODULE_ALIAS("md-personality-7"); /* MULTIPATH */
diff -urpN --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff --minimal .12741-linux-2.6.0-test4-bk4/drivers/md/raid0.c .12741-linux-2.6.0-test4-bk4.updated/drivers/md/raid0.c
--- .12741-linux-2.6.0-test4-bk4/drivers/md/raid0.c 2003-09-03 09:55:15.000000000 +1000
+++ .12741-linux-2.6.0-test4-bk4.updated/drivers/md/raid0.c 2003-09-03 15:55:16.000000000 +1000
@@ -461,3 +461,4 @@ static void raid0_exit (void)
module_init(raid0_init);
module_exit(raid0_exit);
MODULE_LICENSE("GPL");
+MODULE_ALIAS("md-personality-2"); /* RAID0 */
diff -urpN --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff --minimal .12741-linux-2.6.0-test4-bk4/drivers/md/raid1.c .12741-linux-2.6.0-test4-bk4.updated/drivers/md/raid1.c
--- .12741-linux-2.6.0-test4-bk4/drivers/md/raid1.c 2003-08-25 11:58:18.000000000 +1000
+++ .12741-linux-2.6.0-test4-bk4.updated/drivers/md/raid1.c 2003-09-03 15:55:16.000000000 +1000
@@ -1197,3 +1197,4 @@ static void raid_exit(void)
module_init(raid_init);
module_exit(raid_exit);
MODULE_LICENSE("GPL");
+MODULE_ALIAS("md-personality-3"); /* RAID1 */
diff -urpN --exclude TAGS -X /home/rusty/devel/kernel/kernel-patches/current-dontdiff --minimal .12741-linux-2.6.0-test4-bk4/drivers/md/raid5.c .12741-linux-2.6.0-test4-bk4.updated/drivers/md/raid5.c
--- .12741-linux-2.6.0-test4-bk4/drivers/md/raid5.c 2003-09-03 09:55:15.000000000 +1000
+++ .12741-linux-2.6.0-test4-bk4.updated/drivers/md/raid5.c 2003-09-03 15:55:16.000000000 +1000
@@ -1780,3 +1780,4 @@ static void raid5_exit (void)
module_init(raid5_init);
module_exit(raid5_exit);
MODULE_LICENSE("GPL");
+MODULE_ALIAS("md-personality-4"); /* RAID5 */


--
Anyone who quotes me in their sig is an idiot. -- Rusty Russell.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/