[IPSEC]: Fix scatterlist handling in skb_icv_walk().
Use sg_init_one() and sg_init_table() as needed.
Signed-off-by: David S. Miller <davem@davemloft.net>
diff --git a/net/xfrm/xfrm_algo.c b/net/xfrm/xfrm_algo.c
index fa45989..0426388 100644
--- a/net/xfrm/xfrm_algo.c
+++ b/net/xfrm/xfrm_algo.c
@@ -553,7 +553,7 @@
if (copy > len)
copy = len;
- sg_set_buf(&sg, skb->data + offset, copy);
+ sg_init_one(&sg, skb->data + offset, copy);
err = icv_update(desc, &sg, copy);
if (unlikely(err))
@@ -576,8 +576,9 @@
if (copy > len)
copy = len;
+ sg_init_table(&sg, 1);
sg_set_page(&sg, frag->page, copy,
- frag->page_offset + offset-start);
+ frag->page_offset + offset-start);
err = icv_update(desc, &sg, copy);
if (unlikely(err))