public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Re: BIO Usage Error or Conflicting Designs
@ 2002-01-13 21:09 Manfred Spraul
  2002-01-14  7:23 ` Jens Axboe
  0 siblings, 1 reply; 8+ messages in thread
From: Manfred Spraul @ 2002-01-13 21:09 UTC (permalink / raw)
  To: Jens Axboe; +Cc: linux-kernel, Andre Hedrick

 
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

> 
> Is this with the highmem debug stuff enabled? That's the only way I can
> see this BUG triggering, otherwise q->bounce_pfn _cannot_ be smaller
> than the max_pfn.
> 
Have you tested that?

Unless I misread arch/i386/kernel/setup.c, line 740 to 760, max_pfn is
the upper end of the highmem area, if highmem is configured.
For non-highmem setup, it's set to min(system_memory, 4 GB).
It was a local variable within setup_arch, and someone made it a global
variable.

I.e. max_pfn is 1 GB with Andre's setup.

His patch doesn't touch the bounce limit, the default limit from
blk_queue_make_request() is used: BLK_BOUNCE_HIGH, which is max_low_pfn.

max_low_pfn is 896 MB.

--> BUG in create_bounce(), because a request comes in with a bounce
limit less than the total system memory, and no highmem configured.

--
	Manfred

^ permalink raw reply	[flat|nested] 8+ messages in thread
* Re: [PATCH] 1-2-3 GB
@ 2002-01-12 18:28 Albert D. Cahalan
  2002-01-12 19:07 ` BIO Usage Error or Conflicting Designs Andre Hedrick
  0 siblings, 1 reply; 8+ messages in thread
From: Albert D. Cahalan @ 2002-01-12 18:28 UTC (permalink / raw)
  To: Andrea Arcangeli; +Cc: Albert D. Cahalan, H. Peter Anvin, linux-kernel

Andrea Arcangeli writes:
> On Sat, Jan 12, 2002 at 12:26:35PM -0500, Albert D. Cahalan wrote:

>> The numbers are wrong anyway, because of vmalloc() and PCI space.
>> The PCI space is motherboard-dependent AFAIK, but you could at
>> least account for the 128 MB vmalloc() area:
>
> looks dirty, the size of the kernel direct mapping is mainly in function
> of #defines that can be changed freely, they're not constant in function
> of CONFIG_1G etc.. and it changes also in function of smp/up/4G/64G
> options.  The 3GB/2GB/1GB/3.5GB visible into the menuconfig are exact
> instead.  So I wouldn't mention inprecise stuff that can changed under
> us (and the exact size of the kernel direct mapping doesn't matter to
> the user anyways I think [and if it matters I think it means he's
> skilled enough to know about vmalloc space ;) ]).

The problem is that the "1GB" option doesn't cover 1 GB.
It is common for people to buy 1 GB of memory (power of 2),
and then complain that Linux only sees 896 MB of memory.

So how will you make the choices clear to such people?
There are 3 options, not counting the slram block device:

a. give up 128 MB (12.5 %) of memory
b. suffer the kmap overhead
c. give up some user virtual address space

None of this is obvious. The user sees "1GB" and will
innocently believe that this is good for a 1 GB system!

BTW, do we no longer require that the kernel side of things
(whole thing, including vmalloc space) be a power of two?
There used to be a bitwise operation in the user access stuff.

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2002-01-14  7:24 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-01-13 21:09 BIO Usage Error or Conflicting Designs Manfred Spraul
2002-01-14  7:23 ` Jens Axboe
  -- strict thread matches above, loose matches on Subject: below --
2002-01-12 18:28 [PATCH] 1-2-3 GB Albert D. Cahalan
2002-01-12 19:07 ` BIO Usage Error or Conflicting Designs Andre Hedrick
2002-01-12 20:05   ` Jens Axboe
2002-01-13  1:15     ` Andre Hedrick
2002-01-13 12:59       ` Jens Axboe
2002-01-13 19:59         ` Andre Hedrick
2002-01-14  6:42           ` Jens Axboe

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox