From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753348AbYI3RJD (ORCPT ); Tue, 30 Sep 2008 13:09:03 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751642AbYI3RIy (ORCPT ); Tue, 30 Sep 2008 13:08:54 -0400 Received: from smtp1.linux-foundation.org ([140.211.169.13]:38592 "EHLO smtp1.linux-foundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751446AbYI3RIx (ORCPT ); Tue, 30 Sep 2008 13:08:53 -0400 Date: Tue, 30 Sep 2008 10:01:01 -0700 (PDT) From: Linus Torvalds To: Steven Rostedt cc: Peter Zijlstra , Jonathan Corbet , Mathieu Desnoyers , LKML , Ingo Molnar , Thomas Gleixner , Andrew Morton , prasad@linux.vnet.ibm.com, "Frank Ch. Eigler" , David Wilder , hch@lst.de, Martin Bligh , Christoph Hellwig , Masami Hiramatsu , Steven Rostedt , Arnaldo Carvalho de Melo Subject: Re: [PATCH v10 Golden] Unified trace buffer In-Reply-To: Message-ID: References: <20080929233539.GA31143@Krystal> <20080930000307.GA2929@Krystal> <20080930034603.GA13801@Krystal> <20080930092001.69849210@bike.lwn.net> <1222790072.24384.21.camel@twins> User-Agent: Alpine 2.00 (LFD 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, 30 Sep 2008, Steven Rostedt wrote: > > But I just realized that I could also just make a link list of page > pointers and do the exact same thing without having to worry about page > frames. Again, the way I coded this up, it is quite trivial to replace > the handling of the pages with other schemes. That might be the best option. Yes, doing it in the 'struct page' itself is obviously going to save us some memory over having specially allocated page headers, but it's not like we'd expect to have _that_ many of these, and having a separate structure is actually good in that it also would make it simpler/clearer when/if you want to add larger pages (or other non-page allocations) into the mix. For example, if somebody really wants bigger areas, they can allocate them with vmalloc and/or multi-page allocations, and then add them as easily to the list of pages as if it was a normal page. Doing the same with playing tricks on 'struct page' would be pretty damn painful. Linus