On Sat, Jan 09, 2021 at 05:18:34PM -0500, Willem de Bruijn wrote: > From: Willem de Bruijn <will...@google.com> > > esp(6)_output_head uses skb_page_frag_refill to allocate a buffer for > the esp trailer. > > It accesses the page with kmap_atomic to handle highmem. But > skb_page_frag_refill can return compound pages, of which > kmap_atomic only maps the first underlying page. > > skb_page_frag_refill does not return highmem, because flag > __GFP_HIGHMEM is not set. ESP uses it in the same manner as TCP. > That also does not call kmap_atomic, but directly uses page_address, > in skb_copy_to_page_nocache. Do the same for ESP. > > This issue has become easier to trigger with recent kmap local > debugging feature CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP. > > Fixes: cac2661c53f3 ("esp4: Avoid skb_cow_data whenever possible") > Fixes: 03e2a30f6a27 ("esp6: Avoid skb_cow_data whenever possible") > Signed-off-by: Willem de Bruijn <will...@google.com> > Cc: Steffen Klassert <steffen.klass...@secunet.com>
As this patchset goes through the net tree: Acked-by: Steffen Klassert <steffen.klass...@secunet.com> Thanks!