From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from kvack.org (bcrl@localhost [127.0.0.1]) by kvack.org (8.8.7/8.8.7) with SMTP id KAA00118 for ; Tue, 20 Jan 1998 10:50:53 -0500 Received: from post.mail.demon.net (post-10.mail.demon.net [194.217.242.154]) by kvack.org (8.8.7/8.8.7) with SMTP id IAA32196 for ; Tue, 20 Jan 1998 08:18:31 -0500 Received: from localhost (markhe@localhost) by nextd.demon.co.uk (8.8.3/8.6.10) with SMTP id NAA06137 for ; Tue, 20 Jan 1998 13:06:02 GMT Date: Tue, 20 Jan 1998 13:06:01 +0000 (GMT) From: Mark Hemment Subject: A few small Memory Management changes Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="-1734428081-85611352-885301561=:1436" Sender: owner-linux-mm@kvack.org To: linux-mm List-ID: This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. ---1734428081-85611352-885301561=:1436 Content-Type: TEXT/PLAIN; charset=US-ASCII Hi, The attached patch, against 2.1.78, contains some simple memory management changes. They reduce memory usage, and give a slight increase in the performance of the page-cache (when a required page is not present). I'd appreciate any comments and/or test results. Changes; o In mm/slab.c, SLAB_BREAK_GFP_ORDER has been dropped from 2 to 1. This reduces the page order (size) of the slabs for some caches, which prevents stressing the page-allocator with only a small hit in performance. (Stability is more important than performance). o The SLAB cache used for "files_struct" (files_cachep), has been split into two slab-caches (files_cachep, and fds_cachep). The fds_cachep is used for the "struct file" pointers. Previously, the size of objects in files_cachep did not pack well into any possible slab-cache size. So the SLAB used a large slab size to reduce internal fragmentation. This was the main cause of "fork(): Out of memory" errors on loaded systems. With the default value of NR_OPEN (1024), the fds_cachep has an object size of 4096 (or 8192 on 64-bit) which is a nice size for the SLAB. NOTE: This also required a change to arch/i386/kernel/init_task.c, to give the initial (idle) task file-descriptors. (Does it actually need any?). o The members of vm_area_struct have been re-arranged so that all the members, used during a find_vma() search, fall on the same cache-line for archs which have a small line size (eg. Intel's 486). NOTE: This change also needs a complementary change to INIT_MMAP in asm/processor.h o Three members of 'struct page' have been unionised; inode - only needed for named pages buffers - only needed for buffer pages pg_swap_entry - only needed for anonymous pages Named (inode) pages are marked PageNamed(pg), and buffer pages are marked PageBuffer(pg). While there is currently no need to mark anonymous-pages, I'll probably mark them in the future (but that hits a lot of code). o In 'struct page', the member "struct page *prev" has been changed to "struct page **pprev". This simplifies the code to add/remove a named page from an inode's page queue. o page_unuse(), in filemap.c, has been simplified. It is only ever called for a named page, and if the page is still shared it returns "0". A zero tells the address-space scanning function in vmscan.c that no page has been found, _and_ there has been no blocking (ie. the context which is being scanned could not have exited). o In mm/page_alloc.c a new allocation function, __get_user_page() has been added. This function takes _no_ arguments, and allocates a single page at priority GFP_USER (although the priority isn't actually used during page-reaping). It offers a slight performance improvement over the generic __get_free_pages(), and returns a "struct page *". Returning a pointer is only benefical in a few palaces at the moment. By changing some of the vm_operations (eg. ->nopage), to return/take a 'struct page*' some code paths/ error handling can be improved. (I haven't changed the vm_ops in this patch, as it hits _alot_ of code). Also in mm/page_alloc.c there is a new releasing function; __free_freed_page(). This is used with the new inline function (in include/linux/mm.h), release_page(). This new inline removes the need to always call __free_page() in mm/filemap.c. (A page's count is used to 'lock' a page against reaping when a block may occur. Normally, filemap.c just needs to drop this lock. However, the inode associated with the named-page may have been truncated/invalidated. The truncation/invalidation removes the page from the cache, but it is up to the last page-user to return it to the free-page pool). NOTE: relase_page() is also used in mm/memory.c when zapping pages from a context. As some of these pages are named pages, the 'freeing' of the page only reduces the reference count. ie. we avoid the overhead of some unnecessary function calls. o In mm/filemap.c, the need to always re-check the page-cache (find_page()) after a _possible_ blocking allocation has been removed. Before an allocation, a 'cookie' is taken from the page-cache hash line where the page would/will appear. After the allocation, the cookie is re-check. If it has changed, the page-cache needs to be search. Otherwise there is no need to re-check. Rather than add a cookie counter to each page-cache hash line (which would be 'fat'), the cookie is the first page pointer. As all pages are added to the head of a hash line, the pointer is sufficient. (It can also give a false-positive if the first page is removed, but this is a small price to pay). o The swap code has been changed to dynamically allocate the swap_info_struct when a new swap-area is added. Also, rather than use indices to link the swap-areas togther (as was previously done), two sets of pointers are used. By using two sets of pointers (one set for all swap-areas order by priority, one set for all swap-areas with the same prio) and code to find a swap-page of the highest available priority is simplified. An array of swap-area pointers is still needed, but it is better than an array of swap-area structures. o rw_swap_page() has been changed to take a "struct page *" of an I/O locked page, and to return a error. Handling a swap-page write error is difficult, and is not currently done correctly. The problem is that rw_swap_page() may block, so it is not possible to determine if the PTE is still around (context has exited during the block) to be reloaded. I need to re-check, perhaps rw_swap_page() cannot block _and_ return an error.... o There are a few other changes, such as using "struct page *" rather than unsigned long. Regards, markhe ---1734428081-85611352-885301561=:1436 Content-Type: APPLICATION/octet-stream; name="patch-own-2.1.78-1.gz" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: patch-own-2.1.78-1.gz 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 ---1734428081-85611352-885301561=:1436--