dmaengine: idxd: Fix the error handling path in idxd_cdev_register()
[ Upstream commit aab08c1aac01097815fbcf10fce7021d2396a31f ]
If a call to alloc_chrdev_region() fails, the already allocated resources
are leaking.
Add the needed error handling path to fix the leak.
Fixes: 42d279f913
("dmaengine: idxd: add char driver to expose submission portal to userland")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Acked-by: Dave Jiang <dave.jiang@intel.com>
Link: https://lore.kernel.org/r/1b5033dcc87b5f2a953c413f0306e883e6114542.1650521591.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:

committed by
Greg Kroah-Hartman

parent
f57696bc63
commit
6073af7815
@@ -266,10 +266,16 @@ int idxd_cdev_register(void)
|
||||
rc = alloc_chrdev_region(&ictx[i].devt, 0, MINORMASK,
|
||||
ictx[i].name);
|
||||
if (rc)
|
||||
return rc;
|
||||
goto err_free_chrdev_region;
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
err_free_chrdev_region:
|
||||
for (i--; i >= 0; i--)
|
||||
unregister_chrdev_region(ictx[i].devt, MINORMASK);
|
||||
|
||||
return rc;
|
||||
}
|
||||
|
||||
void idxd_cdev_remove(void)
|
||||
|
Reference in New Issue
Block a user