staging/crystalhd: unregister chardev when class_create fails in chd_dec_init_chdev
PATCH 2/2 staging/crystalhd: unregister chardev when class_create fails in chd_dec_init_chdev
we missed a unregiser_chrdev if the class_create and subsequent function calls / checks fail
Signed-off-by Devendra Naga <[email protected]>
--- drivers/staging/crystalhd/crystalhd_lnx.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
drivers/staging/crystalhd/crystalhd_lnx.c +3 -1
@@ -375,7 +375,7 @@ static int __devinit chd_dec_init_chdev(struct crystalhd_adp *adp)if (IS_ERR (crystalhd_class)) { rc =PTR_ERR (crystalhd_class);BCMLOG_ERR ("failed to create class\n" ); - goto fail; + goto class_create_fail; } dev = device_create(crystalhd_class, NULL, MKDEV(adp->chd_dec_major, 0),
@@ -412,6 +412,8 @@ elem_pool_fail:device_destroy (crystalhd_class,MKDEV (adp->chd_dec_major,0 )); device_create_fail:class_destroy (crystalhd_class); +class_create_fail: +unregister_chrdev (adp->chd_dec_major,CRYSTALHD_API_NAME ); fail:return rc; }
Signature · 1 line
1.7.9.5