LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Christoph Anton Mitterer <calestyo@scientia.net>
To: Robert Hancock <hancockr@shaw.ca>
Cc: linux-kernel@vger.kernel.org, cw@f00f.org, knweiss@gmx.de,
	ak@suse.de, andersen@codepoet.org, krader@us.ibm.com,
	lfriedman@nvidia.com, linux-nforce-bugs@nvidia.com
Subject: Re: data corruption with nvidia chipsets and IDE/SATA drives // memory hole mapping related bug?!
Date: Tue, 16 Jan 2007 14:54:32 +0100	[thread overview]
Message-ID: <45ACD918.2040204@scientia.net> (raw)
In-Reply-To: <45AC1AEB.60805@shaw.ca>

[-- Attachment #1: Type: text/plain, Size: 2748 bytes --]

Robert Hancock wrote:
>> What is that GART thing exactly? Is this the hardware IOMMU? I've always
>> thought GART was something graphics card related,.. but if so,.. how
>> could this solve our problem (that seems to occur mainly on harddisks)?
>>     
> The GART built into the Athlon 64/Opteron CPUs is normally used for 
> remapping graphics memory so that an AGP graphics card can see 
> physically non-contiguous memory as one contiguous region. However, 
> Linux can also use it as an IOMMU which allows devices which normally 
> can't access memory above 4GB to see a mapping of that memory that 
> resides below 4GB. In pre-2.6.20 kernels both the SATA and PATA 
> controllers on the nForce 4 chipsets can only access memory below 4GB so 
> transfers to memory above this mark have to go through the IOMMU. In 
> 2.6.20 this limitation is lifted on the nForce4 SATA controllers.
>   
Ah, I see. Thanks for that introduction :-)


>> Does this mean that PATA is no related? The corruption appears on PATA
>> disks to, so why should it only solve the issue at SATA disks? Sounds a
>> bit strange to me?
>>     
> The PATA controller will still be using 32-bit DMA and so may also use 
> the IOMMU, so this problem would not be avoided.
>   
>   
>> Can you explain this a little bit more please? Is this a drawback (like
>> a performance decrease)? Like under Windows where they never use the
>> hardware iommu but always do it via software?
>>     
>
> No, it shouldn't cause any performance loss. In previous kernels the 
> nForce4 SATA controller was controlled using an interface quite similar 
> to a PATA controller. In 2.6.20 kernels they use a more efficient 
> interface that NVidia calls ADMA, which in addition to supporting NCQ 
> also supports DMA without any 4GB limitations, so it can access all 
> memory directly without requiring IOMMU assistance.
>
> Note that if this corruption problem is, as has been suggested, related 
> to memory hole remapping and the IOMMU, then this change only prevents 
> the SATA controller transfers from experiencing this problem. Transfers 
> on the PATA controller as well as any other devices with 32-bit DMA 
> limitations might still have problems. As such this really just avoids 
> the problem, not fixes it.
>   
Ok,.. that sounds reasonable,.. so the whole thing might (!) actually be
a hardware design error,... but we just don't use that hardware any
longer when accessing devices via sata_nv.

So this doesn't solve our problem with PATA drives or other devices
(although we had until now no reports of errors with other devices) and
we have to stick with iommu=soft.

If one use iommu=soft the sata_nv will continue to use the new code for
the ADMA, right?


Best wishes,
Chris.

