The 'open' tests of nfstest_posix failed with 6.7 kernel with these errors: FAIL: open - opening existent file should return an error when O_EXCL|O_CREAT is used (256 passed, 256 failed) FAIL: open - opening symbolic link should return an error when O_EXCL|O_CREAT is used (256 passed, 256 failed) These tests failed due to the commit 43b450632676 that fixes problems with VFS API: 43b450632676: open: return EINVAL for O_DIRECTORY | O_CREAT This patch fixes the problem by adding a check for EINVAL when the open(2) was called with O_DIRECTORY | O_CREAT. Signed-off-by: Dai Ngo <dai.ngo@xxxxxxxxxx> --- test/nfstest_posix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/test/nfstest_posix b/test/nfstest_posix index 57db5d69b072..6d5fd0dfffee 100755 --- a/test/nfstest_posix +++ b/test/nfstest_posix @@ -1232,7 +1232,12 @@ class PosixTest(TestUtil): fstat = posix.fstat(fd) if ftype in [EXISTENT, SYMLINK]: - if posix.O_EXCL in flags and posix.O_CREAT in flags: + if posix.O_CREAT in flags and posix.O_DIRECTORY in flags: + # O_CREAT and O_DIRECTORY are set + (expr, fmsg) = self._oserror(openerr, errno.EINVAL) + msg = "open - opening %s should return EINVAL error when O_CREAT|O_DIRECTORY is used" % fmap[ftype] + self.test(expr, msg, subtest=flag_str, failmsg=fmsg) + elif posix.O_EXCL in flags and posix.O_CREAT in flags: # O_EXCL and O_CREAT are set (expr, fmsg) = self._oserror(openerr, errno.EEXIST) msg = "open - opening %s should return an error when O_EXCL|O_CREAT is used" % fmap[ftype] -- 2.9.5