GIT: unionfs2-2.6.27.y: SCSI: enclosure: fix error path - actually return ERR_PTR() on error

Erez Zadok ezk at fsl.cs.sunysb.edu
Thu Aug 12 23:15:40 EDT 2010


commit a85ad775e7473d447dc5f9e35b0475ce17497cf3
Author: James Bottomley <James.Bottomley at suse.de>
Date:   Fri Mar 12 16:14:42 2010 -0600

    SCSI: enclosure: fix error path - actually return ERR_PTR() on error
    
    commit a91c1be21704113b023919826c6d531da46656ef upstream.
    
    we also need to clean up and free the cdev.
    
    Reported-by: Jani Nikula <ext-jani.1.nikula at nokia.com>
    Signed-off-by: James Bottomley <James.Bottomley at suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh at suse.de>

diff --git a/drivers/misc/enclosure.c b/drivers/misc/enclosure.c
index 0736cff..f57abe8 100644
--- a/drivers/misc/enclosure.c
+++ b/drivers/misc/enclosure.c
@@ -264,8 +264,11 @@ enclosure_component_register(struct enclosure_device *edev,
 	cdev->groups = enclosure_groups;
 
 	err = device_register(cdev);
-	if (err)
-		ERR_PTR(err);
+	if (err) {
+		ecomp->number = -1;
+		put_device(cdev);
+		return ERR_PTR(err);
+	}
 
 	return ecomp;
 }


More information about the unionfs-cvs mailing list