Re: [PATCH 1/1] nfstest_posix: add check for EINVAL when open(2) called with O_DIRECTORY|O_CREAT

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Dai,

Looks good, I have pushed it upstream.

Thanks,

--Jorge

________________________________________
From: dai.ngo@xxxxxxxxxx <dai.ngo@xxxxxxxxxx>
Sent: Tuesday, February 20, 2024 2:25 PM
To: Mora, Jorge
Cc: linux-nfs@xxxxxxxxxxxxxxx; brauner@xxxxxxxxxx
Subject: Re: [PATCH 1/1] nfstest_posix: add check for EINVAL when open(2) called with O_DIRECTORY|O_CREAT

EXTERNAL EMAIL - USE CAUTION when clicking links or attachments




Hi Jorge,

Have you had a chance to take a look at this patch?

Thanks,
-Dai

On 1/17/24 10:01 AM, Dai Ngo wrote:
> 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]





[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux