From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from neon.transmeta.com (neon-best.transmeta.com [206.184.214.10]) by kvack.org (8.8.7/8.8.7) with ESMTP id PAA23179 for ; Sun, 10 Jan 1999 15:51:42 -0500 Date: Sun, 10 Jan 1999 12:50:01 -0800 (PST) From: Linus Torvalds Subject: Re: Results: pre6 vs pre6+zlatko's_patch vs pre5 vs arcavm13 In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-linux-mm@kvack.org To: Andrea Arcangeli Cc: Steve Bergman , brent verner , "Garst R. Reese" , Kalle Andersson , Zlatko Calusic , Ben McCann , bredelin@ucsd.edu, linux-kernel@vger.rutgers.edu, linux-mm@kvack.org, Alan Cox , "Stephen C. Tweedie" List-ID: On Sun, 10 Jan 1999, Andrea Arcangeli wrote: > > Steve, could you try the image test in 128Mbyte with this my new patch > (arca-vm-14) applyed against clean 2.2.0-pre6? Please don't do this. > do { > int result; > - tsk->swap_address = address + PAGE_SIZE; > result = try_to_swap_out(tsk, vma, address, pte, gfp_mask); > + address += PAGE_SIZE; > + tsk->swap_address = address; The above is horribly broken, and should be killed on sight. "swap_address" _must_ be set before try_to_swap_out(), because otherwise when try-to_swap_out() sleeps any other processes trying to free will start from the wrong address - unfairly penalizing the process in question, as the accessed bits have been cleared. If the above help, it only does so because it is unfair - which _can_ help simply because other processes run faster. It looks like you tried to optimize away one add, at the expense of getting the whole algorithm wrong. Linus -- This is a majordomo managed list. To unsubscribe, send a message with the body 'unsubscribe linux-mm me@address' to: majordomo@kvack.org