mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
To: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Greg KH <greg@kroah.com>
Subject: Re: Simplification in pbus_size_mem
Date: Thu, 20 Nov 2003 17:16:24 +0300	[thread overview]
Message-ID: <20031120171624.A30024@jurassic.park.msu.ru> (raw)
In-Reply-To: <20031120122838.GA4575@malvern.uk.w2k.superh.com>; from Richard.Curnow@superh.com on Thu, Nov 20, 2003 at 12:28:38PM +0000

On Thu, Nov 20, 2003 at 12:28:38PM +0000, Richard Curnow wrote:
> * 96Mb PCI memory aperture

Also there is a PCI-PCI bridge, I guess? ;-)

> * Kyro graphics card, requiring 64Mb + 768kb prefetchable

768Kb sounds strange. It must be power of 2. Perhaps it's 512Kb MMIO
and 256Kb ROM? But MMIO registers must be non-prefetchable. Weird.

> * USB card requiring 4x4k non-prefetchable
> 
> Without the change, 'min_align' is computed as 32Mb (the algorithm in the
> loop basically seems to make 'min_align' end up as 1/2 the largest

No. For example, if you have 64Mb + 2x16Mb then 'min_align' will be 16Mb.

> alignment requirement that was found?), hence in the pass where the
> prefetchable block is sized, 'size' ends up as 96Mb, which means there
> is no space left in which to place the non-prefetchable blocks for the
> USB card.

Yes, it's a trade-off - minimizing alignment vs. size requirements.
In most situations the former approach gives much better allocations.

> With the patch above, the alignment requirement for the prefetchable
> memory actually ends up as the alignment required for the framebuffer,
> and the size isn't rounded up unnecessarily.  The USB card gets
> allocated successfully as a result.

Well, it works only because your 96Mb PCI aperture is aligned at 64Mb
(or more). If it was aligned at 32Mb, you wouldn't be able to allocate
prefetchable memory at all with your patch.

As a workaround, you can mark those additional 768Kb regions as
non-prefetchable and be done with it.

Ivan.

  reply	other threads:[~2003-11-20 14:16 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-11-20 12:28 Richard Curnow
2003-11-20 14:16 ` Ivan Kokshaysky [this message]
2003-11-20 15:25   ` Richard Curnow
2003-11-20 16:36     ` Ivan Kokshaysky
2003-11-24 15:28       ` Richard Curnow

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=20031120171624.A30024@jurassic.park.msu.ru \
    --to=ink@jurassic.park.msu.ru \
    --cc=greg@kroah.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

all inboxes | Powered by JetHome®