• Borislav Petkov's avatar
    amd64_edac: Fix driver module removal · 00740c58
    Borislav Petkov authored
    f4347553 removed the edac polling
    mechanism in favor of using a notifier chain for conveying MCE
    information to edac. However, the module removal path didn't test
    whether the driver had setup the polling function workqueue at all and
    the rmmod process was hanging in the kernel at try_to_del_timer_sync()
    in the cancel_delayed_work() path, trying to cancel an uninitialized
    work struct.
    
    Fix that by adding a balancing check to the workqueue removal path.
    Signed-off-by: default avatarBorislav Petkov <borislav.petkov@amd.com>
    00740c58
edac_mc.c 23.3 KB