From patchwork Mon Apr 23 09:54:56 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Osipenko X-Patchwork-Id: 902861 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-tegra-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="uymp8BfK"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 40V1zP5pXcz9s08 for ; Mon, 23 Apr 2018 19:55:13 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754519AbeDWJzM (ORCPT ); Mon, 23 Apr 2018 05:55:12 -0400 Received: from mail-pg0-f65.google.com ([74.125.83.65]:35767 "EHLO mail-pg0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754431AbeDWJzL (ORCPT ); Mon, 23 Apr 2018 05:55:11 -0400 Received: by mail-pg0-f65.google.com with SMTP id j11so8053673pgf.2; Mon, 23 Apr 2018 02:55:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=89t6yfovgfVEKttzGSNTeT8XYJpZfZ/gWoAZJgCZWRo=; b=uymp8BfK92vjtsMQq3FaiESgrmNSrRS6OBjuaGwWtDoGgMAAI+C31bog4w3wlJW9Sp J+ZNCpAMZpwOHDMnb/+mBAmkytzjrYh0q6onzoX9P7+j/lt8mQsX0WJw/+qXvYfsfc5y n9JmtEG3B0fEjG1dmhgvMJwu2I6TBheVTkUa/uXj+xb21QlZrZBCvie5hCQwnJ1XA+Yb Y3nt4b7YNAMBkcbrDiUPytk5W+dVMIs1CgHtvgbVD68KhBzu07xnmYUQWGU8SmqOSrYj qe4ihxHy4ohPltW4t8PXOGWh1G/vv3OAJmotBveqgyv8CoBKsBzi3+kNC3fZzb4OYUT4 RlmA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=89t6yfovgfVEKttzGSNTeT8XYJpZfZ/gWoAZJgCZWRo=; b=a/kCV7QMUPtwf9VLXIMOk5Y/Xhz7wO97XLhxcXJB+CEM09YiIApPb5CjpC4tl2DITM 5kgNv16kvyj7Ww58VYi+KMgspVzrkwmlobqG4sw3qYmKt1H9cKNNwGa84dlkT0cxIaZa YAWekjtALL1WgAbMhh5/R203MQlyO3mF4Ll0WjkPbhM/NWCrlhhoONm/AykWY4PIymqV 0tOVRvNsYy7Y4ch3I+M1NyormVSi4HeihLJD3OKApBbB7We1roUPFKZZr+TACZMCcdHN iPA/XCRMttoBi09Lm/GDKFM/u7fP5un4tyWP8kPtk976KFmYSIiAL1nk/emsSo19aBD4 e5JA== X-Gm-Message-State: ALQs6tDvOkwM4L0Uj9433HOiFTPGhUn5zJSWaaGVlhEuAWqT5J/Q3ckL ybN3wUK/mtBk8XIa8sgTQ8s= X-Google-Smtp-Source: AIpwx4/fArOBzuGUzjC76nPv8vmMC8Nufd+DNk22hMcnhkIAy6WT9BJqYhNHfx7FIInL7Kp3KpQGVw== X-Received: by 10.99.60.71 with SMTP id i7mr7165123pgn.254.1524477311185; Mon, 23 Apr 2018 02:55:11 -0700 (PDT) Received: from localhost.localdomain (ppp109-252-91-130.pppoe.spdop.ru. [109.252.91.130]) by smtp.gmail.com with ESMTPSA id u27sm23478852pfk.100.2018.04.23.02.55.06 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 23 Apr 2018 02:55:10 -0700 (PDT) From: Dmitry Osipenko To: Thierry Reding Cc: Mikko Perttunen , dri-devel@lists.freedesktop.org, linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v1] gpu: host1x: Fix dma_free_wc() argument in the error path Date: Mon, 23 Apr 2018 12:54:56 +0300 Message-Id: <20180423095456.16697-1-digetx@gmail.com> X-Mailer: git-send-email 2.17.0 Sender: linux-tegra-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-tegra@vger.kernel.org If IOVA allocation or IOMMU mapping fails, dma_free_wc() is invoked with size=0 because of a typo, that triggers "kernel BUG at mm/vmalloc.c:124!". Signed-off-by: Dmitry Osipenko Reviewed-by: Mikko Perttunen --- drivers/gpu/host1x/cdma.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/host1x/cdma.c b/drivers/gpu/host1x/cdma.c index 93df28228721..0724122afeac 100644 --- a/drivers/gpu/host1x/cdma.c +++ b/drivers/gpu/host1x/cdma.c @@ -127,7 +127,7 @@ static int host1x_pushbuffer_init(struct push_buffer *pb) iommu_free_iova: __free_iova(&host1x->iova, alloc); iommu_free_mem: - dma_free_wc(host1x->dev, pb->alloc_size, pb->mapped, pb->phys); + dma_free_wc(host1x->dev, size, pb->mapped, pb->phys); return err; }