瀏覽代碼

skge: rearrange fields

Do some minor rearrangement of data structures to try and optimize
cache usage.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Stephen Hemminger 18 年之前
父節點
當前提交
3f0dec7f60
共有 1 個文件被更改,包括 5 次插入4 次删除
  1. 5 4
      drivers/net/skge.h

+ 5 - 4
drivers/net/skge.h

@@ -2446,15 +2446,15 @@ enum pause_status {
 
 
 
 
 struct skge_port {
 struct skge_port {
-	u32		     msg_enable;
 	struct skge_hw	     *hw;
 	struct skge_hw	     *hw;
 	struct net_device    *netdev;
 	struct net_device    *netdev;
 	int		     port;
 	int		     port;
+	u32		     msg_enable;
 
 
 	struct skge_ring     tx_ring;
 	struct skge_ring     tx_ring;
-	struct skge_ring     rx_ring;
 
 
-	struct net_device_stats net_stats;
+	struct skge_ring     rx_ring ____cacheline_aligned_in_smp;
+	unsigned int	     rx_buf_size;
 
 
 	struct timer_list    link_timer;
 	struct timer_list    link_timer;
 	enum pause_control   flow_control;
 	enum pause_control   flow_control;
@@ -2470,7 +2470,8 @@ struct skge_port {
 	void		     *mem;	/* PCI memory for rings */
 	void		     *mem;	/* PCI memory for rings */
 	dma_addr_t	     dma;
 	dma_addr_t	     dma;
 	unsigned long	     mem_size;
 	unsigned long	     mem_size;
-	unsigned int	     rx_buf_size;
+
+	struct net_device_stats net_stats;
 };
 };