Re: [PATCH V2] net: ethernet: mellanox: correct page conversion

From: Christoph Hellwig
Date: Mon Apr 18 2016 - 11:41:05 EST


On Mon, Apr 18, 2016 at 11:21:12AM -0400, Sinan Kaya wrote:
> I was looking at the code. I don't see how removing virt_to_page + vmap
> would solve the issue.
>
> The code is trying to access the buffer space with direct.buf member
> from the CPU side. This member would become NULL, when this code is
> removed and also in mlx4_en_map_buffer.
>
> ...
>
> What am I missing?

As mentioned before you'll also need to enforce you hit the nbufs = 1
case for these. In fact most callers should simply switch to a plain
dma_zalloc_coherent call without all these wrappers. If we have a case
where we really want multiple buffers that don't have to be contiguous
(maybe the MTT case) I'd rather opencode that instead of building this
confusing interface on top of it.