All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
To: Robin Murphy <robin.murphy-5wv7dgnIgG8@public.gmane.org>
Cc: Catalin Marinas <catalin.marinas-5wv7dgnIgG8@public.gmane.org>,
	Will Deacon <will.deacon-5wv7dgnIgG8@public.gmane.org>,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org,
	Guo Ren <ren_guo-Y+KPrCd2zL4AvxtiuMwx3w@public.gmane.org>,
	Laura Abbott <labbott-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
	Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
Subject: Re: [PATCH 6/9] dma-remap: support DMA_ATTR_NO_KERNEL_MAPPING
Date: Sat, 1 Dec 2018 18:05:06 +0100	[thread overview]
Message-ID: <20181201170506.GE20912@lst.de> (raw)
In-Reply-To: <e993440c-53bf-8071-b1b6-06d022d39e4e-5wv7dgnIgG8@public.gmane.org>

On Fri, Nov 30, 2018 at 07:05:40PM +0000, Robin Murphy wrote:
> On 05/11/2018 12:19, Christoph Hellwig wrote:
>> Do not waste vmalloc space on allocations that do not require a mapping
>> into the kernel address space.
>>
>> Signed-off-by: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
>> ---
>>   kernel/dma/remap.c | 11 +++++++++--
>>   1 file changed, 9 insertions(+), 2 deletions(-)
>>
>> diff --git a/kernel/dma/remap.c b/kernel/dma/remap.c
>> index 8f1fca34b894..10a545126b0b 100644
>> --- a/kernel/dma/remap.c
>> +++ b/kernel/dma/remap.c
>> @@ -200,7 +200,8 @@ void *arch_dma_alloc(struct device *dev, size_t size, dma_addr_t *dma_handle,
>>     	size = PAGE_ALIGN(size);
>>   -	if (!gfpflags_allow_blocking(flags)) {
>> +	if (!gfpflags_allow_blocking(flags) &&
>> +	    !(attrs & DMA_ATTR_NO_KERNEL_MAPPING)) {
>>   		ret = dma_alloc_from_pool(size, &page, flags);
>>   		if (!ret)
>>   			return NULL;
>> @@ -215,6 +216,9 @@ void *arch_dma_alloc(struct device *dev, size_t size, dma_addr_t *dma_handle,
>>   	/* remove any dirty cache lines on the kernel alias */
>>   	arch_dma_prep_coherent(page, size);
>>   +	if (attrs & DMA_ATTR_NO_KERNEL_MAPPING)
>> +		return page; /* opaqueue cookie */
>
> Best to preempt the inevitable patch fixing that typo in 3 months' time. 
> Otherwise,

Thanks,

fixed.

WARNING: multiple messages have this Message-ID (diff)
From: Christoph Hellwig <hch@lst.de>
To: Robin Murphy <robin.murphy@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>,
	Will Deacon <will.deacon@arm.com>,
	linux-kernel@vger.kernel.org, iommu@lists.linux-foundation.org,
	Guo Ren <ren_guo@c-sky.com>, Laura Abbott <labbott@redhat.com>,
	Christoph Hellwig <hch@lst.de>,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 6/9] dma-remap: support DMA_ATTR_NO_KERNEL_MAPPING
Date: Sat, 1 Dec 2018 18:05:06 +0100	[thread overview]
Message-ID: <20181201170506.GE20912@lst.de> (raw)
In-Reply-To: <e993440c-53bf-8071-b1b6-06d022d39e4e@arm.com>

On Fri, Nov 30, 2018 at 07:05:40PM +0000, Robin Murphy wrote:
> On 05/11/2018 12:19, Christoph Hellwig wrote:
>> Do not waste vmalloc space on allocations that do not require a mapping
>> into the kernel address space.
>>
>> Signed-off-by: Christoph Hellwig <hch@lst.de>
>> ---
>>   kernel/dma/remap.c | 11 +++++++++--
>>   1 file changed, 9 insertions(+), 2 deletions(-)
>>
>> diff --git a/kernel/dma/remap.c b/kernel/dma/remap.c
>> index 8f1fca34b894..10a545126b0b 100644
>> --- a/kernel/dma/remap.c
>> +++ b/kernel/dma/remap.c
>> @@ -200,7 +200,8 @@ void *arch_dma_alloc(struct device *dev, size_t size, dma_addr_t *dma_handle,
>>     	size = PAGE_ALIGN(size);
>>   -	if (!gfpflags_allow_blocking(flags)) {
>> +	if (!gfpflags_allow_blocking(flags) &&
>> +	    !(attrs & DMA_ATTR_NO_KERNEL_MAPPING)) {
>>   		ret = dma_alloc_from_pool(size, &page, flags);
>>   		if (!ret)
>>   			return NULL;
>> @@ -215,6 +216,9 @@ void *arch_dma_alloc(struct device *dev, size_t size, dma_addr_t *dma_handle,
>>   	/* remove any dirty cache lines on the kernel alias */
>>   	arch_dma_prep_coherent(page, size);
>>   +	if (attrs & DMA_ATTR_NO_KERNEL_MAPPING)
>> +		return page; /* opaqueue cookie */
>
> Best to preempt the inevitable patch fixing that typo in 3 months' time. 
> Otherwise,

Thanks,

fixed.

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  parent reply	other threads:[~2018-12-01 17:05 UTC|newest]

Thread overview: 76+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-05 12:19 move the arm arch_dma_alloc implementation to common code Christoph Hellwig
2018-11-05 12:19 ` Christoph Hellwig
2018-11-05 12:19 ` [PATCH 1/9] dma-direct: provide page based alloc/free helpers Christoph Hellwig
2018-11-05 12:19   ` Christoph Hellwig
2018-11-30 19:04   ` Robin Murphy
2018-11-30 19:04     ` Robin Murphy
2018-12-01 16:56     ` Christoph Hellwig
2018-12-01 16:56       ` Christoph Hellwig
2018-11-05 12:19 ` [PATCH 2/9] dma-direct: reject highmem pages from dma_alloc_from_contiguous Christoph Hellwig
2018-11-05 12:19   ` Christoph Hellwig
2018-11-30 19:04   ` Robin Murphy
2018-11-30 19:04     ` Robin Murphy
2018-12-01 16:57     ` Christoph Hellwig
2018-12-01 16:57       ` Christoph Hellwig
2018-11-05 12:19 ` [PATCH 3/9] dma-mapping: move the remap helpers to a separate file Christoph Hellwig
2018-11-05 12:19   ` Christoph Hellwig
     [not found]   ` <20181105121931.13481-4-hch-jcswGhMUV9g@public.gmane.org>
2018-11-30 19:05     ` Robin Murphy
2018-11-30 19:05       ` Robin Murphy
2018-12-01 16:59       ` Christoph Hellwig
2018-12-01 16:59         ` Christoph Hellwig
2018-11-05 12:19 ` [PATCH 4/9] dma-mapping: move the arm64 ncoherent alloc/free support to common code Christoph Hellwig
2018-11-05 12:19   ` Christoph Hellwig
2018-11-15 19:50   ` Will Deacon
2018-11-15 19:50     ` Will Deacon
     [not found]   ` <20181105121931.13481-5-hch-jcswGhMUV9g@public.gmane.org>
2018-11-30 19:05     ` Robin Murphy
2018-11-30 19:05       ` Robin Murphy
2018-12-01 17:03       ` Christoph Hellwig
2018-12-01 17:03         ` Christoph Hellwig
2018-12-04 10:09     ` Russell King - ARM Linux
2018-12-04 10:09       ` Russell King - ARM Linux
2018-12-04 14:22       ` Christoph Hellwig
2018-12-04 14:22         ` Christoph Hellwig
2018-11-05 12:19 ` [PATCH 5/9] dma-mapping: support highmem in the generic remap allocator Christoph Hellwig
2018-11-05 12:19   ` Christoph Hellwig
2018-11-30 19:05   ` Robin Murphy
2018-11-30 19:05     ` Robin Murphy
2018-12-04  8:38     ` Marek Szyprowski
2018-12-04  8:38       ` Marek Szyprowski
     [not found]       ` <e1567e0d-4724-fb6b-cc22-3a723eec5e0f-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2018-12-04 14:23         ` Christoph Hellwig
2018-12-04 14:23           ` Christoph Hellwig
2018-12-05 10:14           ` [PATCH] dma-mapping: fix lack of DMA address assignment in " Marek Szyprowski
2018-12-05 10:14             ` Marek Szyprowski
2018-12-05 12:35             ` Thierry Reding
2018-12-05 12:35               ` Thierry Reding
2018-12-05 13:49             ` Christoph Hellwig
2018-12-05 13:49               ` Christoph Hellwig
2018-11-05 12:19 ` [PATCH 6/9] dma-remap: support DMA_ATTR_NO_KERNEL_MAPPING Christoph Hellwig
2018-11-05 12:19   ` Christoph Hellwig
     [not found]   ` <20181105121931.13481-7-hch-jcswGhMUV9g@public.gmane.org>
2018-11-30 19:05     ` Robin Murphy
2018-11-30 19:05       ` Robin Murphy
     [not found]       ` <e993440c-53bf-8071-b1b6-06d022d39e4e-5wv7dgnIgG8@public.gmane.org>
2018-12-01 17:05         ` Christoph Hellwig [this message]
2018-12-01 17:05           ` Christoph Hellwig
2018-11-05 12:19 ` [PATCH 7/9] csky: don't select DMA_NONCOHERENT_OPS Christoph Hellwig
2018-11-05 12:19   ` Christoph Hellwig
2018-11-05 15:47   ` Guo Ren
2018-11-05 15:47     ` Guo Ren
2018-11-05 12:19 ` [PATCH 8/9] csky: don't use GFP_DMA in atomic_pool_init Christoph Hellwig
2018-11-05 12:19   ` Christoph Hellwig
2018-11-05 15:47   ` Guo Ren
2018-11-05 15:47     ` Guo Ren
2018-11-05 12:19 ` [PATCH 9/9] csky: use the generic remapping dma alloc implementation Christoph Hellwig
2018-11-05 12:19   ` Christoph Hellwig
2018-11-06  7:01   ` Guo Ren
2018-11-06  7:01     ` Guo Ren
2018-11-09  7:51     ` Christoph Hellwig
2018-11-09  7:51       ` Christoph Hellwig
2018-11-09  7:52 ` move the arm arch_dma_alloc implementation to common code Christoph Hellwig
2018-11-09  7:52   ` Christoph Hellwig
     [not found]   ` <20181109075238.GA27578-jcswGhMUV9g@public.gmane.org>
2018-11-15 19:50     ` Will Deacon
2018-11-15 19:50       ` Will Deacon
2018-11-15 20:58       ` Robin Murphy
2018-11-15 20:58         ` Robin Murphy
2018-11-27  7:37         ` Christoph Hellwig
2018-11-27  7:37           ` Christoph Hellwig
2018-11-28 12:18           ` Robin Murphy
2018-11-28 12:18             ` Robin Murphy

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=20181201170506.GE20912@lst.de \
    --to=hch-jcswghmuv9g@public.gmane.org \
    --cc=catalin.marinas-5wv7dgnIgG8@public.gmane.org \
    --cc=iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
    --cc=labbott-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=ren_guo-Y+KPrCd2zL4AvxtiuMwx3w@public.gmane.org \
    --cc=robin.murphy-5wv7dgnIgG8@public.gmane.org \
    --cc=will.deacon-5wv7dgnIgG8@public.gmane.org \
    /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.