From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.1 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_PASS,URIBL_BLOCKED,USER_AGENT_NEOMUTT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1DEA5C43387 for ; Mon, 7 Jan 2019 11:13:28 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id DFE29218AD for ; Mon, 7 Jan 2019 11:13:27 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=linaro.org header.i=@linaro.org header.b="U1M2XDxC" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727109AbfAGLN0 (ORCPT ); Mon, 7 Jan 2019 06:13:26 -0500 Received: from mail-wr1-f66.google.com ([209.85.221.66]:34890 "EHLO mail-wr1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726798AbfAGLN0 (ORCPT ); Mon, 7 Jan 2019 06:13:26 -0500 Received: by mail-wr1-f66.google.com with SMTP id 96so9372wrb.2 for ; Mon, 07 Jan 2019 03:13:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=3pA23E08Ou4UE/RK4r5ROnSTnHv7+wxUPxO9WtpgEfg=; b=U1M2XDxCkrkb/9X5OuOqq9cer2Z46FPwnTFV/vtOM7B/BPCjFl65JqpajjTqAR/B7W qvEHX4xf9VVAgSCS+Eu7G0+9PDF1wKPwFiMgS+y8WbHJx1wstOy6Bq9IZlPr8iuQm5A4 a5lcNNoqrko6uCxd0gSrAVf/x7AkEULIRpzxQ= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=3pA23E08Ou4UE/RK4r5ROnSTnHv7+wxUPxO9WtpgEfg=; b=MJ3uklF2lR/k6FQX7/UIgZ+2uYhX0vTBw8LzuQTMo3lYQh/CyKZABZFHEf5Vf2Atbv fmcX9Nq1IOyHDiTNKPDxr9wuD7LuIX71RnZJeqYANPrJtICAI18QamTVcJbtqn+2jtIw hKQupy2TMfne2ZM1YsFcYdm8k6snmhsTboQmTadvZjYMUCHiAgdyYZWKVVCOq1IiQmEj DuFlzzC0JJeoKhgCV+FlsNiRW9EJJEpyTAgTUzEFWlrlbzno2dfqVgeBqrVvdxh41FZ1 x9aXhBJ89jTzpfTCiEwNUEtnhu4bZBbAy3QiRFc4D69IJ32ID+tlq6rsn140diLyqola Dywg== X-Gm-Message-State: AJcUukfjPXKxsnFfkSuUFQJyoTwmxMV0heE6n/YSIxBER6H7DFIIxEwV tyHyFt66UMUlT+iFIo0D/dhQ4A== X-Google-Smtp-Source: ALg8bN7REPLoDRjO0dnGcCTUS4EjNzRRKKZD4A0e1ocPcz1astS4eLLM0DXaL8q/JXOL6S+Gibuh6w== X-Received: by 2002:adf:e891:: with SMTP id d17mr55318752wrm.140.1546859604573; Mon, 07 Jan 2019 03:13:24 -0800 (PST) Received: from holly.lan (cpc141214-aztw34-2-0-cust773.18-1.cable.virginm.net. [86.9.19.6]) by smtp.gmail.com with ESMTPSA id m6sm42275336wrv.24.2019.01.07.03.13.23 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 07 Jan 2019 03:13:23 -0800 (PST) Date: Mon, 7 Jan 2019 11:13:21 +0000 From: Daniel Thompson To: Aditya Pakki Cc: kjlu@umn.edu, Lee Jones , Jingoo Han , Bartlomiej Zolnierkiewicz , dri-devel@lists.freedesktop.org, linux-fbdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] v2 bakclight: fix missing checks in ambient_light_zone_store Message-ID: <20190107111321.7d57uqvfdgz5sfb3@holly.lan> References: <20190105184807.4827-1-pakki001@umn.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190105184807.4827-1-pakki001@umn.edu> User-Agent: NeoMutt/20180716 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sat, Jan 05, 2019 at 12:48:07PM -0600, Aditya Pakki wrote: > In adp8870_bl_ambient_light_zone_store, set, clear, and write > can return an error but are not checked. The fix adds a check for these > cases and returns -1 to match the return type (ssize_t). Sorry... missed this before but there is also a typo in the Subject: line. Daniel. > > Signed-off-by: Aditya Pakki > --- > drivers/video/backlight/adp8870_bl.c | 16 +++++++++++++--- > 1 file changed, 13 insertions(+), 3 deletions(-) > > diff --git a/drivers/video/backlight/adp8870_bl.c b/drivers/video/backlight/adp8870_bl.c > index 8d50e0299578..56a640587a82 100644 > --- a/drivers/video/backlight/adp8870_bl.c > +++ b/drivers/video/backlight/adp8870_bl.c > @@ -800,10 +800,14 @@ static ssize_t adp8870_bl_ambient_light_zone_store(struct device *dev, > > if (val == 0) { > /* Enable automatic ambient light sensing */ > - adp8870_set_bits(data->client, ADP8870_MDCR, CMP_AUTOEN); > + ret = adp8870_set_bits(data->client, ADP8870_MDCR, CMP_AUTOEN); > + if (ret < 0) > + goto adp8870_bl_err; > } else if ((val > 0) && (val < 6)) { > /* Disable automatic ambient light sensing */ > - adp8870_clr_bits(data->client, ADP8870_MDCR, CMP_AUTOEN); > + ret = adp8870_clr_bits(data->client, ADP8870_MDCR, CMP_AUTOEN); > + if (ret < 0) > + goto adp8870_bl_err; > > /* Set user supplied ambient light zone */ > mutex_lock(&data->lock); > @@ -811,12 +815,18 @@ static ssize_t adp8870_bl_ambient_light_zone_store(struct device *dev, > if (!ret) { > reg_val &= ~(CFGR_BLV_MASK << CFGR_BLV_SHIFT); > reg_val |= (val - 1) << CFGR_BLV_SHIFT; > - adp8870_write(data->client, ADP8870_CFGR, reg_val); > + ret = adp8870_write(data->client, ADP8870_CFGR, > + reg_val); > } > mutex_unlock(&data->lock); > + if (ret < 0) > + goto adp8870_bl_err; > } > > return count; > + > +adp8870_bl_err: > + return -1; > } > static DEVICE_ATTR(ambient_light_zone, 0664, > adp8870_bl_ambient_light_zone_show, > -- > 2.17.1 > From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Thompson Date: Mon, 07 Jan 2019 11:13:21 +0000 Subject: Re: [PATCH] v2 bakclight: fix missing checks in ambient_light_zone_store Message-Id: <20190107111321.7d57uqvfdgz5sfb3@holly.lan> List-Id: References: <20190105184807.4827-1-pakki001@umn.edu> In-Reply-To: <20190105184807.4827-1-pakki001@umn.edu> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Aditya Pakki Cc: linux-fbdev@vger.kernel.org, Bartlomiej Zolnierkiewicz , Jingoo Han , kjlu@umn.edu, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Lee Jones On Sat, Jan 05, 2019 at 12:48:07PM -0600, Aditya Pakki wrote: > In adp8870_bl_ambient_light_zone_store, set, clear, and write > can return an error but are not checked. The fix adds a check for these > cases and returns -1 to match the return type (ssize_t). Sorry... missed this before but there is also a typo in the Subject: line. Daniel. > > Signed-off-by: Aditya Pakki > --- > drivers/video/backlight/adp8870_bl.c | 16 +++++++++++++--- > 1 file changed, 13 insertions(+), 3 deletions(-) > > diff --git a/drivers/video/backlight/adp8870_bl.c b/drivers/video/backlight/adp8870_bl.c > index 8d50e0299578..56a640587a82 100644 > --- a/drivers/video/backlight/adp8870_bl.c > +++ b/drivers/video/backlight/adp8870_bl.c > @@ -800,10 +800,14 @@ static ssize_t adp8870_bl_ambient_light_zone_store(struct device *dev, > > if (val = 0) { > /* Enable automatic ambient light sensing */ > - adp8870_set_bits(data->client, ADP8870_MDCR, CMP_AUTOEN); > + ret = adp8870_set_bits(data->client, ADP8870_MDCR, CMP_AUTOEN); > + if (ret < 0) > + goto adp8870_bl_err; > } else if ((val > 0) && (val < 6)) { > /* Disable automatic ambient light sensing */ > - adp8870_clr_bits(data->client, ADP8870_MDCR, CMP_AUTOEN); > + ret = adp8870_clr_bits(data->client, ADP8870_MDCR, CMP_AUTOEN); > + if (ret < 0) > + goto adp8870_bl_err; > > /* Set user supplied ambient light zone */ > mutex_lock(&data->lock); > @@ -811,12 +815,18 @@ static ssize_t adp8870_bl_ambient_light_zone_store(struct device *dev, > if (!ret) { > reg_val &= ~(CFGR_BLV_MASK << CFGR_BLV_SHIFT); > reg_val |= (val - 1) << CFGR_BLV_SHIFT; > - adp8870_write(data->client, ADP8870_CFGR, reg_val); > + ret = adp8870_write(data->client, ADP8870_CFGR, > + reg_val); > } > mutex_unlock(&data->lock); > + if (ret < 0) > + goto adp8870_bl_err; > } > > return count; > + > +adp8870_bl_err: > + return -1; > } > static DEVICE_ATTR(ambient_light_zone, 0664, > adp8870_bl_ambient_light_zone_show, > -- > 2.17.1 > From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Thompson Subject: Re: [PATCH] v2 bakclight: fix missing checks in ambient_light_zone_store Date: Mon, 7 Jan 2019 11:13:21 +0000 Message-ID: <20190107111321.7d57uqvfdgz5sfb3@holly.lan> References: <20190105184807.4827-1-pakki001@umn.edu> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wr1-x443.google.com (mail-wr1-x443.google.com [IPv6:2a00:1450:4864:20::443]) by gabe.freedesktop.org (Postfix) with ESMTPS id 010586E49D for ; Mon, 7 Jan 2019 11:13:25 +0000 (UTC) Received: by mail-wr1-x443.google.com with SMTP id x10so42733081wrs.8 for ; Mon, 07 Jan 2019 03:13:25 -0800 (PST) Content-Disposition: inline In-Reply-To: <20190105184807.4827-1-pakki001@umn.edu> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Aditya Pakki Cc: linux-fbdev@vger.kernel.org, Bartlomiej Zolnierkiewicz , Jingoo Han , kjlu@umn.edu, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Lee Jones List-Id: dri-devel@lists.freedesktop.org T24gU2F0LCBKYW4gMDUsIDIwMTkgYXQgMTI6NDg6MDdQTSAtMDYwMCwgQWRpdHlhIFBha2tpIHdy b3RlOgo+IEluIGFkcDg4NzBfYmxfYW1iaWVudF9saWdodF96b25lX3N0b3JlLCBzZXQsIGNsZWFy LCBhbmQgd3JpdGUKPiBjYW4gcmV0dXJuIGFuIGVycm9yIGJ1dCBhcmUgbm90IGNoZWNrZWQuIFRo ZSBmaXggYWRkcyBhIGNoZWNrIGZvciB0aGVzZQo+IGNhc2VzIGFuZCByZXR1cm5zIC0xIHRvIG1h dGNoIHRoZSByZXR1cm4gdHlwZSAoc3NpemVfdCkuCgpTb3JyeS4uLiBtaXNzZWQgdGhpcyBiZWZv cmUgYnV0IHRoZXJlIGlzIGFsc28gYSB0eXBvIGluIHRoZSBTdWJqZWN0OgpsaW5lLgoKCkRhbmll bC4KCj4gCj4gU2lnbmVkLW9mZi1ieTogQWRpdHlhIFBha2tpIDxwYWtraTAwMUB1bW4uZWR1PgoK PiAtLS0KPiAgZHJpdmVycy92aWRlby9iYWNrbGlnaHQvYWRwODg3MF9ibC5jIHwgMTYgKysrKysr KysrKysrKy0tLQo+ICAxIGZpbGUgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlv bnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy92aWRlby9iYWNrbGlnaHQvYWRwODg3MF9i bC5jIGIvZHJpdmVycy92aWRlby9iYWNrbGlnaHQvYWRwODg3MF9ibC5jCj4gaW5kZXggOGQ1MGUw Mjk5NTc4Li41NmE2NDA1ODdhODIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy92aWRlby9iYWNrbGln aHQvYWRwODg3MF9ibC5jCj4gKysrIGIvZHJpdmVycy92aWRlby9iYWNrbGlnaHQvYWRwODg3MF9i bC5jCj4gQEAgLTgwMCwxMCArODAwLDE0IEBAIHN0YXRpYyBzc2l6ZV90IGFkcDg4NzBfYmxfYW1i aWVudF9saWdodF96b25lX3N0b3JlKHN0cnVjdCBkZXZpY2UgKmRldiwKPiAgCj4gIAlpZiAodmFs ID09IDApIHsKPiAgCQkvKiBFbmFibGUgYXV0b21hdGljIGFtYmllbnQgbGlnaHQgc2Vuc2luZyAq Lwo+IC0JCWFkcDg4NzBfc2V0X2JpdHMoZGF0YS0+Y2xpZW50LCBBRFA4ODcwX01EQ1IsIENNUF9B VVRPRU4pOwo+ICsJCXJldCA9IGFkcDg4NzBfc2V0X2JpdHMoZGF0YS0+Y2xpZW50LCBBRFA4ODcw X01EQ1IsIENNUF9BVVRPRU4pOwo+ICsJCWlmIChyZXQgPCAwKQo+ICsJCQlnb3RvIGFkcDg4NzBf YmxfZXJyOwo+ICAJfSBlbHNlIGlmICgodmFsID4gMCkgJiYgKHZhbCA8IDYpKSB7Cj4gIAkJLyog RGlzYWJsZSBhdXRvbWF0aWMgYW1iaWVudCBsaWdodCBzZW5zaW5nICovCj4gLQkJYWRwODg3MF9j bHJfYml0cyhkYXRhLT5jbGllbnQsIEFEUDg4NzBfTURDUiwgQ01QX0FVVE9FTik7Cj4gKwkJcmV0 ID0gYWRwODg3MF9jbHJfYml0cyhkYXRhLT5jbGllbnQsIEFEUDg4NzBfTURDUiwgQ01QX0FVVE9F Tik7Cj4gKwkJaWYgKHJldCA8IDApCj4gKwkJCWdvdG8gYWRwODg3MF9ibF9lcnI7Cj4gIAo+ICAJ CS8qIFNldCB1c2VyIHN1cHBsaWVkIGFtYmllbnQgbGlnaHQgem9uZSAqLwo+ICAJCW11dGV4X2xv Y2soJmRhdGEtPmxvY2spOwo+IEBAIC04MTEsMTIgKzgxNSwxOCBAQCBzdGF0aWMgc3NpemVfdCBh ZHA4ODcwX2JsX2FtYmllbnRfbGlnaHRfem9uZV9zdG9yZShzdHJ1Y3QgZGV2aWNlICpkZXYsCj4g IAkJaWYgKCFyZXQpIHsKPiAgCQkJcmVnX3ZhbCAmPSB+KENGR1JfQkxWX01BU0sgPDwgQ0ZHUl9C TFZfU0hJRlQpOwo+ICAJCQlyZWdfdmFsIHw9ICh2YWwgLSAxKSA8PCBDRkdSX0JMVl9TSElGVDsK PiAtCQkJYWRwODg3MF93cml0ZShkYXRhLT5jbGllbnQsIEFEUDg4NzBfQ0ZHUiwgcmVnX3ZhbCk7 Cj4gKwkJCXJldCA9IGFkcDg4NzBfd3JpdGUoZGF0YS0+Y2xpZW50LCBBRFA4ODcwX0NGR1IsCj4g KwkJCQkJCXJlZ192YWwpOwo+ICAJCX0KPiAgCQltdXRleF91bmxvY2soJmRhdGEtPmxvY2spOwo+ ICsJCWlmIChyZXQgPCAwKQo+ICsJCQlnb3RvIGFkcDg4NzBfYmxfZXJyOwo+ICAJfQo+ICAKPiAg CXJldHVybiBjb3VudDsKPiArCj4gK2FkcDg4NzBfYmxfZXJyOgo+ICsJcmV0dXJuIC0xOwo+ICB9 Cj4gIHN0YXRpYyBERVZJQ0VfQVRUUihhbWJpZW50X2xpZ2h0X3pvbmUsIDA2NjQsCj4gIAkJYWRw ODg3MF9ibF9hbWJpZW50X2xpZ2h0X3pvbmVfc2hvdywKPiAtLSAKPiAyLjE3LjEKPiAKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxp bmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==