input.c (2c55d703391acf7e9101da596d0c15ee03b318a3) | input.c (a343b174b4bdde851033996960bca5ad1394d04b) |
---|---|
1// SPDX-License-Identifier: GPL-2.0-or-later 2/* Processing of received RxRPC packets 3 * 4 * Copyright (C) 2020 Red Hat, Inc. All Rights Reserved. 5 * Written by David Howells (dhowells@redhat.com) 6 */ 7 8#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt 9 10#include "ar-internal.h" 11 12static void rxrpc_proto_abort(const char *why, 13 struct rxrpc_call *call, rxrpc_seq_t seq) 14{ | 1// SPDX-License-Identifier: GPL-2.0-or-later 2/* Processing of received RxRPC packets 3 * 4 * Copyright (C) 2020 Red Hat, Inc. All Rights Reserved. 5 * Written by David Howells (dhowells@redhat.com) 6 */ 7 8#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt 9 10#include "ar-internal.h" 11 12static void rxrpc_proto_abort(const char *why, 13 struct rxrpc_call *call, rxrpc_seq_t seq) 14{ |
15 if (rxrpc_abort_call(why, call, seq, RX_PROTOCOL_ERROR, -EBADMSG)) 16 rxrpc_send_abort_packet(call); | 15 rxrpc_abort_call(why, call, seq, RX_PROTOCOL_ERROR, -EBADMSG); |
17} 18 19/* 20 * Do TCP-style congestion management [RFC 5681]. 21 */ 22static void rxrpc_congestion_management(struct rxrpc_call *call, 23 struct sk_buff *skb, 24 struct rxrpc_ack_summary *summary, --- 977 unchanged lines hidden (view full) --- 1002 1003 switch (READ_ONCE(call->state)) { 1004 case RXRPC_CALL_SERVER_AWAIT_ACK: 1005 rxrpc_call_completed(call); 1006 fallthrough; 1007 case RXRPC_CALL_COMPLETE: 1008 break; 1009 default: | 16} 17 18/* 19 * Do TCP-style congestion management [RFC 5681]. 20 */ 21static void rxrpc_congestion_management(struct rxrpc_call *call, 22 struct sk_buff *skb, 23 struct rxrpc_ack_summary *summary, --- 977 unchanged lines hidden (view full) --- 1001 1002 switch (READ_ONCE(call->state)) { 1003 case RXRPC_CALL_SERVER_AWAIT_ACK: 1004 rxrpc_call_completed(call); 1005 fallthrough; 1006 case RXRPC_CALL_COMPLETE: 1007 break; 1008 default: |
1010 if (rxrpc_abort_call("IMP", call, 0, RX_CALL_DEAD, -ESHUTDOWN)) 1011 rxrpc_send_abort_packet(call); | 1009 rxrpc_abort_call("IMP", call, 0, RX_CALL_DEAD, -ESHUTDOWN); |
1012 trace_rxrpc_improper_term(call); 1013 break; 1014 } 1015 1016 rxrpc_input_call_event(call, skb); 1017 1018 spin_lock(&conn->bundle->channel_lock); 1019 __rxrpc_disconnect_call(conn, call); 1020 spin_unlock(&conn->bundle->channel_lock); 1021} | 1010 trace_rxrpc_improper_term(call); 1011 break; 1012 } 1013 1014 rxrpc_input_call_event(call, skb); 1015 1016 spin_lock(&conn->bundle->channel_lock); 1017 __rxrpc_disconnect_call(conn, call); 1018 spin_unlock(&conn->bundle->channel_lock); 1019} |