commit 8fce4d8e3b9e3cf47cc8afeb6077e22ab795d989 tree 4930be5756f7a3893717d38f443f6261f11a1f60 parent 7b61fcda8a640bb87be23f9f09c1f24357b5c6e1 author Christoph Lameter Thu, 09 Mar 2006 17:33:54 -0800 committer Linus Torvalds Thu, 09 Mar 2006 19:47:38 -0800 [PATCH] slab: Node rotor for freeing alien caches and remote per cpu pages. The cache reaper currently tries to free all alien caches and all remote per cpu pages in each pass of cache_reap. For a machines with large number of nodes (such as Altix) this may lead to sporadic delays of around ~10ms. Interrupts are disabled while reclaiming creating unacceptable delays. This patch changes that behavior by adding a per cpu reap_node variable. Instead of attempting to free all caches, we free only one alien cache and the per cpu pages from one remote node. That reduces the time spend in cache_reap. However, doing so will lengthen the time it takes to completely drain all remote per cpu pagesets and all alien caches. The time needed will grow with the number of nodes in the system. All caches are drained when they overflow their respective capacity. So the drawback here is only that a bit of memory may be wasted for awhile longer. Details: 1. Rename drain_remote_pages to drain_node_pages to allow the specification of the node to drain of pcp pages. 2. Add additional functions init_reap_node, next_reap_node for NUMA that manage a per cpu reap_node counter. 3. Add a reap_alien function that reaps only from the current reap_node. For us this seems to be a critical issue. Holdoffs of an average of ~7ms cause some HPC benchmarks to slow down significantly. F.e. NAS parallel slows down dramatically. NAS parallel has a 12-16 seconds runtime w/o rotor compared to 5.8 secs with the rotor patches. It gets down to 5.05 secs with the additional interrupt holdoff reductions. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7b61fcda8a640bb87be23f9f09c1f24357b5c6e1 tree 691c42a07df609934cb1cba15cf94b9c04978654 parent b707dbe6c52e143a9afea06aa8f84103135ca873 author Roman Zippel Thu, 09 Mar 2006 17:33:53 -0800 committer Linus Torvalds Thu, 09 Mar 2006 19:47:38 -0800 [PATCH] m68k: fix cmpxchg compile errors if CONFIG_RMW_INSNS=n We require that all archs implement atomic_cmpxchg(), for the generic version of atomic_add_unless(). Signed-off-by: Roman Zippel Cc: Geert Uytterhoeven Cc: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b707dbe6c52e143a9afea06aa8f84103135ca873 tree 0f24f1adf8379c392c11a612de66b43bdb20e53e parent f2937be5895dbae23ff66767a2fc17793e63159c author Horst Hummel Thu, 09 Mar 2006 17:33:52 -0800 committer Linus Torvalds Thu, 09 Mar 2006 19:47:38 -0800 [PATCH] s390: dasd proc interface typo This fixes a typo introduced with 90f0094dc607abe384a412bfb7199fb667ab0735. Signed-off-by: Horst Hummel Signed-off-by: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f2937be5895dbae23ff66767a2fc17793e63159c tree f236fe4b457cedbf3f7a1e2cf8a6bba9f504c74f parent 57c432b54bc34f0afacda7d9da0528ee22e78dec author Yasunori Goto Thu, 09 Mar 2006 17:33:51 -0800 committer Linus Torvalds Thu, 09 Mar 2006 19:47:38 -0800 [PATCH] memory hotadd: pgdat->node_present_pages fix When pages are onlined, not only zone->present_pages but also pgdat->node_present_pages should be refreshed. This parameter is used to show information at /sys/device/system/node/nodeX/meminfo via si_meminfo_node(). So, it shows strange value for MemUsed which is calculated (node_present_pages - all zones free pages). Signed-off-by: Yasunori Goto Cc: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 57c432b54bc34f0afacda7d9da0528ee22e78dec tree 13ec3b4a2b46879dcc1b6dafd30fcb266a5c5c30 parent 96567161de0ceed45cd2eb0e5380e3c797f5c0f4 author Tim Small Thu, 09 Mar 2006 17:33:50 -0800 committer Linus Torvalds Thu, 09 Mar 2006 19:47:38 -0800 [PATCH] edac: mark as experimental EDAC is still causing a few problems and the code is relatively green. Mark it as experimental until thing settle down. Also, provide some documentation pointers in Kconfig help. Signed-off-by: Tim Small Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 96567161de0ceed45cd2eb0e5380e3c797f5c0f4 tree eb1cf052c95b95052e281f9a0d33ea025ce39dc5 parent 6a88231fc7da311e4da4ce2011d1a132c80c145a author Christian Ehrhardt Thu, 09 Mar 2006 17:33:49 -0800 committer Linus Torvalds Thu, 09 Mar 2006 19:47:38 -0800 [PATCH] s390: Increase spinlock retry code performance Currently the code tries up to spin_retry times to grab a lock using the cs instruction. The cs instruction has exclusive access to a memory region and therefore invalidates the appropiate cache line of all other cpus. If there is contention on a lock this leads to cache line trashing. This can be avoided if we first check wether a cs instruction is likely to succeed before the instruction gets actually executed. Signed-off-by: Christian Ehrhardt Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6a88231fc7da311e4da4ce2011d1a132c80c145a tree 383281e2e283a2f3da686d3ea57cd7c4777a7282 parent a6bf527091b1dd40f1b6a496812ce7520621c282 author Max Asbock Thu, 09 Mar 2006 17:33:48 -0800 committer Linus Torvalds Thu, 09 Mar 2006 19:47:37 -0800 [PATCH] ibmasm: use after free fix The kobject_put() can free the memory at *cmd, but cmd->lock points to a persistent lock that is not freed with cmd. Signed-off-by: Max Asbock Cc: Vernon Mauery Cc: Srihari Vijayaraghavan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a6bf527091b1dd40f1b6a496812ce7520621c282 tree bed2341cbb2e4bf71d29f2e8b6ab7affa72aabd5 parent 04b857f74cec5efc7730e9db47e291310f4708a4 author Christoph Lameter Thu, 09 Mar 2006 17:33:47 -0800 committer Linus Torvalds Thu, 09 Mar 2006 19:47:37 -0800 [PATCH] vmscan: no zone_reclaim if PF_MALLOC is set If the process has already set PF_MALLOC and is already using current->reclaim_state then do not try to reclaim memory from the zone. This is set by kswapd and/or synchrononous global reclaim which will not take it lightly if we zap the reclaim_state. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 04b857f74cec5efc7730e9db47e291310f4708a4 tree 4609bd7553665604270a976f6887d46140decfcb parent 628de616ba760b7b1d5e3d95dbe40a988fbf8ca5 author NeilBrown Thu, 09 Mar 2006 17:33:46 -0800 committer Linus Torvalds Thu, 09 Mar 2006 19:47:37 -0800 [PATCH] md: Fix several raid1 bugs which cause a memory leak - wrong test for 'is this a BARRIER bio' - not freeing on all possible paths. - using r1_bio after freeing it. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 628de616ba760b7b1d5e3d95dbe40a988fbf8ca5 tree e9faaaca487a1d921a12e2e53481874fe37b9880 parent 38fb9428db627559a8ba0505d21a5ff23bf84034 author Adrian Bunk Thu, 09 Mar 2006 17:33:45 -0800 committer Linus Torvalds Thu, 09 Mar 2006 19:47:37 -0800 [PATCH] xtensa must set RWSEM_GENERIC_SPINLOCK=y /usr/src/ctest/git/kernel/mm/rmap.c: In function `page_referenced_one': /usr/src/ctest/git/kernel/mm/rmap.c:354: warning: implicit declaration of function `rwsem_is_locked' Signed-off-by: Adrian Bunk Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 38fb9428db627559a8ba0505d21a5ff23bf84034 tree 70407ac1d435ad68a0f7c047acbe3b2c6ed95ea6 parent 0ef675d491bd65028fa838015ebc6ce8abefab6f author Adrian Bunk Thu, 09 Mar 2006 17:33:44 -0800 committer Linus Torvalds Thu, 09 Mar 2006 19:47:37 -0800 [PATCH] arch/sh/Kconfig: don't source non-existing Kconfig files arch/sh/Kconfig shouldn't source non-existing Kconfig files. Signed-off-by: Adrian Bunk Cc: Paul Mundt Cc: Kazumoto Kojima Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0ef675d491bd65028fa838015ebc6ce8abefab6f tree 8a2074152fceef8384b2276f4e06a05f9efbe969 parent eff2c2f6f569267aa52e2431844cec30637d7ade author Atsushi Nemoto Thu, 09 Mar 2006 17:33:38 -0800 committer Linus Torvalds Thu, 09 Mar 2006 19:47:37 -0800 [PATCH] mtd: 64 bit fixes Fix some bugs in mtd/jffs2 on 64bit platform. The MEMGETBADBLOCK/MEMSETBADBLOCK ioctl are not listed in compat_ioctl.h. And some variables in jffs2 are declared as uint32_t but used to hold size_t values. Signed-off-by: Atsushi Nemoto Cc: Thomas Gleixner Acked-by: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eff2c2f6f569267aa52e2431844cec30637d7ade tree 9548511bccd76c8af891a490e314c986072f3997 parent 10ad1b7363090c0eec2b4054a5a3b82d2cc09ee5 author Ivan Kokshaysky Thu, 09 Mar 2006 17:33:37 -0800 committer Linus Torvalds Thu, 09 Mar 2006 19:47:37 -0800 [PATCH] alpha: fix IRQ handling lockup Fix a lockup which was introduced during the conversion to the generic IRQ framework. Cc: Richard Henderson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 10ad1b7363090c0eec2b4054a5a3b82d2cc09ee5 tree 7e0b92fd8fc084311c8e1bec93484ecacfc99a75 parent 435a80f610b2ac38a4b5334a7ae22672de3f06bd author Jean Delvare Thu, 09 Mar 2006 17:33:36 -0800 committer Linus Torvalds Thu, 09 Mar 2006 19:47:37 -0800 [PATCH] Fix error handling in backlight drivers ERR_PTR() is supposed to be passed a negative value. Signed-off-by: Jean Delvare Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 435a80f610b2ac38a4b5334a7ae22672de3f06bd tree ddac23d1719827a21cee10d0991ed078a8825c97 parent 85a6cd03a97f04ffff7bfedfa3172894ca9a617b author Doug Warzecha Thu, 09 Mar 2006 17:33:35 -0800 committer Linus Torvalds Thu, 09 Mar 2006 19:47:36 -0800 [PATCH] dcdbas: dcdbas_pdev referenced after platform_device_unregister on exit smi_data_buf_free() references dcdbas_pdev when calling dma_free_coherent(). In dcdbas_exit(), smi_data_buf_free() is called after platform_device_unregister(dcdbas_pdev). This patch moves platform_device_unregister(dcdbas_pdev) after smi_data_buf_free() in dcdbas_exit(). Signed-off-by: Doug Warzecha Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 85a6cd03a97f04ffff7bfedfa3172894ca9a617b tree 6dfcb724b0ed7b2cb9b33c0c18933f0d915bc966 parent 6218cf4410cfce7bc7e89834e73525b124625d4c author Hugh Dickins Thu, 09 Mar 2006 17:33:34 -0800 committer Linus Torvalds Thu, 09 Mar 2006 19:47:36 -0800 [PATCH] page_add_file_rmap(): remove BUG_ON()s Remove two early-development BUG_ONs from page_add_file_rmap. The pfn_valid test (originally useful for checking that nobody passed an artificial struct page) comes too late, since we already have the struct page. The PageAnon test (useful when anon was first distinguished from file rmap) prevents ->nopage implementations from reusing ->mapping, which would otherwise be available. Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6218cf4410cfce7bc7e89834e73525b124625d4c tree f2376798ba7020169faf660d286199310034fa70 parent fd2a4f1183d1e6802457d70cea067396236ed64b author Ralf Baechle Wed, 08 Mar 2006 17:14:49 +0000 committer Ralf Baechle Thu, 09 Mar 2006 18:05:10 +0000 [MIPS] Always pass -msoft-float. Some people still haven't heared that fp in the kernel is forbidden. Signed-off-by: Ralf Baechle commit fd2a4f1183d1e6802457d70cea067396236ed64b tree 144fa623d9935bd67c63b71078eb35d1109d7dfb parent 1443e483e34d2ead97215bd8496b34b0d3fbc2c0 author Ralf Baechle Wed, 08 Mar 2006 16:04:32 +0000 committer Ralf Baechle Thu, 09 Mar 2006 18:05:10 +0000 [MIPS] Undefine scr_writew and scr_readw in . This is gluing the build of cirrusfb but really the mess that would need cleaning and fixing is