Thread (6 messages) flat view 6 messages, 2 authors, 2015-06-11

Re: [PATCH net 3/3] enic: fix memory leak in rq_clean

From: David Miller <davem@davemloft.net>
Date: 2015-06-11 06:43:23

From: Govindarajulu Varadarajan <redacted>
Date: Thu, 11 Jun 2015 11:52:56 +0530
When incoming packet qualifies for rx_copybreak, we copy the data to newly
allocated skb. We do not free/unmap the original buffer. At this point driver
assumes this buffer is unallocated. When enic_rq_alloc_buf() is called for
buffer allocation, it checks if buf->os_buf is NULL. If its not NULL that means
buffer can be re-used.

When vnic_rq_clean() is called for freeing all rq buffers, and if the
rx_copybreak reused buffer falls outside the used desc, we do not free the
buffer. The following trace is observer when dma-debug is enabled.

Fix is to walk through complete ring and clean if buffer is present.
 ...
Signed-off-by: Govindarajulu Varadarajan <redacted>
Applied.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help