OpenCloudOS-Kernel/fs/overlayfs
Miklos Szeredi 1025281622 ovl: fix encoding fid for lower only root
commit 004b8d1491b4bcbb7da1a3206d1e7e66822d47c6 upstream.

ovl_check_encode_origin() should return a positive number if the lower
dentry is to be encoded, zero otherwise.  If there's no upper layer at all
(read-only overlay), then it obviously needs to return positive.

This was broken by commit 16aac5ad1f ("ovl: support encoding
non-decodable file handles"), which didn't take the lower-only
configuration into account.

Fix by checking the no-upper-layer case up-front.

Reported-and-tested-by: Youzhong Yang <youzhong@gmail.com>
Closes: https://lore.kernel.org/all/CADpNCvaBimi+zCYfRJHvCOhMih8OU0rmZkwLuh24MKKroRuT8Q@mail.gmail.com/
Fixes: 16aac5ad1f ("ovl: support encoding non-decodable file handles")
Cc: <stable@vger.kernel.org> # v6.6
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-06-27 13:49:12 +02:00
..
Kconfig ovl: Kconfig: introduce CONFIG_OVERLAY_FS_DEBUG 2023-08-12 19:02:53 +03:00
Makefile ovl: modify layer parameter parsing 2023-06-20 14:10:40 +03:00
copy_up.c v6.6-rc4.vfs.fixes 2023-09-26 08:50:30 -07:00
dir.c ovl: remove upper umask handling from ovl_create_upper() 2024-06-12 11:12:24 +02:00
export.c ovl: fix encoding fid for lower only root 2024-06-27 13:49:12 +02:00
file.c ovl: fix file reference leak when submitting aio 2023-10-02 13:08:31 +03:00
inode.c fs: Pass AT_GETATTR_NOSEC flag to getattr interface function 2023-12-03 07:33:03 +01:00
namei.c ovl: make consistent use of OVL_FS() 2023-08-12 19:02:54 +03:00
overlayfs.h fs: Pass AT_GETATTR_NOSEC flag to getattr interface function 2023-12-03 07:33:03 +01:00
ovl_entry.h ovl: make use of ->layers safe in rcu pathwalk 2023-10-02 17:45:02 +03:00
params.c ovl: fix memory leak in ovl_parse_param() 2024-05-02 16:32:49 +02:00
params.h ovl: store and show the user provided lowerdir mount option 2024-03-26 18:19:18 -04:00
readdir.c vfs: get rid of old '->iterate' directory operation 2023-08-06 15:08:35 +02:00
super.c ovl: store and show the user provided lowerdir mount option 2024-03-26 18:19:18 -04:00
util.c overlayfs update for 6.6 2023-08-30 11:54:09 -07:00