diff options
author | Alexander Duyck <alexander.h.duyck@intel.com> | 2012-09-25 02:31:02 +0200 |
---|---|---|
committer | Jeff Kirsher <jeffrey.t.kirsher@intel.com> | 2012-10-19 13:30:25 +0200 |
commit | cbc8e55f6fdae27b667051b36040f66768ef79f2 (patch) | |
tree | b8bc5e6391da51786627aaa55d79fa384bb8b47a /drivers/net/ethernet/intel/igb/igb.h | |
parent | igb: Combine post-processing of skb into a single function (diff) | |
download | linux-cbc8e55f6fdae27b667051b36040f66768ef79f2.tar.xz linux-cbc8e55f6fdae27b667051b36040f66768ef79f2.zip |
igb: Map entire page and sync half instead of mapping and unmapping half pages
This change makes it so that we map the entire page and just sync half of
it for the device at a time. The advantage to this approach is that we can
avoid the locking on map/unmap seen in many IOMMU implementations.
Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net/ethernet/intel/igb/igb.h')
-rw-r--r-- | drivers/net/ethernet/intel/igb/igb.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ethernet/intel/igb/igb.h b/drivers/net/ethernet/intel/igb/igb.h index 72ab9ac34a30..1d15bb0b1e91 100644 --- a/drivers/net/ethernet/intel/igb/igb.h +++ b/drivers/net/ethernet/intel/igb/igb.h @@ -239,6 +239,7 @@ struct igb_ring { /* everything past this point are written often */ u16 next_to_clean ____cacheline_aligned_in_smp; u16 next_to_use; + u16 next_to_alloc; union { /* TX */ |