Re: buffer cache question

From: JaniD++
Date: Thu Dec 29 2005 - 11:29:25 EST


Hi,

----- Original Message -----
From: "Nate Diller" <nate.diller@xxxxxxxxx>
To: "JaniD++" <djani22@xxxxxxxxxxxxx>
Cc: <linux-kernel@xxxxxxxxxxxxxxx>; <pavel@xxxxxxx>
Sent: Thursday, December 29, 2005 5:10 AM
Subject: Re: buffer cache question


> > ----- Original Message -----
> > From: Nate Diller
> > To: JaniD++
> > Cc: Roger Heflin ; linux-kernel@xxxxxxxxxxxxxxx
> > Sent: Friday, December 23, 2005 9:58 AM
> > Subject: Re: buffer cache question
> >
> > looks like you're barely using any of your high memory. maybe NBD
doesn't
> > have highmem support. what file system are you using?
> >
> > NATE
> >
> >
> > I cannot understant this.
> > NBD need to support highmem for buffering?
> > If know right, the kernel does buffering, not NBD!
> > But the kernel only use ~830MB for buffer cache instead of dinamically
use
> > all free memory like page cache.
> >
> > This is one raw disk node, independent from file system.
> >
>
> this is an NBD client, using CONFIG_BLK_DEV_NBD? on the 2.6 series
> kernel? if so, then it, like any other kernel component using the
> page cache, needs to explicity use kmap/kunmap to make use of memory
> in the high memory zone. on a 32 bit machine, any pages above the 896
> meg mark are treated specially inside the linux kernel (see
> http://kerneltrap.org/node/2450).

Yes, i have read this helpful document, but there is about the memory usage,
mapping, and not exactly the buffering/caching.
Yes, i use the 2.6 series NBD.

>
> if you don't have highmem support (CONFIG_HIGHMEM4G) enabled, then
> enabling that should fix it. if you already have it enabled (it
> looked like it to me, based on your /proc/meminfo) then there is a bug
> somewhere.

Yes, it is enabled.

>
> it would seem from a brief inspection that the send/recv_bvec
> functions in nbd (2.6.13) do use kmap. I don't know the nbd code very
> well, it seems that Pavel Machek wrote the code, he or block layer
> maintainer Jens Axboe may know something I don't. So if enabling
> highmem in your .config doesn't help, try CC'ing them with your issue.
> in the mean time, one of the memory split patches, such as the 4G:4G
> patch, should get things working.

The NBD use buffer cache (i am sure), but the highest limit is about
830-840M.

Where can i get the split patch?

Thanks for helpful answers!


Cheers,
Janos


>
> NATE

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/