From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757162AbcLPHgx (ORCPT ); Fri, 16 Dec 2016 02:36:53 -0500 Received: from mail-wm0-f68.google.com ([74.125.82.68]:35321 "EHLO mail-wm0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753839AbcLPHgp (ORCPT ); Fri, 16 Dec 2016 02:36:45 -0500 Date: Fri, 16 Dec 2016 08:36:32 +0100 From: Daniel Vetter To: Greg KH Cc: "Jason A. Donenfeld" , Christoph Hellwig , Thomas Hellstrom , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Daniel Vetter Subject: Re: [PATCH] kref: prefer atomic_inc_not_zero to atomic_add_unless Message-ID: <20161216073632.ma3fqcjhgzfyebog@phenom.ffwll.local> Mail-Followup-To: Greg KH , "Jason A. Donenfeld" , Christoph Hellwig , Thomas Hellstrom , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org References: <20161215185554.21931-1-Jason@zx2c4.com> <20161215191049.GB19707@kroah.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20161215191049.GB19707@kroah.com> X-Operating-System: Linux phenom 4.8.0-1-amd64 User-Agent: NeoMutt/20161126 (1.7.1) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Dec 15, 2016 at 11:10:49AM -0800, Greg KH wrote: > On Thu, Dec 15, 2016 at 07:55:54PM +0100, Jason A. Donenfeld wrote: > > On most platforms, there exists this ifdef: > > > > #define atomic_inc_not_zero(v) atomic_add_unless((v), 1, 0) > > > > This makes this patch functionally useless. However, on PPC, there is > > actually an explicit definition of atomic_inc_not_zero with its own > > assembly that is slightly more optimized than atomic_add_unless. So, > > this patch changes kref to use atomic_inc_not_zero instead, for PPC and > > any future platforms that might provide an explicit implementation. > > > > This also puts this usage of kref more in line with a verbatim reading > > of the examples in Paul McKenney's paper [1] in the section titled "2.4 > > Atomic Counting With Check and Release Memory Barrier", which uses > > atomic_inc_not_zero. > > > > [1] http://open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2167.pdf > > > > Signed-off-by: Jason A. Donenfeld > > Reviewed-by: Thomas Hellstrom > > Reviewed-by: Christoph Hellwig > > --- > > Sorry to submit this again, but people keep reviewing it saying it's fine, > > but then point to somebody else to actually merge this. At the end of the > > chain of fingerpointing is usually Greg. "Just have Greg do it." At this > > point I'm confused, but it's certainly been sufficiently reviewed and > > accepted. So can one of you just respond saying "I'll take it!" > > Well, the crazies over in drm land were the ones that merged this new > api, so they should be the ones responsible for it. But that was way > back in 2012, odds are they don't remember it given the lunacy that is > their subsystem... We do, it's just that I couldn't find Jason's patch when Thomas reviewed it and asked for a resend and it took Jason a while to do that ... Maybe we even remember this api way too well, we're constantly adding new users of it in drm ;-) > I'll take it after 4.10-rc1 is out, thanks. Oh, here's another resubmission of this patch. I've already applied this to my 4.11 queue, will show up in linux-next as soon as -rc1 is out. Thanks, Daniel -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch