[PATCH 4/8] ASoC: soc-card-test: Check return value of kunit_device_register()
From: Amadeusz Sławiński
Date: Wed Oct 14 2026 - 16:06:38 EST
Call to kunit_device_register() can fail. Check return result of
register call. While at it introduce helper variable so that if it fails
put_device is called on properly initialized variable.
Fixes: ef7784e41db7 ("ASoC: soc-card: Add KUnit test case for snd_soc_card_get_kcontrol")
Signed-off-by: Amadeusz Sławiński <amade@xxxxxxxxxx>
---
sound/soc/soc-card-test.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/sound/soc/soc-card-test.c b/sound/soc/soc-card-test.c
index 47dfd8b1babc..610b8220786d 100644
--- a/sound/soc/soc-card-test.c
+++ b/sound/soc/soc-card-test.c
@@ -70,6 +70,7 @@ static void test_snd_soc_card_get_kcontrol(struct kunit *test)
static int soc_card_test_case_init(struct kunit *test)
{
struct soc_card_test_priv *priv;
+ struct device *dev;
int ret;
priv = kunit_kzalloc(test, sizeof(*priv), GFP_KERNEL);
@@ -82,8 +83,10 @@ static int soc_card_test_case_init(struct kunit *test)
if (!priv->card)
return -ENOMEM;
- priv->card_dev = kunit_device_register(test, "sound-soc-card-test");
- priv->card_dev = get_device(priv->card_dev);
+ dev = kunit_device_register(test, "sound-soc-card-test");
+ if (IS_ERR(dev))
+ return PTR_ERR(dev);
+ priv->card_dev = get_device(dev);
if (!priv->card_dev)
return -ENODEV;
--
2.56.0