All of lore.kernel.org
 help / color / mirror / Atom feed
From: david.vrabel@citrix.com (David Vrabel)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 6/7] xen/arm/arm64: introduce xen_arch_need_swiotlb
Date: Tue, 14 Oct 2014 17:12:12 +0100	[thread overview]
Message-ID: <543D4B5C.2040502@citrix.com> (raw)
In-Reply-To: <20141014160352.GF30965@laptop.dumpdata.com>

On 14/10/14 17:03, Konrad Rzeszutek Wilk wrote:
> On Fri, Oct 10, 2014 at 12:51:47PM +0100, Stefano Stabellini wrote:
>> Introduce an arch specific function to find out whether a particular dma
>> mapping operation needs to bounce on the swiotlb buffer.
>>
>> On ARM and ARM64, if the page involved is a foreign page and the device
>> is not coherent, we need to bounce because at unmap time we cannot
>> execute any required cache maintenance operations (we don't know how to
>> find the pfn from the mfn).
...
>> --- a/arch/x86/include/asm/xen/page.h
>> +++ b/arch/x86/include/asm/xen/page.h
>> @@ -236,4 +236,11 @@ void make_lowmem_page_readwrite(void *vaddr);
>>  #define xen_remap(cookie, size) ioremap((cookie), (size));
>>  #define xen_unmap(cookie) iounmap((cookie))
>>  
>> +static inline bool xen_arch_need_swiotlb(struct device *dev,
>> +		                                 unsigned long pfn,
>> +										 unsigned long mfn)
>> +{
>> +	return false;
>> +}
> 
> Why not make this an macro?

Because macros are evil and inline functions are preferred.

David

WARNING: multiple messages have this Message-ID (diff)
From: David Vrabel <david.vrabel@citrix.com>
To: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Cc: <xen-devel@lists.xensource.com>, <Ian.Campbell@citrix.com>,
	<linux-kernel@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v4 6/7] xen/arm/arm64: introduce xen_arch_need_swiotlb
Date: Tue, 14 Oct 2014 17:12:12 +0100	[thread overview]
Message-ID: <543D4B5C.2040502@citrix.com> (raw)
In-Reply-To: <20141014160352.GF30965@laptop.dumpdata.com>

On 14/10/14 17:03, Konrad Rzeszutek Wilk wrote:
> On Fri, Oct 10, 2014 at 12:51:47PM +0100, Stefano Stabellini wrote:
>> Introduce an arch specific function to find out whether a particular dma
>> mapping operation needs to bounce on the swiotlb buffer.
>>
>> On ARM and ARM64, if the page involved is a foreign page and the device
>> is not coherent, we need to bounce because at unmap time we cannot
>> execute any required cache maintenance operations (we don't know how to
>> find the pfn from the mfn).
...
>> --- a/arch/x86/include/asm/xen/page.h
>> +++ b/arch/x86/include/asm/xen/page.h
>> @@ -236,4 +236,11 @@ void make_lowmem_page_readwrite(void *vaddr);
>>  #define xen_remap(cookie, size) ioremap((cookie), (size));
>>  #define xen_unmap(cookie) iounmap((cookie))
>>  
>> +static inline bool xen_arch_need_swiotlb(struct device *dev,
>> +		                                 unsigned long pfn,
>> +										 unsigned long mfn)
>> +{
>> +	return false;
>> +}
> 
> Why not make this an macro?

Because macros are evil and inline functions are preferred.

David

WARNING: multiple messages have this Message-ID (diff)
From: David Vrabel <david.vrabel@citrix.com>
To: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Cc: xen-devel@lists.xensource.com, Ian.Campbell@citrix.com,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v4 6/7] xen/arm/arm64: introduce xen_arch_need_swiotlb
Date: Tue, 14 Oct 2014 17:12:12 +0100	[thread overview]
Message-ID: <543D4B5C.2040502@citrix.com> (raw)
In-Reply-To: <20141014160352.GF30965@laptop.dumpdata.com>

On 14/10/14 17:03, Konrad Rzeszutek Wilk wrote:
> On Fri, Oct 10, 2014 at 12:51:47PM +0100, Stefano Stabellini wrote:
>> Introduce an arch specific function to find out whether a particular dma
>> mapping operation needs to bounce on the swiotlb buffer.
>>
>> On ARM and ARM64, if the page involved is a foreign page and the device
>> is not coherent, we need to bounce because at unmap time we cannot
>> execute any required cache maintenance operations (we don't know how to
>> find the pfn from the mfn).
...
>> --- a/arch/x86/include/asm/xen/page.h
>> +++ b/arch/x86/include/asm/xen/page.h
>> @@ -236,4 +236,11 @@ void make_lowmem_page_readwrite(void *vaddr);
>>  #define xen_remap(cookie, size) ioremap((cookie), (size));
>>  #define xen_unmap(cookie) iounmap((cookie))
>>  
>> +static inline bool xen_arch_need_swiotlb(struct device *dev,
>> +		                                 unsigned long pfn,
>> +										 unsigned long mfn)
>> +{
>> +	return false;
>> +}
> 
> Why not make this an macro?

Because macros are evil and inline functions are preferred.

David

  reply	other threads:[~2014-10-14 16:12 UTC|newest]

Thread overview: 81+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-10 11:50 [PATCH v4 0/7] introduce GNTTABOP_cache_flush Stefano Stabellini
2014-10-10 11:50 ` Stefano Stabellini
2014-10-10 11:50 ` Stefano Stabellini
2014-10-10 11:51 ` [PATCH v4 1/7] xen/arm: remove handling of XENFEAT_grant_map_identity Stefano Stabellini
2014-10-10 11:51   ` Stefano Stabellini
2014-10-10 11:51   ` Stefano Stabellini
2014-10-20 15:14   ` Ian Campbell
2014-10-20 15:14     ` Ian Campbell
2014-10-20 15:14     ` Ian Campbell
2014-10-10 11:51 ` [PATCH v4 2/7] xen/arm: remove outer_*_range call Stefano Stabellini
2014-10-10 11:51   ` Stefano Stabellini
2014-10-10 11:51   ` Stefano Stabellini
2014-10-10 11:51 ` [PATCH v4 3/7] [RFC] arm/arm64: introduce is_dma_coherent Stefano Stabellini
2014-10-10 11:51   ` Stefano Stabellini
2014-10-10 11:51   ` Stefano Stabellini
2014-10-10 12:07   ` Will Deacon
2014-10-10 12:07     ` Will Deacon
2014-10-10 13:04     ` Stefano Stabellini
2014-10-10 13:04       ` Stefano Stabellini
2014-10-13 11:16       ` Stefano Stabellini
2014-10-13 11:16         ` Stefano Stabellini
2014-10-13 12:57         ` Will Deacon
2014-10-13 12:57           ` Will Deacon
2014-10-13 14:43           ` Stefano Stabellini
2014-10-13 14:43             ` Stefano Stabellini
2014-10-22 16:04             ` Stefano Stabellini
2014-10-22 16:04               ` Stefano Stabellini
2014-10-23 14:22               ` Stefano Stabellini
2014-10-23 14:22                 ` Stefano Stabellini
2014-10-24 10:47                 ` Catalin Marinas
2014-10-24 10:47                   ` Catalin Marinas
2014-10-24 11:39                   ` Stefano Stabellini
2014-10-24 11:39                     ` Stefano Stabellini
2014-10-24 15:43                     ` Catalin Marinas
2014-10-24 15:43                       ` Catalin Marinas
2014-10-24 17:01                       ` Stefano Stabellini
2014-10-24 17:01                         ` Stefano Stabellini
2014-10-24 17:29                         ` Stefano Stabellini
2014-10-24 17:29                           ` Stefano Stabellini
2014-10-25 13:29                           ` Stefano Stabellini
2014-10-25 13:29                             ` Stefano Stabellini
2014-10-25 13:29                             ` Stefano Stabellini
2014-10-25 15:40                             ` Ian Campbell
2014-10-25 15:40                               ` Ian Campbell
2014-10-25 15:40                               ` Ian Campbell
2014-10-25 16:15                               ` Stefano Stabellini
2014-10-25 16:15                                 ` Stefano Stabellini
2014-10-25 16:15                                 ` Stefano Stabellini
2014-10-27 11:02                                 ` [Xen-devel] " David Vrabel
2014-10-27 11:02                                   ` David Vrabel
2014-10-27 11:02                                   ` David Vrabel
2014-10-27 15:22                                   ` Stefano Stabellini
2014-10-27 15:22                                     ` Stefano Stabellini
2014-10-10 11:51 ` [PATCH v4 4/7] xen/arm: use is_dma_coherent Stefano Stabellini
2014-10-10 11:51   ` Stefano Stabellini
2014-10-10 11:51   ` Stefano Stabellini
2014-10-20 15:18   ` Ian Campbell
2014-10-20 15:18     ` Ian Campbell
2014-10-20 15:18     ` Ian Campbell
2014-10-10 11:51 ` [PATCH v4 5/7] xen/arm/arm64: merge xen/mm32.c into xen/mm.c Stefano Stabellini
2014-10-10 11:51   ` Stefano Stabellini
2014-10-10 11:51   ` Stefano Stabellini
2014-10-20 15:19   ` Ian Campbell
2014-10-20 15:19     ` Ian Campbell
2014-10-20 15:19     ` Ian Campbell
2014-10-10 11:51 ` [PATCH v4 6/7] xen/arm/arm64: introduce xen_arch_need_swiotlb Stefano Stabellini
2014-10-10 11:51   ` Stefano Stabellini
2014-10-10 11:51   ` Stefano Stabellini
2014-10-14 16:03   ` Konrad Rzeszutek Wilk
2014-10-14 16:03     ` Konrad Rzeszutek Wilk
2014-10-14 16:12     ` David Vrabel [this message]
2014-10-14 16:12       ` David Vrabel
2014-10-14 16:12       ` David Vrabel
2014-10-14 16:21       ` Konrad Rzeszutek Wilk
2014-10-14 16:21         ` Konrad Rzeszutek Wilk
2014-10-10 11:51 ` [PATCH v4 7/7] xen/arm: introduce GNTTABOP_cache_flush Stefano Stabellini
2014-10-10 11:51   ` Stefano Stabellini
2014-10-10 11:51   ` Stefano Stabellini
2014-10-20 15:50   ` Ian Campbell
2014-10-20 15:50     ` Ian Campbell
2014-10-20 15:50     ` Ian Campbell

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=543D4B5C.2040502@citrix.com \
    --to=david.vrabel@citrix.com \
    --cc=linux-arm-kernel@lists.infradead.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.