• Gerald Britton's avatar
    cciss: Fix pci_driver.shutdown while device is still active · e9ca75b5
    Gerald Britton authored
    Fix an Oops in the cciss driver caused by system shutdown while a filesystem
    on a cciss device is still active.  The cciss_remove_one function only
    properly removes the device if the device has been cleanly released by its
    users, which is not the case when the pci_driver.shutdown method is called.
    
    This patch adds a new cciss_shutdown function to better match the pattern
    used by various SCSI drivers: deactivate device interrupts and flush caches.
    It also alters the cciss_remove_one function to match and readds the
    __devexit annotation that was removed when cciss_remove_one was serving as
    the pci_driver.shutdown method.
    Signed-off-by: default avatarGerald Britton <gbritton@alum.mit.edu>
    Acked-by: default avatarMike Miller <mike.miller@hp.com>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    e9ca75b5
cciss.c 102 KB