|
@@ -1465,6 +1465,13 @@ static int peer_abort(struct t3cdev *tdev, struct sk_buff *skb, void *ctx)
|
|
|
int ret;
|
|
|
int state;
|
|
|
|
|
|
+ if (is_neg_adv_abort(req->status)) {
|
|
|
+ PDBG("%s neg_adv_abort ep %p tid %d\n", __FUNCTION__, ep,
|
|
|
+ ep->hwtid);
|
|
|
+ t3_l2t_send_event(ep->com.tdev, ep->l2t);
|
|
|
+ return CPL_RET_BUF_DONE;
|
|
|
+ }
|
|
|
+
|
|
|
/*
|
|
|
* We get 2 peer aborts from the HW. The first one must
|
|
|
* be ignored except for scribbling that we need one more.
|
|
@@ -1474,13 +1481,6 @@ static int peer_abort(struct t3cdev *tdev, struct sk_buff *skb, void *ctx)
|
|
|
return CPL_RET_BUF_DONE;
|
|
|
}
|
|
|
|
|
|
- if (is_neg_adv_abort(req->status)) {
|
|
|
- PDBG("%s neg_adv_abort ep %p tid %d\n", __FUNCTION__, ep,
|
|
|
- ep->hwtid);
|
|
|
- t3_l2t_send_event(ep->com.tdev, ep->l2t);
|
|
|
- return CPL_RET_BUF_DONE;
|
|
|
- }
|
|
|
-
|
|
|
state = state_read(&ep->com);
|
|
|
PDBG("%s ep %p state %u\n", __FUNCTION__, ep, state);
|
|
|
switch (state) {
|