From: "Ying Chen/Almaden/IBM" <ying@almaden.ibm.com>
To: Rik van Riel <riel@conectiva.com.br>
Cc: "Theodore Y. Ts'o" <tytso@mit.edu>
Subject: Re: [PATCH] Re: simple FS application that hangs 2.4-test5, mem mgmt problem or FS buffer cache mgmt problem?
Date: Fri, 22 Sep 2000 16:59:42 -0700 [thread overview]
Message-ID: <OF0B0FB751.51865A31-ON88256962.00809BFB@LocalDomain> (raw)
Hi, Rik,
I think I may have found out the problem with the memory problem that I
mentioned to you a while back. Correct me if I'm wrong.
The problem seems to be that when I ran SPEC SFS with large IOPS tests, it
created millions of files and directories. Linux uses a huge amount of
memory for inode and dcache (close to 1.5 GB). The rest of the memory (I
had 2 GB in total) is used for write/read buffer caches and some
kernel NFSD thread code pages, etc. When the memory is exhausted, the
kswapd would kick in to free up the memory pages. However, in some cases,
when do_try_to_free_pages is called, it is called from an non-IO'able
environment. I think the calles were made from __alloc_pages() from the
network modules. Since there is not much memory used for buffer cache and
mmaps, when try_to_free_pages() is called, shrink_mmap would not return
anything useful. Yet because GFP_IO is not turned on, there is no way to
free up memory used for inode and dcache. So, the memory allocation for the
NIC driver will fail. I got "IP: queue_glue: no memory available" kinda of
stuff from the console.
I printed out some messages from the vm module. I can see that when the
system ran into an infinite loop of some sort, which I don't quite
understand yet. I'd think that I'd get a system crash at some point, since
no memory only fails operations. But I have not traced down while it went
into infinite loop. Sysrq-m tells me that I have run out of all the DMA,
NORMAL memory buffers. For HIGHMEM, I still have 800 MB available, but most
of it is from 2K pool. A few pages from other pools. I can't quite explain
this either. It seems that I should have run out of HIGHMEM also....
Any ideas?
BTW, the tests were run against test6.
Ying
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux.eu.org/Linux-MM/
next reply other threads:[~2000-09-25 13:54 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2000-09-22 23:59 Ying Chen/Almaden/IBM [this message]
-- strict thread matches above, loose matches on Subject: below --
2000-09-26 1:53 Ying Chen/Almaden/IBM
[not found] <200009121926.e8CJQGN28377@trampoline.thunk.org>
2000-09-12 21:04 ` Rik van Riel
2000-09-05 17:02 Ying Chen/Almaden/IBM
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=OF0B0FB751.51865A31-ON88256962.00809BFB@LocalDomain \
--to=ying@almaden.ibm.com \
--cc=riel@conectiva.com.br \
--cc=tytso@mit.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox