diff --git a/drivers/pci/hotplug/pciehp_ctrl.c b/drivers/pci/hotplug/pciehp_ctrl.c index 6855933ab37222e001cc9b0e09e02ac41107bd20..da7c72372ffcfc15bc706062baa1038c8681a318 100644 --- a/drivers/pci/hotplug/pciehp_ctrl.c +++ b/drivers/pci/hotplug/pciehp_ctrl.c @@ -211,6 +211,7 @@ void pciehp_handle_disable_request(struct slot *slot) case BLINKINGON_STATE: case BLINKINGOFF_STATE: cancel_delayed_work(&slot->work); + break; } slot->state = POWEROFF_STATE; mutex_unlock(&slot->lock); @@ -232,6 +233,7 @@ void pciehp_handle_presence_or_link_change(struct slot *slot, u32 events) switch (slot->state) { case BLINKINGOFF_STATE: cancel_delayed_work(&slot->work); + /* fall through */ case ON_STATE: slot->state = POWEROFF_STATE; mutex_unlock(&slot->lock); @@ -245,6 +247,7 @@ void pciehp_handle_presence_or_link_change(struct slot *slot, u32 events) break; default: mutex_unlock(&slot->lock); + break; } /* Turn the slot on if it's occupied or link is up */ @@ -259,6 +262,7 @@ void pciehp_handle_presence_or_link_change(struct slot *slot, u32 events) switch (slot->state) { case BLINKINGON_STATE: cancel_delayed_work(&slot->work); + /* fall through */ case OFF_STATE: slot->state = POWERON_STATE; mutex_unlock(&slot->lock); @@ -272,6 +276,7 @@ void pciehp_handle_presence_or_link_change(struct slot *slot, u32 events) break; default: mutex_unlock(&slot->lock); + break; } }