vfio-ccw: fix error return code in vfio_ccw_sch_init()
authorWei Yongjun <weiyongjun1@huawei.com>
Wed, 4 Sep 2019 08:33:15 +0000 (08:33 +0000)
committerVasily Gorbik <gor@linux.ibm.com>
Thu, 5 Sep 2019 13:18:15 +0000 (15:18 +0200)
Fix to return negative error code -ENOMEM from the memory alloc failed
error handling case instead of 0, as done elsewhere in this function.

Fixes: 60e05d1cf087 ("vfio-ccw: add some logging")
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Link https://lore.kernel.org/kvm/20190904083315.105600-1-weiyongjun1@huawei.com/
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
drivers/s390/cio/vfio_ccw_drv.c

index 45e792f..e401a3d 100644 (file)
@@ -317,15 +317,19 @@ static int __init vfio_ccw_sch_init(void)
                                        sizeof(struct ccw_io_region), 0,
                                        SLAB_ACCOUNT, 0,
                                        sizeof(struct ccw_io_region), NULL);
-       if (!vfio_ccw_io_region)
+       if (!vfio_ccw_io_region) {
+               ret = -ENOMEM;
                goto out_err;
+       }
 
        vfio_ccw_cmd_region = kmem_cache_create_usercopy("vfio_ccw_cmd_region",
                                        sizeof(struct ccw_cmd_region), 0,
                                        SLAB_ACCOUNT, 0,
                                        sizeof(struct ccw_cmd_region), NULL);
-       if (!vfio_ccw_cmd_region)
+       if (!vfio_ccw_cmd_region) {
+               ret = -ENOMEM;
                goto out_err;
+       }
 
        isc_register(VFIO_CCW_ISC);
        ret = css_driver_register(&vfio_ccw_sch_driver);