default:
                flow->type = SMC_LLC_FLOW_NONE;
        }
-       if (qentry == lgr->delayed_event)
-               lgr->delayed_event = NULL;
        smc_llc_flow_qentry_set(flow, qentry);
        spin_unlock_bh(&lgr->llc_flow_lock);
        return true;
        struct smc_llc_qentry *qentry;
 
        if (!lgr->llc_flow_lcl.type && lgr->delayed_event) {
-               if (smc_link_usable(lgr->delayed_event->link)) {
-                       smc_llc_event_handler(lgr->delayed_event);
-               } else {
-                       qentry = lgr->delayed_event;
-                       lgr->delayed_event = NULL;
+               qentry = lgr->delayed_event;
+               lgr->delayed_event = NULL;
+               if (smc_link_usable(qentry->link))
+                       smc_llc_event_handler(qentry);
+               else
                        kfree(qentry);
-               }
        }
 
 again: