Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755900AbbDIQ7u (ORCPT ); Thu, 9 Apr 2015 12:59:50 -0400 Received: from bombadil.infradead.org ([198.137.202.9]:37751 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752863AbbDIQ7s (ORCPT ); Thu, 9 Apr 2015 12:59:48 -0400 Date: Thu, 9 Apr 2015 18:59:17 +0200 From: Peter Zijlstra To: Linus Torvalds Cc: Lai Jiangshan , Ingo Molnar , Rusty Russell , Mathieu Desnoyers , Oleg Nesterov , Paul McKenney , Linux Kernel Mailing List , Andi Kleen , Steven Rostedt , Thomas Gleixner , Michel Lespinasse , Andrea Arcangeli , David Woodhouse , Rik van Riel Subject: Re: [PATCH v4 6/9] rbtree: Implement generic latch_tree Message-ID: <20150409165917.GQ21418@twins.programming.kicks-ass.net> References: <20150408164813.810874878@infradead.org> <20150408170044.130755544@infradead.org> <552633A3.5020502@cn.fujitsu.com> <20150409081420.GM5029@twins.programming.kicks-ass.net> <55263E69.3020305@cn.fujitsu.com> <20150409121336.GU5029@twins.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2012-12-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1112 Lines: 30 On Thu, Apr 09, 2015 at 09:31:16AM -0700, Linus Torvalds wrote: > On Thu, Apr 9, 2015 at 5:13 AM, Peter Zijlstra wrote: > > > > struct latch_tree_node { > > + struct rb_node node[2]; > > }; > > > > +static __always_inline struct latch_tree_node * > > +__lt_from_rb(struct rb_node *node, int idx) > > +{ > > + return container_of(node, struct latch_tree_node, node[idx]); > > +} > > Ugh. That syntax of offset_of() worries me a bit, but some grepping > shows that we already use this form of offset_of() in parts of the > kernel, so I guess it's fine. I was a little surprised myself it worked, but its a constant after all so it 'should'. > Even with that small "Ugh", I do have to admit to preferring this to > having the back-pointer. Yeah me too, I'll respin the patches proper after I've given it some actual runtime too. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/