Re: [RFC] tcp md5 use of alloc_percpu
From: Crestez Dan Leonard <hidden>
Date: 2014-10-23 16:17:51
On 10/23/2014 05:43 PM, Eric Dumazet wrote:
On Thu, 2014-10-23 at 06:21 -0700, Eric Dumazet wrote:quoted
On Thu, 2014-10-23 at 02:58 -0400, Jonathan Toppins wrote:quoted
quoted
+ if (!pool) { + pool = kzalloc_node(sizeof(*pool), GFP_KERNEL,GFP_DMA | GFP_KERNEL This memory will possibly be used in a DMA correct? (thinking crypto hardware offload)I am not sure this is the case, but this certainly can be added.Yes, this is not the case. The real problem is because sg_set_buf() does the following : sg_set_page(sg, virt_to_page(buf), buflen, offset_in_page(buf)); So it assumes a memory range is not spanning multiple pages.
Doesn't virt_to_page also assume that the memory is not from vmalloc? Making this portable would require checking if is_vmalloc_addr and doing vmalloc_to_page instead. Easier to just kmalloc instead. Regards, Leonard