}
 
        subsys = nvmet_subsys_alloc(name, NVME_NQN_NVME);
-       if (!subsys)
-               return ERR_PTR(-ENOMEM);
+       if (IS_ERR(subsys))
+               return ERR_CAST(subsys);
 
        config_group_init_type_name(&subsys->group, name, &nvmet_subsys_type);
 
 
 
        subsys = kzalloc(sizeof(*subsys), GFP_KERNEL);
        if (!subsys)
-               return NULL;
+               return ERR_PTR(-ENOMEM);
 
        subsys->ver = NVME_VS(1, 3, 0); /* NVMe 1.3.0 */
        /* generate a random serial number as our controllers are ephemeral: */
        default:
                pr_err("%s: Unknown Subsystem type - %d\n", __func__, type);
                kfree(subsys);
-               return NULL;
+               return ERR_PTR(-EINVAL);
        }
        subsys->type = type;
        subsys->subsysnqn = kstrndup(subsysnqn, NVMF_NQN_SIZE,
                        GFP_KERNEL);
        if (!subsys->subsysnqn) {
                kfree(subsys);
-               return NULL;
+               return ERR_PTR(-ENOMEM);
        }
 
        kref_init(&subsys->ref);
 
 {
        nvmet_disc_subsys =
                nvmet_subsys_alloc(NVME_DISC_SUBSYS_NAME, NVME_NQN_DISC);
-       if (!nvmet_disc_subsys)
-               return -ENOMEM;
+       if (IS_ERR(nvmet_disc_subsys))
+               return PTR_ERR(nvmet_disc_subsys);
        return 0;
 }