aboutsummaryrefslogtreecommitdiffstats
path: root/net/sunrpc/auth_gss/auth_gss.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/sunrpc/auth_gss/auth_gss.c')
-rw-r--r--net/sunrpc/auth_gss/auth_gss.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/net/sunrpc/auth_gss/auth_gss.c b/net/sunrpc/auth_gss/auth_gss.c
index 799e65b944b9..15612ffa8d57 100644
--- a/net/sunrpc/auth_gss/auth_gss.c
+++ b/net/sunrpc/auth_gss/auth_gss.c
@@ -740,7 +740,7 @@ gss_pipe_downcall(struct file *filp, const char __user *src, size_t mlen)
740 default: 740 default:
741 printk(KERN_CRIT "%s: bad return from " 741 printk(KERN_CRIT "%s: bad return from "
742 "gss_fill_context: %zd\n", __func__, err); 742 "gss_fill_context: %zd\n", __func__, err);
743 BUG(); 743 gss_msg->msg.errno = -EIO;
744 } 744 }
745 goto err_release_msg; 745 goto err_release_msg;
746 } 746 }
@@ -1181,12 +1181,12 @@ static struct rpc_auth *
1181gss_create(struct rpc_auth_create_args *args, struct rpc_clnt *clnt) 1181gss_create(struct rpc_auth_create_args *args, struct rpc_clnt *clnt)
1182{ 1182{
1183 struct gss_auth *gss_auth; 1183 struct gss_auth *gss_auth;
1184 struct rpc_xprt *xprt = rcu_access_pointer(clnt->cl_xprt); 1184 struct rpc_xprt_switch *xps = rcu_access_pointer(clnt->cl_xpi.xpi_xpswitch);
1185 1185
1186 while (clnt != clnt->cl_parent) { 1186 while (clnt != clnt->cl_parent) {
1187 struct rpc_clnt *parent = clnt->cl_parent; 1187 struct rpc_clnt *parent = clnt->cl_parent;
1188 /* Find the original parent for this transport */ 1188 /* Find the original parent for this transport */
1189 if (rcu_access_pointer(parent->cl_xprt) != xprt) 1189 if (rcu_access_pointer(parent->cl_xpi.xpi_xpswitch) != xps)
1190 break; 1190 break;
1191 clnt = parent; 1191 clnt = parent;
1192 } 1192 }
@@ -1728,8 +1728,8 @@ alloc_enc_pages(struct rpc_rqst *rqstp)
1728 return 0; 1728 return 0;
1729 } 1729 }
1730 1730
1731 first = snd_buf->page_base >> PAGE_CACHE_SHIFT; 1731 first = snd_buf->page_base >> PAGE_SHIFT;
1732 last = (snd_buf->page_base + snd_buf->page_len - 1) >> PAGE_CACHE_SHIFT; 1732 last = (snd_buf->page_base + snd_buf->page_len - 1) >> PAGE_SHIFT;
1733 rqstp->rq_enc_pages_num = last - first + 1 + 1; 1733 rqstp->rq_enc_pages_num = last - first + 1 + 1;
1734 rqstp->rq_enc_pages 1734 rqstp->rq_enc_pages
1735 = kmalloc(rqstp->rq_enc_pages_num * sizeof(struct page *), 1735 = kmalloc(rqstp->rq_enc_pages_num * sizeof(struct page *),
@@ -1775,10 +1775,10 @@ gss_wrap_req_priv(struct rpc_cred *cred, struct gss_cl_ctx *ctx,
1775 status = alloc_enc_pages(rqstp); 1775 status = alloc_enc_pages(rqstp);
1776 if (status) 1776 if (status)
1777 return status; 1777 return status;
1778 first = snd_buf->page_base >> PAGE_CACHE_SHIFT; 1778 first = snd_buf->page_base >> PAGE_SHIFT;
1779 inpages = snd_buf->pages + first; 1779 inpages = snd_buf->pages + first;
1780 snd_buf->pages = rqstp->rq_enc_pages; 1780 snd_buf->pages = rqstp->rq_enc_pages;
1781 snd_buf->page_base -= first << PAGE_CACHE_SHIFT; 1781 snd_buf->page_base -= first << PAGE_SHIFT;
1782 /* 1782 /*
1783 * Give the tail its own page, in case we need extra space in the 1783 * Give the tail its own page, in case we need extra space in the
1784 * head when wrapping: 1784 * head when wrapping: