On 01/09/2011 12:00 AM, Gabor Juhos wrote: > Hi Ben, > >> From: Ben Greear<gree...@candelatech.com> >> >> This saves us constantly allocating large, multi-page >> skbs. It should fix the order-1 allocation errors reported, >> and in a 60-vif scenario, this significantly decreases CPU >> utilization, and latency, and increases bandwidth. >> >> Signed-off-by: Ben Greear<gree...@candelatech.com> >> --- >> :100644 100644 b2497b8... ea2f67c... M >> drivers/net/wireless/ath/ath9k/recv.c >> drivers/net/wireless/ath/ath9k/recv.c | 92 >> ++++++++++++++++++++++----------- >> 1 files changed, 61 insertions(+), 31 deletions(-) > > <...> > >> + if (use_copybreak) { >> + struct pci_dev *pdev = to_pci_dev(sc->dev); > > This would cause undefined behaviour with ath9k devices sitting on an AHB bus. > >> + pci_dma_sync_single_for_cpu(pdev, bf->bf_buf_addr, >> + len, PCI_DMA_FROMDEVICE); >> + skb_copy_from_linear_data(bf->bf_mpdu, skb->data, len); >> + pci_dma_sync_single_for_device(pdev, bf->bf_buf_addr, >> + len, PCI_DMA_FROMDEVICE); > > Please use the bus agnostic equivalents of these DMA functions.
Any idea what that might be? Should we just disable copybreak for things on AHB bus? Thanks, Ben -- Ben Greear <gree...@candelatech.com> Candela Technologies Inc http://www.candelatech.com _______________________________________________ ath9k-devel mailing list ath9k-devel@lists.ath9k.org https://lists.ath9k.org/mailman/listinfo/ath9k-devel