2.4.0-test9-pre4: __alloc_pages(...) try_again:

From: Roger Larsson (roger.larsson@norran.net)
Date: Wed Sep 20 2000 - 15:23:36 EST


Hi,

Trying to find out why test9-pre4 freezes with mmap002
I added a counter for try_again loops.

... __alloc_pages(...)

        int direct_reclaim = 0;
        unsigned int gfp_mask = zonelist->gfp_mask;
        struct page * page = NULL;
+ int try_again_loops = 0;

- - -

+ printk("VM: sync kswapd (direct_reclaim: %d) try_again #
%d\n",
+ direct_reclaim, ++try_again_loops);
                        wakeup_kswapd(1);
                        goto try_again;

Result was surprising:
  direct_reclaim was 1.
  try_again_loops did never stop increasing (note: it is not static,
  and should restart from zero after each success)

Why does this happen?
a) kswapd did not succeed in freeing a suitable page?
b) __alloc_pages did not succeed in grabbing the page?

/RogerL

--
Home page:
  http://www.norran.net/nra02596/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Sep 23 2000 - 21:00:24 EST