[PATCH] regmap: kunit: Fix an NULL vs IS_ERR() check

From: Dan Carpenter
Date: Mon Apr 15 2024 - 06:35:12 EST


The kunit_device_register() function returns error pointers, not NULL.
Passing an error pointer to get_device() will lead to an Oops. Also
get_device() returns the same device you passed to it. Fix it! ;)

Fixes: 7b7982f14315 ("regmap: kunit: Create a struct device for the regmap")
Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
---
drivers/base/regmap/regmap-kunit.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/base/regmap/regmap-kunit.c b/drivers/base/regmap/regmap-kunit.c
index 44265dc2313d..9c5314785fc2 100644
--- a/drivers/base/regmap/regmap-kunit.c
+++ b/drivers/base/regmap/regmap-kunit.c
@@ -1925,10 +1925,10 @@ static int regmap_test_init(struct kunit *test)
test->priv = priv;

dev = kunit_device_register(test, "regmap_test");
- priv->dev = get_device(dev);
- if (!priv->dev)
- return -ENODEV;
+ if (IS_ERR(dev))
+ return PTR_ERR(dev);

+ priv->dev = get_device(dev);
dev_set_drvdata(dev, test);

return 0;
--
2.43.0