On Thu, Sep 06, 2018 at 12:05:18PM +0800, Jason Wang wrote: > This patch move the bh enabling a little bit earlier, this will be > used for factoring out the core XDP logic of tuntap. > > Signed-off-by: Jason Wang <jasowang@xxxxxxxxxx> Acked-by: Michael S. Tsirkin <mst@xxxxxxxxxx> no reason to disable bh for non-xdp things. > --- > drivers/net/tun.c | 10 +++------- > 1 file changed, 3 insertions(+), 7 deletions(-) > > diff --git a/drivers/net/tun.c b/drivers/net/tun.c > index d3677a544b56..372caf7d67d9 100644 > --- a/drivers/net/tun.c > +++ b/drivers/net/tun.c > @@ -1726,22 +1726,18 @@ static struct sk_buff *tun_build_skb(struct tun_struct *tun, > goto err_xdp; > } > } > + rcu_read_unlock(); > + local_bh_enable(); > > skb = build_skb(buf, buflen); > - if (!skb) { > - rcu_read_unlock(); > - local_bh_enable(); > + if (!skb) > return ERR_PTR(-ENOMEM); > - } > > skb_reserve(skb, pad - delta); > skb_put(skb, len); > get_page(alloc_frag->page); > alloc_frag->offset += buflen; > > - rcu_read_unlock(); > - local_bh_enable(); > - > return skb; > > err_redirect: > -- > 2.17.1