linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Linus Torvalds <torvalds@transmeta.com>
Cc: Rik van Riel <riel@conectiva.com.br>,
	Roger Larsson <roger.larsson@norran.net>,
	MM mailing list <linux-mm@kvack.org>,
	linux-kernel@vger.kernel.org
Subject: [patch] vmfixes-2.4.0-test9-B2
Date: Sun, 24 Sep 2000 21:34:43 +0200 (CEST)	[thread overview]
Message-ID: <Pine.LNX.4.21.0009242103390.7843-200000@elte.hu> (raw)
In-Reply-To: <Pine.LNX.4.10.10009241141410.789-100000@penguin.transmeta.com>

[-- Attachment #1: Type: TEXT/PLAIN, Size: 1616 bytes --]


the attached vmfixes-B2 patch adds the following fixes/cleanups:

vmscan.c:

 - check for __GFP_WAIT not __GFP_IO when yielding the CPU. This fixes
   GFP_BUFFER deadlocks. In fact since no caller to do_try_to_free_pages()
   can expect that function to not block, we dont test for __GFP_WAIT
   either. [GFP_KSWAPD is the only caller without __GFP_WAIT set.]

 - do shrink_[d|i]cache_memory() even if !__GFP_IO. This improves balance.

 - push the __GFP_IO test into shm_swap().

 - after shm_swap() do not test for !count but for <= 0, because count
   could be negative if in the future the shrink_ functions return bigger
   than 1, and we could then get into an infinite loop. Same after
   swap_out() and refill_inactive_scan(). No performance penalty, test
   for zero is exchanged with test for sign.

 - kmem_cache_reap() is done within refill_inactive(), so it's
   unnecessery to call it at the beginning of do_try_to_free_pages().
   Moved to the else branch. (i saw kmem_cache_reap() show up in profiles)

 - (small codestyle cleanup.)


page_alloc.c:

 - in __alloc_pages(), the infinite allocation loop yields the CPU if
   necessery. This prevents a potential lockup on UP, and even on SMP it
   can prevent livelocks. (i saw this happen.)

mm.h:

 - made the GFP_ flag definitions easier to parse for humans :-)

 - remove shrink_mmap() prototype, it doesnt exist anymore.

shm.c:

 - the trivial test for __GFP_IO.

