Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp3842032imm; Mon, 30 Jul 2018 04:35:38 -0700 (PDT) X-Google-Smtp-Source: AAOMgpeHDKYcrh7SNrPoBJ6VYaxKHRi3VtusmVKicXLcaF5hCLU+MzMCJNaBCI1+SqdgsF8iubWo X-Received: by 2002:a17:902:7898:: with SMTP id q24-v6mr15703400pll.222.1532950538661; Mon, 30 Jul 2018 04:35:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1532950538; cv=none; d=google.com; s=arc-20160816; b=iTMQgQa6l47XKGSKyMwWR1inT3guxXPwi+DgMcdKw0HL7q1/wAO7TfZqbjWjILlPxz ot3OjAmoAT1y4VRYnjJoteYJ731Xf7Y4EaOR/YjtoYKZXPOOaCCM9rrFRS3RXuLZgiBN Ik2pb31YcmZjxIIVR0mzOSPcCV7I8ZQqItvjWUXNCxgXj7ti5OyLijRKwEcMvMIgelK2 kaDavZvHwXI0pjDerFn2YstvUZ1DjhMKxclVTr/NwcT1WVh/sE4noiks32nkYLojioLr YXK9MX2T6EEIYPPo73c+ya5cKrMk8nlmyNTIeNEUmgcUM+53yWjpehOKemapTeCP8rhQ MOiw== 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=nWShXJmGmXSlTLqNmjGYfc5vkz4s0/MZQiJBE64CPfE=; b=u73qV2k/y6X5Uk1c+6q3mr7tSwoEOjje/5/Nb+0PCCPk1BefIXarQbbeKF9eI66OSo 7gFOljaYC7VKDFd1SDBXSalqD6G4CSnSt3crwUHFimhv/ODTgWggF2Bn5U2UrOVg5owg e6kvKCo2xoQXcRB/PrwrvAK+FzxhdND89K5Nic9JSAGToIWNyuA0uxP67BpNMY8WWomh kKglO5Qm03KmxlGktQzmJSi4lw8rlF9DUlzq8kEqKrWpQB3527hzk5ZdvePzDSXKEdOV n1CR1+/vO6E2PNKhfEdrMwMxd+Xt+O8wM9zpPM319ThPHRcJoO3c72MEKvg0OC9wzeyS eW3w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=itvvkVX4; 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=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t7-v6si5453601pgh.307.2018.07.30.04.35.23; Mon, 30 Jul 2018 04:35:38 -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=@linaro.org header.s=google header.b=itvvkVX4; 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=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727642AbeG3NI6 (ORCPT + 99 others); Mon, 30 Jul 2018 09:08:58 -0400 Received: from mail-oi0-f66.google.com ([209.85.218.66]:39303 "EHLO mail-oi0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726935AbeG3NI6 (ORCPT ); Mon, 30 Jul 2018 09:08:58 -0400 Received: by mail-oi0-f66.google.com with SMTP id d189-v6so20549380oib.6 for ; Mon, 30 Jul 2018 04:34:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=nWShXJmGmXSlTLqNmjGYfc5vkz4s0/MZQiJBE64CPfE=; b=itvvkVX4jZPEKblkGtnmU20jj6nXebIVRW3uHQdLaaqTnlvB821FdsbL7hTj8uxfNt XE9vCWz82O4P1K0Gi8kOk9m+EHygrbnxuDCemyJsSCFGUUWxQUbGDktELr0DcY0gCb/0 q2+YXjZ+ILG497p7qrn2yV18ADcYq16lm94+Q= 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=nWShXJmGmXSlTLqNmjGYfc5vkz4s0/MZQiJBE64CPfE=; b=DS2VwRAV6p+sxzkHRNc/b1SJho6TkyJJxWaMFuFDxyiB44UTk83GpMYmThZQXLCOZR jAw71zphO5IEogJQL5hIgsrsEDS7nVB4MUWbl4YIJvV2lyJtzWzaeck4PCF3fAyMH1xk mfjxka170sQqY4EX2k1Ziwr5u+UykO0UWpoSOwZVHJvYcctsl62kcuKweD00gwY+svjF Y0q8yh4jrcOgHmMxi3588shyTOXncfkbPJty7JAvaTsGYmdmehYQ+bjeHr6XwXszCppd gzN4BuRfoAq05q7u+rXQBdPYwm959E7huqTftoyhnd2v+zUlPluUYBNRbPTgsITaobIc YChA== X-Gm-Message-State: AOUpUlGo9x+c9uJWxUjDKnlOJzLeE0WtOwnpaosa+VOfzlKWSnyinpTi zdBg5pFmwx2GuQDE3u898slx41lRWCymAXVhacsT1w== X-Received: by 2002:aca:7c2:: with SMTP id 185-v6mr18125474oih.31.1532950464732; Mon, 30 Jul 2018 04:34:24 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a9d:237a:0:0:0:0:0 with HTTP; Mon, 30 Jul 2018 04:34:24 -0700 (PDT) In-Reply-To: <782fc498b4f4c6e8130d64face93023eb3dc9866.1530152980.git.baolin.wang@linaro.org> References: <782fc498b4f4c6e8130d64face93023eb3dc9866.1530152980.git.baolin.wang@linaro.org> From: Baolin Wang Date: Mon, 30 Jul 2018 19:34:24 +0800 Message-ID: Subject: Re: [PATCH] hwspinlock: Fix incorrect return pointers To: Ohad Ben-Cohen , Bjorn Andersson Cc: Mark Brown , Dan Carpenter , linux-remoteproc@vger.kernel.org, LKML , Baolin Wang 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 Hi Bjorn, On 28 June 2018 at 10:32, Baolin Wang wrote: > The commit 4f1acd758b08 ("hwspinlock: Add devm_xxx() APIs to request/free > hwlock") introduces one bug, that will return one error pointer if failed > to request one hwlock, but we expect NULL pointer on error for consumers. > This patch will fix this issue. > > Reported-by: Dan Carpenter > Signed-off-by: Baolin Wang Could you pick up this patch which fixes the incorrect return value issue? Thanks. > --- > drivers/hwspinlock/hwspinlock_core.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/drivers/hwspinlock/hwspinlock_core.c b/drivers/hwspinlock/hwspinlock_core.c > index e16d648..2bad40d 100644 > --- a/drivers/hwspinlock/hwspinlock_core.c > +++ b/drivers/hwspinlock/hwspinlock_core.c > @@ -877,10 +877,10 @@ struct hwspinlock *devm_hwspin_lock_request(struct device *dev) > > ptr = devres_alloc(devm_hwspin_lock_release, sizeof(*ptr), GFP_KERNEL); > if (!ptr) > - return ERR_PTR(-ENOMEM); > + return NULL; > > hwlock = hwspin_lock_request(); > - if (!IS_ERR(hwlock)) { > + if (hwlock) { > *ptr = hwlock; > devres_add(dev, ptr); > } else { > @@ -913,10 +913,10 @@ struct hwspinlock *devm_hwspin_lock_request_specific(struct device *dev, > > ptr = devres_alloc(devm_hwspin_lock_release, sizeof(*ptr), GFP_KERNEL); > if (!ptr) > - return ERR_PTR(-ENOMEM); > + return NULL; > > hwlock = hwspin_lock_request_specific(id); > - if (!IS_ERR(hwlock)) { > + if (hwlock) { > *ptr = hwlock; > devres_add(dev, ptr); > } else { > -- > 1.7.9.5 > -- Baolin Wang Best Regards