diff options
Diffstat (limited to 'net/rxrpc')
-rw-r--r-- | net/rxrpc/ar-input.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/net/rxrpc/ar-input.c b/net/rxrpc/ar-input.c index 529572f18d1f..eb7e16276cc1 100644 --- a/net/rxrpc/ar-input.c +++ b/net/rxrpc/ar-input.c | |||
@@ -606,8 +606,10 @@ dead_call: | |||
606 | } | 606 | } |
607 | 607 | ||
608 | _debug("dead call"); | 608 | _debug("dead call"); |
609 | skb->priority = RX_CALL_DEAD; | 609 | if (sp->hdr.type != RXRPC_PACKET_TYPE_ABORT) { |
610 | rxrpc_reject_packet(conn->trans->local, skb); | 610 | skb->priority = RX_CALL_DEAD; |
611 | rxrpc_reject_packet(conn->trans->local, skb); | ||
612 | } | ||
611 | goto done; | 613 | goto done; |
612 | 614 | ||
613 | /* resend last packet of a completed call | 615 | /* resend last packet of a completed call |
@@ -790,8 +792,10 @@ cant_route_call: | |||
790 | skb->priority = RX_CALL_DEAD; | 792 | skb->priority = RX_CALL_DEAD; |
791 | } | 793 | } |
792 | 794 | ||
793 | _debug("reject"); | 795 | if (sp->hdr.type != RXRPC_PACKET_TYPE_ABORT) { |
794 | rxrpc_reject_packet(local, skb); | 796 | _debug("reject type %d",sp->hdr.type); |
797 | rxrpc_reject_packet(local, skb); | ||
798 | } | ||
795 | rxrpc_put_local(local); | 799 | rxrpc_put_local(local); |
796 | _leave(" [no call]"); | 800 | _leave(" [no call]"); |
797 | return; | 801 | return; |