From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756215AbYIRUw3 (ORCPT ); Thu, 18 Sep 2008 16:52:29 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753892AbYIRUwU (ORCPT ); Thu, 18 Sep 2008 16:52:20 -0400 Received: from smtp-out.google.com ([216.239.33.17]:7211 "EHLO smtp-out3.google.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753482AbYIRUwU (ORCPT ); Thu, 18 Sep 2008 16:52:20 -0400 DomainKey-Signature: a=rsa-sha1; s=beta; d=google.com; c=nofws; q=dns; h=message-id:date:from:to:subject:cc:in-reply-to: mime-version:content-type:content-transfer-encoding: content-disposition:references; b=K5M7mocjk1AzuQOexo3eWyVsbbsbNAAzhQAamM8cgnyzOioMZCI2QuK4ZBWhUNaX5 xPuniGnbxFFQvG/acBt0Q== Message-ID: <33307c790809181352h14f2cf26kc73de75b939177b5@mail.gmail.com> Date: Thu, 18 Sep 2008 13:52:04 -0700 From: "Martin Bligh" To: "Jeremy Fitzhardinge" Subject: Re: Populating multiple ptes at fault time Cc: "Christoph Lameter" , "Chris Snook" , "Nick Piggin" , "Hugh Dickens" , "Linux Memory Management List" , "Linux Kernel Mailing List" , "Avi Kivity" , "Andrew Morton" , "Rik van Riel" In-Reply-To: <48D2A392.6010308@goop.org> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <48D142B2.3040607@goop.org> <48D1625C.7000309@redhat.com> <48D17A93.4000803@goop.org> <48D29AFB.5070409@linux-foundation.org> <48D2A392.6010308@goop.org> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org > > Thanks, that was exactly what I was hoping to see. I didn't see any > definitive statements against the patch set, other than a concern that > it could make things worse. Was the upshot that no consensus was > reached about how to detect when its beneficial to preallocate anonymous > pages? > > Martin, in that thread you mentioned that you had tried pre-populating > file-backed mappings as well, but "Mmmm ... we tried doing this before > for filebacked pages by sniffing the > pagecache, but it crippled forky workloads (like kernel compile) with the > extra cost in zap_pte_range, etc. ". > > Could you describe, or have a pointer to, what you tried and how it > turned out? Don't have the patches still, but it was fairly simple - just faulted in the next 3 pages whenever we took a fault, if the pages were already in pagecache. I would have thought that was pretty lightweight and non-invasive, but turns out it slowed things down. > Did you end up populating so many (unused) ptes that > zap_pte_range needed to do lots more work? Yup, basically you're assuming good locality of reference, but it turns out that (as davej would say) "userspace sucks".