overlayfs: set ctime when setting mtime and atime
authorJeff Layton <jlayton@kernel.org>
Wed, 13 Sep 2023 13:33:12 +0000 (09:33 -0400)
committerChristian Brauner <brauner@kernel.org>
Mon, 25 Sep 2023 12:53:54 +0000 (14:53 +0200)
commit03dbab3bba5f009d053635c729d1244f2c8bad38
tree2af20d00bcd403a543fc23b74faf382157823a00
parent493c71926c20309226b6d73f6b661a9813de5f0b
overlayfs: set ctime when setting mtime and atime

Nathan reported that he was seeing the new warning in
setattr_copy_mgtime pop when starting podman containers. Overlayfs is
trying to set the atime and mtime via notify_change without also
setting the ctime.

POSIX states that when the atime and mtime are updated via utimes() that
we must also update the ctime to the current time. The situation with
overlayfs copy-up is analogies, so add ATTR_CTIME to the bitmask.
notify_change will fill in the value.

Reported-by: Nathan Chancellor <nathan@kernel.org>
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Tested-by: Nathan Chancellor <nathan@kernel.org>
Acked-by: Christian Brauner <brauner@kernel.org>
Acked-by: Amir Goldstein <amir73il@gmail.com>
Message-Id: <20230913-ctime-v1-1-c6bc509cbc27@kernel.org>
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/overlayfs/copy_up.c