diff options
author | Auke Kok <auke-jan.h.kok@intel.com> | 2007-10-25 16:57:44 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2007-10-29 05:47:08 -0400 |
commit | 47f44e40a3c12f8604aba9288d7a7f991cbf17ba (patch) | |
tree | 0531dd3d7501a519946046d2cf18d596bcb4d903 /drivers/net/e1000e/e1000.h | |
parent | e38c2c651a038b78fd01cf2e3f3a65cacf0e41cc (diff) |
e1000e: Fix jumbo frame receive code.
Fix allocation and freeing of jumbo frames where several bugs
were recently introduced by cleanups after we forked this code
from e1000. This moves ps_pages to buffer_info where it really
belongs and makes it a dynamically allocated array. The penalty
is not that high since it's allocated outside of the buffer_info
struct anyway.
Without this patch all jumbo frames are completely broken and the
driver panics.
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/net/e1000e/e1000.h')
-rw-r--r-- | drivers/net/e1000e/e1000.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/e1000e/e1000.h b/drivers/net/e1000e/e1000.h index d2499bb07c13..811eada595a1 100644 --- a/drivers/net/e1000e/e1000.h +++ b/drivers/net/e1000e/e1000.h | |||
@@ -123,6 +123,8 @@ struct e1000_buffer { | |||
123 | }; | 123 | }; |
124 | /* RX */ | 124 | /* RX */ |
125 | struct page *page; | 125 | struct page *page; |
126 | /* arrays of page information for packet split */ | ||
127 | struct e1000_ps_page *ps_pages; | ||
126 | }; | 128 | }; |
127 | 129 | ||
128 | }; | 130 | }; |
@@ -142,8 +144,6 @@ struct e1000_ring { | |||
142 | /* array of buffer information structs */ | 144 | /* array of buffer information structs */ |
143 | struct e1000_buffer *buffer_info; | 145 | struct e1000_buffer *buffer_info; |
144 | 146 | ||
145 | /* arrays of page information for packet split */ | ||
146 | struct e1000_ps_page *ps_pages; | ||
147 | struct sk_buff *rx_skb_top; | 147 | struct sk_buff *rx_skb_top; |
148 | 148 | ||
149 | struct e1000_queue_stats stats; | 149 | struct e1000_queue_stats stats; |