Broken memory management on system with no swap
Lucky Green
shamrock at cypherpunks.to
Mon Apr 21 18:09:11 PDT 2003
Matt Dillon wrote:
:> I suggest changing this:
:>
:> if ((vm_swap_size < 64 && vm_page_count_min()) ||
:> (swap_pager_full && vm_paging_target() > 0)) {
:>
:> To this:
:>
:> if (pass != 0 &&
:> ((vm_swap_size < 64 && vm_page_count_min()) ||
:> (swap_pager_full && vm_paging_target() > 0))) {
Matt,
You patch, at least so far, appears to prevent processes from being
killed due to lack of memory. Thanks! However, I am still seeing other
memory-related error messages in the syslog:
----------
Apr 20 22:54:32 pakastelohi kernel: swap_pager_getswapspace: failed
Apr 22 00:34:29 pakastelohi kernel: ENOMEM 0xc6bb8c00 on
0xc6d91380(ad4s1.bde)
Apr 22 00:34:34 pakastelohi kernel: ENOMEM 0xc6bc5300 on
0xc6d91380(ad4s1.bde)
Apr 22 00:48:49 pakastelohi kernel: ENOMEM 0xc65b8e00 on
0xc6d91380(ad4s1.bde)
Apr 22 00:52:51 pakastelohi kernel: ENOMEM 0xc6477000 on
0xc6d91380(ad4s1.bde)
Apr 22 00:52:51 pakastelohi kernel: ENOMEM 0xc860fc00 on
0xc6d91380(ad4s1.bde)
Apr 22 01:07:14 pakastelohi kernel: ENOMEM 0xc69b4900 on
0xc6865880(ad6s1c.bde)
Apr 22 01:07:14 pakastelohi kernel: ENOMEM 0xc85fee00 on
0xc6865880(ad6s1c.bde)
-----------
I had reported the "swap_pager_getswapspace: failed" and GBDE "ENOMEM"
errors in earlier, separate threads. The "swap_pager_getswapspace:
failed" occurred most likely, though I am not positive, during the
copying of a large file between two unencrypted partitions. The GBDE
"ENOMEM" errors occurred while moving multiple GBs in directories
containing files of various sizes, from a few MB to about 800MB, from
one GBDE partition to another. (gbde.c,v 1.13)
What I don't know is what the impact of these messages is: can they be
safely ignored or are they indicative of processes failing to execute as
requested and/or possible data corruption taking place?
Thanks,
--Lucky
More information about the freebsd-current
mailing list