From: David Mosberger <davidm@napali.hpl.hp.com>
To: "David S. Miller" <davem@redhat.com>
Cc: davidm@hpl.hp.com, scott.feldman@intel.com,
linux-kernel@vger.kernel.org, netdev@oss.sgi.com
Subject: Re: [patch] e1000 TSO parameter
Date: Tue, 15 Jul 2003 16:01:55 -0700 [thread overview]
Message-ID: <16148.34787.633496.949441@napali.hpl.hp.com> (raw)
In-Reply-To: <20030714223822.23b78f9b.davem@redhat.com>
>>>>> On Mon, 14 Jul 2003 22:38:22 -0700, "David S. Miller" <davem@redhat.com> said:
DaveM> But I don't think that's what is happening here, rather the
DaveM> PCI controller is "talking" to the CPU's L2 cache with
DaveM> coherency transactions on all the data of every packet going
DaveM> to the chip.
That's true. But shouldn't it be true for both the TSO and non-TSO
case?
DaveM> Whereas with a sendfile() type setup, the PCI controller is
DaveM> going straight to main memory for the data part of the
DaveM> packets since the CPU is unlikely to have each page cache
DaveM> page in it's L2 caches.
But sendfile() was _not_ used in any of the tests. The ftp server
installed no the machine doesn't use it (not to my knowledge, at
least) and netperf only uses it for the SENDFILE test.
DaveM> I know how this can be fixed, can you use L2-bypassing stores
DaveM> in your csum_and_copy_from_user() and copy_from_user()
DaveM> implementations like we do on sparc64? That would exactly
DaveM> eliminate this situation where the card is talking to the
DaveM> cpu's L2 cache for all the data during the PCI DMA transation
DaveM> on the send side.
We could, but would it always be a win? Especially for
copy_from_user(). Most of the time, that data remains cached, so I
don't think we'd want to use non-temporal stores on those (in
general). csum_and_copy_from_user() isn't well optimized yet. Let's
see if I can find a volunteer... ;-)
--david
next prev parent reply other threads:[~2003-07-15 22:47 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-07-15 4:42 [patch] e1000 TSO parameter Feldman, Scott
2003-07-15 4:45 ` David S. Miller
2003-07-15 4:57 ` David Mosberger
2003-07-15 5:31 ` David Mosberger
2003-07-15 5:38 ` David S. Miller
2003-07-15 23:01 ` David Mosberger [this message]
2003-07-16 1:39 ` David S. Miller
2003-07-16 6:32 ` David Mosberger
2003-07-16 6:30 ` David S. Miller
2003-07-29 6:53 ` Anton Blanchard
2003-07-15 5:11 Feldman, Scott
2003-07-16 0:27 Feldman, Scott
2003-07-16 0:41 ` David Mosberger
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=16148.34787.633496.949441@napali.hpl.hp.com \
--to=davidm@napali.hpl.hp.com \
--cc=davem@redhat.com \
--cc=davidm@hpl.hp.com \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@oss.sgi.com \
--cc=scott.feldman@intel.com \
/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).