From: Daniela Engert <dani@ngrt.de>
To: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Cc: Mikulas Patocka <mpatocka@redhat.com>,
David Miller <davem@davemloft.net>,
linux-ide@vger.kernel.org, elendil@planet.nl
Subject: Re: [PATCH] Serialize CMD643 and CMD646 to fix a hardware bug with SSD
Date: Fri, 23 Oct 2009 17:18:44 +0200 [thread overview]
Message-ID: <4AE1C954.8030707@ngrt.de> (raw)
In-Reply-To: <200910231703.33206.bzolnier@gmail.com>
Bartlomiej Zolnierkiewicz schrieb:
> On Friday 23 October 2009 16:55:59 Mikulas Patocka wrote:
>
>> On Fri, 23 Oct 2009, Bartlomiej Zolnierkiewicz wrote:
>>
>>
>>> On Friday 23 October 2009 16:29:16 Mikulas Patocka wrote:
>>>
>>>>> We are through this the second time and you're still not willing
>>>>> neither to listen nor to read the code. We always did serialization
>>>>> for CMD646, we just used hwif->chipset == ide_cmd646 (without using
>>>>> IDE_HFLAG_SERIALIZE flag):
>>>>>
>>>>
>>>>> Agreed, though I wonder whether we should also provide module parameter to
>>>>> disable serializing on those chipsets for people not using SSDs...
>>>>>
>>>> Don't do it --- disks have cache and reading from the cache is as fast as
>>>> reading from SSD (or even faster), so if there is some speed-race in the
>>>> chip, there is a possibility that the data corruption happens with disks
>>>> too --- just with lower probability.
>>>>
>>>> If we don't know why the chip corrupts data, we must treat it as always
>>>> corrupting data.
>>>>
>>> I actually suspect that it is device/chipset specific interaction and not
>>> generic problem so adding a fallback option (w/ BIG FAT WARNING) seem to
>>> make sense..
>>>
>> So, why was it serialized before? I assume that either someone noticed the
>> corruption or someone read some datasheet noting the corruption or someone
>> reverse engineered some other driver and saw the serialization.
>>
> Serialization is usually needed in case of chipset not handling concurrent
> data transfers on both ports. Unfortunately I don't know details for CMD646.
>
Guys, this is old news. CMD643 and CMD646 have a shared data path from
the PCI interface to the ATA channel ports. In a document issued by CMD,
they explain the requirement for serialization. This issue is rectified
with CMD648 and later chips.
>
>>> Especially since we have never serialized on CMD643 and your patch will
>>> be adding performance regression without even verifying that the issue
>>> also affects this chipset..
>>>
>> Do you have this chip? If you were IDE maintainer, did you collect cards
>> with IDE chips?
>>
> I recall having CMD648 and CMD649 cards somewhere, however not earlier
> chipsets.
>
>
next prev parent reply other threads:[~2009-10-23 15:18 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-21 18:55 [PATCH] Serialize CMD643 and CMD646 to fix a hardware bug with SSD Mikulas Patocka
2009-10-21 19:34 ` Mikael Pettersson
2009-10-21 23:01 ` Mikulas Patocka
2009-10-27 11:34 ` Alan Cox
2009-10-28 1:10 ` Mikulas Patocka
2009-10-21 19:39 ` Bartlomiej Zolnierkiewicz
2009-10-22 0:41 ` David Miller
2009-10-22 9:44 ` Bartlomiej Zolnierkiewicz
2009-10-22 11:00 ` David Miller
2009-10-22 11:15 ` Bartlomiej Zolnierkiewicz
2009-10-22 11:20 ` David Miller
2009-10-23 14:29 ` Mikulas Patocka
2009-10-23 14:31 ` David Miller
2009-10-23 14:44 ` Bartlomiej Zolnierkiewicz
2009-10-23 14:55 ` Mikulas Patocka
2009-10-23 15:03 ` Bartlomiej Zolnierkiewicz
2009-10-23 15:18 ` Daniela Engert [this message]
2009-10-23 16:51 ` Alan Cox
2009-10-23 17:27 ` Sergei Shtylyov
2009-10-23 18:22 ` Alan Cox
2009-10-23 18:52 ` Bartlomiej Zolnierkiewicz
2009-10-24 3:24 ` David Miller
2009-10-24 12:38 ` Bartlomiej Zolnierkiewicz
2009-10-24 12:58 ` David Miller
2009-10-24 13:13 ` Bartlomiej Zolnierkiewicz
2009-10-24 13:20 ` David Miller
2009-10-26 11:36 ` Mikulas Patocka
2009-10-26 12:18 ` Alan Cox
2009-11-05 1:25 ` [PATCH] Don't use UDMA on VIA UDMA33 controller with Transcend SSD Mikulas Patocka
2009-11-05 10:40 ` Alan Cox
2009-11-05 22:18 ` Mikulas Patocka
2009-11-05 22:46 ` Alan Cox
2009-11-05 23:19 ` Mikulas Patocka
2009-11-17 12:30 ` David Miller
2009-11-18 17:09 ` Mikulas Patocka
2009-11-18 17:22 ` Alan Cox
2009-11-18 17:32 ` David Miller
2009-11-18 17:46 ` Mikulas Patocka
2009-11-18 17:53 ` David Miller
2009-11-18 18:04 ` Mikulas Patocka
2009-11-18 17:37 ` Mikulas Patocka
2009-11-18 17:50 ` Alan Cox
2009-11-18 18:02 ` Mikulas Patocka
2011-10-11 17:12 ` Bartlomiej Zolnierkiewicz
2011-10-11 19:05 ` David Miller
2011-10-11 19:39 ` Alan Cox
2011-10-12 14:38 ` Bartlomiej Zolnierkiewicz
2011-10-12 17:59 ` Alan Cox
2011-10-13 10:35 ` Bartlomiej Zolnierkiewicz
2010-01-14 15:49 ` Bartlomiej Zolnierkiewicz
2010-01-14 19:24 ` Alan Cox
2010-01-14 20:17 ` Bartlomiej Zolnierkiewicz
2009-10-23 17:15 ` [PATCH] Serialize CMD643 and CMD646 to fix a hardware bug with SSD Alan Cox
2009-10-22 13:56 ` Alan Cox
2009-10-23 1:30 ` David Miller
2009-10-23 14:50 ` Mikulas Patocka
2009-10-23 20:50 ` Sergei Shtylyov
2009-10-26 11:30 ` Mikulas Patocka
2009-10-26 18:20 ` Sergei Shtylyov
2009-10-24 11:28 ` Frans Pop
2009-10-24 11:31 ` David Miller
2009-10-25 2:48 ` Frans Pop
2009-10-29 10:02 ` David 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=4AE1C954.8030707@ngrt.de \
--to=dani@ngrt.de \
--cc=bzolnier@gmail.com \
--cc=davem@davemloft.net \
--cc=elendil@planet.nl \
--cc=linux-ide@vger.kernel.org \
--cc=mpatocka@redhat.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.