NFSv4: Fix v4.0/v4.1 SEEK_DATA return -ENOTSUPP when set NFS_V4_2 config

commit e67afa7ee4a59584d7253e45d7f63b9528819a13 upstream.

Since commit bdcc2cd14e ("NFSv4.2: handle NFS-specific llseek errors"),
nfs42_proc_llseek would return -EOPNOTSUPP rather than -ENOTSUPP when
SEEK_DATA on NFSv4.0/v4.1.

This will lead xfstests generic/285 not run on NFSv4.0/v4.1 when set the
CONFIG_NFS_V4_2, rather than run failed.

Fixes: bdcc2cd14e ("NFSv4.2: handle NFS-specific llseek errors")
Cc: <stable.vger.kernel.org> # 4.2
Signed-off-by: Zhang Xiaoxu <zhangxiaoxu5@huawei.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Zhang Xiaoxu 2021-05-25 23:32:35 -04:00 committed by Greg Kroah-Hartman
parent 785917316b
commit 0787efc1a3

View File

@ -168,7 +168,7 @@ static loff_t nfs4_file_llseek(struct file *filep, loff_t offset, int whence)
case SEEK_HOLE: case SEEK_HOLE:
case SEEK_DATA: case SEEK_DATA:
ret = nfs42_proc_llseek(filep, offset, whence); ret = nfs42_proc_llseek(filep, offset, whence);
if (ret != -ENOTSUPP) if (ret != -EOPNOTSUPP)
return ret; return ret;
/* Fall through */ /* Fall through */
default: default: