Messages in this thread | | | Date | Thu, 09 Nov 2006 15:49:30 -0700 | From | "Jeff V. Merkey" <> | Subject | Re: e1000 driver 2.6.18 - how to waste processor cycles |
| |
Jesse Brandeburg wrote:
> On 11/9/06, Jeffrey V. Merkey <jmerkey@soleranetworks.com> wrote: > >> In the case I am referring to, the memory is already mapped with a >> previous call, which means it may be getting >> mapped twice. > > > I guess maybe I'm not keeping up with you. This is what I see looking > in 2.6.18, i see e1000_clean_rx_irq:
Check e1000_alloc_rx_buffers:
if (skb already exists in ring buffer) goto map_skb: else dev_alloc_skb ( drop through to map_skb)
map_skb: pci_map_single
Jeff
> > check done bit > pci_unmap_single > copybreak and recycle > OR > hand buffer up stack > > the only branch before the unmap is the napi break out, and in that > case we don't change any memory state, so alloc will not do anything. > > As for alloc rx, we always map, because we always unmapped. > > Did I miss something? I would appreciate a more detailed explanation > of what you see going wrong. > >
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |