All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoph Hellwig <hch@infradead.org>
To: Thierry Reding <treding@nvidia.com>
Cc: "Christoph Hellwig" <hch@infradead.org>,
	"Daniel Vetter" <daniel@ffwll.ch>,
	"Christian König" <christian.koenig@amd.com>,
	"moderated list:DMA BUFFER SHARING FRAMEWORK"
	<linaro-mm-sig@lists.linaro.org>,
	"Linux Kernel Mailing List" <linux-kernel@vger.kernel.org>,
	"amd-gfx list" <amd-gfx@lists.freedesktop.org>,
	"Jerome Glisse" <jglisse@redhat.com>,
	dri-devel <dri-devel@lists.freedesktop.org>,
	"Dan Williams" <dan.j.williams@intel.com>,
	"Logan Gunthorpe" <logang@deltatee.com>,
	"open list:DMA BUFFER SHARING FRAMEWORK"
	<linux-media@vger.kernel.org>,
	iommu@lists.linux-foundation.org,
	linux-arm-kernel@lists.infradead.org
Subject: noveau vs arm dma ops
Date: Wed, 25 Apr 2018 01:54:39 -0700	[thread overview]
Message-ID: <20180425085439.GA29996@infradead.org> (raw)
In-Reply-To: <20180425074151.GA2271@ulmo>

[discussion about this patch, which should have been cced to the iommu
 and linux-arm-kernel lists, but wasn't:
 https://www.spinics.net/lists/dri-devel/msg173630.html]

On Wed, Apr 25, 2018 at 09:41:51AM +0200, Thierry Reding wrote:
> > API from the iommu/dma-mapping code.  Drivers have no business poking
> > into these details.
> 
> The interfaces that the above patch uses are all EXPORT_SYMBOL_GPL,
> which is rather misleading if they are not meant to be used by drivers
> directly.

The only reason the DMA ops are exported is because get_arch_dma_ops
references (or in case of the coherent ones used to reference).  We
don't let drivers assign random dma ops.

> 
> > Thierry, please resend this with at least the iommu list and
> > linux-arm-kernel in Cc to have a proper discussion on the right API.
> 
> I'm certainly open to help with finding a correct solution, but the
> patch above was purposefully terse because this is something that I
> hope we can get backported to v4.16 to unbreak Nouveau. Coordinating
> such a backport between ARM and DRM trees does not sound like something
> that would help getting this fixed in v4.16.

Coordinating the backport of a trivial helper in the arm tree is not
the end of the world.  Really, this cowboy attitude is a good reason
why graphics folks have such a bad rep.  You keep poking into random
kernel internals, don't talk to anoyone and then complain if people
are upset.  This shouldn't be surprising.

> Granted, this issue could've been caught with a little more testing, but
> in retrospect I think it would've been a lot better if ARM_DMA_USE_IOMMU
> was just enabled unconditionally if it has side-effects that platforms
> don't opt in to but have to explicitly opt out of.

Agreed on that count.  Please send a patch.

WARNING: multiple messages have this Message-ID (diff)
From: Christoph Hellwig <hch@infradead.org>
To: Thierry Reding <treding@nvidia.com>
Cc: "moderated list:DMA BUFFER SHARING FRAMEWORK"
	<linaro-mm-sig@lists.linaro.org>,
	"Linux Kernel Mailing List" <linux-kernel@vger.kernel.org>,
	"amd-gfx list" <amd-gfx@lists.freedesktop.org>,
	"Christoph Hellwig" <hch@infradead.org>,
	"Jerome Glisse" <jglisse@redhat.com>,
	iommu@lists.linux-foundation.org,
	dri-devel <dri-devel@lists.freedesktop.org>,
	"Dan Williams" <dan.j.williams@intel.com>,
	"Logan Gunthorpe" <logang@deltatee.com>,
	"Christian König" <christian.koenig@amd.com>,
	linux-arm-kernel@lists.infradead.org,
	"open list:DMA BUFFER SHARING FRAMEWORK"
	<linux-media@vger.kernel.org>
Subject: noveau vs arm dma ops
Date: Wed, 25 Apr 2018 01:54:39 -0700	[thread overview]
Message-ID: <20180425085439.GA29996@infradead.org> (raw)
In-Reply-To: <20180425074151.GA2271@ulmo>

[discussion about this patch, which should have been cced to the iommu
 and linux-arm-kernel lists, but wasn't:
 https://www.spinics.net/lists/dri-devel/msg173630.html]

On Wed, Apr 25, 2018 at 09:41:51AM +0200, Thierry Reding wrote:
> > API from the iommu/dma-mapping code.  Drivers have no business poking
> > into these details.
> 
> The interfaces that the above patch uses are all EXPORT_SYMBOL_GPL,
> which is rather misleading if they are not meant to be used by drivers
> directly.

The only reason the DMA ops are exported is because get_arch_dma_ops
references (or in case of the coherent ones used to reference).  We
don't let drivers assign random dma ops.

> 
> > Thierry, please resend this with at least the iommu list and
> > linux-arm-kernel in Cc to have a proper discussion on the right API.
> 
> I'm certainly open to help with finding a correct solution, but the
> patch above was purposefully terse because this is something that I
> hope we can get backported to v4.16 to unbreak Nouveau. Coordinating
> such a backport between ARM and DRM trees does not sound like something
> that would help getting this fixed in v4.16.

Coordinating the backport of a trivial helper in the arm tree is not
the end of the world.  Really, this cowboy attitude is a good reason
why graphics folks have such a bad rep.  You keep poking into random
kernel internals, don't talk to anoyone and then complain if people
are upset.  This shouldn't be surprising.

> Granted, this issue could've been caught with a little more testing, but
> in retrospect I think it would've been a lot better if ARM_DMA_USE_IOMMU
> was just enabled unconditionally if it has side-effects that platforms
> don't opt in to but have to explicitly opt out of.

Agreed on that count.  Please send a patch.
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

WARNING: multiple messages have this Message-ID (diff)
From: hch@infradead.org (Christoph Hellwig)
To: linux-arm-kernel@lists.infradead.org
Subject: noveau vs arm dma ops
Date: Wed, 25 Apr 2018 01:54:39 -0700	[thread overview]
Message-ID: <20180425085439.GA29996@infradead.org> (raw)
In-Reply-To: <20180425074151.GA2271@ulmo>

[discussion about this patch, which should have been cced to the iommu
 and linux-arm-kernel lists, but wasn't:
 https://www.spinics.net/lists/dri-devel/msg173630.html]

On Wed, Apr 25, 2018 at 09:41:51AM +0200, Thierry Reding wrote:
> > API from the iommu/dma-mapping code.  Drivers have no business poking
> > into these details.
> 
> The interfaces that the above patch uses are all EXPORT_SYMBOL_GPL,
> which is rather misleading if they are not meant to be used by drivers
> directly.

The only reason the DMA ops are exported is because get_arch_dma_ops
references (or in case of the coherent ones used to reference).  We
don't let drivers assign random dma ops.

> 
> > Thierry, please resend this with at least the iommu list and
> > linux-arm-kernel in Cc to have a proper discussion on the right API.
> 
> I'm certainly open to help with finding a correct solution, but the
> patch above was purposefully terse because this is something that I
> hope we can get backported to v4.16 to unbreak Nouveau. Coordinating
> such a backport between ARM and DRM trees does not sound like something
> that would help getting this fixed in v4.16.

Coordinating the backport of a trivial helper in the arm tree is not
the end of the world.  Really, this cowboy attitude is a good reason
why graphics folks have such a bad rep.  You keep poking into random
kernel internals, don't talk to anoyone and then complain if people
are upset.  This shouldn't be surprising.

> Granted, this issue could've been caught with a little more testing, but
> in retrospect I think it would've been a lot better if ARM_DMA_USE_IOMMU
> was just enabled unconditionally if it has side-effects that platforms
> don't opt in to but have to explicitly opt out of.

Agreed on that count.  Please send a patch.

  reply	other threads:[~2018-04-25  8:54 UTC|newest]

Thread overview: 161+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-25 10:59 [PATCH 1/8] lib/scatterlist: add sg_set_dma_addr() helper Christian König
2018-03-25 10:59 ` Christian König
2018-03-25 10:59 ` [PATCH 2/8] PCI: Add pci_find_common_upstream_dev() Christian König
2018-03-25 10:59   ` Christian König
2018-03-28 12:38   ` Christoph Hellwig
2018-03-28 15:07     ` Christian König
2018-03-28 15:07       ` Christian König
2018-03-28 15:47       ` Logan Gunthorpe
2018-03-28 16:02         ` Christian König
2018-03-28 16:02           ` Christian König
2018-03-28 16:25           ` Logan Gunthorpe
2018-03-28 18:28             ` Christian König
2018-03-28 18:28               ` Christian König
2018-03-28 18:57               ` Logan Gunthorpe
2018-03-28 19:44                 ` Christian König
2018-03-28 19:44                   ` Christian König
2018-03-28 19:53                   ` Logan Gunthorpe
2018-03-29 11:44                     ` Christian König
2018-03-29 15:45                       ` Logan Gunthorpe
2018-03-29 16:10                         ` Christian König
2018-03-29 16:10                           ` Christian König
2018-03-29 16:25                           ` Logan Gunthorpe
2018-03-29 18:15                             ` Christian König
2018-03-29 18:15                               ` Christian König
2018-03-30  1:58                             ` Jerome Glisse
2018-03-30  1:58                               ` Jerome Glisse
2018-03-30  6:33                               ` Christoph Hellwig
2018-03-30  6:33                                 ` Christoph Hellwig
2018-03-30 15:25                                 ` Jerome Glisse
2018-03-30 18:46                               ` Logan Gunthorpe
2018-03-30 19:45                                 ` Jerome Glisse
2018-03-30 19:45                                   ` Jerome Glisse
2018-04-02 17:02                                   ` Logan Gunthorpe
2018-04-02 17:20                                     ` Jerome Glisse
2018-04-02 17:20                                       ` Jerome Glisse
2018-04-02 17:37                                       ` Logan Gunthorpe
2018-04-02 19:16                                         ` Jerome Glisse
2018-04-02 19:16                                           ` Jerome Glisse
2018-04-02 19:32                                           ` Logan Gunthorpe
2018-04-02 19:45                                             ` Jerome Glisse
2018-04-02 19:45                                               ` Jerome Glisse
     [not found]                     ` <CADnq5_P-z=Noos_jaME9_CERri3C-m2hPPvx2bArr36O=1FnrA@mail.gmail.com>
2018-03-29 14:37                       ` Alex Deucher
2018-03-29 14:37                         ` Alex Deucher
2018-03-25 10:59 ` [PATCH 3/8] PCI: Add pci_peer_traffic_supported() Christian König
2018-03-25 10:59   ` Christian König
2018-03-25 10:59 ` [PATCH 4/8] dma-buf: add peer2peer flag Christian König
2018-03-25 10:59   ` Christian König
2018-03-29  6:57   ` Daniel Vetter
2018-03-29  6:57     ` Daniel Vetter
2018-03-29 11:34     ` Christian König
2018-03-29 11:34       ` Christian König
2018-04-03  9:09       ` Daniel Vetter
2018-04-03  9:09         ` Daniel Vetter
2018-04-03 17:06         ` Jerome Glisse
2018-04-03 17:06           ` Jerome Glisse
2018-04-03 18:08           ` Daniel Vetter
2018-04-03 18:08             ` Daniel Vetter
2018-04-16 12:39             ` Christoph Hellwig
2018-04-16 12:39               ` Christoph Hellwig
2018-04-16 13:38               ` Daniel Vetter
2018-04-16 13:38                 ` Daniel Vetter
2018-04-19  8:16                 ` Christoph Hellwig
2018-04-19  8:16                   ` Christoph Hellwig
2018-04-20  7:13                   ` Daniel Vetter
2018-04-20  7:13                     ` Daniel Vetter
2018-04-20  8:58                     ` Christian König
2018-04-20  8:58                       ` Christian König
2018-04-20 10:17                       ` Christoph Hellwig
2018-04-20 10:17                         ` Christoph Hellwig
2018-04-20 10:44                         ` Christian König
2018-04-20 10:44                           ` Christian König
2018-04-20 12:46                           ` Christoph Hellwig
2018-04-20 15:21                             ` [Linaro-mm-sig] " Daniel Vetter
2018-04-24 18:48                               ` Christoph Hellwig
2018-04-24 18:48                                 ` Christoph Hellwig
2018-04-24 19:32                                 ` Daniel Vetter
2018-04-24 19:32                                   ` Daniel Vetter
2018-04-25  5:48                                   ` Christoph Hellwig
2018-04-25  5:48                                     ` Christoph Hellwig
2018-04-25  6:10                                     ` Alex Deucher
2018-04-25  6:10                                       ` Alex Deucher
2018-04-25  6:13                                     ` Daniel Vetter
2018-04-25  6:13                                       ` Daniel Vetter
2018-04-25  6:23                                       ` Daniel Vetter
2018-04-25  6:23                                         ` Daniel Vetter
2018-04-25  6:43                                         ` Christoph Hellwig
2018-04-25  6:43                                           ` Christoph Hellwig
2018-04-25  7:02                                           ` Daniel Vetter
2018-04-25  7:02                                             ` Daniel Vetter
2018-04-25  7:09                                             ` Christoph Hellwig
2018-04-25  7:09                                               ` Christoph Hellwig
2018-04-25  7:30                                               ` Daniel Vetter
2018-04-25  7:30                                                 ` Daniel Vetter
2018-04-25  7:56                                                 ` Thierry Reding
2018-04-25  7:56                                                   ` Thierry Reding
2018-04-25  8:55                                                   ` Christoph Hellwig
2018-04-25  8:55                                                     ` Christoph Hellwig
2018-04-25  7:43                                               ` Thierry Reding
2018-04-25  7:43                                                 ` Thierry Reding
2018-04-25  7:41                                           ` Thierry Reding
2018-04-25  7:41                                             ` Thierry Reding
2018-04-25  8:54                                             ` Christoph Hellwig [this message]
2018-04-25  8:54                                               ` noveau vs arm dma ops Christoph Hellwig
2018-04-25  8:54                                               ` Christoph Hellwig
2018-04-25  9:25                                               ` Russell King - ARM Linux
2018-04-25  9:25                                                 ` Russell King - ARM Linux
2018-04-25 10:04                                               ` Daniel Vetter
2018-04-25 10:04                                                 ` Daniel Vetter
2018-04-25 10:04                                                 ` Daniel Vetter
2018-04-25 15:33                                                 ` Christoph Hellwig
2018-04-25 15:33                                                   ` Christoph Hellwig
2018-04-25 15:33                                                   ` Christoph Hellwig
2018-04-25 21:35                                                   ` Daniel Vetter
2018-04-25 21:35                                                     ` Daniel Vetter
2018-04-25 21:35                                                     ` Daniel Vetter
2018-04-25 23:26                                                     ` Russell King - ARM Linux
2018-04-25 23:26                                                       ` Russell King - ARM Linux
2018-04-26  9:17                                                       ` Daniel Vetter
2018-04-26  9:17                                                         ` Daniel Vetter
2018-04-26  9:17                                                         ` Daniel Vetter
2018-04-26  9:09                                                     ` Christoph Hellwig
2018-04-26  9:09                                                       ` Christoph Hellwig
2018-04-26  9:09                                                       ` Christoph Hellwig
2018-04-26  9:45                                                       ` Daniel Vetter
2018-04-26  9:45                                                         ` Daniel Vetter
2018-04-26  9:45                                                         ` Daniel Vetter
2018-04-26 11:12                                                       ` Russell King - ARM Linux
2018-04-26 11:12                                                         ` Russell King - ARM Linux
2018-04-25 22:54                                                   ` Russell King - ARM Linux
2018-04-25 22:54                                                     ` Russell King - ARM Linux
2018-04-26  9:13                                                     ` Christoph Hellwig
2018-04-26  9:13                                                       ` Christoph Hellwig
2018-04-26  9:13                                                       ` Christoph Hellwig
2018-04-26  9:20                                                     ` [Linaro-mm-sig] " Daniel Vetter
2018-04-26  9:20                                                       ` Daniel Vetter
2018-04-26  9:20                                                       ` Daniel Vetter
2018-04-26  9:24                                                       ` Christoph Hellwig
2018-04-26  9:24                                                         ` Christoph Hellwig
2018-04-26  9:24                                                         ` Christoph Hellwig
2018-04-26  9:39                                                         ` Daniel Vetter
2018-04-26  9:39                                                           ` Daniel Vetter
2018-04-26  9:39                                                           ` Daniel Vetter
2018-04-25  6:24                                       ` [Linaro-mm-sig] [PATCH 4/8] dma-buf: add peer2peer flag Alex Deucher
2018-04-25  6:24                                         ` Alex Deucher
2018-04-25  6:41                                         ` Christoph Hellwig
2018-04-25  6:41                                           ` Christoph Hellwig
2018-04-25 17:44                                           ` Alex Deucher
2018-04-25 17:44                                             ` Alex Deucher
2018-04-25 18:38                                             ` Dan Williams
2018-04-25 18:38                                               ` Dan Williams
2018-05-04 12:45                                             ` Lucas Stach
2018-03-25 10:59 ` [PATCH 5/8] drm/amdgpu: print DMA-buf status in debugfs Christian König
2018-03-25 10:59   ` Christian König
2018-03-25 10:59 ` [PATCH 6/8] drm/amdgpu: note that we can handle peer2peer DMA-buf Christian König
2018-03-25 10:59   ` Christian König
2018-03-25 10:59 ` [PATCH 7/8] drm/amdgpu: add amdgpu_gem_attach Christian König
2018-03-25 10:59   ` Christian König
2018-03-25 11:00 ` [PATCH 8/8] drm/amdgpu: add support for exporting VRAM using DMA-buf Christian König
2018-03-25 11:00   ` Christian König
2018-03-28 12:37 ` [PATCH 1/8] lib/scatterlist: add sg_set_dma_addr() helper Christoph Hellwig
2018-03-28 12:37   ` Christoph Hellwig

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=20180425085439.GA29996@infradead.org \
    --to=hch@infradead.org \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=christian.koenig@amd.com \
    --cc=dan.j.williams@intel.com \
    --cc=daniel@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=iommu@lists.linux-foundation.org \
    --cc=jglisse@redhat.com \
    --cc=linaro-mm-sig@lists.linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=logang@deltatee.com \
    --cc=treding@nvidia.com \
    /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.