• Johannes Berg's avatar
    iwlwifi: mvm: check time-event vif to avoid bad deletion · 00fd233a
    Johannes Berg authored
    The time event is initialized relatively late in interface (mvmvif)
    initialization, so it's possible to fail before that happens. As a
    consequence, the driver will crash if it ever tries to delete this
    time event in case initialization was unsuccessful.
    
    Avoid this by using the time event's vif pointer to indicate validity.
    The vif pointer is != NULL whenever the id is != TE_MAX, except for
    this special error case where the vif pointer will have the correct
    property (as the whole memory is cleared on allocation) whereas the
    id is 0, causing a crash in trying to delete the time event from the
    list.
    Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
    Signed-off-by: default avatarEmmanuel Grumbach <emmanuel.grumbach@intel.com>
    00fd233a
time-event.c 26.6 KB