From: Jes Sorensen <jes@sunsite.dk>
To: "David S. Miller" <davem@redhat.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>,
bcrl@redhat.com (Ben LaHaise),
hiren_mehta@agilent.com ("MEHTA,HIREN (A-SanJose,ex1)"),
linux-kernel@vger.kernel.org ('linux-kernel@vger.kernel.org')
Subject: Re: (reposting) how to get DMA'able memory within 4GB on 64-bit m achi ne
Date: 06 Jul 2001 15:31:58 +0200 [thread overview]
Message-ID: <d3d77ew5dd.fsf@lxplus015.cern.ch> (raw)
In-Reply-To: <15164.18270.460245.219060@pizda.ninka.net> <E15Fv14-0008TB-00@the-village.bc.nu> <15164.59159.645521.383074@pizda.ninka.net> <d3pubfw0fi.fsf@lxplus015.cern.ch> <15172.64662.696505.761486@pizda.ninka.net>
In-Reply-To: "David S. Miller"'s message of "Thu, 5 Jul 2001 16:47:34 -0700 (PDT)"
>>>>> "David" == David S Miller <davem@redhat.com> writes:
David> Jes Sorensen writes:
>> The dma_mask in struct pci_dev tells you whether you are DAC
>> capable. We pass a pointer to this struct when we call the pci_*
>> functions so the required information needed to make the decision
>> whether to return a SAC or a DAC address is already available.
David> The decision is not based upon "device capable of DAC", that is
David> precisely my point.
I understand that, it's part of the equation.
David> The decision must be based upon a number of considerations.
David> 1) Can it do DAC
David> 2) Is DAC more efficient than SAC on this platform
That sounds to me like a 'static' decision at compile time or at least
something decided upon in the pci_* code as it will be the same for
all devices on the bus. If your IOMMU is very complex to program
compared to the overhead of DAC cycles you pick DAC etc.
David> 3) Does the devices _need_ DAC even if it is slower because it
David> requires referencing large portions of the DMA address space
David> simultaneously
Sure or because the IOMMU is starved. Most devices will do SAC/DAC
based on the address you throw at them, ie. it's perfectly valid to
mix and match DAC and SAC addresses handed to a device.
David> Sure, you could imply all of this complexity in the driver by
David> making them consider all of these issues when setting the mask,
David> but that isn't a nice interface at all.
David> And this still leaves the 64-bit dma_addr_t overhead issue.
The 64 bit dma_addr_t is only an issue on 32 bit architectures with
highmem enabled. I never suggested making dma_addr_t 64 bit on 32 bit
architectures as a general thing.
Jes
next prev parent reply other threads:[~2001-07-06 13:33 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-06-28 16:20 (reposting) how to get DMA'able memory within 4GB on 64-bit m achi ne MEHTA,HIREN (A-SanJose,ex1)
2001-06-28 19:41 ` Jes Sorensen
2001-06-28 22:01 ` David S. Miller
2001-06-28 22:20 ` Jes Sorensen
2001-06-28 22:27 ` David S. Miller
2001-06-28 22:28 ` Alan Cox
2001-07-02 8:09 ` Jens Axboe
2001-06-28 22:24 ` Ben LaHaise
2001-06-28 22:29 ` David S. Miller
2001-06-28 22:31 ` Ben LaHaise
2001-06-28 22:38 ` David S. Miller
2001-06-28 22:45 ` Ben LaHaise
2001-06-28 22:48 ` David S. Miller
2001-06-28 22:48 ` (reposting) how to get DMA'able memory within 4GB on 64-bit m Alan Cox
2001-06-28 22:55 ` (reposting) how to get DMA'able memory within 4GB on 64-bit m achi ne Jes Sorensen
2001-06-29 9:16 ` David S. Miller
2001-06-29 9:56 ` Alan Cox
2001-06-29 20:37 ` David S. Miller
2001-07-05 21:06 ` Jes Sorensen
2001-07-05 23:47 ` David S. Miller
2001-07-05 23:50 ` Ben LaHaise
2001-07-06 13:31 ` Jes Sorensen [this message]
2001-07-06 23:46 ` David S. Miller
2001-07-07 3:58 ` Ben LaHaise
2001-07-07 5:35 ` David S. Miller
2001-07-07 12:06 ` (reposting) how to get DMA'able memory within 4GB on 64-bit m Alan Cox
2001-07-07 12:17 ` Jeff Garzik
2001-07-07 12:21 ` Alan Cox
2001-07-07 13:00 ` David S. Miller
2001-07-11 19:16 ` Jes Sorensen
2001-07-11 21:54 ` Chris Wedgwood
2001-07-11 23:17 ` David S. Miller
2001-07-11 23:07 ` David S. Miller
2001-06-28 22:40 ` Alan Cox
2001-07-02 8:09 ` (reposting) how to get DMA'able memory within 4GB on 64-bit m achi ne Jens Axboe
2001-06-28 21:45 ` David S. Miller
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=d3d77ew5dd.fsf@lxplus015.cern.ch \
--to=jes@sunsite.dk \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=bcrl@redhat.com \
--cc=davem@redhat.com \
--cc=hiren_mehta@agilent.com \
--cc=linux-kernel@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