FreeBSD/sys/dev/mrsas/mrsas.c
/*
 * mrsas_complete_aen:	Completes AEN command
 * input:				Adapter soft state
 * 						Cmd that was issued to abort another cmd
 *
 * This function will be called from ISR and will continue event processing from
 * thread context by enqueuing task in ev_tq (callback function
 * "mrsas_aen_handler").
 */
Completes AEN command
input:                               Adapter soft state
Cmd that was issued to abort another cmd

This function will be called from ISR and will continue event processing from
thread context by enqueuing task in ev_tq (callback function
"mrsas_aen_handler").
Completes AEN command input : Adapter soft state Cmd that was issued to abort another cmd This function will be called from ISR and will continue event processing from thread context by enqueuing task in ev_tq ( callback function " mrsas_aen_handler " ) .
void
mrsas_complete_aen(struct mrsas_softc *sc, struct mrsas_mfi_cmd *cmd)
{
	if ((!cmd->abort_aen) && (sc->remove_in_progress == 0)) {
		sc->mrsas_aen_triggered = 1;
		mtx_lock(&sc->aen_lock);
		if (sc->mrsas_poll_waiting) {
			sc->mrsas_poll_waiting = 0;
			selwakeup(&sc->mrsas_select);
		}
		mtx_unlock(&sc->aen_lock);
	} else
		cmd->abort_aen = 0;
	sc->aen_cmd = NULL;
	mrsas_release_mfi_cmd(cmd);
	if (!sc->remove_in_progress)
		taskqueue_enqueue(sc->ev_tq, &sc->ev_task);
	return;
}
void mrsas_complete_aen ( struct mrsas_softc * sc , struct mrsas_mfi_cmd * cmd ) { if ( ( ! cmd -> abort_aen ) && ( sc -> remove_in_progress == 0 ) ) { sc -> mrsas_aen_triggered = 1 ; mtx_lock ( & sc -> aen_lock ) ; if ( sc -> mrsas_poll_waiting ) { sc -> mrsas_poll_waiting = 0 ; selwakeup ( & sc -> mrsas_select ) ; } mtx_unlock ( & sc -> aen_lock ) ; } else cmd -> abort_aen = 0 ; sc -> aen_cmd = NULL ; mrsas_release_mfi_cmd ( cmd ) ; if ( ! sc -> remove_in_progress ) taskqueue_enqueue ( sc -> ev_tq , & sc -> ev_task ) ; return ; }
mrsas_complete_aen:  Completes AEN command
 input:                               Adapter soft state
                                              Cmd that was issued to abort another cmd
mrsas_complete_aen : Completes AEN command input : Adapter soft state Cmd that was issued to abort another cmd
/*
	 * Don't signal app if it is just an aborted previously registered
	 * aen
	 */