Received: by 2002:a25:8b12:0:0:0:0:0 with SMTP id i18csp644506ybl; Fri, 16 Aug 2019 01:33:39 -0700 (PDT) X-Google-Smtp-Source: APXvYqy7U9mtgr4kBDFGWeWzIdEo+nslRDmm2l8CO9zm12b89BodHUhmwl32cykWeqSqUOyeoxCS X-Received: by 2002:a17:90a:b016:: with SMTP id x22mr6284123pjq.116.1565944418988; Fri, 16 Aug 2019 01:33:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1565944418; cv=none; d=google.com; s=arc-20160816; b=RUvr4JvhvXpoEo0VokdM0cDPs3v/unQ5wr39ZaJ0b3N6tKu574ROgF2GZTwnEv5+kH VWBVLp43SNkopZWmc/vFJhbT97MuIAmnRrvNDe3faiR9bJ+ibjYKP1E9Lym0rJw8lSzC yeb2K7we9awdvhDQY5Yd5AutgVjhh1/NVX6Mq0MTsn0g/p1RAwtEPqsKUphs+BEZNKg4 qtlQKyJ6f4hsXPbBVPc2+XD6Ay7J42B7HJp+95taoOcD40EKNiyHGrqf/yYwsKHUkLbD NMQ9evZmeTbVikIUpn/51tqluKd9F1DRXA5Mp764mcLTwl3N8Sqq/3Y9qUGDazQy6T6M XBzg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject; bh=MerImdSfwOAZ1pDjjnuGJjbO3yflb5lA3atMXtVNFSo=; b=TgyOv26zZDF8M7IWv4kr7aFUoMugqP1jDwZGkWVVsQ/GfrV0oAtfjoVZn8sHH8ei5m Ov3KoeI2PjntjI/55M45nX5O5RIuFWfxtQSxOa8cKuJcqH3xzdI8ck7mJHcI85u51Yss 150XCo2jgtJvFfr6JRFCYfNOXWQHYaJ0V05rokhXsTT1qd313L+7dFoUbLGCetvy/m3b HxZQXFBA8sjJXfvLNzERPniVPa1gDcSrZoP1vxkrP9+vRsIQsLGeqbX+giEp1/8rmElZ JUVXharCTzGCGP0LJdzZnS0lsOrs+MQauNTC4fH6VdoZQevzZRZCx9RLmD1MJhXHM2ke K6YA== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id z27si3997054pfj.225.2019.08.16.01.33.21; Fri, 16 Aug 2019 01:33: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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726899AbfHPIbW (ORCPT + 99 others); Fri, 16 Aug 2019 04:31:22 -0400 Received: from foss.arm.com ([217.140.110.172]:53428 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726819AbfHPIbW (ORCPT ); Fri, 16 Aug 2019 04:31:22 -0400 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 8992528; Fri, 16 Aug 2019 01:31:21 -0700 (PDT) Received: from [10.1.196.133] (e112269-lin.cambridge.arm.com [10.1.196.133]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 7CCE73F718; Fri, 16 Aug 2019 01:31:20 -0700 (PDT) Subject: Re: [PATCH -next] drm/panfrost: Fix missing unlock on error in panfrost_mmu_map_fault_addr() To: Wei Yongjun , Rob Herring , Tomeu Vizoso , David Airlie , Daniel Vetter Cc: kernel-janitors@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org References: <20190814044814.102294-1-weiyongjun1@huawei.com> From: Steven Price Message-ID: Date: Fri, 16 Aug 2019 09:31:19 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0 MIME-Version: 1.0 In-Reply-To: <20190814044814.102294-1-weiyongjun1@huawei.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-GB Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 14/08/2019 05:48, Wei Yongjun wrote: > Add the missing unlock before return from function panfrost_mmu_map_fault_addr() > in the error handling case. > > Fixes: 187d2929206e ("drm/panfrost: Add support for GPU heap allocations") > Signed-off-by: Wei Yongjun Well spotted. Reviewed-by: Steven Price Steve > --- > drivers/gpu/drm/panfrost/panfrost_mmu.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/panfrost/panfrost_mmu.c b/drivers/gpu/drm/panfrost/panfrost_mmu.c > index 2ed411f09d80..06f1a563e940 100644 > --- a/drivers/gpu/drm/panfrost/panfrost_mmu.c > +++ b/drivers/gpu/drm/panfrost/panfrost_mmu.c > @@ -327,14 +327,17 @@ int panfrost_mmu_map_fault_addr(struct panfrost_device *pfdev, int as, u64 addr) > if (!bo->base.pages) { > bo->sgts = kvmalloc_array(bo->base.base.size / SZ_2M, > sizeof(struct sg_table), GFP_KERNEL | __GFP_ZERO); > - if (!bo->sgts) > + if (!bo->sgts) { > + mutex_unlock(&bo->base.pages_lock); > return -ENOMEM; > + } > > pages = kvmalloc_array(bo->base.base.size >> PAGE_SHIFT, > sizeof(struct page *), GFP_KERNEL | __GFP_ZERO); > if (!pages) { > kfree(bo->sgts); > bo->sgts = NULL; > + mutex_unlock(&bo->base.pages_lock); > return -ENOMEM; > } > bo->base.pages = pages; > > > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel >