X-Git-Url: http://pilppa.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=fs%2Fafs%2Frxrpc.c;h=bde3f19c0995015b2a2496aaf805807a7d7348db;hb=47e4781544aaf2916170ef5516786fbb19447600;hp=1b36f45076ade8a365661120baf7741c2e3cef2b;hpb=9b6a51746ffe8d619f1097675d2dc5e303470024;p=linux-2.6-omap-h63xx.git diff --git a/fs/afs/rxrpc.c b/fs/afs/rxrpc.c index 1b36f45076a..bde3f19c099 100644 --- a/fs/afs/rxrpc.c +++ b/fs/afs/rxrpc.c @@ -239,7 +239,8 @@ void afs_flat_call_destructor(struct afs_call *call) /* * attach the data from a bunch of pages on an inode to a call */ -int afs_send_pages(struct afs_call *call, struct msghdr *msg, struct kvec *iov) +static int afs_send_pages(struct afs_call *call, struct msghdr *msg, + struct kvec *iov) { struct page *pages[8]; unsigned count, n, loop, offset, to; @@ -792,6 +793,7 @@ void afs_send_simple_reply(struct afs_call *call, const void *buf, size_t len) { struct msghdr msg; struct iovec iov[1]; + int n; _enter(""); @@ -806,22 +808,20 @@ void afs_send_simple_reply(struct afs_call *call, const void *buf, size_t len) msg.msg_flags = 0; call->state = AFS_CALL_AWAIT_ACK; - switch (rxrpc_kernel_send_data(call->rxcall, &msg, len)) { - case 0: + n = rxrpc_kernel_send_data(call->rxcall, &msg, len); + if (n >= 0) { _leave(" [replied]"); return; - - case -ENOMEM: + } + if (n == -ENOMEM) { _debug("oom"); rxrpc_kernel_abort_call(call->rxcall, RX_USER_ABORT); - default: - rxrpc_kernel_end_call(call->rxcall); - call->rxcall = NULL; - call->type->destructor(call); - afs_free_call(call); - _leave(" [error]"); - return; } + rxrpc_kernel_end_call(call->rxcall); + call->rxcall = NULL; + call->type->destructor(call); + afs_free_call(call); + _leave(" [error]"); } /*