Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp1353049imu; Thu, 20 Dec 2018 14:55:50 -0800 (PST) X-Google-Smtp-Source: AFSGD/VYFkh2ltnQOLcyJPqJtljKH2sWIiFGI1gmQwpLJmDXG668S1y8ZIyCBy9Q9Rd7CRFwXqPJ X-Received: by 2002:a62:509b:: with SMTP id g27mr128861pfj.48.1545346550694; Thu, 20 Dec 2018 14:55:50 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1545346550; cv=none; d=google.com; s=arc-20160816; b=wSCWpM8nUreqzgNF6It/U0r8bbCz0QetmTGUM7lcBfTEn7Jx6M72QtYlLdNN6i6UkF uDRC/l8T/fqjx1BPMEAX+Siq+qRr7+bwdVs0Oas2GySerVZk9x+oTYJ8jOKu0rZA/1GX hB80HMFoLhTu1bPTZGwrPOC0RrV2gSJzneCCToePm7JDD1zR54NAuai7RGBj8yADyMDe QD0jdGupa/fyH+h0kitWgzNCZ0S18JOwMyx+EEeKR56/wuFx831xA0Q8ozjNHm6MAQ/K i/WVY2JgkFy0cy52CnchBwYXmlfPyeNCCV0CZVvWgnQvYEqrKH3oG62NccnPqyEu5xdy aF/Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature; bh=udwoJwfUZVTLOwxGcRxzcnzXp8PPvnNNCGmi043csVg=; b=pq8ly+kqvIOEFVQG9yaJDAddY3HE0GZCbjUePYIgwwwZppvF2TpODoFjw75Zg0Bw/s im3aMKql2/9NieyodX6Dcb0kuxtR/XjLSEq4+TiPq++hZY+fpbKrzCowQNx/4dcudRFR Fc7JEANiid8FenEvXj19ZTdQ3oLijT2CjkT7JxuI9EYMxKkqiOZCnGdLvvzGkISOo+Ki BL7HyDiObchMd7KC2nuYej0fSkVQjitEbDKxDxe6Iha4dJMnNhtvS75FUmMRpK2Fu5gG 9a5fsKTUZ18j0Vr+7MAvuQ+LhFBluwdfSCmxCm3kkGpxvZxiJeQTWX6YbV9kL8sexI4U KVVw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=HJoSmb3v; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id k22si15421925pgl.29.2018.12.20.14.55.33; Thu, 20 Dec 2018 14:55:50 -0800 (PST) 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=@gmail.com header.s=20161025 header.b=HJoSmb3v; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731418AbeLTQoY (ORCPT + 99 others); Thu, 20 Dec 2018 11:44:24 -0500 Received: from mail-ed1-f66.google.com ([209.85.208.66]:36291 "EHLO mail-ed1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730086AbeLTQoY (ORCPT ); Thu, 20 Dec 2018 11:44:24 -0500 Received: by mail-ed1-f66.google.com with SMTP id f23so2311071edb.3; Thu, 20 Dec 2018 08:44:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=udwoJwfUZVTLOwxGcRxzcnzXp8PPvnNNCGmi043csVg=; b=HJoSmb3vcdm8FnOqXzD5As8Ne0duxHPcU4yIIOc0yBVofpYdVxljnobXkMn8ChB0zS cNQVNC4JF11xjZYPHGO/7zekySsbnBp138BgWmvuKQp7g4gWachAzJSNypfWpOuMKwKV Cc64+5HRyXMh9y3boPG4Sey+5u3w4HlSDgCJxBmwantyScvrl5o9Zykwty2Hfe87aILC 27HQhzd43QUn7+xlBaKCqxFm08QotKMR2wt0tGxLoFhjBTC8jK2Tt9QUxRBJ8zuTl78X LiFI69xvkD5PZyv0IbFkz9yTnY2GO7C3SOpgDpHhEud8fKkwwZg8EIo6yQgA/n+cHNew gFcw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=udwoJwfUZVTLOwxGcRxzcnzXp8PPvnNNCGmi043csVg=; b=PBzPoh26u0UkvMo67aIY8uqAtr01OEdH2i+v6IB93aOzy3Wxtgvdy5hs6M+tsnPfFN PPQqUVYUGWUvGGCEXe2YYkbzI36/MdyctxyvadKQzLpR3EdG1P9X6i8IMWdZ2do5/v4x 5vc5xXDPIzk9xDMDBu5PGHeAixhPE5rqy9GLJ+x68kV3gtFsLd08zBRI5pqEthLIgA4L 3k9TsC2YRxrXWH3bmbm43ldf44G+4utoDuOmT3IFJFvERyLJPtHsZR7nj81mfkBAYkwe Ej0uTAOD+t9q4GES/Ina/IHPpdy6jcIBXdmO0Y+1hhHNucwawVXPke7ET92YtYsA1Sqf +chQ== X-Gm-Message-State: AA+aEWY/cNSCzBEKghUzzjUBPLjKj5CpoGFfPhDZnchWP4IH0S+jWTt4 AVffHKa17ddRS1KjqbWPqjg= X-Received: by 2002:a17:906:198b:: with SMTP id g11-v6mr20146763ejd.166.1545324261086; Thu, 20 Dec 2018 08:44:21 -0800 (PST) Received: from localhost (pD9E51040.dip0.t-ipconnect.de. [217.229.16.64]) by smtp.gmail.com with ESMTPSA id j4sm2371867edh.69.2018.12.20.08.44.19 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 20 Dec 2018 08:44:20 -0800 (PST) Date: Thu, 20 Dec 2018 17:44:18 +0100 From: Thierry Reding To: Christoph Hellwig Cc: iommu@lists.linux-foundation.org, Linus Torvalds , Jesper Dangaard Brouer , Tariq Toukan , Ilias Apalodimas , Toke =?utf-8?Q?H=C3=B8iland-J=C3=B8rgensen?= , Robin Murphy , Konrad Rzeszutek Wilk , Tony Luck , Fenghua Yu , Marek Szyprowski , Keith Busch , Jonathan Derrick , linux-pci@vger.kernel.org, linux-ia64@vger.kernel.org, x86@kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 15/15] dma-mapping: bypass indirect calls for dma-direct Message-ID: <20181220164418.GA18777@ulmo> References: <20181207190720.18517-1-hch@lst.de> <20181207190720.18517-16-hch@lst.de> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="G4iJoqBmSsgzjUCe" Content-Disposition: inline In-Reply-To: <20181207190720.18517-16-hch@lst.de> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --G4iJoqBmSsgzjUCe Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Dec 07, 2018 at 11:07:20AM -0800, Christoph Hellwig wrote: [...] > diff --git a/kernel/dma/mapping.c b/kernel/dma/mapping.c > index 0b18cfbdde95..fc84c81029d9 100644 > --- a/kernel/dma/mapping.c > +++ b/kernel/dma/mapping.c [...] > @@ -397,9 +404,9 @@ int dma_supported(struct device *dev, u64 mask) > { > const struct dma_map_ops *ops =3D get_dma_ops(dev); > =20 > - if (!ops) > - return 0; > - if (!ops->dma_supported) > + if (dma_is_direct(ops)) > + return dma_direct_supported(dev, mask); > + if (ops->dma_supported) > return 1; > return ops->dma_supported(dev, mask); > } Hi Christoph, This hunk causes a crash on boot for me. It looks like a ! got lost in the rework here. The following patch fixes the crash for me and restores the logic of the op->dma_supported check. Feel free to squash this patch into the above if you prefer that. Thierry --- >8 --- =46rom c502b29ab01fa857e81c78cd574d4d22d7d20e09 Mon Sep 17 00:00:00 2001 =46rom: Thierry Reding Date: Thu, 20 Dec 2018 17:35:47 +0100 Subject: [PATCH] dma-mapping: Fix inverted logic in dma_supported() The cleanup in commit 356da6d0cde3 ("dma-mapping: bypass indirect calls for dma-direct") accidentally inverted the logic in the check for the presence of a ->dma_supported() callback. Switch this back to the way it was to prevent a crash on boot. Fixes: 356da6d0cde3 ("dma-mapping: bypass indirect calls for dma-direct") Signed-off-by: Thierry Reding --- kernel/dma/mapping.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/dma/mapping.c b/kernel/dma/mapping.c index fc84c81029d9..d7c34d2d1ba5 100644 --- a/kernel/dma/mapping.c +++ b/kernel/dma/mapping.c @@ -406,7 +406,7 @@ int dma_supported(struct device *dev, u64 mask) =20 if (dma_is_direct(ops)) return dma_direct_supported(dev, mask); - if (ops->dma_supported) + if (!ops->dma_supported) return 1; return ops->dma_supported(dev, mask); } --=20 2.19.1 --G4iJoqBmSsgzjUCe Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAlwbxuAACgkQ3SOs138+ s6FOFBAAvk7KvF523TFilLtTgdqzgtbG0su3+Q9/rfoojbuGfvhM5uVjTT8i/Brp 4yx6kTZg7EbcIyiPhY4YN6MKtxFIQO4xRuCAnsiEG2XzwLKct0bmqf39UOMjRCiL QgdUBn7wdWKH4gMLwHs9jupvvw6AWkDUF+d7s9/idZIy5+KGXeCYq6qgcRFhitXd fOF4iBMnK49WcDhwRCBYieTE99Mb01ILjFOtdBFjnB4xnf3GyWs5uriDDwGdrurI ASrZABnhANLKYYInPA61xDqpudGlydOTa+7BtIvDMVr1CGcRYpZ0ERknioCdQQQE XoO6taGR2vfwIOm+frEvuIVNOBEUO7NNRFHfMaVWU3oEjQ5NNhzcp3t+EyxL+jTT 0zxaX2H3b9w703yxWo8/fvEwdyuBGbTYA7cmtCgoTo8QHRt2BhxBaE1X/n5wLDYW Giu06kdfZQAks6U+YAogHzy7imPUpDYIZuH2Tko3Sw710nIF1et6j2zPrQmYO2nu 1i/orBSibV/5P1Y9DRVNztY56l9oDv7cOVmFeJWXtQXBz8OdYjyHIKI6KhDi1sQK W/nqPzW9uvCC4KeTWDGaw90BChgtWyKy6rEhPdk1QpQnMQYerr+a0y4Za905TqlU mgI8M4YFd34Cr424HZuguZ6NtgUACys5BnYqjMLUTfl/LK3lcW8= =t2Tu -----END PGP SIGNATURE----- --G4iJoqBmSsgzjUCe--