• Daniel Drake's avatar
    libertas: don't reset card on error when it is being removed · 9d5d496c
    Daniel Drake authored
    On an OLPC XO-1.5 we have seen the following situation:
     - the system starts going into suspend
     - no wake params are set, so the mmc layer removes the card
     - during remove, we send a command to the card
     - that command fails, causing if_sdio's reset method to try and remove
       the mmc card in attempt to reset it
     - the mmc layer is not happy about being asked to remove a card that
       it is already removing, and the kernel crashes
    
    While the MMC layer could possibly be taught to behave better here,
    it also seems sensible for libertas not to try and reset a card if
    we're in the process of removing it anyway.
    Signed-off-by: default avatarDaniel Drake <dsd@laptop.org>
    Acked-by: default avatarDan Williams <dcbw@redhat.com>
    Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
    9d5d496c
main.c 29.1 KB