Index: /trunk/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c
===================================================================
--- /trunk/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c	(revision 33639)
+++ /trunk/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c	(revision 33640)
@@ -196,4 +196,10 @@
     pMemLnx->cPages = cPages;
 
+# ifdef __GFP_NOMEMALLOC
+     if (cPages > 255)
+        /* Introduced with Linux 2.6.12: Don't use emergency reserves */
+        fFlagsLnx |= __GFP_NOMEMALLOC;
+# endif
+
     /*
      * Allocate the pages.
@@ -204,8 +210,4 @@
         ||  cb <= PAGE_SIZE * 2)
     {
-# ifdef __GFP_NOMEMALLOC
-        /* Introduced with Linux 2.6.12: Don't use emergency reserves */
-        fFlagsLnx |= __GFP_NOMEMALLOC;
-# endif
 # ifdef VBOX_USE_INSERT_PAGE
         paPages = alloc_pages(fFlagsLnx |  __GFP_COMP, rtR0MemObjLinuxOrder(cPages));
