All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoph Hellwig <hch@lst.de>
To: Jim Quinlan <james.quinlan@broadcom.com>
Cc: Rich Felker <dalias@libc.org>,
	"open list:SUPERH" <linux-sh@vger.kernel.org>,
	David Airlie <airlied@linux.ie>,
	linux-pci@vger.kernel.org, Hanjun Guo <guohanjun@huawei.com>,
	"open list:REMOTE PROCESSOR \(REMOTEPROC\) SUBSYSTEM"
	<linux-remoteproc@vger.kernel.org>,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Julien Grall <julien.grall@arm.com>,
	Heikki Krogerus <heikki.krogerus@linux.intel.com>,
	"H. Peter Anvin" <hpa@zytor.com>, Will Deacon <will@kernel.org>,
	Christoph Hellwig <hch@lst.de>,
	"open list:STAGING SUBSYSTEM" <devel@driverdev.osuosl.org>,
	Jean-Philippe Brucker <jean-philippe@linaro.org>,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Frank Rowand <frowand.list@gmail.com>,
	"maintainer:X86 ARCHITECTURE \(32-BIT AND 64-BIT\)"
	<x86@kernel.org>, Russell King <linux@armlinux.org.uk>,
	"open list:ACPI FOR ARM64 \(ACPI/arm64\)"
	<linux-acpi@vger.kernel.org>, Chen-Yu Tsai <wens@csie.org>,
	Ingo Molnar <mingo@redhat.com>,
	bcm-kernel-feedback-list@broadcom.com,
	Alan Stern <stern@rowland.harvard.edu>,
	Len Brown <lenb@kernel.org>, Ohad Ben-Cohen <ohad@wizery.com>,
	"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE"
	<devicetree@vger.kernel.org>,
	Philipp Zabel <p.zabel@pengutronix.de>,
	Arnd Bergmann <arnd@arndb.de>,
	Suzuki K Poulose <suzuki.poulose@arm.com>,
	Maxime Ripard <mripard@kernel.org>,
	Rob Herring <robh+dt@kernel.org>, Borislav Petkov <bp@alien8.de>,
	"open list:DRM DRIVERS FOR ALLWINNER A10"
	<dri-devel@lists.freedesktop.org>,
	Yong Deng <yong.deng@magewell.com>,
	Santosh Shilimkar <ssantosh@kernel.org>,
	Bjorn Helgaas <bhelgaas@google.com>,
	Florian Fainelli <f.fainelli@gmail.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Mauro Carvalho Chehab <mchehab@kernel.org>,
	"moderated list:ARM PORT" <linux-arm-kernel@lists.infradead.org>,
	Saravana Kannan <saravanak@google.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Oliver Neukum <oneukum@suse.com>,
	"Rafael J. Wysocki" <rjw@rjwysocki.net>,
	open list <linux-kernel@vger.kernel.org>,
	Paul Kocialkowski <paul.kocialkowski@bootlin.com>,
	"open list:IOMMU DRIVERS" <iommu@lists.linux-foundation.org>,
	"open list:USB SUBSYSTEM" <linux-usb@vger.kernel.org>,
	Stefano Stabellini <sstabellini@kernel.org>,
	Daniel Vetter <daniel@ffwll.ch>,
	Sudeep Holla <sudeep.holla@arm.com>,
	"open list:ALLWINNER A10 CSI DRIVER"
	<linux-media@vger.kernel.org>,
	Robin Murphy <robin.murphy@arm.com>,
	"moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE"
	<linux-rpi-kernel@lists.infradead.org>
Subject: Re: [PATCH v9 08/12] device core: Introduce DMA range map, supplanting dma_pfn_offset
Date: Tue, 28 Jul 2020 14:33:43 +0200	[thread overview]
Message-ID: <20200728123343.GA3939@lst.de> (raw)
In-Reply-To: <20200724203407.16972-9-james.quinlan@broadcom.com>

A few tiny nitpicks:

The subject should have the dma-mapping prefix, this doesn't
really touch the device core.

> -	rc = of_dma_get_range(np, &dma_addr, &paddr, &size);
> +	rc = of_dma_get_range(np, &map);
> +	rc = PTR_ERR_OR_ZERO(map);

I don't think you need the PTR_ERR_OR_ZERO line here, of_dma_get_range
returns the error.

> +int dma_set_offset_range(struct device *dev, phys_addr_t cpu_start,
> +			 dma_addr_t dma_start, u64 size)
> +{
> +	struct bus_dma_region *map;
> +	u64 offset = (u64)cpu_start - (u64)dma_start;
> +
> +	if (!dev)
> +		return -ENODEV;

I don't think we need the NULL protection here, all DMA API calls
expect a device.

> +	if (!offset)
> +		return 0;
> +
> +	/*
> +	 * See if a map already exists and we already encompass the new range:
> +	 */
> +	if (dev->dma_range_map) {
> +		if (dma_range_overlaps(dev, cpu_start, dma_start, size, offset))
> +			return 0;
> +		dev_err(dev, "attempt to add conflicting DMA range to existing map\n");
> +		return -EINVAL;
> +	}

And here why do we need the overlap check at all?  I'd be tempted to
always return an error for this case.

What is the plan to merge this?  Do you want all this to go into one
tree, or get as many bits into the applicable trees for 5.9 and then
finish up for 5.10?  If the former I can apply it to the dma-mapping
tree and just fix up the nitpicks.
_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

  reply	other threads:[~2020-07-28 12:33 UTC|newest]

Thread overview: 62+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-24 20:33 [PATCH v9 00/12] PCI: brcmstb: enable PCIe for STB chips Jim Quinlan
2020-07-24 20:33 ` Jim Quinlan
2020-07-24 20:33 ` Jim Quinlan
2020-07-24 20:33 ` Jim Quinlan
2020-07-24 20:33 ` Jim Quinlan via iommu
2020-07-24 20:33 ` [PATCH v9 01/12] PCI: brcmstb: PCIE_BRCMSTB depends on ARCH_BRCMSTB Jim Quinlan
2020-07-24 20:33 ` [PATCH v9 02/12] ata: ahci_brcm: Fix use of BCM7216 reset controller Jim Quinlan
2020-07-24 21:02   ` Florian Fainelli
2020-07-25  9:18   ` Sergei Shtylyov
2020-07-27  6:58   ` Philipp Zabel
2020-07-24 20:33 ` [PATCH v9 03/12] dt-bindings: PCI: Add bindings for more Brcmstb chips Jim Quinlan
2020-07-24 20:33   ` Jim Quinlan
2020-07-24 20:33 ` [PATCH v9 04/12] PCI: brcmstb: Add bcm7278 register info Jim Quinlan
2020-07-24 20:33   ` Jim Quinlan
2020-07-24 20:33 ` [PATCH v9 05/12] PCI: brcmstb: Add suspend and resume pm_ops Jim Quinlan
2020-07-24 20:33   ` Jim Quinlan
2020-07-24 20:33 ` [PATCH v9 06/12] PCI: brcmstb: Add bcm7278 PERST# support Jim Quinlan
2020-07-24 20:33   ` Jim Quinlan
2020-07-24 20:33 ` [PATCH v9 07/12] PCI: brcmstb: Add control of rescal reset Jim Quinlan
2020-07-24 20:33   ` Jim Quinlan
2020-07-24 20:33 ` [PATCH v9 08/12] device core: Introduce DMA range map, supplanting dma_pfn_offset Jim Quinlan via iommu
2020-07-24 20:33   ` Jim Quinlan
2020-07-28 12:33   ` Christoph Hellwig [this message]
2020-07-28 18:36     ` Jim Quinlan via iommu
2020-07-28 18:36       ` Jim Quinlan
2020-07-28 15:04   ` Rob Herring
2020-07-28 15:04     ` Rob Herring
2020-07-28 18:24     ` Jim Quinlan via iommu
2020-07-28 18:24       ` Jim Quinlan
2020-07-29  6:19       ` Christoph Hellwig
2020-07-29 14:26         ` Jim Quinlan via iommu
2020-07-29 14:26           ` Jim Quinlan
2020-07-29 14:27         ` Rob Herring
2020-07-29 14:27           ` Rob Herring
2020-07-30 16:44           ` Jim Quinlan via iommu
2020-07-30 16:44             ` Jim Quinlan
2020-07-30 17:02             ` Nicolas Saenz Julienne
2020-07-30 17:02               ` Nicolas Saenz Julienne
2020-07-31 14:23             ` Rob Herring
2020-07-31 14:23               ` Rob Herring
2020-07-30 17:05   ` Nicolas Saenz Julienne
2020-07-30 17:05     ` Nicolas Saenz Julienne
2020-07-30 17:25     ` Jim Quinlan via iommu
2020-07-30 17:25       ` Jim Quinlan
2020-07-30 17:29       ` Nicolas Saenz Julienne
2020-07-30 17:29         ` Nicolas Saenz Julienne
2020-08-01 17:17   ` Nicolas Saenz Julienne
2020-08-01 17:17     ` Nicolas Saenz Julienne
2020-08-03 12:49     ` Jim Quinlan via iommu
2020-08-03 12:49       ` Jim Quinlan
2020-07-24 20:33 ` [PATCH v9 09/12] PCI: brcmstb: Set additional internal memory DMA viewport sizes Jim Quinlan
2020-07-24 20:33   ` Jim Quinlan
2020-08-01 17:39   ` Nicolas Saenz Julienne
2020-08-01 17:39     ` Nicolas Saenz Julienne
2020-08-03 12:40     ` Jim Quinlan
2020-08-03 12:40       ` Jim Quinlan
2020-07-24 20:33 ` [PATCH v9 10/12] PCI: brcmstb: Accommodate MSI for older chips Jim Quinlan
2020-07-24 20:33   ` Jim Quinlan
2020-07-24 20:33 ` [PATCH v9 11/12] PCI: brcmstb: Set bus max burst size by chip type Jim Quinlan
2020-07-24 20:33   ` Jim Quinlan
2020-07-24 20:33 ` [PATCH v9 12/12] PCI: brcmstb: Add bcm7211, bcm7216, bcm7445, bcm7278 to match list Jim Quinlan
2020-07-24 20:33   ` Jim Quinlan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200728123343.GA3939@lst.de \
    --to=hch@lst.de \
    --cc=airlied@linux.ie \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=arnd@arndb.de \
    --cc=bcm-kernel-feedback-list@broadcom.com \
    --cc=bhelgaas@google.com \
    --cc=bp@alien8.de \
    --cc=dalias@libc.org \
    --cc=daniel@ffwll.ch \
    --cc=devel@driverdev.osuosl.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=f.fainelli@gmail.com \
    --cc=frowand.list@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=guohanjun@huawei.com \
    --cc=heikki.krogerus@linux.intel.com \
    --cc=hpa@zytor.com \
    --cc=iommu@lists.linux-foundation.org \
    --cc=james.quinlan@broadcom.com \
    --cc=jean-philippe@linaro.org \
    --cc=julien.grall@arm.com \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=linux-remoteproc@vger.kernel.org \
    --cc=linux-rpi-kernel@lists.infradead.org \
    --cc=linux-sh@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=mchehab@kernel.org \
    --cc=mingo@redhat.com \
    --cc=mripard@kernel.org \
    --cc=ohad@wizery.com \
    --cc=oneukum@suse.com \
    --cc=p.zabel@pengutronix.de \
    --cc=paul.kocialkowski@bootlin.com \
    --cc=rjw@rjwysocki.net \
    --cc=robh+dt@kernel.org \
    --cc=robin.murphy@arm.com \
    --cc=saravanak@google.com \
    --cc=ssantosh@kernel.org \
    --cc=sstabellini@kernel.org \
    --cc=stern@rowland.harvard.edu \
    --cc=sudeep.holla@arm.com \
    --cc=suzuki.poulose@arm.com \
    --cc=tglx@linutronix.de \
    --cc=wens@csie.org \
    --cc=will@kernel.org \
    --cc=x86@kernel.org \
    --cc=yong.deng@magewell.com \
    --cc=ysato@users.sourceforge.jp \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.