swap_state.c, filemap.c:

 - (shrink_mmap doesnt exist anymore, it's refill_inactive.)

(The patch applies and compiles cleanly, and is tested under various VM
loads i use.)

	Ingo

[-- Attachment #2: Type: TEXT/PLAIN, Size: 7375 bytes --]

--- linux/mm/vmscan.c.orig	Sun Sep 24 11:41:38 2000
+++ linux/mm/vmscan.c	Sun Sep 24 12:20:27 2000
@@ -119,7 +119,7 @@
 	 * our scan.
 	 *
 	 * Basically, this just makes it possible for us to do
-	 * some real work in the future in "shrink_mmap()".
+	 * some real work in the future in "refill_inactive()".
 	 */
 	if (!pte_dirty(pte)) {
 		flush_cache_page(vma, address);
@@ -159,7 +159,7 @@
 	 * NOTE NOTE NOTE! This should just set a
 	 * dirty bit in 'page', and just drop the
 	 * pte. All the hard work would be done by
-	 * shrink_mmap().
+	 * refill_inactive().
 	 *
 	 * That would get rid of a lot of problems.
 	 */
@@ -891,7 +891,7 @@
 	do {
 		made_progress = 0;
 
-		if (current->need_resched && (gfp_mask & __GFP_IO)) {
+		if (current->need_resched) {
 			__set_current_state(TASK_RUNNING);
 			schedule();
 		}
@@ -899,34 +899,32 @@
 		while (refill_inactive_scan(priority, 1) ||
 				swap_out(priority, gfp_mask, idle_time)) {
 			made_progress = 1;
-			if (!--count)
+			if (--count <= 0)
 				goto done;
 		}
 
-		/* Try to get rid of some shared memory pages.. */
-		if (gfp_mask & __GFP_IO) {
-			/*
-			 * don't be too light against the d/i cache since
-		   	 * shrink_mmap() almost never fail when there's
-		   	 * really plenty of memory free. 
-			 */
-			count -= shrink_dcache_memory(priority, gfp_mask);
-			count -= shrink_icache_memory(priority, gfp_mask);
-			/*
-			 * Not currently working, see fixme in shrink_?cache_memory
-			 * In the inner funtions there is a comment:
-			 * "To help debugging, a zero exit status indicates
-			 *  all slabs were released." (-arca?)
-			 * lets handle it in a primitive but working way...
-			 *	if (count <= 0)
-			 *		goto done;
-			 */
+		/*
+		 * don't be too light against the d/i cache since
+	   	 * refill_inactive() almost never fail when there's
+	   	 * really plenty of memory free. 
+		 */
+		count -= shrink_dcache_memory(priority, gfp_mask);
+		count -= shrink_icache_memory(priority, gfp_mask);
+		/*
+		 * Not currently working, see fixme in shrink_?cache_memory
+		 * In the inner funtions there is a comment:
+		 * "To help debugging, a zero exit status indicates
+		 *  all slabs were released." (-arca?)
+		 * lets handle it in a primitive but working way...
+		 *	if (count <= 0)
+		 *		goto done;
+		 */
 
-			while (shm_swap(priority, gfp_mask)) {
-				made_progress = 1;
-				if (!--count)
-					goto done;
-			}
+		/* Try to get rid of some shared memory pages.. */
+		while (shm_swap(priority, gfp_mask)) {
+			made_progress = 1;
+			if (--count <= 0)
+				goto done;
 		}
 
 		/*
@@ -934,7 +932,7 @@
 		 */
 		while (swap_out(priority, gfp_mask, 0)) {
 			made_progress = 1;
-			if (!--count)
+			if (--count <= 0)
 				goto done;
 		}
 
@@ -955,9 +953,9 @@
 			priority--;
 	} while (priority >= 0);
 
-	/* Always end on a shrink_mmap.., may sleep... */
+	/* Always end on a refill_inactive.., may sleep... */
 	while (refill_inactive_scan(0, 1)) {
-		if (!--count)
+		if (--count <= 0)
 			goto done;
 	}
 
@@ -970,11 +968,6 @@
 	int ret = 0;
 
 	/*
-	 * First, reclaim unused slab cache memory.
-	 */
-	kmem_cache_reap(gfp_mask);
-
-	/*
 	 * If we're low on free pages, move pages from the
 	 * inactive_dirty list to the inactive_clean list.
 	 *
@@ -992,13 +985,14 @@
 	 * the inode and dentry cache whenever we do this.
 	 */
 	if (free_shortage() || inactive_shortage()) {
-		if (gfp_mask & __GFP_IO) {
-			ret += shrink_dcache_memory(6, gfp_mask);
-			ret += shrink_icache_memory(6, gfp_mask);
-		}
-
+		ret += shrink_dcache_memory(6, gfp_mask);
+		ret += shrink_icache_memory(6, gfp_mask);
 		ret += refill_inactive(gfp_mask, user);
 	} else {
+		/*
+		 * Reclaim unused slab cache memory.
+		 */
+		kmem_cache_reap(gfp_mask);
 		ret = 1;
 	}
 
@@ -1153,9 +1147,8 @@
 {
 	int ret = 1;
 
-	if (gfp_mask & __GFP_WAIT) {
+	if (gfp_mask & __GFP_WAIT)
 		ret = do_try_to_free_pages(gfp_mask, 1);
-	}
 
 	return ret;
 }
--- linux/mm/page_alloc.c.orig	Sun Sep 24 11:44:59 2000
+++ linux/mm/page_alloc.c	Sun Sep 24 11:52:00 2000
@@ -444,6 +444,13 @@
 		 * processes, etc).
 		 */
 		if (gfp_mask & __GFP_WAIT) {
+			/*
+			 * Give other processes a chance to run:
+			 */
+			if (current->need_resched) {
+				__set_current_state(TASK_RUNNING);
+				schedule();
+			}
 			try_to_free_pages(gfp_mask);
 			memory_pressure++;
 			goto try_again;
--- linux/mm/filemap.c.orig	Sun Sep 24 12:20:35 2000
+++ linux/mm/filemap.c	Sun Sep 24 12:20:48 2000
@@ -1925,10 +1925,10 @@
  * Application no longer needs these pages.  If the pages are dirty,
  * it's OK to just throw them away.  The app will be more careful about
  * data it wants to keep.  Be sure to free swap resources too.  The
- * zap_page_range call sets things up for shrink_mmap to actually free
+ * zap_page_range call sets things up for refill_inactive to actually free
  * these pages later if no one else has touched them in the meantime,
  * although we could add these pages to a global reuse list for
- * shrink_mmap to pick up before reclaiming other pages.
+ * refill_inactive to pick up before reclaiming other pages.
  *
  * NB: This interface discards data rather than pushes it out to swap,
  * as some implementations do.  This has performance implications for
--- linux/mm/swap_state.c.orig	Sun Sep 24 12:21:02 2000
+++ linux/mm/swap_state.c	Sun Sep 24 12:21:13 2000
@@ -166,7 +166,7 @@
 			return 0;
 		/*
 		 * Though the "found" page was in the swap cache an instant
-		 * earlier, it might have been removed by shrink_mmap etc.
+		 * earlier, it might have been removed by refill_inactive etc.
 		 * Re search ... Since find_lock_page grabs a reference on
 		 * the page, it can not be reused for anything else, namely
 		 * it can not be associated with another swaphandle, so it
--- linux/include/linux/mm.h.orig	Sun Sep 24 11:46:37 2000
+++ linux/include/linux/mm.h	Sun Sep 24 12:21:54 2000
@@ -441,7 +441,6 @@
 /* filemap.c */
 extern void remove_inode_page(struct page *);
 extern unsigned long page_unuse(struct page *);
-extern int shrink_mmap(int, int);
 extern void truncate_inode_pages(struct address_space *, loff_t);
 
 /* generic vm_area_ops exported for stackable file systems */
@@ -469,11 +468,11 @@
 
 #define GFP_BUFFER	(__GFP_HIGH | __GFP_WAIT)
 #define GFP_ATOMIC	(__GFP_HIGH)
-#define GFP_USER	(__GFP_WAIT | __GFP_IO)
-#define GFP_HIGHUSER	(GFP_USER | __GFP_HIGHMEM)
+#define GFP_USER	(             __GFP_WAIT | __GFP_IO)
+#define GFP_HIGHUSER	(             __GFP_WAIT | __GFP_IO | __GFP_HIGHMEM)
 #define GFP_KERNEL	(__GFP_HIGH | __GFP_WAIT | __GFP_IO)
 #define GFP_NFS		(__GFP_HIGH | __GFP_WAIT | __GFP_IO)
-#define GFP_KSWAPD	(__GFP_IO)
+#define GFP_KSWAPD	(                          __GFP_IO)
 
 /* Flag - indicates that the buffer will be suitable for DMA.  Ignored on some
    platforms, used as appropriate on others */
--- linux/ipc/shm.c.orig	Sun Sep 24 11:45:16 2000
+++ linux/ipc/shm.c	Sun Sep 24 11:53:59 2000
@@ -1536,6 +1536,12 @@
 	int counter;
 	struct page * page_map;
 
+	/*
+	 * Push this inside:
+	 */
+	if (!(gfp_mask & __GFP_IO))
+		return 0;
+
 	zshm_swap(prio, gfp_mask);
 	counter = shm_rss >> prio;
 	if (!counter)

  parent reply	other threads:[~2000-09-24 19:34 UTC|newest]

Thread overview: 243+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-09-24 10:11 __GFP_IO && shrink_[d|i]cache_memory()? Ingo Molnar
2000-09-24 18:11 ` Linus Torvalds
2000-09-24 18:40   ` Ingo Molnar
2000-09-24 18:39     ` Linus Torvalds
2000-09-24 18:46       ` Linus Torvalds
2000-09-24 18:59         ` Ingo Molnar
2000-09-24 19:34         ` Ingo Molnar [this message]
2000-09-24 20:20           ` [patch] vmfixes-2.4.0-test9-B2 Rui Sousa
2000-09-24 20:24           ` Andrea Arcangeli
2000-09-24 20:26             ` Ingo Molnar
2000-09-24 21:12               ` Andrea Arcangeli
2000-09-24 21:12                 ` Ingo Molnar
2000-09-24 21:43                   ` Stephen C. Tweedie
2000-09-24 22:13                     ` Andrea Arcangeli
2000-09-24 22:36                       ` [patch] vmfixes-2.4.0-test9-B2 - fixing deadlocks bert hubert
2000-09-24 23:41                         ` Andrea Arcangeli
2000-09-25 16:24                           ` Stephen C. Tweedie
2000-09-25 17:03                             ` Andrea Arcangeli
2000-09-25 18:06                               ` Stephen C. Tweedie
2000-09-25 19:32                                 ` Andrea Arcangeli
2000-09-25 19:26                                   ` Rik van Riel
2000-09-25 22:28                                     ` Andrea Arcangeli
2000-09-25 22:26                                       ` Rik van Riel
2000-09-25 22:51                                         ` Andrea Arcangeli
2000-09-25 22:30                                       ` Linus Torvalds
2000-09-25 23:03                                         ` Andrea Arcangeli
2000-09-25 23:18                                           ` Linus Torvalds
2000-09-26  0:32                                             ` Andrea Arcangeli
2000-09-25 22:30                                       ` Juan J. Quintela
2000-09-25 23:00                                         ` Andrea Arcangeli
2000-09-25 19:54                                   ` Stephen C. Tweedie
2000-09-25 22:44                                     ` Andrea Arcangeli
2000-09-25 22:42                                       ` Rik van Riel
2000-09-26  6:54                                     ` Christoph Rohland
2000-09-26 14:05                                       ` Andrea Arcangeli
2000-09-26 16:20                                         ` Christoph Rohland
2000-09-26 17:10                                           ` Andrea Arcangeli
2000-09-27  8:11                                             ` Christoph Rohland
2000-09-27  8:28                                               ` Ingo Molnar
2000-09-27  9:24                                                 ` Christoph Rohland
2000-09-27 13:56                                               ` Andrea Arcangeli
2000-09-27 16:56                                                 ` Christoph Rohland
2000-09-27 17:42                                                   ` Andrea Arcangeli
2000-09-27 18:25                                                     ` Erik Andersen
2000-09-27 18:55                                                       ` Andrea Arcangeli
2000-09-28 10:08                                                 ` Rik van Riel
2000-09-28 11:16                                                   ` Rik van Riel
2000-09-28 14:52                                                     ` Andrea Arcangeli
2000-09-29 14:39                                                       ` Rik van Riel
2000-09-29 14:55                                                         ` Andrea Arcangeli
2000-09-29 15:40                                                           ` Rik van Riel
2000-09-28 11:31                                                   ` Ingo Molnar
2000-09-28 14:54                                                     ` Andrea Arcangeli
2000-09-28 15:13                                                       ` Ingo Molnar
2000-09-28 15:23                                                         ` Andrea Arcangeli
2000-09-28 16:16                                                         ` Juan J. Quintela
2000-09-28 14:31                                                   ` Andrea Arcangeli
2000-09-25 17:21                           ` bert hubert
2000-09-25 17:49                             ` Andrea Arcangeli
2000-09-25 15:09                         ` Miles Lane
2000-09-25 15:51                         ` Stephen C. Tweedie
2000-09-25 16:05                           ` Ingo Molnar
2000-09-25 16:06                             ` Alexander Viro
2000-09-25 16:20                               ` Ingo Molnar
2000-09-25 16:29                                 ` Andrea Arcangeli
2000-09-25  4:56                   ` [patch] vmfixes-2.4.0-test9-B2 Linus Torvalds
2000-09-25  5:19                     ` Alexander Viro
2000-09-25  6:06                       ` Linus Torvalds
2000-09-25  6:17                         ` Alexander Viro
2000-09-25 21:21                         ` Alexander Viro
2000-09-26 13:42                       ` [CFT][PATCH] ext2 directories in pagecache Alexander Viro
2000-09-26 21:29                       ` Alexander Viro
2000-09-26 22:16                         ` Marko Kreen
2000-09-26 22:31                           ` Alexander Viro
2000-09-26 22:47                             ` Marko Kreen
2000-09-27  7:32                               ` Ingo Molnar
2000-09-27  9:22                                 ` Alexander Viro
2000-09-26 23:19                         ` Andreas Dilger
2000-09-26 23:33                           ` Alexander Viro
2000-09-26 23:44                             ` Alexander Viro
2000-09-25  0:09                 ` [patch] vmfixes-2.4.0-test9-B2 Linus Torvalds
2000-09-25  0:49                   ` Alexander Viro
2000-09-25  0:53                   ` Marcelo Tosatti
2000-09-25  1:45                     ` Andrea Arcangeli
2000-09-25  2:39                       ` Marcelo Tosatti
2000-09-25 15:36                         ` Andrea Arcangeli
2000-09-25 10:42                     ` the new VM Ingo Molnar
2000-09-25 13:02                       ` Andrea Arcangeli
2000-09-25 13:02                         ` Ingo Molnar
2000-09-25 13:08                           ` Andrea Arcangeli
2000-09-25 13:12                             ` Ingo Molnar
2000-09-25 13:30                               ` Andrea Arcangeli
2000-09-25 13:39                                 ` Ingo Molnar
2000-09-25 14:04                                   ` Andrea Arcangeli
2000-09-25 14:04                                     ` Ingo Molnar
2000-09-25 14:23                                       ` Andrea Arcangeli
2000-09-25 14:27                                         ` Ingo Molnar
2000-09-25 14:39                                           ` Andrea Arcangeli
2000-09-25 14:43                                             ` Ingo Molnar
2000-09-25 15:01                                               ` Andrea Arcangeli
2000-09-25 15:10                                                 ` Ingo Molnar
2000-09-25 15:24                                                   ` Andrea Arcangeli
2000-09-25 15:26                                                     ` Ingo Molnar
2000-09-25 15:22                                                       ` yodaiken
2000-09-26 19:10                                                 ` Pavel Machek
2000-09-26 20:16                                                   ` Andrea Arcangeli
2000-09-27  7:42                                                   ` Ingo Molnar
2000-09-27 12:11                                                     ` yodaiken
2000-09-27 14:08                                                     ` Andrea Arcangeli
2000-09-25 16:09                                             ` Rik van Riel
2000-09-25 14:26                                     ` Marcelo Tosatti
2000-09-25 14:50                                       ` Andrea Arcangeli
2000-09-25 14:47                               ` Alan Cox
2000-09-25 15:16                                 ` Ingo Molnar
2000-09-25 15:16                                   ` the new VMt Alan Cox
2000-09-25 15:33                                     ` the new VM Ingo Molnar
2000-09-25 15:41                                     ` the new VMt Andrea Arcangeli
2000-09-25 16:02                                       ` Ingo Molnar
2000-09-25 16:04                                         ` Andi Kleen
2000-09-25 16:19                                           ` Ingo Molnar
2000-09-25 16:18                                             ` Andi Kleen
2000-09-25 16:41                                               ` Andrea Arcangeli
2000-09-25 16:35                                                 ` Linus Torvalds
2000-09-25 16:41                                                   ` Rik van Riel
2000-09-25 16:49                                                     ` Linus Torvalds
2000-09-25 17:03                                                       ` Ingo Molnar
2000-09-25 17:17                                                         ` Andrea Arcangeli
2000-09-25 17:10                                                           ` Rik van Riel
2000-09-25 17:27                                                             ` Andrea Arcangeli
2000-09-25 17:15                                                       ` Andrea Arcangeli
2000-09-27  7:14                                                   ` Rusty Russell
2000-09-25 20:23                                               ` Russell King
2000-09-25 16:28                                             ` Rik van Riel
2000-09-25 16:11                                         ` Andrea Arcangeli
2000-09-25 16:22                                           ` Ingo Molnar
2000-09-25 16:17                                             ` Alexander Viro
2000-09-25 16:36                                               ` Jeff Garzik
2000-09-25 16:57                                               ` Alan Cox
2000-09-25 17:01                                                 ` Alexander Viro
2000-09-25 17:06                                                   ` Alan Cox
2000-09-25 17:31                                                     ` Oliver Xymoron
2000-09-25 17:51                                                       ` Jeff Garzik
2000-09-25 19:03                                                     ` the new VMt [4MB+ blocks] Matti Aarnio
2000-09-25 20:02                                                       ` Stephen Williams
2000-09-25 16:33                                             ` the new VMt Andrea Arcangeli
2000-09-26  8:38                                             ` Jes Sorensen
2000-09-26  8:52                                               ` Ingo Molnar
2000-09-26  9:02                                                 ` Jes Sorensen
2000-09-25 16:53                                         ` Alan Cox
2000-09-25 15:42                                     ` Stephen C. Tweedie
2000-09-25 16:05                                       ` Andrea Arcangeli
2000-09-25 16:22                                         ` Rik van Riel
2000-09-25 16:42                                           ` Andrea Arcangeli
2000-09-25 17:39                                         ` Stephen C. Tweedie
2000-09-25 16:51                                       ` Alan Cox
2000-09-25 17:43                                         ` Stephen C. Tweedie
2000-09-25 18:13                                           ` Alan Cox
2000-09-25 18:21                                             ` Stephen C. Tweedie
2000-09-25 19:09                                               ` Alan Cox
2000-09-25 19:21                                                 ` Stephen C. Tweedie
2000-09-25 16:52                                       ` yodaiken
2000-09-25 17:18                                         ` Jamie Lokier
2000-09-25 17:51                                           ` yodaiken
2000-09-25 18:04                                             ` Jamie Lokier
2000-09-25 18:13                                               ` yodaiken
2000-09-25 18:24                                                 ` Stephen C. Tweedie
2000-09-25 18:34                                                   ` yodaiken
2000-09-25 18:48                                                     ` Jamie Lokier
2000-09-25 19:25                                                     ` Stephen C. Tweedie
2000-09-25 20:04                                                       ` yodaiken
2000-09-25 20:23                                                         ` Alan Cox
2000-09-25 20:35                                                           ` yodaiken
2000-09-25 20:46                                                             ` Alan Cox
2000-09-25 21:07                                                               ` yodaiken
2000-09-26  9:54                                                                 ` Stephen C. Tweedie
2000-09-26 13:17                                                                   ` yodaiken
2000-09-25 20:47                                                             ` Benjamin C.R. LaHaise
2000-09-25 21:12                                                               ` yodaiken
2000-09-26 10:07                                                                 ` Stephen C. Tweedie
2000-09-26 13:30                                                                   ` yodaiken
2000-09-25 20:32                                                         ` Stephen C. Tweedie
2000-09-26 12:10                                                           ` Mark Hemment
2000-09-27 10:13                                                             ` Andrey Savochkin
2000-09-27 12:55                                                               ` Hugh Dickins
2000-09-28  3:25                                                                 ` Andrey Savochkin
2000-09-25 23:14                                                         ` Erik Andersen
2000-09-26 15:17                                                           ` yodaiken
2000-09-26 16:04                                                             ` Stephen C. Tweedie
2000-09-26 17:02                                                               ` Erik Andersen
2000-09-26 17:08                                                                 ` Stephen C. Tweedie
2000-09-26 17:45                                                                   ` Erik Andersen
2000-09-27 10:20                                                                     ` Andrey Savochkin
2000-09-26 21:13                                                                   ` Eric Lowe
2000-09-25 18:20                                             ` Andrea Arcangeli
2000-09-25 16:16                                     ` Rik van Riel
2000-09-25 16:55                                       ` Alan Cox
2000-09-25 15:48                                   ` the new VM Andrea Arcangeli
2000-09-25 15:40                                 ` Stephen C. Tweedie
2000-09-25 16:01                                   ` Andrea Arcangeli
2000-09-25 14:37                             ` Rik van Riel
2000-09-25 20:34                               ` Christoph Rohland
2000-10-06 16:14                                 ` Rik van Riel
2000-10-09  7:37                                   ` Christoph Rohland
2000-09-25 13:04                         ` Ingo Molnar
2000-09-25 13:19                           ` Andrea Arcangeli
2000-09-25 13:18                             ` Ingo Molnar
2000-09-25 13:21                             ` Ingo Molnar
2000-09-25 13:31                               ` Andrea Arcangeli
2000-09-25 13:47                                 ` Ingo Molnar
2000-09-25 14:04                                   ` Andrea Arcangeli
2000-09-25  1:31                   ` [patch] vmfixes-2.4.0-test9-B2 Andrea Arcangeli
2000-09-25  1:27                     ` Alexander Viro
2000-09-25  2:02                       ` Andrea Arcangeli
2000-09-25  2:01                         ` Alexander Viro
2000-09-25 13:47                         ` Stephen C. Tweedie
2000-09-25 10:13                     ` Ingo Molnar
2000-09-25 12:58                       ` Andrea Arcangeli
2000-09-25 13:10                         ` Ingo Molnar
2000-09-25 13:49                           ` Jens Axboe
2000-09-25 14:11                             ` Ingo Molnar
2000-09-25 14:05                               ` Jens Axboe
2000-09-25 16:46                               ` Linus Torvalds
2000-09-25 17:05                                 ` Ingo Molnar
2000-09-25 17:23                                   ` Andrea Arcangeli
2000-09-25 14:20                             ` Andrea Arcangeli
2000-09-25 14:11                               ` Jens Axboe
2000-09-25 14:33                                 ` Andrea Arcangeli
2000-09-25 13:56                           ` Andrea Arcangeli
2000-09-25 13:57                             ` Ingo Molnar
2000-09-25 14:13                               ` Andrea Arcangeli
2000-09-25 14:08                                 ` Jens Axboe
2000-09-25 14:29                                   ` Andrea Arcangeli
2000-09-25 14:18                                     ` Jens Axboe
2000-09-25 14:47                                       ` Andrea Arcangeli
2000-09-25 21:28                                         ` Jens Axboe
2000-09-25 22:14                                           ` Andrea Arcangeli
2000-09-25 14:13                                 ` Ingo Molnar
2000-09-25 14:29                                 ` Ingo Molnar
2000-09-25 14:46                                   ` Andrea Arcangeli
2000-09-25 14:53                                     ` Ingo Molnar
2000-09-25 15:02                                       ` Andrea Arcangeli
2000-09-24 21:38     ` __GFP_IO && shrink_[d|i]cache_memory()? Stephen C. Tweedie
2000-09-24 23:20       ` Alan Cox

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Pine.LNX.4.21.0009242103390.7843-200000@elte.hu \
    --to=mingo@elte.hu \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=riel@conectiva.com.br \
    --cc=roger.larsson@norran.net \
    --cc=torvalds@transmeta.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox