First of all, let me apologize for top posting, but it is currently my only option.
I have been away from my office for the last couple of weeks, I was going to re-send on Monday, May 4. If you would like to do it before then, please go ahead and do that. Thanks, David Daney -----Original Message----- From: Ido Shamay [mailto:i...@dev.mellanox.co.il] Sent: Wednesday, April 29, 2015 7:14 AM To: David Daney; linux-kernel@vger.kernel.org; net...@vger.kernel.org; linux-r...@vger.kernel.org; David S. Miller Cc: Roland Dreier; Sean Hefty; Hal Rosenstock; Amir Vadai; Or Gerlitz; Yishai Hadas; Matan Barak; Majd Dibbiny; Jack Morgenstein; Moni Shoua; Eugenia Emantayev; Saeed Mahameed; Yuval Atias; Maor Gottlieb; David Daney Subject: Re: [PATCH RFC] net/mlx4: Remove improper usage of dma_alloc_coherent(). On 4/13/2015 12:33 AM, Ido Shamay wrote: > On 4/7/2015 10:43 PM, Ido Shamay wrote: >> On 4/7/2015 2:00 AM, David Daney wrote: >>> From: David Daney <david.da...@cavium.com> >>> >>> The dma_alloc_coherent() function returns a virtual address which >>> can be used for coherent access to the underlying memory. On some >>> architectures, like arm64, undefined behavior results if this memory >>> is also accessed via virtual mappings that are not coherent. Because >>> of their undefined nature, operations like virt_to_page() return >>> garbage when passed virtual addresses obtained from >>> dma_alloc_coherent(). Any subsequent mappings via vmap() of the >>> garbage page values are unusable and result in bad things like bus >>> errors (synchronous aborts in ARM64 speak). >>> >>> The MLX4 driver contains code that does the equivalent of: >>> >>> vmap(virt_to_page(dma_alloc_coherent)) >>> >>> This results in an OOPs when the device is opened. >>> >>> To fix this... >>> >>> Always use result of dma_alloc_coherent() directly. > Acked-by: Ido Shamay <i...@mellanox.com> Thanks David, this is good > for us Hi David, Are you resending this patch or you want us to do that? -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/