[S390] Fix smsgiucv init on no iucv machines
smsgiucv is a driver that relies on iucv to work properly. If iucv ans smsgiucv are compiled into the kernel and run on an lpar the following scenario happens: iucv is initialized early as a subsystem. It checks for z/VM and returns with EPROTONOTSUPPORT. Later smsgiucv tries to run driver_register with iucv_bus as bus. As this bus is not initialized the driver core and list debugging issue several warnings and oopses. Solution is to let smsgiucv also check for z/VM and return EPROTONOTSUPPORT as well. Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
parent
33583c3657
commit
0fc3ddd67a
1 changed files with 4 additions and 0 deletions
|
@ -148,6 +148,10 @@ static int __init smsg_init(void)
|
||||||
{
|
{
|
||||||
int rc;
|
int rc;
|
||||||
|
|
||||||
|
if (!MACHINE_IS_VM) {
|
||||||
|
rc = -EPROTONOSUPPORT;
|
||||||
|
goto out;
|
||||||
|
}
|
||||||
rc = driver_register(&smsg_driver);
|
rc = driver_register(&smsg_driver);
|
||||||
if (rc != 0)
|
if (rc != 0)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
Loading…
Add table
Reference in a new issue