2.5.43-mm2
From: | Andrew Morton <akpm@digeo.com> | |
To: | lkml <linux-kernel@vger.kernel.org>, "linux-mm@kvack.org" <linux-mm@kvack.org> | |
Subject: | 2.5.43-mm2 | |
Date: | Wed, 16 Oct 2002 22:18:55 -0700 |
url: http://www.zip.com.au/~akpm/linux/patches/2.5/2.5.43/2.5.43-mm2/ . I've pretty much dropped the per-cpu pages patches which Martin and I developed. These patches gave a 1-2% benefit in kernel compiles, up to 4% in Randy Hron's testing of the autoconf build tests. 2.2% in specweb. And a 60% speedup in a little app which just looped writing 80k to a file and truncating it off again. All the above came from the cache-warmth effect. The patches would give an overall 15% speedup due to reduced lock contention in Anton's testing on the big PPC64 machines, but he fixed that anyway by getting NUMA working properly. In my opinion, all the above is just too thin to justify throwing a bunch of new stuff into the page allocator. I shall continue to distribute these patches. Maybe someone will find them sufficiently beneficial for something at a future time. But it simply seems to be the case that no interesting workloads repeatedly allocate and free small numbers of pages (in the 10-50 range). . The shared pagetable code is not in the main diff - it has a few problems at present. The patches are over in the experimental/ directory. order of application is: shpte.patch shpte-lock-ranking-fix.patch shmmap.patch handle-mm-fault-locking.patch mremap-shared-pagetable-fix.patch shpte-unmap_all_pages_fix.patch unmap_page_range-fix.patch . The slab rework is stable now and Manfred has some good microbenchmark numbers from that. But we're still not quite ready with that code because the hotplug CPU APIs have, shall we say, a few shortcomings. Since 2.5.43-mm1: -disable-ppc-lbd.patch -fs-inlines.patch -md-fix.patch -mpparse-fix.patch -no-reclaim-throttle.patch -refill-inactive-lockup-fix.patch -reiserfs-kmap-fix.patch -simple_rename-link-count.patch -static-filemap_sync.patch -uninline-highmem.patch -vmalloc-overalloc.patch Merged -meminfo-numa.patch Dropped. To be moved from procfs into the NUMA preentation in driverfs. +3c59x-udp-csum.patch Make the 3c59x driver work with UDP in Linus's current tree +dmi-warning.patch +ide-warnings.patch Stomp some compilation warnings +dhowells-readahead.patch +file_ra_state_init.patch Expose some finer-grained readahead facilities. +less-unlikelies.patch Less buslocked traffic in the page allocator +running-iowait.patch Expose nr_running and nr_iowait task counts in /proc +uaccess-uninline.patch Uninline the ia32 copy_*_user functions. (Now showing a 33kbyte shrink from this work) +slab-cleanup.patch Less typedefs and macros in slab.c +mm1-incr1.patch +mm1-incr2.patch POSIX ACL and EA updates All patches: linus.patch cset-1.781.24.13-to-1.793.txt.gz 3c59x-udp-csum.patch Enable UDP checksums in 3c59x ide-warnings.patch Fix some IDE compile warnings dmi-warning.patch fix a compile warning in dmi_scan.c kgdb.patch ramfs-aops.patch Move ramfs address_space ops into libfs ramfs-prepare-write-speedup.patch correctness fixes in libfs address_space ops dio-fine-alignment.patch Allow O_DIRECT to use 512-byte alignment dhowells-readahead.patch readahead generalisations file_ra_state_init.patch Add a function to initialise file readahead state less-unlikelies.patch reduced buslocked traffic in the page allocator running-iowait.patch expose nr_running and nr_iowait task counts in /proc intel-user-copy-taka.patch Faster copy_*_user for Intel ia32 CPUs uaccess-uninline.patch ingo-oom-kill.patch oom-killer changes for threaded apps add_timer_on.patch add_timer_on(): function to start a timer on a particular CPU slab-split-01-rename.patch slab cleanup: rename static functions slab-split-02-SMP.patch slab: enable the cpu arrays on uniprocessor slab-split-03-tail.patch slab: reduced internal fragmentation slab-split-04-drain.patch slab: take the spinlock in the drain function. slab-split-05-name.patch slab: remove spaces from /proc identifiers slab-split-06-mand-cpuarray.patch slab: cleanups and speedups slab-split-07-inline.patch slab: uninline poisoning checks slab-split-08-reap.patch slab: reap timers slab-timer.patch slab-use-sem.patch slab-cleanup.patch Slab cleanup ingo-mmap-speedup.patch Ingo's mmap speedup mm-inlines.patch remove some inlines from mm/* o_streaming.patch O_STREAMING support page_reserved-accounting.patch Global PageReserved accounting use-page_reserved_accounting.patch Use PG_reserved accounting in the VM mod_timer-race.patch net-loopback.patch Disable second copy in the network loopback driver blkdev-o_direct-short-read.patch Fix O_DIRECT blockdev reads at end-of-device orlov-allocator.patch blk-queue-bounce.patch inline blk_queue_bounce lseek-ext2_readdir.patch remove lock_kernel() from ext2_readdir() write-deadlock.patch Fix the generic_file_write-from-same-mmapped-page deadlock rd-cleanup.patch Cleanup and fix the ramdisk driver (doesn't work right yet) spin-lock-check.patch spinlock/rwlock checking infrastructure hugetlb-prefault.patch hugetlbpages: factor out some code for hugetlbfs hugetlb-header-split.patch Move hugetlb declarations into their own header hugetlbfs.patch hugetlbfs file system hugetlb-shm.patch hugetlbfs backing for SYSV shared memory truncate-bkl.patch don't take the BKL in inode_setattr akpm-deadline.patch deadline scheduler tweaks xattr-01-metablock-cache.patch EA: meta block cache xattr-02-ext3.patch EA: ext3 support xattr-03-ext2.patch EA: ext2 support fix-xattr.patch EA: compile warning fix posix-acl-01-core.patch posixacl: core support posix-acl-02-umask.patch posixacl: umask support posix-acl-03-user-api.patch posixacl: user API posix-acl-04-ext3.patch posixacl: ext3 support acl-ext3-fix-tree.patch acl-ext3-inode.patch posix-acl-05-ext2.patch posixacl: ext2 support mm1-incr1.patch mm1-incr2.patch posixacl: use getxattr in nfsd_get_posix_acl() ext23-mount-options.patch ext2/3 mount option processing cleanup read_barrier_depends.patch extended barrier primitives dcache_rcu.patch Use RCU for dcache mpopulate.patch remap_file_pages rmqueue_bulk.patch bulk page allocator free_pages_bulk.patch Bulk page freeing function hot_cold_pages.patch Hot/Cold pages and zone->lock amortisation readahead-cold-pages.patch Use cache-cold pages for pagecache reads. pagevec-hot-cold-hint.patch hot/cold hints for truncate and page reclaim page-reservation.patch Page reservation API wli-show_free_areas.patch show_free_areas extensions - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/