From patchwork Fri Sep 17 13:14:23 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Brazdil X-Patchwork-Id: 514177 Delivered-To: patch@linaro.org Received: by 2002:a17:907:76d3:0:0:0:0 with SMTP id kf19csp2102825ejc; Fri, 17 Sep 2021 06:14:40 -0700 (PDT) X-Google-Smtp-Source: ABdhPJySA9ZPLToBVgji2igaXfp2GPb0W87dlkaT3NHuGWeE/JsLswSTKIjwnJJoZZDEkoZzcBxe X-Received: by 2002:a6b:6a13:: with SMTP id x19mr8736184iog.111.1631884476677; Fri, 17 Sep 2021 06:14:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1631884476; cv=none; d=google.com; s=arc-20160816; b=O+3uIVJ9ZNY0poo0nsEvRRQtm3prx7TfkhnPLx4vWM7wwIpc6wu/FQaMsBWvi/yE4b 6MnmntYfgiBahOa5QZ6GjZh6o5WATY7GFOrizrIvC187bOEUL4oEBLZr0q+atjfZ6xsV SKNWqx9GrP/LuL6INiXVbrXnnfs5axPv2KsHqnqCrOxEMmLXttUB0UDgbrhBx33favLm 4pHeqMtduuQotXEiP6BCQ3PieArRhXdcCoGHx+LLCIbUeOKXbhqZTYEN1ylREYqiJaZb 72x8Y4K/3sr4MlDMxKHubWXi4m7g9/oOuEUSE6J9AegG+UcAUrW97UqIPBRT8MGf4/0o skEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:mime-version:message-id:date :dkim-signature; bh=JrjnNmu7/Xbl/QIjypxVMk3ociL3bf/wAlM5pRyPRyI=; b=zfrLJ6qTYZNDTYxYKcTlQpT+CsK5wi2Hnt5S/EB4EaolPtwnC3gajfclPE+cvqc5sh p5ZD6Fk1dd26AMpIypBce77wi2HJ+izvUB9TZZBejQNuOVC6KNIm2cJI5LrYQ/x/ojpb L0cFufQXg4kBe9Ocsf4N/+558BNe9mrQoaITCQpOcHyRiEhbIWeM8Or575qXMsxNyUCi 239xiFj2LMAlkmNf6WnQS9pxlGh9Md9QXu6hDGe3Sy6eK/UN723nYdAAupOFvbvoFlxe roO7y9drD339Omx02y959i6jky4XszwRqKgwlL502WLtE4a1AsfTzL49EaRNqyuG90mv lvYw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=bjM1k9R2; spf=pass (google.com: domain of devicetree-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=devicetree-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id 67si859018ioc.91.2021.09.17.06.14.33; Fri, 17 Sep 2021 06:14:36 -0700 (PDT) Received-SPF: pass (google.com: domain of devicetree-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=bjM1k9R2; spf=pass (google.com: domain of devicetree-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=devicetree-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236303AbhIQNPy (ORCPT + 7 others); Fri, 17 Sep 2021 09:15:54 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47348 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230421AbhIQNPx (ORCPT ); Fri, 17 Sep 2021 09:15:53 -0400 Received: from mail-qt1-x84a.google.com (mail-qt1-x84a.google.com [IPv6:2607:f8b0:4864:20::84a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 63E01C061764 for ; Fri, 17 Sep 2021 06:14:31 -0700 (PDT) Received: by mail-qt1-x84a.google.com with SMTP id x11-20020ac86b4b000000b00299d7592d31so90021895qts.0 for ; Fri, 17 Sep 2021 06:14:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=date:message-id:mime-version:subject:from:to:cc; bh=JrjnNmu7/Xbl/QIjypxVMk3ociL3bf/wAlM5pRyPRyI=; b=bjM1k9R28SXqglwFD8qF0kwjiVTjTr3BEYdv/f80g6uQZqDwGxZHEWnTfY1quD4BCh sEwAO+hyvQ8UuPhbrWgXcAz/7r6d76IVIiv37UChKjbLKsRpcL/ZJlbrT26ffZhrHCl1 k8T5rLl4myRv3E+VT5cKZajxfdIoBocSiRJ0Xd9wp5NcfvU4yejgFaJsWZqdFRPUmp5r Mr43DnnCdEz9h3tbWrfvlx/uPY7X4Tn1qGLCGBUAR9PY2CANyXy0RMhexDruFVO7kwYl Jd7XvhW8Ib/STch4nZCNxmg4rlQLgdKa/MMZDlcyPuBA86pNQZ3femc7hjAMOCOK0MVS VuWw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:message-id:mime-version:subject:from:to:cc; bh=JrjnNmu7/Xbl/QIjypxVMk3ociL3bf/wAlM5pRyPRyI=; b=M/WEoSMzJqSJYTiQ3NWAzDDDauIFWV1tF+2M8gAfwG+CzNlszWuodbFdZXg8YptpUk TqvvlZAdYNyfuN9/6mX3MwrPKbovh0xbcMXZogJ2gHWs4L86KdiLMSvOLnaB5JWgxKVu ZdSq27V9bXJt+pZUxIOmWTNFz7bfzAtJQfJK4pzzYDUXqik/ocAlx0wrpiIZaNnAaAzA s807Wrt7CdvOpbIOamy/sOEV1/5yIBM4v71ztq01kVBny7G26oCDqNGcotGrMhpGlChQ KA9QmQ50y168xoVGq7oh2oowXeAzcDmVhsstsJGURKHFmwbCvv2WNU3k85varSBYeQxc tp/g== X-Gm-Message-State: AOAM530ldJYui4M4kmceAH1Hb/TnJ49N7aswCrsh0TIAzVque1scnEJl 3puMpTQaVqZMZzXatvDNsIavkrnIXmetwguTJKCIrBwmQQCgt5wzVzHjSLwPVykxUG9PHheSyt5 IBbB9325TXNTvifcUhADj5w25N42sKrkHYaJo5sndgWFFjDCjYHarNzUmXBzqGcVskGk71AL5 X-Received: from zachary-panic1.lon.corp.google.com ([2a00:79e0:d:209:25f4:f11e:ff5e:bad]) (user=dbrazdil job=sendgmr) by 2002:ad4:554b:: with SMTP id v11mr11093886qvy.31.1631884470574; Fri, 17 Sep 2021 06:14:30 -0700 (PDT) Date: Fri, 17 Sep 2021 14:14:23 +0100 Message-Id: <20210917131423.2760155-1-dbrazdil@google.com> Mime-Version: 1.0 X-Mailer: git-send-email 2.33.0.464.g1972c5931b-goog Subject: [PATCH] of: restricted dma: Fix condition for rmem init From: David Brazdil To: devicetree@vger.kernel.org Cc: Rob Herring , Frank Rowand , Will Deacon , Konrad Rzeszutek Wilk , linux-kernel@vger.kernel.org, David Brazdil Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org of_dma_set_restricted_buffer fails to handle negative return values from of_property_count_elems_of_size, e.g. when the property does not exist. This results in an attempt to assign a non-existent reserved memory region to the device and a warning being printed. Fix the condition to take negative values into account. Fixes: f3cfd136aef0 ("of: restricted dma: Don't fail device probe on rmem init failure") Cc: Will Deacon Signed-off-by: David Brazdil --- drivers/of/device.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) -- 2.33.0.464.g1972c5931b-goog Acked-by: Will Deacon diff --git a/drivers/of/device.c b/drivers/of/device.c index 5b043ee30824..b0800c260f64 100644 --- a/drivers/of/device.c +++ b/drivers/of/device.c @@ -85,7 +85,11 @@ of_dma_set_restricted_buffer(struct device *dev, struct device_node *np) break; } - if (i != count && of_reserved_mem_device_init_by_idx(dev, of_node, i)) + /* + * Attempt to initialize a restricted-dma-pool region if one was found. + * Note that count can hold a negative error code. + */ + if (i < count && of_reserved_mem_device_init_by_idx(dev, of_node, i)) dev_warn(dev, "failed to initialise \"restricted-dma-pool\" memory node\n"); }