Received: by 2002:ac0:a581:0:0:0:0:0 with SMTP id m1-v6csp6650686imm; Wed, 27 Jun 2018 10:54:57 -0700 (PDT) X-Google-Smtp-Source: AAOMgper005A92taq76jwQkOn8tzSm/mmCPkcDI34sBVge9hjk+wRPeFxfxbd12T/zDtPh9KqEGy X-Received: by 2002:a62:574d:: with SMTP id l74-v6mr6919194pfb.29.1530122097365; Wed, 27 Jun 2018 10:54:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1530122097; cv=none; d=google.com; s=arc-20160816; b=eMaunexWRjqGg7apQFytpNPeWDAwzE22wA+XJ3m+638igNYGDNmPpUkQmPW6W5tgoF 1Hk+OFzdKJTYZcYdwWV1eyYJuCASRdm44/mDNbW05AKEjIJUvMEyYpAGYbAOffBEjWA9 7f+Xfzxafu+wyduUPrt3bVHlkzD3OACzNXzaH8lgsxrd+/Ht/ANGZpBJxqUGCcs4UHMl I6YOH7UoamX6onbPEQPLgynOdije2XQSnoMGu9C+C9c4RILg+QO/2OtiK6xWDEp7sNY7 LsXiPxH44w8TBzwvPrw4JzGt4267XIs42Ae1Ln7B95kGgYCDTAG+Sy+YM/UbFkZ8I33W WEfA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:dkim-signature :arc-authentication-results; bh=JQSAHiz3vgWm5u0WtmxgZsiEbgd+Ag7HGqtiMnG7AbE=; b=xSxYnKBnnVokhJJJeGr6stSFXBO0Bhmzt2x03HjOlv4jaIuGBsLmbTUKRVRXmgZvq+ tLbJLaElQUaFlNgQu78Rdq4X+C3vjpXkrRT8rWmbrKGAZSFGoq7RpEiX2nEpyCjMcbhO pgu+aHGsxWNbCR5jUvQj9Gbb4Bsla4LCCdaVDdVIOFmWCKFvARYpUIQLmzppeWCZodYf tzy9J9s1fwwKoDg8Ls2ysARqY6Fq7Lu8Sqyyhe4GCR5Ep5vQf1tbigTmpIVom2x0cCEY TXScNIVad8aoLN57ZkT7OhoQ/psB4Hv2vMfG0EFZ6s06TXxvC+jCfUfSPhsmy1Rzsc7H JYiA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=QTbbuih2; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id p14-v6si4361366plo.357.2018.06.27.10.54.42; Wed, 27 Jun 2018 10:54:57 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=QTbbuih2; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965461AbeF0Rx4 (ORCPT + 99 others); Wed, 27 Jun 2018 13:53:56 -0400 Received: from mail-ua0-f196.google.com ([209.85.217.196]:34482 "EHLO mail-ua0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933133AbeF0Rxx (ORCPT ); Wed, 27 Jun 2018 13:53:53 -0400 Received: by mail-ua0-f196.google.com with SMTP id r10-v6so1833262uao.1; Wed, 27 Jun 2018 10:53:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=JQSAHiz3vgWm5u0WtmxgZsiEbgd+Ag7HGqtiMnG7AbE=; b=QTbbuih2T6ARZq2qO3YT0Vf5c+FiU5Lo7ZvG2WkTkHHlOOVCARCvUrJUZCHh5uCGQK sfoYXkHPXJa1mEyCAjBKcbpHZ3SBlO/9f0oEqfrxV/Zl+Opo/hET6767bmVKuV2nRtd+ VnUP73QI47iRRO3z6C239miAW4b5t7IAJRtktk7MvDaWY3fVEjyA0ZhuSFlahcZuoujK VrBaShWUtWQbfhI5cKIHbP++iD99OKD9WyjTvzywNQ6u8z+O8gGRjn73WUYvaEkojg9w /EE+4oOxkLGfRty7lBMxCLlSPGemvCdG+BjsII0jNb38vSZS8/W4gdyL+1rrBkDQtsaL iK7w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=JQSAHiz3vgWm5u0WtmxgZsiEbgd+Ag7HGqtiMnG7AbE=; b=Io0BQ+tjb99955MqwXzDMxLazdGKqZxKsFOre25MlMJfJzF+oY8RSfr4EhgMwc28Zi ZGpj0t81VercK9p9YXGGWP2SHwlbnlouwhJ3DgI2Fynu24nHUnlNcEWy33uoHtHLNi2/ 8B5w+4TvFskLQ5MKHDYEMq0LoavubvjpXKqrcAlGumdG9OXwGUIqsLAnjckNHTjDFCCQ rRkGbrH8yCdf7Yej2P0EyxHALKFYQqONRyoAKLxBSmPgtloeuWmLSun9EzoOz+CfuHJb sEgCYQ2K/dZ1wB83RBAFRlMrKe+sHXe+82erS/FfoquSKa7pKNzkPMrrDieoBJNeSd0u 0SKA== X-Gm-Message-State: APt69E03EuZRrwSBuRuXhD4GijWa3mRX0mJzjIAawgquMT2ECj8Z3QBz l5sMU5TWiJl1vr/Nzf2PxD7TgqEo5hw8PAKkqjk= X-Received: by 2002:ab0:15ad:: with SMTP id i42-v6mr4361511uae.199.1530122031864; Wed, 27 Jun 2018 10:53:51 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a67:8b02:0:0:0:0:0 with HTTP; Wed, 27 Jun 2018 10:53:51 -0700 (PDT) In-Reply-To: <20180626234638.076fb816@bbrezillon> References: <20180622104930.32050-1-boris.brezillon@bootlin.com> <20180622104930.32050-10-boris.brezillon@bootlin.com> <20180626215648.1472b96e@bbrezillon> <20180626234638.076fb816@bbrezillon> From: Andy Shevchenko Date: Wed, 27 Jun 2018 20:53:51 +0300 Message-ID: Subject: Re: [PATCH v5 09/10] gpio: Add a driver for Cadence I3C GPIO expander To: Boris Brezillon Cc: Wolfram Sang , linux-i2c , Jonathan Corbet , Linux Documentation List , Greg Kroah-Hartman , Arnd Bergmann , Przemyslaw Sroka , Arkadiusz Golec , Alan Douglas , Bartosz Folta , Damian Kos , Alicja Jurasik-Urbaniak , Cyprian Wronka , Suresh Punnoose , Rafal Ciepiela , Thomas Petazzoni , Nishanth Menon , Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala , devicetree , Linux Kernel Mailing List , Vitor Soares , Geert Uytterhoeven , Linus Walleij , Xiang Lin , "open list:GPIO SUBSYSTEM" , Sekhar Nori , Przemyslaw Gaj Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Jun 27, 2018 at 12:46 AM, Boris Brezillon wrote: > On Tue, 26 Jun 2018 23:44:36 +0300 > Andy Shevchenko wrote: >> On Tue, Jun 26, 2018 at 10:56 PM, Boris Brezillon >> wrote: >> > On Tue, 26 Jun 2018 22:07:03 +0300 >> > Andy Shevchenko wrote: >> >> On Fri, Jun 22, 2018 at 1:49 PM, Boris Brezillon >> >> wrote: >> > I'll say it here because this is not the first time I'm pissed off by >> > one of your review. >> >> Like 'I like offending people, because I think people who get offended >> should be offended.' ? >> I'm not that guy, relax. > > I'm not offended, just annoyed, and not because I have things to change > in my patchset (I'm used to that and that's something I comply with > most of the time), but because the only reviews I had from you were of > this kind (nitpicking on minor stuff). OK, point taken. >> > and most of the time your reviews are superficial (focused on tiny >> > details or coding style issues). Don't you have better things to do? >> >> If your code is written using ancient style and / or API it's not good >> to start with. >> Isn't it? Otherwise, why we do introduce new internal APIs, for what purpose? > > Come on! > > - kzalloc() vs kmalloc_array() > - for (i = 0; i < n, i++) { if (BIT(x) & var) ... } > vs > for_each_bit_set() (which is not even applicable here because I'm > not manipulating an unsigned long) > > Where do you see ancient style APIs here? Both. kmalloc_array() and for_each_set_bit() were introduced quite long time ago. On top of that you are open coding, if I'm not mistaken, cpu_to_be32() and be32_to_cpu(). ...and more I believe. > And that's not even the problem. I'm okay to fix those things, but you > only ever do these kind of reviews, and sometime you even act like you > know better than the developer or the maintainer how the code should be > organized without even digging enough to have a clue (your comment on > the fact that mask should not be a pointer is a good example of such > situations). "sometime". Yes, I admit my mistakes. >> On top of that you might find more interesting reviews where I pointed >> out to a memory leak or other nasty stuff. But of course you prefer >> not to norice that. > > Yes, sometime you have valid point, but it gets lost in all the noise. Btw, you forgot to call of_node_put() on error path in one case. Did I again missed the details? >> > I mean, I'm fine when I get such comments from people that also do >> > useful comments, but yours are most of the time useless and sometime >> > even wrong because you didn't time to look at the code in details. >> >> Calm down, please. > > Why? Because I say you didn't look at the code in details? Isn't it > true? Did you look at what I3C is, how it works or how the I3C framework > is architectured? Because that's the kind of reviews I'd love to have on > this series. You got me. I have a copy of the spec, this require a bit of time to go through. For now I can offer you to consider IBI implementation using IRQ chip framework. It would give few advantages (like we do this for GPIO), such as IRQ statistics or wake up capabilities. >> You would simple ignore them. Your choice. > > That's not my point. My point is, maybe you should do less reviews but > spend more time on each of them Good point. > so you don't just scratch the surface > with comments I could get from a tool like checkpatch. Perhaps you should run checkpatch yourself then? -- With Best Regards, Andy Shevchenko