* [PATCH 1/1] libata: Convert from module_init to subsys_initcall
@ 2006-10-24 14:14 Brian King
2006-11-08 20:07 ` Brian King
0 siblings, 1 reply; 2+ messages in thread
From: Brian King @ 2006-10-24 14:14 UTC (permalink / raw)
To: jgarzik; +Cc: linux-ide, brking
When building a monolithic kernel, the load order of drivers
does not work for SAS libata users, resulting in driver load
failures. Convert libata to use subsys_initcall instead of
module_init, which ensures that libata gets loaded before
any LLDD. This is the same thing that scsi core does
to solve the problem. The load order problem was observed on
ipr SAS adapters and should exist for other SAS users as well.
Signed-off-by: Brian King <brking@us.ibm.com>
---
linux-2.6-bjking1/drivers/ata/libata-core.c | 2 +-
1 files changed, 1 insertion(+), 1 deletion(-)
diff -puN drivers/ata/libata-core.c~libata_subsys_init drivers/ata/libata-core.c
--- linux-2.6/drivers/ata/libata-core.c~libata_subsys_init 2006-10-23 16:48:15.000000000 -0500
+++ linux-2.6-bjking1/drivers/ata/libata-core.c 2006-10-23 16:48:15.000000000 -0500
@@ -5957,7 +5957,7 @@ static void __exit ata_exit(void)
destroy_workqueue(ata_aux_wq);
}
-module_init(ata_init);
+subsys_initcall(ata_init);
module_exit(ata_exit);
static unsigned long ratelimit_time;
_
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH 1/1] libata: Convert from module_init to subsys_initcall
2006-10-24 14:14 [PATCH 1/1] libata: Convert from module_init to subsys_initcall Brian King
@ 2006-11-08 20:07 ` Brian King
0 siblings, 0 replies; 2+ messages in thread
From: Brian King @ 2006-11-08 20:07 UTC (permalink / raw)
To: jgarzik; +Cc: linux-ide
Jeff,
Any chance of pushing this into 2.6.19? I've been had several
people hit this oops.
Thanks,
Brian
Brian King wrote:
> When building a monolithic kernel, the load order of drivers
> does not work for SAS libata users, resulting in driver load
> failures. Convert libata to use subsys_initcall instead of
> module_init, which ensures that libata gets loaded before
> any LLDD. This is the same thing that scsi core does
> to solve the problem. The load order problem was observed on
> ipr SAS adapters and should exist for other SAS users as well.
>
> Signed-off-by: Brian King <brking@us.ibm.com>
> ---
>
> linux-2.6-bjking1/drivers/ata/libata-core.c | 2 +-
> 1 files changed, 1 insertion(+), 1 deletion(-)
>
> diff -puN drivers/ata/libata-core.c~libata_subsys_init drivers/ata/libata-core.c
> --- linux-2.6/drivers/ata/libata-core.c~libata_subsys_init 2006-10-23 16:48:15.000000000 -0500
> +++ linux-2.6-bjking1/drivers/ata/libata-core.c 2006-10-23 16:48:15.000000000 -0500
> @@ -5957,7 +5957,7 @@ static void __exit ata_exit(void)
> destroy_workqueue(ata_aux_wq);
> }
>
> -module_init(ata_init);
> +subsys_initcall(ata_init);
> module_exit(ata_exit);
>
> static unsigned long ratelimit_time;
> _
--
Brian King
eServer Storage I/O
IBM Linux Technology Center
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2006-11-08 20:26 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-10-24 14:14 [PATCH 1/1] libata: Convert from module_init to subsys_initcall Brian King
2006-11-08 20:07 ` Brian King
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).