Anders Grafström wrote: >>>> David Acker wrote: >>>>> What is the status of this patch? >>>> >>>> Jeff merged it in netdev-2.6#upstream so it is queued for 2.6.25. > > The e100 driver broke in 2.6.25 on the ixp4xx based platform I'm using. > This patch seems to be the cause. > > It appears to work again with pci_dma_sync_single_for_device() restored. > So I'm wondering if the patch below would be valid and correct? > > Anders > > diff --git a/drivers/net/e100.c b/drivers/net/e100.c > index f3cba5e..1037b13 100644 > --- a/drivers/net/e100.c > +++ b/drivers/net/e100.c > @@ -1803,6 +1803,8 @@ static int e100_rx_alloc_skb(struct nic *nic, > struct rx *rx) > if (rx->prev->skb) { > struct rfd *prev_rfd = (struct rfd *)rx->prev->skb->data; > put_unaligned_le32(rx->dma_addr, &prev_rfd->link); > + pci_dma_sync_single_for_device(nic->pdev, rx->prev->dma_addr, > + sizeof(struct rfd), PCI_DMA_TODEVICE); > } > > return 0; > --
Acked-by: David Acker <[EMAIL PROTECTED]> I got a chance to test this patch on both a Compulab CM-X255 and a Gateworks Avila GW2348-4. It seems to work fine with little to no performance hit. I will give it some longer tests over this week. If I run into any problems I will report them here. Thanks to Anders and Kevin Hao who posted a similar patch. -Ack ------------------------------------------------------------------------- Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 _______________________________________________ E1000-devel mailing list E1000-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/e1000-devel