Messages in this thread Patch in this message | | | Subject | Re: Regression from 2.6.36 | Date | Tue, 19 Apr 2011 21:29:20 +0200 | From | "azurIt" <> |
| |
Andrew,
which kernel versions will include this patch ? Thank you.
azur
______________________________________________________________ > Od: "Andrew Morton" <akpm@linux-foundation.org> > Komu: Eric Dumazet <eric.dumazet@gmail.com>,Changli Gao <xiaosuo@gmail.com>,Américo Wang <xiyou.wangcong@gmail.com>,Jiri Slaby <jslaby@suse.cz>, azurIt <azurit@pobox.sk>,linux-kernel@vger.kernel.org, linux-mm@kvack.org,linux-fsdevel@vger.kernel.org, Jiri Slaby <jirislaby@gmail.com>,Mel Gorman <mel@csn.ul.ie> > Dátum: 13.04.2011 23:26 > Predmet: Re: Regression from 2.6.36 > >On Wed, 13 Apr 2011 14:16:00 -0700 >Andrew Morton <akpm@linux-foundation.org> wrote: > >> fs/file.c | 17 ++++++++++------- >> 1 file changed, 10 insertions(+), 7 deletions(-) > >bah, stupid compiler. > > >--- a/fs/file.c~vfs-avoid-large-kmallocs-for-the-fdtable >+++ a/fs/file.c >@@ -9,6 +9,7 @@ > #include <linux/module.h> > #include <linux/fs.h> > #include <linux/mm.h> >+#include <linux/mmzone.h> > #include <linux/time.h> > #include <linux/sched.h> > #include <linux/slab.h> >@@ -39,14 +40,17 @@ int sysctl_nr_open_max = 1024 * 1024; /* > */ > static DEFINE_PER_CPU(struct fdtable_defer, fdtable_defer_list); > >-static inline void *alloc_fdmem(unsigned int size) >+static void *alloc_fdmem(unsigned int size) > { >- void *data; >- >- data = kmalloc(size, GFP_KERNEL|__GFP_NOWARN); >- if (data != NULL) >- return data; >- >+ /* >+ * Very large allocations can stress page reclaim, so fall back to >+ * vmalloc() if the allocation size will be considered "large" by the VM. >+ */ >+ if (size <= (PAGE_SIZE << PAGE_ALLOC_COSTLY_ORDER)) { >+ void *data = kmalloc(size, GFP_KERNEL|__GFP_NOWARN); >+ if (data != NULL) >+ return data; >+ } > return vmalloc(size); > } > >_ > >-- >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/ > -- 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/
| |