All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeremy Higdon <jeremy@sgi.com>
To: "Dailey, Nate" <Nate.Dailey@stratus.com>
Cc: linux-ide@vger.kernel.org
Subject: Re: sata_vsc.c cache line size question
Date: Sun, 14 Jan 2007 00:03:01 -0800	[thread overview]
Message-ID: <20070114080301.GD61246@sgi.com> (raw)
In-Reply-To: <92952AEF1F064042B6EF2522E0EEF43703EE316A@EXNA.corp.stratus.com>

On Fri, Jan 12, 2007 at 02:45:23PM -0500, Dailey, Nate wrote:
> Hoping someone on this list might shed some light on this...
> 
> I was investigating a problem of poor sequential write performance
> (IOmeter, various size sequential writes) with an embedded Vitesse 7174,
> maxing out (with disk write cache on) at around 10 MB/s...
> 
> After noticing that Windows on the same hardware was using 0x10 for the
> cache line size, but Linux was using 0x80, I tried removing the
> following from sata_vsc.c:
> 
> 381         /*
> 382          * Due to a bug in the chip, the default cache line size
> can't be used
> 383          */
> 384         pci_write_config_byte(pdev, PCI_CACHE_LINE_SIZE, 0x80);
> 
> Now, with cache line size the same as Windows, Linux is doing more like
> 43 MB/s.
> 
> Just wondering what the deal with this "bug in the chip" might be, since
> for me it seems that the default cache line size is better? If there's a
> real bug, I don't want to do anything dangerous by removing this code
> (though I've heard--haven't seen the code--that the Windows driver
> doesn't touch the cache line size, nor does the Linux non-libata
> reference driver from Vitesse).


The problem is that it can't be zero, which is the default value
after reset.

So I suppose the driver should be modified to set it to 0x80 only
if it's 0.  I believe that most PCI implementations will set it in
the BIOS or whatever.

Care to send a patch?

jeremy

  reply	other threads:[~2007-01-14  8:03 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-01-12 19:45 sata_vsc.c cache line size question Dailey, Nate
2007-01-14  8:03 ` Jeremy Higdon [this message]
2007-01-14 14:47   ` Alan
2007-01-14 18:21     ` Jeff Garzik
  -- strict thread matches above, loose matches on Subject: below --
2007-01-15 16:26 Dailey, Nate
2007-01-18  7:11 ` Jeremy Higdon
2007-01-18 14:42 Dailey, Nate
2007-02-07  8:38 ` Jeremy Higdon

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=20070114080301.GD61246@sgi.com \
    --to=jeremy@sgi.com \
    --cc=Nate.Dailey@stratus.com \
    --cc=linux-ide@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 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.