@@ -1872,9 +1872,10 @@ static int writecache_ctr(struct dm_target *ti, unsigned argc, char **argv)
}
wc->dm_io = dm_io_client_create();
- if (!wc->dm_io) {
- r = -ENOMEM;
+ if (IS_ERR(wc->dm_io)) {
+ r = PTR_ERR(wc->dm_io);
ti->error = "Unable to allocate dm-io client";
+ wc->dm_io = NULL;
goto bad;
}
@@ -2096,9 +2097,10 @@ static int writecache_ctr(struct dm_target *ti, unsigned argc, char **argv)
}
wc->dm_kcopyd = dm_kcopyd_client_create(&dm_kcopyd_throttle);
- if (!wc->dm_kcopyd) {
- r = -ENOMEM;
+ if (IS_ERR(wc->dm_kcopyd)) {
+ r = PTR_ERR(wc->dm_kcopyd);
ti->error = "Unable to allocate dm-kcopyd client";
+ wc->dm_kcopyd = NULL;
goto bad;
}
Function dm_io_client_create() and dm_kcopyd_client_create() return ERR_PTR() not NULL in case of error. The NULL test in the return value check should be replaced with IS_ERR() Fixes: 2105231db61b ("dm: add writecache target") Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com> --- drivers/md/dm-writecache.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) -- dm-devel mailing list dm-devel@redhat.com https://www.redhat.com/mailman/listinfo/dm-devel