Re: Kernel memory requirements and BK [SOLVED]

From: Art Haas
Date: Mon Nov 08 2004 - 21:01:51 EST


On Sun, Nov 07, 2004 at 12:02:07AM -0500, Chuck Ebbert wrote:
> Art Haas wrote:
>
> > With the 2.6.9 and 2.6.10-rc kernels, BK bombs out with
> > out-of-memory errors once the repository checking begins.
>
> There's nothing wrong with BK's performance that can't be
> solved by a terahertz processor and a terabyte of RAM. ;)
>
> But these patches might help:
>

[ snip first patch added into Linus's BK tree]

> ============================================================================
> # spurious_oomkill.patch
> #
> # Prevent spurious out of memory process kills.
> # Reported to work by testers on lkml.
> #
> # Patch by Rik van Riel <riel@xxxxxxxxxx>
> # Status: NOT in 2.6.10
> #
> --- 2.6.9/mm/vmscan.c
> +++ 2.6.9.1/mm/vmscan.c
> @@ -379,7 +379,7 @@
>
> referenced = page_referenced(page, 1);
> /* In active use or really unfreeable? Activate it. */
> - if (referenced && page_mapping_inuse(page))
> + if (referenced && sc->priority && page_mapping_inuse(page))
> goto activate_locked;
>
> #ifdef CONFIG_SWAP
> @@ -715,7 +715,7 @@
> if (page_mapped(page)) {
> if (!reclaim_mapped ||
> (total_swap_pages == 0 && PageAnon(page)) ||
> - page_referenced(page, 0)) {
> + (page_referenced(page, 0) && sc->priority)) {
> list_add(&page->lru, &l_active);
> continue;
> }

This patch did the trick for me. I booted up my 2.6.8.1 kernel, did a
'bk pull' to get the code (Sunday Morning), and added in this patch. After
building and installing the patched kernel, I did another 'bk pull'
later and things worked fine. Consider me one more person to vouch for
this patch solving the OOM problem!

Art Haas
--
Man once surrendering his reason, has no remaining guard against absurdities
the most monstrous, and like a ship without rudder, is the sport of every wind.

-Thomas Jefferson to James Smith, 1822
-
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/