From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christoph Lameter Date: Thu, 31 Mar 2005 15:35:00 +0000 Subject: Re: Fwd: [PATCH] Pageset Localization V2 Message-Id: List-Id: References: <20050330111439.GA13110@infradead.org> <1112187977.9773.15.camel@kuber> <20050331143235.GA18058@infradead.org> In-Reply-To: <20050331143235.GA18058@infradead.org> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Christoph Hellwig Cc: shobhit dayal , manfred@colorfullife.com, akpm@osdl.org, linux-kernel@vger.kernel.org, linux-ia64@vger.kernel.org, linux-mm@kvack.org, Shai Fultheim On Thu, 31 Mar 2005, Christoph Hellwig wrote: > On Wed, Mar 30, 2005 at 06:36:18PM +0530, shobhit dayal wrote: > > The goal here is to replace the head of a existing list pointed to by > > 'list' with a new head pointed to by 'nlist'. > > First there is a memcpy that copies the contents of list to nlist then > > this macro is called. > > The macro makes sure that if the old head was empty then INIT_LIST_HEAD > > the 'nlist', if not then make sure that the nodes before and after the > > head now correclty point to nlist instead of list. > > Which would be much nicer done using INIT_LIST_HEAD on the new head > always and then calling list_replace (of which currently only a _rcu variant > exists). > > Note to Christoph: Just duplicating the code doesn't make it better ;-) I will need the loop there for the prezeroing stuff later.