[PATCH 0/5 v3] Fix NVMe driver support on Power with 32-bit DMA
julian.calaby at gmail.com
Tue Oct 27 16:43:35 PDT 2015
On Wed, Oct 28, 2015 at 10:40 AM, Nishanth Aravamudan
<nacc at linux.vnet.ibm.com> wrote:
> On 28.10.2015 [09:57:48 +1100], Julian Calaby wrote:
>> Hi Nishanth,
>> On Wed, Oct 28, 2015 at 9:20 AM, Nishanth Aravamudan
>> <nacc at linux.vnet.ibm.com> wrote:
>> > On 26.10.2015 [18:27:46 -0700], David Miller wrote:
>> >> From: Nishanth Aravamudan <nacc at linux.vnet.ibm.com>
>> >> Date: Fri, 23 Oct 2015 13:54:20 -0700
>> >> > 1) add a generic dma_get_page_shift implementation that just returns
>> >> > PAGE_SHIFT
>> >> I won't object to this patch series, but if I had implemented this I
>> >> would have required the architectures to implement this explicitly,
>> >> one-by-one. I think it is less error prone and more likely to end
>> >> up with all the architectures setting this correctly.
>> > Well, looks like I should spin up a v4 anyways for the powerpc changes.
>> > So, to make sure I understand your point, should I make the generic
>> > dma_get_page_shift a compile-error kind of thing? It will only fail on
>> > architectures that actually build the NVME driver (as the only caller).
>> > But I'm not sure how exactly to achieve that, if you could give a bit
>> > more detail I'd appreciate it!
>> He's suggesting that you _don't_ put a generic implementation in
>> /include/linux/dma-mapping.h and instead add it to _every_
> Ah, I see! Well, I don't know much about the DMA internals of most
> architectures -- and my approach kept things functionally the same
> everywhere (using PAGE_SHIFT) except:
> a) Power, where I know it doesn't work as-is
> b) sparc, where the code implied that a different value than PAGE_SHIFT
> should be used.
You'll be CCing the maintainers of each architecture on the patches to
add the functions, so if they do have specific requirements, I'm sure
they'll let you know or provide patches.
Email: julian.calaby at gmail.com
More information about the Linux-nvme