ASoC: soc-card-test: Check return value of kunit_device_register()

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: ef7784e41d ("ASoC: soc-card: Add KUnit test case for snd_soc_card_get_kcontrol")
Signed-off-by: Amadeusz Sławiński <amade@asmblr.net>
Link: https://patch.msgid.link/20261014200608.118770-5-amade@asmblr.net
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Amadeusz Sławiński 2026-10-14 22:06:04 +02:00 committed by Mark Brown
parent 1641c1ba27
commit 77dfd98b16
No known key found for this signature in database
GPG Key ID: 2FEF73B0B3D03889

View File

@ -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;