Hi Jesse, Brandeburg, Jesse wrote: > On Wed, 24 Sep 2008, Breno Leitao wrote: > Thanks for the report, I think this patch should fix it. Please test and > let us know. This was compile tested only. I just tested this patch and it fixed that problem.
Thanks > ---- > > From: Jesse Brandeburg <[EMAIL PROTECTED]> > > ixgb: fix bug when freeing resources > > It was pointed out by Breno Leitao <[EMAIL PROTECTED]> that > ixgb would crash on PPC when an IOMMU was in use, if change_mtu was > called. > > It appears to be a pretty simple issue in the driver that wasn't discovered > because most systems don't run with an IOMMU. The driver needs to only unmap > buffers that are mapped (duh). > > CC: Breno Leitao <[EMAIL PROTECTED]> > > Signed-off-by: Jesse Brandeburg <[EMAIL PROTECTED]> > --- > drivers/net/ixgb/ixgb_main.c | 8 +++++--- > 1 files changed, 5 insertions(+), 3 deletions(-) > > diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c > index aa75385..be3c7dc 100644 > --- a/drivers/net/ixgb/ixgb_main.c > +++ b/drivers/net/ixgb/ixgb_main.c > @@ -977,15 +977,17 @@ ixgb_clean_rx_ring(struct ixgb_adapter *adapter) > > for (i = 0; i < rx_ring->count; i++) { > buffer_info = &rx_ring->buffer_info[i]; > - if (buffer_info->skb) { > - > + if (buffer_info->dma) { > pci_unmap_single(pdev, > buffer_info->dma, > buffer_info->length, > PCI_DMA_FROMDEVICE); > + buffer_info->dma = 0; > + buffer_info->length = 0; > + } > > + if (buffer_info->skb) { > dev_kfree_skb(buffer_info->skb); > - > buffer_info->skb = NULL; > } > } > ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ E1000-devel mailing list E1000-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/e1000-devel