diff options
Diffstat (limited to 'include/net')
| -rw-r--r-- | include/net/red.h | 4 | ||||
| -rw-r--r-- | include/net/xdp_sock.h | 4 | ||||
| -rw-r--r-- | include/net/xsk_buff_pool.h | 5 | 
3 files changed, 8 insertions, 5 deletions
| diff --git a/include/net/red.h b/include/net/red.h index fc455445f4b2..932f0d79d60c 100644 --- a/include/net/red.h +++ b/include/net/red.h @@ -168,12 +168,14 @@ static inline void red_set_vars(struct red_vars *v)  	v->qcount	= -1;  } -static inline bool red_check_params(u32 qth_min, u32 qth_max, u8 Wlog) +static inline bool red_check_params(u32 qth_min, u32 qth_max, u8 Wlog, u8 Scell_log)  {  	if (fls(qth_min) + Wlog > 32)  		return false;  	if (fls(qth_max) + Wlog > 32)  		return false; +	if (Scell_log >= 32) +		return false;  	if (qth_max < qth_min)  		return false;  	return true; diff --git a/include/net/xdp_sock.h b/include/net/xdp_sock.h index 4f4e93bf814c..cc17bc957548 100644 --- a/include/net/xdp_sock.h +++ b/include/net/xdp_sock.h @@ -58,10 +58,6 @@ struct xdp_sock {  	struct xsk_queue *tx ____cacheline_aligned_in_smp;  	struct list_head tx_list; -	/* Mutual exclusion of NAPI TX thread and sendmsg error paths -	 * in the SKB destructor callback. -	 */ -	spinlock_t tx_completion_lock;  	/* Protects generic receive. */  	spinlock_t rx_lock; diff --git a/include/net/xsk_buff_pool.h b/include/net/xsk_buff_pool.h index 01755b838c74..eaa8386dbc63 100644 --- a/include/net/xsk_buff_pool.h +++ b/include/net/xsk_buff_pool.h @@ -73,6 +73,11 @@ struct xsk_buff_pool {  	bool dma_need_sync;  	bool unaligned;  	void *addrs; +	/* Mutual exclusion of the completion ring in the SKB mode. Two cases to protect: +	 * NAPI TX thread and sendmsg error paths in the SKB destructor callback and when +	 * sockets share a single cq when the same netdev and queue id is shared. +	 */ +	spinlock_t cq_lock;  	struct xdp_buff_xsk *free_heads[];  }; |