acpiphp_glue_exit() needs to be called to unwind when no slots found.
(It fixes data corruption when reloading acpiphp driver with no such devices)
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
        /* read initial number of slots */
        if (!retval) {
                num_slots = acpiphp_get_num_slots();
-               if (num_slots == 0)
+               if (num_slots == 0) {
+                       acpiphp_glue_exit();
                        retval = -ENODEV;
+               }
        }
 
        return retval;