Loading net/rxrpc/ar-internal.h +0 −15 Original line number Original line Diff line number Diff line Loading @@ -617,21 +617,6 @@ struct rxrpc_call { unsigned short rx_pkt_offset; /* Current recvmsg packet offset */ unsigned short rx_pkt_offset; /* Current recvmsg packet offset */ unsigned short rx_pkt_len; /* Current recvmsg packet len */ unsigned short rx_pkt_len; /* Current recvmsg packet len */ /* Rx/Tx circular buffer, depending on phase. * * In the Rx phase, packets are annotated with 0 or the number of the * segment of a jumbo packet each buffer refers to. There can be up to * 47 segments in a maximum-size UDP packet. * * In the Tx phase, packets are annotated with which buffers have been * acked. */ #define RXRPC_RXTX_BUFF_SIZE 64 #define RXRPC_RXTX_BUFF_MASK (RXRPC_RXTX_BUFF_SIZE - 1) #define RXRPC_INIT_RX_WINDOW_SIZE 63 struct sk_buff **rxtx_buffer; u8 *rxtx_annotations; /* Transmitted data tracking. */ /* Transmitted data tracking. */ spinlock_t tx_lock; /* Transmit queue lock */ spinlock_t tx_lock; /* Transmit queue lock */ struct list_head tx_buffer; /* Buffer of transmissible packets */ struct list_head tx_buffer; /* Buffer of transmissible packets */ Loading net/rxrpc/call_object.c +0 −24 Original line number Original line Diff line number Diff line Loading @@ -129,16 +129,6 @@ struct rxrpc_call *rxrpc_alloc_call(struct rxrpc_sock *rx, gfp_t gfp, if (!call) if (!call) return NULL; return NULL; call->rxtx_buffer = kcalloc(RXRPC_RXTX_BUFF_SIZE, sizeof(struct sk_buff *), gfp); if (!call->rxtx_buffer) goto nomem; call->rxtx_annotations = kcalloc(RXRPC_RXTX_BUFF_SIZE, sizeof(u8), gfp); if (!call->rxtx_annotations) goto nomem_2; mutex_init(&call->user_mutex); mutex_init(&call->user_mutex); /* Prevent lockdep reporting a deadlock false positive between the afs /* Prevent lockdep reporting a deadlock false positive between the afs Loading Loading @@ -183,12 +173,6 @@ struct rxrpc_call *rxrpc_alloc_call(struct rxrpc_sock *rx, gfp_t gfp, call->rtt_avail = RXRPC_CALL_RTT_AVAIL_MASK; call->rtt_avail = RXRPC_CALL_RTT_AVAIL_MASK; atomic_inc(&rxnet->nr_calls); atomic_inc(&rxnet->nr_calls); return call; return call; nomem_2: kfree(call->rxtx_buffer); nomem: kmem_cache_free(rxrpc_call_jar, call); return NULL; } } /* /* Loading Loading @@ -516,12 +500,6 @@ void rxrpc_get_call(struct rxrpc_call *call, enum rxrpc_call_trace op) */ */ static void rxrpc_cleanup_ring(struct rxrpc_call *call) static void rxrpc_cleanup_ring(struct rxrpc_call *call) { { int i; for (i = 0; i < RXRPC_RXTX_BUFF_SIZE; i++) { rxrpc_free_skb(call->rxtx_buffer[i], rxrpc_skb_cleaned); call->rxtx_buffer[i] = NULL; } skb_queue_purge(&call->recvmsg_queue); skb_queue_purge(&call->recvmsg_queue); skb_queue_purge(&call->rx_oos_queue); skb_queue_purge(&call->rx_oos_queue); } } Loading Loading @@ -658,8 +636,6 @@ static void rxrpc_destroy_call(struct work_struct *work) rxrpc_put_connection(call->conn); rxrpc_put_connection(call->conn); rxrpc_put_peer(call->peer); rxrpc_put_peer(call->peer); kfree(call->rxtx_buffer); kfree(call->rxtx_annotations); kmem_cache_free(rxrpc_call_jar, call); kmem_cache_free(rxrpc_call_jar, call); if (atomic_dec_and_test(&rxnet->nr_calls)) if (atomic_dec_and_test(&rxnet->nr_calls)) wake_up_var(&rxnet->nr_calls); wake_up_var(&rxnet->nr_calls); Loading Loading
net/rxrpc/ar-internal.h +0 −15 Original line number Original line Diff line number Diff line Loading @@ -617,21 +617,6 @@ struct rxrpc_call { unsigned short rx_pkt_offset; /* Current recvmsg packet offset */ unsigned short rx_pkt_offset; /* Current recvmsg packet offset */ unsigned short rx_pkt_len; /* Current recvmsg packet len */ unsigned short rx_pkt_len; /* Current recvmsg packet len */ /* Rx/Tx circular buffer, depending on phase. * * In the Rx phase, packets are annotated with 0 or the number of the * segment of a jumbo packet each buffer refers to. There can be up to * 47 segments in a maximum-size UDP packet. * * In the Tx phase, packets are annotated with which buffers have been * acked. */ #define RXRPC_RXTX_BUFF_SIZE 64 #define RXRPC_RXTX_BUFF_MASK (RXRPC_RXTX_BUFF_SIZE - 1) #define RXRPC_INIT_RX_WINDOW_SIZE 63 struct sk_buff **rxtx_buffer; u8 *rxtx_annotations; /* Transmitted data tracking. */ /* Transmitted data tracking. */ spinlock_t tx_lock; /* Transmit queue lock */ spinlock_t tx_lock; /* Transmit queue lock */ struct list_head tx_buffer; /* Buffer of transmissible packets */ struct list_head tx_buffer; /* Buffer of transmissible packets */ Loading
net/rxrpc/call_object.c +0 −24 Original line number Original line Diff line number Diff line Loading @@ -129,16 +129,6 @@ struct rxrpc_call *rxrpc_alloc_call(struct rxrpc_sock *rx, gfp_t gfp, if (!call) if (!call) return NULL; return NULL; call->rxtx_buffer = kcalloc(RXRPC_RXTX_BUFF_SIZE, sizeof(struct sk_buff *), gfp); if (!call->rxtx_buffer) goto nomem; call->rxtx_annotations = kcalloc(RXRPC_RXTX_BUFF_SIZE, sizeof(u8), gfp); if (!call->rxtx_annotations) goto nomem_2; mutex_init(&call->user_mutex); mutex_init(&call->user_mutex); /* Prevent lockdep reporting a deadlock false positive between the afs /* Prevent lockdep reporting a deadlock false positive between the afs Loading Loading @@ -183,12 +173,6 @@ struct rxrpc_call *rxrpc_alloc_call(struct rxrpc_sock *rx, gfp_t gfp, call->rtt_avail = RXRPC_CALL_RTT_AVAIL_MASK; call->rtt_avail = RXRPC_CALL_RTT_AVAIL_MASK; atomic_inc(&rxnet->nr_calls); atomic_inc(&rxnet->nr_calls); return call; return call; nomem_2: kfree(call->rxtx_buffer); nomem: kmem_cache_free(rxrpc_call_jar, call); return NULL; } } /* /* Loading Loading @@ -516,12 +500,6 @@ void rxrpc_get_call(struct rxrpc_call *call, enum rxrpc_call_trace op) */ */ static void rxrpc_cleanup_ring(struct rxrpc_call *call) static void rxrpc_cleanup_ring(struct rxrpc_call *call) { { int i; for (i = 0; i < RXRPC_RXTX_BUFF_SIZE; i++) { rxrpc_free_skb(call->rxtx_buffer[i], rxrpc_skb_cleaned); call->rxtx_buffer[i] = NULL; } skb_queue_purge(&call->recvmsg_queue); skb_queue_purge(&call->recvmsg_queue); skb_queue_purge(&call->rx_oos_queue); skb_queue_purge(&call->rx_oos_queue); } } Loading Loading @@ -658,8 +636,6 @@ static void rxrpc_destroy_call(struct work_struct *work) rxrpc_put_connection(call->conn); rxrpc_put_connection(call->conn); rxrpc_put_peer(call->peer); rxrpc_put_peer(call->peer); kfree(call->rxtx_buffer); kfree(call->rxtx_annotations); kmem_cache_free(rxrpc_call_jar, call); kmem_cache_free(rxrpc_call_jar, call); if (atomic_dec_and_test(&rxnet->nr_calls)) if (atomic_dec_and_test(&rxnet->nr_calls)) wake_up_var(&rxnet->nr_calls); wake_up_var(&rxnet->nr_calls); Loading