public inbox for linuxppc-dev@ozlabs.org 
 help / color / mirror / Atom feed
From: Florian Weimer <fweimer@redhat•com>
To: Alexey Gladkov <legion@kernel•org>
Cc: dalias@libc•org, linux-ia64@vger•kernel.org,
	linux-sh@vger•kernel.org, alexander.shishkin@linux•intel.com,
	catalin.marinas@arm•com, palmer@sifive•com,
	heiko.carstens@de•ibm.com, stefan@agner•ch, ldv@altlinux•org,
	dhowells@redhat•com, kim.phillips@arm•com, paulus@samba•org,
	deepa.kernel@gmail•com, hpa@zytor•com,
	sparclinux@vger•kernel.org, will@kernel•org,
	linux-arch@vger•kernel.org, linux-s390@vger•kernel.org,
	hare@suse•com, gor@linux•ibm.com, ysato@users•sourceforge.jp,
	deller@gmx•de, x86@kernel•org, linux@armlinux•org.uk,
	borntraeger@de•ibm.com, mingo@redhat•com, geert@linux-m68k•org,
	linux-arm-kernel@lists•infradead.org, jhogan@kernel•org,
	firoz.khan@linaro•org, mattst88@gmail•com,
	linux-mips@vger•kernel.org, fenghua.yu@intel•com,
	Arnd Bergmann <arnd@arndb•de>,
	peterz@infradead•org, glebfm@altlinux•org, tycho@tycho•ws,
	acme@kernel•org, schwidefsky@de•ibm.com,
	linux-m68k@lists•linux-m68k.org, bp@alien8•de,
	viro@zeniv•linux.org.uk, luto@kernel•org, namhyung@kernel•org,
	tglx@linu tronix.de, christian@brauner•io, rth@twiddle•net,
	axboe@kernel•dk, James.Bottomley@HansenPartnership•com,
	monstr@monstr•eu, tony.luck@intel•com,
	linux-parisc@vger•kernel.org, linux-api@vger•kernel.org,
	LKML <linux-kernel@vger•kernel.org>,
	ralf@linux-mips•org, paul.burton@mips•com,
	linux-alpha@vger•kernel.org, linux-fsdevel@vger•kernel.org,
	ink@jurassic•park.msu.ru, linuxppc-dev@lists•ozlabs.org,
	davem@davemloft•net
Subject: Re: [PATCH v3 5/5] selftests: add fchmodat4(2) selftest
Date: Tue, 11 Jul 2023 14:10:58 +0200	[thread overview]
Message-ID: <87pm4ybqct.fsf@oldenburg.str.redhat.com> (raw)
In-Reply-To: <c3606ec38227d921fa8a3e11613ffdb2f3ea7636.1689074739.git.legion@kernel.org> (Alexey Gladkov's message of "Tue, 11 Jul 2023 13:25:46 +0200")

* Alexey Gladkov:

> The test marks as skipped if a syscall with the AT_SYMLINK_NOFOLLOW flag
> fails. This is because not all filesystems support changing the mode
> bits of symlinks properly. These filesystems return an error but change
> the mode bits:
>
> newfstatat(4, "regfile", {st_mode=S_IFREG|0640, st_size=0, ...}, AT_SYMLINK_NOFOLLOW) = 0
> newfstatat(4, "symlink", {st_mode=S_IFLNK|0777, st_size=7, ...}, AT_SYMLINK_NOFOLLOW) = 0
> syscall_0x1c3(0x4, 0x55fa1f244396, 0x180, 0x100, 0x55fa1f24438e, 0x34) = -1 EOPNOTSUPP (Operation not supported)
> newfstatat(4, "regfile", {st_mode=S_IFREG|0640, st_size=0, ...}, AT_SYMLINK_NOFOLLOW) = 0
>
> This happens with btrfs and xfs:
>
>  $ /kernel/tools/testing/selftests/fchmodat4/fchmodat4_test
>  TAP version 13
>  1..1
>  ok 1 # SKIP fchmodat4(symlink)
>  # Totals: pass:0 fail:0 xfail:0 xpass:0 skip:1 error:0
>
>  $ stat /tmp/ksft-fchmodat4.*/symlink
>    File: /tmp/ksft-fchmodat4.3NCqlE/symlink -> regfile
>    Size: 7               Blocks: 0          IO Block: 4096   symbolic link
>  Device: 7,0     Inode: 133         Links: 1
>  Access: (0600/lrw-------)  Uid: (    0/    root)   Gid: (    0/    root)
>
> Signed-off-by: Alexey Gladkov <legion@kernel•org>

This looks like a bug in those file systems?

As an extra test, “echo 3 > /proc/sys/vm/drop_caches” sometimes has
strange effects in such cases because the bits are not actually stored
on disk, only in the dentry cache.

Thanks,
Florian


  reply	other threads:[~2023-07-11 12:37 UTC|newest]

Thread overview: 70+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-17  1:27 Add a new fchmodat4() syscall, v2 Palmer Dabbelt
2019-07-17  1:27 ` [PATCH v2 1/4] Non-functional cleanup of a "__user * filename" Palmer Dabbelt
2019-07-17  1:27 ` [PATCH v2 2/4] Add fchmodat4(), a new syscall Palmer Dabbelt
2019-07-17  1:48   ` Al Viro
2019-07-17  2:12     ` Palmer Dabbelt
2019-07-17  2:40   ` Rich Felker
2019-07-17  3:02     ` Al Viro
2019-07-17  1:27 ` [PATCH v2 3/4] arch: Register fchmodat4, usually as syscall 434 Palmer Dabbelt
2019-07-17  7:54   ` Arnd Bergmann
2019-07-17  1:27 ` [PATCH v2 4/4] tools: Add fchmodat4 Palmer Dabbelt
2019-07-17 12:39   ` Arnaldo Carvalho de Melo
2020-06-09 13:52 ` Add a new fchmodat4() syscall, v2 Florian Weimer
2023-07-11 11:25   ` [PATCH v3 0/5] Add a new fchmodat4() syscall Alexey Gladkov
2023-07-11 11:25     ` [PATCH v3 1/5] Non-functional cleanup of a "__user * filename" Alexey Gladkov
2023-07-11 11:32       ` Arnd Bergmann
2023-07-11 11:25     ` [PATCH v3 2/5] fs: Add fchmodat4() Alexey Gladkov
2023-07-11 11:42       ` Arnd Bergmann
2023-07-11 11:52         ` Christian Brauner
2023-07-11 12:51           ` Alexey Gladkov
2023-07-11 14:01             ` Christian Brauner
2023-07-11 15:23               ` Alexey Gladkov
2023-07-11 12:28       ` Matthew Wilcox
2023-07-11 12:49         ` Alexey Gladkov
2023-07-11 11:25     ` [PATCH v3 3/5] arch: Register fchmodat4, usually as syscall 451 Alexey Gladkov
2023-07-11 11:31       ` Arnd Bergmann
2023-07-11 11:25     ` [PATCH v3 4/5] tools headers UAPI: Sync files changed by new fchmodat4 syscall Alexey Gladkov
2023-07-11 11:25     ` [PATCH v3 5/5] selftests: add fchmodat4(2) selftest Alexey Gladkov
2023-07-11 12:10       ` Florian Weimer [this message]
2023-07-11 13:38         ` Alexey Gladkov
2023-07-11 12:24     ` [PATCH v3 0/5] Add a new fchmodat4() syscall Florian Weimer
2023-07-11 15:14       ` Christian Brauner
2023-07-25 11:05         ` Alexey Gladkov
2023-07-25 12:05           ` Christian Brauner
2023-07-11 16:16     ` [PATCH v4 0/5] Add a new fchmodat2() syscall Alexey Gladkov
2023-07-11 16:16       ` [PATCH v4 1/5] Non-functional cleanup of a "__user * filename" Alexey Gladkov
2023-07-11 16:16       ` [PATCH v4 2/5] fs: Add fchmodat2() Alexey Gladkov
2023-07-11 17:05         ` Christian Brauner
2023-07-25 16:36         ` Aleksa Sarai
2023-07-26 13:45           ` Alexey Gladkov
2023-07-27 10:26             ` Christian Brauner
2023-07-27 17:12             ` Aleksa Sarai
2023-07-27 17:39               ` Aleksa Sarai
2023-07-28  8:43                 ` David Laight
2023-07-28 18:42                   ` dalias
2023-07-27  9:01           ` David Laight
2023-07-27 16:28             ` Andreas Schwab
2023-07-27 17:02               ` Christian Brauner
2023-07-27 17:13                 ` dalias
2023-07-27 17:36                   ` Christian Brauner
2023-07-27 16:31             ` dalias
2023-07-11 16:16       ` [PATCH v4 3/5] arch: Register fchmodat2, usually as syscall 452 Alexey Gladkov
2023-07-11 16:26         ` Arnd Bergmann
2023-07-25  7:16         ` Geert Uytterhoeven
2023-07-25 16:43         ` Aleksa Sarai
2023-07-27 10:37           ` Christian Brauner
2023-07-27 17:42             ` Aleksa Sarai
2023-07-11 16:16       ` [PATCH v4 4/5] tools headers UAPI: Sync files changed by new fchmodat2 syscall Alexey Gladkov
2023-07-11 17:19         ` Namhyung Kim
2023-07-11 17:23           ` Alexey Gladkov
2023-07-11 16:16       ` [PATCH v4 5/5] selftests: Add fchmodat2 selftest Alexey Gladkov
2023-07-11 17:36       ` (subset) [PATCH v4 0/5] Add a new fchmodat2() syscall Christian Brauner
2023-07-12  2:42       ` Rich Felker
2023-07-25 15:58       ` Add fchmodat2() - or add a more general syscall? David Howells
2023-07-25 16:10         ` Florian Weimer
2023-07-25 18:39           ` David Howells
2023-07-25 18:44             ` Rich Felker
2023-07-26 13:30             ` Christian Brauner
2023-07-25 16:50         ` Aleksa Sarai
2023-07-27  3:57         ` Eric Biggers
2023-07-27 10:27           ` Christian Brauner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87pm4ybqct.fsf@oldenburg.str.redhat.com \
    --to=fweimer@redhat$(echo .)com \
    --cc=acme@kernel$(echo .)org \
    --cc=alexander.shishkin@linux$(echo .)intel.com \
    --cc=arnd@arndb$(echo .)de \
    --cc=borntraeger@de$(echo .)ibm.com \
    --cc=bp@alien8$(echo .)de \
    --cc=catalin.marinas@arm$(echo .)com \
    --cc=dalias@libc$(echo .)org \
    --cc=deepa.kernel@gmail$(echo .)com \
    --cc=deller@gmx$(echo .)de \
    --cc=dhowells@redhat$(echo .)com \
    --cc=fenghua.yu@intel$(echo .)com \
    --cc=firoz.khan@linaro$(echo .)org \
    --cc=geert@linux-m68k$(echo .)org \
    --cc=glebfm@altlinux$(echo .)org \
    --cc=gor@linux$(echo .)ibm.com \
    --cc=hare@suse$(echo .)com \
    --cc=heiko.carstens@de$(echo .)ibm.com \
    --cc=hpa@zytor$(echo .)com \
    --cc=jhogan@kernel$(echo .)org \
    --cc=kim.phillips@arm$(echo .)com \
    --cc=ldv@altlinux$(echo .)org \
    --cc=legion@kernel$(echo .)org \
    --cc=linux-arch@vger$(echo .)kernel.org \
    --cc=linux-arm-kernel@lists$(echo .)infradead.org \
    --cc=linux-ia64@vger$(echo .)kernel.org \
    --cc=linux-m68k@lists$(echo .)linux-m68k.org \
    --cc=linux-mips@vger$(echo .)kernel.org \
    --cc=linux-s390@vger$(echo .)kernel.org \
    --cc=linux-sh@vger$(echo .)kernel.org \
    --cc=linux@armlinux$(echo .)org.uk \
    --cc=luto@kernel$(echo .)org \
    --cc=mattst88@gmail$(echo .)com \
    --cc=mingo@redhat$(echo .)com \
    --cc=namhyung@kernel$(echo .)org \
    --cc=palmer@sifive$(echo .)com \
    --cc=paulus@samba$(echo .)org \
    --cc=peterz@infradead$(echo .)org \
    --cc=schwidefsky@de$(echo .)ibm.com \
    --cc=sparclinux@vger$(echo .)kernel.org \
    --cc=stefan@agner$(echo .)ch \
    --cc=tglx@linu \
    --cc=tycho@tycho$(echo .)ws \
    --cc=viro@zeniv$(echo .)linux.org.uk \
    --cc=will@kernel$(echo .)org \
    --cc=x86@kernel$(echo .)org \
    --cc=ysato@users$(echo .)sourceforge.jp \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox