diff options
author | Sebastian Ott <sebott@linux.vnet.ibm.com> | 2009-06-12 04:26:38 -0400 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2009-06-12 04:27:36 -0400 |
commit | 736e6ea0bf97ec79521f88704ce8506e5d60d078 (patch) | |
tree | 3bfa8317f4c3161bfe86163b8ab87613d629ba7d /drivers/s390/block/dasd_fba.c | |
parent | 92636b152f3b58e459988934f689619af9e04dbc (diff) |
[S390] dasd: sync after async probe
Some functions called as a late_initcall depend on completely
initialized devices. Since commit
f3445a1a656bc26b07946cc6d20de1ef07c8d116 the dasd driver uses the
new async framework and relies on the fact that synchronization is
done in prepare_namespace which is called after the late_initcalls.
Fix this by calling async_synchronize_full at the end of the related
init functions.
Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers/s390/block/dasd_fba.c')
-rw-r--r-- | drivers/s390/block/dasd_fba.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/s390/block/dasd_fba.c b/drivers/s390/block/dasd_fba.c index 8c3c8ffbc8bf..597c6ffdb9f2 100644 --- a/drivers/s390/block/dasd_fba.c +++ b/drivers/s390/block/dasd_fba.c | |||
@@ -604,8 +604,14 @@ static struct dasd_discipline dasd_fba_discipline = { | |||
604 | static int __init | 604 | static int __init |
605 | dasd_fba_init(void) | 605 | dasd_fba_init(void) |
606 | { | 606 | { |
607 | int ret; | ||
608 | |||
607 | ASCEBC(dasd_fba_discipline.ebcname, 4); | 609 | ASCEBC(dasd_fba_discipline.ebcname, 4); |
608 | return ccw_driver_register(&dasd_fba_driver); | 610 | ret = ccw_driver_register(&dasd_fba_driver); |
611 | if (!ret) | ||
612 | wait_for_device_probe(); | ||
613 | |||
614 | return ret; | ||
609 | } | 615 | } |
610 | 616 | ||
611 | static void __exit | 617 | static void __exit |