sparc64: Fix bootup crash on sun4v.
authorDavid S. Miller <davem@davemloft.net>
Fri, 13 Apr 2012 18:56:22 +0000 (11:56 -0700)
committerLuis Henriques <luis.henriques@canonical.com>
Mon, 30 Apr 2012 18:15:07 +0000 (19:15 +0100)
BugLink: http://bugs.launchpad.net/bugs/987337

commit 9e0daff30fd7ecf698e5d20b0fa7f851e427cca5 upstream.

The DS driver registers as a subsys_initcall() but this can be too
early, in particular this risks registering before we've had a chance
to allocate and setup module_kset in kernel/params.c which is
performed also as a subsyts_initcall().

Register DS using device_initcall() insteal.

Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>

arch/sparc/kernel/ds.c

index 381edcd..27728e1 100644 (file)
@@ -1267,4 +1267,4 @@ static int __init ds_init(void)
        return vio_register_driver(&ds_driver);
 }
 
        return vio_register_driver(&ds_driver);
 }
 
-subsys_initcall(ds_init);
+fs_initcall(ds_init);