tun: use netdev_alloc_frag() in tun_napi_alloc_frags()
authorEric Dumazet <edumazet@google.com>
Sun, 18 Nov 2018 15:37:33 +0000 (07:37 -0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 19 Nov 2018 03:01:11 +0000 (19:01 -0800)
commitaa6daacaa113cda96760c8d3157bae937908f6e3
treed685971689336d09beeedd37662ca44f0f038a86
parent05b0e1d6980f9d76a6e5c6184854141bc26c2b13
tun: use netdev_alloc_frag() in tun_napi_alloc_frags()

In order to cook skbs in the same way than Ethernet drivers,
it is probably better to not use GFP_KERNEL, but rather
use the GFP_ATOMIC and PFMEMALLOC mechanisms provided by
netdev_alloc_frag().

This would allow to use tun driver even in memory stress
situations, especially if swap is used over this tun channel.

Fixes: 90e33d459407 ("tun: enable napi_gro_frags() for TUN/TAP driver")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Petar Penkov <peterpenkov96@gmail.com>
Cc: Mahesh Bandewar <maheshb@google.com>
Cc: Willem de Bruijn <willemb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/tun.c