diff options
author | Yu Kuai <yukuai3@huawei.com> | 2025-02-15 17:22:22 +0800 |
---|---|---|
committer | Yu Kuai <yukuai@kernel.org> | 2025-03-05 00:27:20 +0800 |
commit | 3d44e1d1575a877cf75a7776802506ce7ab8ecc4 (patch) | |
tree | 3b5602426431e5c68a1d1f2980faa8e59c32492f /drivers/md/raid0.c | |
parent | d3beb7c9c61d239e73cb93481b27c7b94130dd03 (diff) |
md: switch personalities to use md_submodule_head
Remove the global list 'pers_list', and switch to use md_submodule_head,
which is managed by xarry. Prepare to unify registration and unregistration
for all sub modules.
Link: https://lore.kernel.org/linux-raid/20250215092225.2427977-5-yukuai1@huaweicloud.com
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Diffstat (limited to 'drivers/md/raid0.c')
-rw-r--r-- | drivers/md/raid0.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/drivers/md/raid0.c b/drivers/md/raid0.c index 8fc9339b00c7..2aec92e6e0a9 100644 --- a/drivers/md/raid0.c +++ b/drivers/md/raid0.c @@ -811,9 +811,13 @@ static void raid0_quiesce(struct mddev *mddev, int quiesce) static struct md_personality raid0_personality= { - .name = "raid0", - .level = 0, - .owner = THIS_MODULE, + .head = { + .type = MD_PERSONALITY, + .id = ID_RAID0, + .name = "raid0", + .owner = THIS_MODULE, + }, + .make_request = raid0_make_request, .run = raid0_run, .free = raid0_free, @@ -824,14 +828,14 @@ static struct md_personality raid0_personality= .error_handler = raid0_error, }; -static int __init raid0_init (void) +static int __init raid0_init(void) { - return register_md_personality (&raid0_personality); + return register_md_submodule(&raid0_personality.head); } -static void raid0_exit (void) +static void __exit raid0_exit(void) { - unregister_md_personality (&raid0_personality); + unregister_md_submodule(&raid0_personality.head); } module_init(raid0_init); |