[Uclinux-h8-devel] [PATCH 2/9] Move dma_ops from archdata into struct device

Back to archive index

Greg Kroah-Hartman gregk****@linux*****
2017年 1月 11日 (水) 15:46:24 JST


On Tue, Jan 10, 2017 at 04:56:41PM -0800, Bart Van Assche wrote:
> Several RDMA drivers, e.g. drivers/infiniband/hw/qib, use the CPU to
> transfer data between memory and PCIe adapter. Because of performance
> reasons it is important that the CPU cache is not flushed when such
> drivers transfer data. Make this possible by allowing these drivers to
> override the dma_map_ops pointer. Additionally, introduce the function
> set_dma_ops() that will be used by a later patch in this series.
> 
> Signed-off-by: Bart Van Assche <bart.****@sandi*****>
> Cc: Greg Kroah-Hartman <gregk****@linux*****>
> Cc: Aurelien Jacquiot <a-jac****@ti*****>
> Cc: Catalin Marinas <catal****@arm*****>
> Cc: Chris Zankel <chris****@zanke*****>
> Cc: David Howells <dhowe****@redha*****>
> Cc: David S. Miller <davem****@davem*****>
> Cc: Fenghua Yu <fengh****@intel*****>
> Cc: Geert Uytterhoeven <geert****@linux*****>
> Cc: Geoff Levand <geoff****@infra*****>
> Cc: H. Peter Anvin <hpa****@zytor*****>
> Cc: Haavard Skinnemoen <hskin****@gmail*****>
> Cc: Hans-Christian Egtvedt <egtve****@samfu*****>
> Cc: Helge Deller <delle****@gmx*****>
> Cc: Ingo Molnar <mingo****@redha*****>
> Cc: James E.J. Bottomley <jejb****@paris*****>
> Cc: Jesper Nilsson <jespe****@axis*****>
> Cc: Joerg Roedel <joro****@8byte*****>
> Cc: Jon Mason <jdmas****@kudzu*****>
> Cc: Jonas Bonn <jonas****@south*****>
> Cc: Ley Foon Tan <lftan****@alter*****>
> Cc: Mark Salter <msalt****@redha*****>
> Cc: Max Filippov <jcmvb****@gmail*****>
> Cc: Mikael Starvik <starv****@axis*****>
> Cc: Muli Ben-Yehuda <mulix****@mulix*****>
> Cc: Rich Felker <dalia****@libc*****>
> Cc: Russell King <linux****@armli*****>
> Cc: Stafford Horne <shorn****@gmail*****>
> Cc: Stefan Kristiansson <stefa****@sauna*****>
> Cc: Thomas Gleixner <tglx****@linut*****>
> Cc: Tony Luck <tony.****@intel*****>
> Cc: Will Deacon <will.****@arm*****>
> Cc: x86****@kerne*****
> Cc: Yoshinori Sato <ysato****@users*****>
> Cc: adi-b****@lists*****
> Cc: iommu****@lists*****
> Cc: linux****@vger*****
> Cc: linux****@redha*****
> Cc: linux****@lists*****
> Cc: linux****@linux*****
> Cc: linux****@axis*****
> Cc: linux****@vger*****
> Cc: linux****@vger*****
> Cc: linux****@lists*****
> Cc: linux****@vger*****
> Cc: linux****@linux*****
> Cc: linux****@vger*****
> Cc: linux****@vger*****
> Cc: linux****@vger*****
> Cc: linux****@vger*****
> Cc: linux****@vger*****
> Cc: linux****@lists*****
> Cc: linux****@linux*****
> Cc: linux****@lists*****
> Cc: nios2****@lists*****
> Cc: openr****@lists*****
> Cc: sparc****@vger*****
> Cc: uclin****@lists*****

That's a crazy cc: list, you should break this up into smaller pieces,
otherwise it's going to bounce...

> diff --git a/include/linux/device.h b/include/linux/device.h
> index 491b4c0ca633..c7cb225d36b0 100644
> --- a/include/linux/device.h
> +++ b/include/linux/device.h
> @@ -885,6 +885,8 @@ struct dev_links_info {
>   * a higher-level representation of the device.
>   */
>  struct device {
> +	const struct dma_map_ops *dma_ops; /* See also get_dma_ops() */
> +
>  	struct device		*parent;
>  
>  	struct device_private	*p;

Why not put this new pointer down with the other dma fields in this
structure?  Any specific reason it needs to be first?

thanks,

greg k-h




Uclinux-h8-devel メーリングリストの案内
Back to archive index