Received: by 2002:ac0:bc90:0:0:0:0:0 with SMTP id a16csp642901img; Fri, 22 Mar 2019 05:46:48 -0700 (PDT) X-Google-Smtp-Source: APXvYqzSe6xxlnaYvAn6iD9dp3glaXaO4dvcNIGNwZiiQZGD/gBDbCrNk8osgAmdme5X83Yia9Qm X-Received: by 2002:a17:902:aa90:: with SMTP id d16mr9122274plr.250.1553258808396; Fri, 22 Mar 2019 05:46:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1553258808; cv=none; d=google.com; s=arc-20160816; b=FEy6F1HMcwPQYqa/EgbzllFWUxn2s8i1rY96pa4PlDVIRvPIohxhZb93QgA9ImPkp8 RtzFLcjjLs+nYqxq+S6HE/24i07C3g86Hag4Cy5f3+8dZmQlqMYLA+ID/xEgJn2YXzMr tfrnGyaRo5UKn/9O3AEfMYuhsZQSsT+yk95rWMaG2WEo24ansYBqg9+kEp0t2bWuHHih NUfzdlUMW9FAKXdQ3+84jnMOjc0ow9l8OU8ltqRHYcGsj4Fxwej1qLO00fE73NTuxhHb fbFDlqqh/W0Gf6AXEpyURYZgYYxFLIPbRIbnd5jJJ2RVQZGTNp6zZnLwgoy8Q3UPQ+zi aavQ== 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:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=06lldLZdIZDDH2MqdqALER3kF8dJ7Z6LW0W6v34lAgk=; b=hh1Ku1bDikfvJieJEe/xOUnEz4msBfoRifts1LuVRxE4Od88nwblkOiR2+lur9Ewap cK2QaFs7iWBZ34DTm75rcTDKi4o9rWOtlzkWGekWazW6G4SHpK9E0AwUYNlugGeVJV3O Jr17NBC+ZQZoS2Yd1jn1UEjG0kzrb4U3CuG7MaltKJki+wAhwNk+8sNqh0/8oAgHOzJS +M1MsbeF+dZ2+722/8FqiU1yCiUveLOjANo1fQ+reJzG39mIYVjXkLd/f7GGhqwEBM5o YqKzLIFGwL/Gspcx6oFjqcS7O0Wmys54Xs2+jqMCWXpCdhYlYjK1wFtzLsYt1D6nKRB6 6fsA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=EU0cs3qW; 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 a1si6286266pgq.38.2019.03.22.05.46.33; Fri, 22 Mar 2019 05:46:48 -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=@kernel.org header.s=default header.b=EU0cs3qW; 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 S2388007AbfCVL7z (ORCPT + 99 others); Fri, 22 Mar 2019 07:59:55 -0400 Received: from mail.kernel.org ([198.145.29.99]:36870 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1732810AbfCVL7t (ORCPT ); Fri, 22 Mar 2019 07:59:49 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 5517920830; Fri, 22 Mar 2019 11:59:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1553255988; bh=8/gG9teF3eEOH2EzynJcz+DGH/Hee3eSRT8yKqHgJBA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=EU0cs3qWWRkDb1ZucmcHAIpEgKbOSAbiOHZo8IpZzpGGEza6oVpHjczFvuNSzhNhz Hz3Pflrz1dzvQMftj02qs0/qXw2xEhD8lLAtznxs80yDqns72Ae/9DChE6ac1PzJtc oCAHS1q4EO8uuLgCSWs9/2aJ0GNhDXqQj2Qgmqko= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Tobias Jakobi , Marek Szyprowski , Thierry Reding , Robin Murphy , Russell King , Sasha Levin Subject: [PATCH 4.19 075/280] ARM: 8835/1: dma-mapping: Clear DMA ops on teardown Date: Fri, 22 Mar 2019 12:13:48 +0100 Message-Id: <20190322111310.547909991@linuxfoundation.org> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190322111306.356185024@linuxfoundation.org> References: <20190322111306.356185024@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review X-Patchwork-Hint: ignore MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.19-stable review patch. If anyone has any objections, please let me know. ------------------ [ Upstream commit fc67e6f120a388b611d94cc40baf99a5cc56b283 ] Installing the appropriate non-IOMMU DMA ops in arm_iommu_detch_device() serves the case where IOMMU-aware drivers choose to control their own mapping but still make DMA API calls, however it also affects the case when the arch code itself tears down the mapping upon driver unbinding, where the ops now get left in place and can inhibit arch_setup_dma_ops() on subsequent re-probe attempts. Fix the latter case by making sure that arch_teardown_dma_ops() cleans up whenever the ops were automatically installed by its counterpart. Reported-by: Tobias Jakobi Reported-by: Marek Szyprowski Fixes: 1874619a7df4 "ARM: dma-mapping: Set proper DMA ops in arm_iommu_detach_device()" Tested-by: Tobias Jakobi Tested-by: Thierry Reding Signed-off-by: Robin Murphy Signed-off-by: Russell King Signed-off-by: Sasha Levin --- arch/arm/mm/dma-mapping.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm/mm/dma-mapping.c b/arch/arm/mm/dma-mapping.c index 1cb9c0f9b5d6..8211cf45ece1 100644 --- a/arch/arm/mm/dma-mapping.c +++ b/arch/arm/mm/dma-mapping.c @@ -2400,4 +2400,6 @@ void arch_teardown_dma_ops(struct device *dev) return; arm_teardown_iommu_dma_ops(dev); + /* Let arch_setup_dma_ops() start again from scratch upon re-probe */ + set_dma_ops(dev, NULL); } -- 2.19.1