src/dpdk/drivers/net/cxgbe/cxgbe_filter.c
void cxgbe_hash_del_filter_rpl(struct adapter *adap,
			       const struct cpl_abort_rpl_rss *rpl)
{
	struct tid_info *t = &adap->tids;
	struct filter_entry *f;
	struct filter_ctx *ctx = NULL;
	unsigned int tid = GET_TID(rpl);

	f = lookup_tid(t, tid);
	if (!f) {
		dev_warn(adap, "%s: could not find filter entry: %u\n",
			 __func__, tid);
		return;
	}

	ctx = f->ctx;

	clear_filter(f);
	cxgbe_remove_tid(t, 0, tid, 0);
	t4_os_free(f);

	if (ctx) {
		ctx->result = 0;
		t4_complete(&ctx->completion);
	}
}
/**
 * Handle a Hash filter delete reply.
 */
Handle a Hash filter delete reply.
Handle a Hash filter delete reply .
void cxgbe_hash_del_filter_rpl(struct adapter *adap,
			       const struct cpl_abort_rpl_rss *rpl)
{
	struct tid_info *t = &adap->tids;
	struct filter_entry *f;
	struct filter_ctx *ctx = NULL;
	unsigned int tid = GET_TID(rpl);
	f = lookup_tid(t, tid);
	if (!f) {
		dev_warn(adap, "%s: could not find filter entry: %u\n",
			 __func__, tid);
		return;
	}
	ctx = f->ctx;
	clear_filter(f);
	cxgbe_remove_tid(t, 0, tid, 0);
	t4_os_free(f);
	if (ctx) {
		ctx->result = 0;
		t4_complete(&ctx->completion);
	}
}
void cxgbe_hash_del_filter_rpl ( struct adapter * adap , const struct cpl_abort_rpl_rss * rpl ) { struct tid_info * t = & adap -> tids ; struct filter_entry * f ; struct filter_ctx * ctx = NULL ; unsigned int tid = GET_TID ( rpl ) ; f = lookup_tid ( t , tid ) ; if ( ! f ) { dev_warn ( adap , " \n " , __func__ , tid ) ; return ; } ctx = f -> ctx ; clear_filter ( f ) ; cxgbe_remove_tid ( t , 0 , tid , 0 ) ; t4_os_free ( f ) ; if ( ctx ) { ctx -> result = 0 ; t4_complete ( & ctx -> completion ) ; } }
Handle a Hash filter delete reply.
Handle a Hash filter delete reply .