#include <linux/highmem.h>
 #include <linux/capability.h>
 #include <linux/user_namespace.h>
+#include <linux/indirect_call_wrapper.h>
 
 #include "datagram.h"
 
        if (copy > 0) {
                if (copy > len)
                        copy = len;
-               csum = ops->update(skb->data + offset, copy, csum);
+               csum = INDIRECT_CALL_1(ops->update, csum_partial_ext,
+                                      skb->data + offset, copy, csum);
                if ((len -= copy) == 0)
                        return csum;
                offset += copy;
                                              frag->page_offset + offset - start,
                                              copy, p, p_off, p_len, copied) {
                                vaddr = kmap_atomic(p);
-                               csum2 = ops->update(vaddr + p_off, p_len, 0);
+                               csum2 = INDIRECT_CALL_1(ops->update,
+                                                       csum_partial_ext,
+                                                       vaddr + p_off, p_len, 0);
                                kunmap_atomic(vaddr);
-                               csum = ops->combine(csum, csum2, pos, p_len);
+                               csum = INDIRECT_CALL_1(ops->combine,
+                                                      csum_block_add_ext, csum,
+                                                      csum2, pos, p_len);
                                pos += p_len;
                        }
 
                                copy = len;
                        csum2 = __skb_checksum(frag_iter, offset - start,
                                               copy, 0, ops);
-                       csum = ops->combine(csum, csum2, pos, copy);
+                       csum = INDIRECT_CALL_1(ops->combine, csum_block_add_ext,
+                                              csum, csum2, pos, copy);
                        if ((len -= copy) == 0)
                                return csum;
                        offset += copy;