diff options
Diffstat (limited to 'net/rxrpc/ar-error.c')
| -rw-r--r-- | net/rxrpc/ar-error.c | 10 | 
1 files changed, 2 insertions, 8 deletions
diff --git a/net/rxrpc/ar-error.c b/net/rxrpc/ar-error.c index d4d1ae26d29..db57458c824 100644 --- a/net/rxrpc/ar-error.c +++ b/net/rxrpc/ar-error.c @@ -81,12 +81,9 @@ void rxrpc_UDP_error_report(struct sock *sk)  			_net("I/F MTU %u", mtu);  		} -		/* ip_rt_frag_needed() may have eaten the info */ -		if (mtu == 0) -			mtu = ntohs(icmp_hdr(skb)->un.frag.mtu); -  		if (mtu == 0) {  			/* they didn't give us a size, estimate one */ +			mtu = peer->if_mtu;  			if (mtu > 1500) {  				mtu >>= 1;  				if (mtu < 1500) @@ -139,7 +136,7 @@ void rxrpc_UDP_error_handler(struct work_struct *work)  	struct rxrpc_transport *trans =  		container_of(work, struct rxrpc_transport, error_handler);  	struct sk_buff *skb; -	int local, err; +	int err;  	_enter(""); @@ -157,7 +154,6 @@ void rxrpc_UDP_error_handler(struct work_struct *work)  	switch (ee->ee_origin) {  	case SO_EE_ORIGIN_ICMP: -		local = 0;  		switch (ee->ee_type) {  		case ICMP_DEST_UNREACH:  			switch (ee->ee_code) { @@ -207,7 +203,6 @@ void rxrpc_UDP_error_handler(struct work_struct *work)  	case SO_EE_ORIGIN_LOCAL:  		_proto("Rx Received local error { error=%d }",  		       ee->ee_errno); -		local = 1;  		break;  	case SO_EE_ORIGIN_NONE: @@ -215,7 +210,6 @@ void rxrpc_UDP_error_handler(struct work_struct *work)  	default:  		_proto("Rx Received error report { orig=%u }",  		       ee->ee_origin); -		local = 0;  		break;  	}  | 
