Return-Path: linux-nfs-owner@vger.kernel.org Received: from fifo99.com ([67.223.236.141]:33909 "EHLO fifo99.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753856Ab3JZCmv (ORCPT ); Fri, 25 Oct 2013 22:42:51 -0400 From: Daniel Walker To: "J. Bruce Fields" Cc: linux-nfs@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 2/3] fs: nfsd: remove calls to simple_strtoll Date: Fri, 25 Oct 2013 19:33:12 -0700 Message-Id: <1382754793-8827-2-git-send-email-dwalker@fifo99.com> Sender: linux-nfs-owner@vger.kernel.org List-ID: Signed-off-by: Daniel Walker --- fs/nfsd/fault_inject.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/fs/nfsd/fault_inject.c b/fs/nfsd/fault_inject.c index d620e7f..41165f0 100644 --- a/fs/nfsd/fault_inject.c +++ b/fs/nfsd/fault_inject.c @@ -125,20 +125,24 @@ static ssize_t fault_inject_write(struct file *file, const char __user *buf, size_t size = min(sizeof(write_buf) - 1, len); struct net *net = current->nsproxy->net_ns; struct sockaddr_storage sa; + int ret = -EFAULT; u64 val; if (copy_from_user(write_buf, buf, size)) - return -EFAULT; + return ret; write_buf[size] = '\0'; size = rpc_pton(net, write_buf, size, (struct sockaddr *)&sa, sizeof(sa)); if (size > 0) nfsd_inject_set_client(file_inode(file)->i_private, &sa, size); else { - val = simple_strtoll(write_buf, NULL, 0); - nfsd_inject_set(file_inode(file)->i_private, val); + ret = kstrtoll(write_buf, 0, &val); + if (ret == 0) { + nfsd_inject_set(file_inode(file)->i_private, val); + ret = len; + } } - return len; /* on success, claim we got the whole input */ + return ret; /* on success, claim we got the whole input */ } static const struct file_operations fops_nfsd = { -- 1.8.3.2