diff options
author | Alexander Duyck <alexander.h.duyck@intel.com> | 2010-11-16 22:26:49 -0500 |
---|---|---|
committer | Jeff Kirsher <jeffrey.t.kirsher@intel.com> | 2010-11-16 22:26:49 -0500 |
commit | 84ea2591e4a24775c2735511a1cc3cf88edd249d (patch) | |
tree | f2189b6c1a5437639291eab40a34034e6f7f6c8f /drivers/net/ixgbe/ixgbe.h | |
parent | d5f398ed73522b9f76861af6553775c5851de0d0 (diff) |
ixgbe: drop ring->head, make ring->tail a pointer instead of offset
This change drops ring->head since it is not used in any hot-path and can
easily be determined using IXGBE_[RT]DH(ring->reg_idx).
It also changes ring->tail into a true pointer so we can avoid unnecessary
pointer math to find the location of the tail.
In addition I also dropped the setting of head and tail in
ixgbe_clean_[rx|tx]_ring. The only location that should be setting the head
and tail values is ixgbe_configure_[rx|tx]_ring and that is only while the
queue is disabled.
Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Tested-by: Ross Brattain <ross.b.brattain@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net/ixgbe/ixgbe.h')
-rw-r--r-- | drivers/net/ixgbe/ixgbe.h | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/net/ixgbe/ixgbe.h b/drivers/net/ixgbe/ixgbe.h index 149cf26b2545..c993fc3ab8a5 100644 --- a/drivers/net/ixgbe/ixgbe.h +++ b/drivers/net/ixgbe/ixgbe.h | |||
@@ -163,8 +163,7 @@ struct ixgbe_ring { | |||
163 | 163 | ||
164 | #define IXGBE_RING_RX_PS_ENABLED (u8)(1) | 164 | #define IXGBE_RING_RX_PS_ENABLED (u8)(1) |
165 | u8 flags; /* per ring feature flags */ | 165 | u8 flags; /* per ring feature flags */ |
166 | u16 head; | 166 | u8 __iomem *tail; |
167 | u16 tail; | ||
168 | 167 | ||
169 | unsigned int total_bytes; | 168 | unsigned int total_bytes; |
170 | unsigned int total_packets; | 169 | unsigned int total_packets; |