[-- Attachment #2: calestyo.vcf --]
[-- Type: text/x-vcard, Size: 156 bytes --]

begin:vcard
fn:Mitterer, Christoph Anton
n:Mitterer;Christoph Anton
email;internet:calestyo@scientia.net
x-mozilla-html:TRUE
version:2.1
end:vcard


  reply	other threads:[~2007-01-16 13:54 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <fa.E9jVXDLMKzMZNCbslzUxjMhsInE@ifi.uio.no>
2007-01-03 23:41 ` data corruption with nvidia chipsets and IDE/SATA drives // memory hole mapping related bug?! Robert Hancock
2007-01-15 22:56   ` Christoph Anton Mitterer
2007-01-15 23:05     ` Christoph Anton Mitterer
2007-01-16  0:23       ` Robert Hancock
2007-01-16 13:54         ` Christoph Anton Mitterer [this message]
2007-01-16 14:26           ` Robert Hancock
2007-01-16 18:01             ` data corruption with nvidia chipsets and IDE/SATA drives (k8 cpu errata needed?) Chris Wedgwood
2007-01-16 19:52               ` Christoph Anton Mitterer
2007-01-16 20:31                 ` Chris Wedgwood
2007-01-16 21:29                   ` Andi Kleen
2007-01-17  1:17                     ` Christoph Anton Mitterer
2007-01-17 14:48                     ` Chip Coldwell
2007-01-17 19:46                       ` Chip Coldwell
2007-01-17 22:15                       ` Andi Kleen
2007-01-18 21:57                         ` Chip Coldwell
2007-01-18 22:49                           ` Andi Kleen
2007-01-18  9:29                     ` joachim
2007-01-18 14:34                       ` Christoph Anton Mitterer
2007-01-18 16:42                       ` Chris Wedgwood
2007-01-18 11:00                     ` Erik Andersen
2007-01-18 14:43                       ` Christoph Anton Mitterer
2007-01-18 16:36                       ` Chris Wedgwood
2007-01-18 23:23                       ` Andi Kleen
2007-02-21 17:03                     ` Chip Coldwell
2007-01-16 21:54                   ` Allen Martin
2007-01-17  1:12                   ` Christoph Anton Mitterer
2007-01-16 20:16               ` Arkadiusz Miskiewicz
2007-01-16 20:21                 ` Christoph Anton Mitterer
2007-01-16 20:31               ` Krzysztof Halasa
2007-01-16 20:35                 ` Chris Wedgwood
2007-03-22 12:32     ` data corruption with nvidia chipsets and IDE/SATA drives // memory hole mapping related bug?! Christoph Anton Mitterer
2007-03-22 14:48 Dan Halbert
  -- strict thread matches above, loose matches on Subject: below --
2006-12-15 15:57 Paul Slootman
     [not found] <Pine.LNX.4.64.0612021202000.2981@addx.localnet>
2006-12-11  9:24 ` Karsten Weiss
2006-12-13 19:18   ` Christoph Anton Mitterer
2006-12-13 19:53     ` Chris Wedgwood
2006-12-13 20:34       ` Karsten Weiss
2006-12-14  9:22         ` Muli Ben-Yehuda
2006-12-23  2:04         ` Christoph Anton Mitterer
2006-12-23  2:56           ` John A Chaves
2006-12-23  3:26             ` Christoph Anton Mitterer
2006-12-13 19:20   ` Christoph Anton Mitterer
2006-12-13 19:54     ` Chris Wedgwood
2006-12-13 19:57       ` Christoph Anton Mitterer
2006-12-13 22:39         ` Lennart Sorensen
2006-12-13 23:00           ` Christoph Anton Mitterer
2006-12-13 19:53   ` Erik Andersen
2006-12-13 19:59     ` Karsten Weiss
2006-12-13 20:02       ` Christoph Anton Mitterer
2006-12-13 20:29   ` Erik Andersen
2006-12-13 20:32     ` Christoph Anton Mitterer
2006-12-13 23:33     ` Christoph Anton Mitterer
2006-12-14  9:24       ` Muli Ben-Yehuda
2006-12-14 19:23         ` Christoph Anton Mitterer
2006-12-14  9:23     ` Muli Ben-Yehuda
2006-12-14  9:52       ` Erik Andersen
2006-12-14  9:56         ` Muli Ben-Yehuda
2007-01-03 15:02     ` Christoph Anton Mitterer
2007-01-04 13:04     ` Christoph Anton Mitterer
2006-12-02  0:56 Christoph Anton Mitterer
2006-12-02  1:15 ` Erik Andersen
2006-12-02  1:28   ` Christoph Anton Mitterer
2006-12-02  5:17 ` Chris Wedgwood
2006-12-02 12:10   ` Christoph Anton Mitterer
     [not found]   ` <20061202111644.GF9995@vianova.fi>
2006-12-08  2:16     ` Christoph Anton Mitterer
2006-12-02 11:00 ` Karsten Weiss
2006-12-02 11:37   ` Alan
2006-12-02 11:39     ` Christoph Anton Mitterer
2006-12-13 18:52   ` Christoph Anton Mitterer
2006-12-13 19:56     ` Karsten Weiss
2006-12-13 20:11       ` Christoph Anton Mitterer
2006-12-14  9:34         ` Chris Wedgwood
2007-01-15 22:26           ` Christoph Anton Mitterer
2006-12-14 23:39 ` Dax Kelson

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=45ACD918.2040204@scientia.net \
    --to=calestyo@scientia.net \
    --cc=ak@suse.de \
    --cc=andersen@codepoet.org \
    --cc=cw@f00f.org \
    --cc=hancockr@shaw.ca \
    --cc=knweiss@gmx.de \
    --cc=krader@us.ibm.com \
    --cc=lfriedman@nvidia.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-nforce-bugs@nvidia.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).