|
@@ -292,8 +292,6 @@ int esp_output_head(struct xfrm_state *x, struct sk_buff *skb, struct esp_info *
|
|
|
|
|
|
kunmap_atomic(vaddr);
|
|
kunmap_atomic(vaddr);
|
|
|
|
|
|
- spin_unlock_bh(&x->lock);
|
|
|
|
-
|
|
|
|
nfrags = skb_shinfo(skb)->nr_frags;
|
|
nfrags = skb_shinfo(skb)->nr_frags;
|
|
|
|
|
|
__skb_fill_page_desc(skb, nfrags, page, pfrag->offset,
|
|
__skb_fill_page_desc(skb, nfrags, page, pfrag->offset,
|
|
@@ -301,6 +299,9 @@ int esp_output_head(struct xfrm_state *x, struct sk_buff *skb, struct esp_info *
|
|
skb_shinfo(skb)->nr_frags = ++nfrags;
|
|
skb_shinfo(skb)->nr_frags = ++nfrags;
|
|
|
|
|
|
pfrag->offset = pfrag->offset + allocsize;
|
|
pfrag->offset = pfrag->offset + allocsize;
|
|
|
|
+
|
|
|
|
+ spin_unlock_bh(&x->lock);
|
|
|
|
+
|
|
nfrags++;
|
|
nfrags++;
|
|
|
|
|
|
skb->len += tailen;
|
|
skb->len += tailen;
|