From: "Jeff V. Merkey" <jmerkey@wolfmountaingroup.com>
To: "Jeff V. Merkey" <jmerkey@soleranetworks.com>
Cc: Jesse Brandeburg <jesse.brandeburg@gmail.com>,
Linux kernel <linux-kernel@vger.kernel.org>,
NetDEV list <netdev@vger.kernel.org>
Subject: Re: e1000 driver 2.6.18 - how to waste processor cycles
Date: Thu, 09 Nov 2006 15:54:08 -0700 [thread overview]
Message-ID: <4553B190.2060700@wolfmountaingroup.com> (raw)
In-Reply-To: <4553B07A.6050002@soleranetworks.com>
Jeff V. Merkey wrote:
> 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.
>
Unmapping every single buffer in rx_irq the remapping them in
alloc_rx_buffers is wasteful of cycles.
Jeff
>>
>> 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/
>
prev parent reply other threads:[~2006-11-09 23:06 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <45524E3A.7080301@soleranetworks.com>
2006-11-09 1:01 ` e1000 driver 2.6.18 - how to waste processor cycles Jesse Brandeburg
2006-11-09 2:43 ` David Miller
2006-11-09 8:46 ` Jeffrey V. Merkey
2006-11-09 22:45 ` Jesse Brandeburg
2006-11-09 22:49 ` Jeff V. Merkey
2006-11-09 22:54 ` Jeff V. Merkey [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4553B190.2060700@wolfmountaingroup.com \
--to=jmerkey@wolfmountaingroup.com \
--cc=jesse.brandeburg@gmail.com \
--cc=jmerkey@soleranetworks.com \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).