]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - net/sunrpc/xdr.c
Merge branch 'linux-2.6'
[linux-2.6-omap-h63xx.git] / net / sunrpc / xdr.c
index a0af250ca319752a6c940ff6be4ef7beebc937f2..fdc5e6d7562b72e6779308306feb7cedb14ba1bc 100644 (file)
@@ -302,7 +302,7 @@ _copy_from_pages(char *p, struct page **pages, size_t pgbase, size_t len)
  * @buf: xdr_buf
  * @len: bytes to remove from buf->head[0]
  *
- * Shrinks XDR buffer's header kvec buf->head[0] by 
+ * Shrinks XDR buffer's header kvec buf->head[0] by
  * 'len' bytes. The extra data is not lost, but is instead
  * moved into the inlined pages and/or the tail.
  */
@@ -375,7 +375,7 @@ xdr_shrink_bufhead(struct xdr_buf *buf, size_t len)
  * @buf: xdr_buf
  * @len: bytes to remove from buf->pages
  *
- * Shrinks XDR buffer's page array buf->pages by 
+ * Shrinks XDR buffer's page array buf->pages by
  * 'len' bytes. The extra data is not lost, but is instead
  * moved into the tail.
  */
@@ -1024,12 +1024,14 @@ xdr_encode_array2(struct xdr_buf *buf, unsigned int base,
 
 int
 xdr_process_buf(struct xdr_buf *buf, unsigned int offset, unsigned int len,
-                int (*actor)(struct scatterlist *, void *), void *data)
+               int (*actor)(struct scatterlist *, void *), void *data)
 {
        int i, ret = 0;
        unsigned page_len, thislen, page_offset;
        struct scatterlist      sg[1];
 
+       sg_init_table(sg, 1);
+
        if (offset >= buf->head[0].iov_len) {
                offset -= buf->head[0].iov_len;
        } else {
@@ -1059,9 +1061,7 @@ xdr_process_buf(struct xdr_buf *buf, unsigned int offset, unsigned int len,
                do {
                        if (thislen > page_len)
                                thislen = page_len;
-                       sg->page = buf->pages[i];
-                       sg->offset = page_offset;
-                       sg->length = thislen;
+                       sg_set_page(sg, buf->pages[i], thislen, page_offset);
                        ret = actor(sg, data);
                        if (ret)
                                goto out;