[PATCH v1] landlock: Remove warning in collect_domain_accesses()
Mickaël Salaün
mic at digikod.net
Tue Jul 1 20:03:12 UTC 2025
On Wed, Jun 18, 2025 at 03:47:31PM +0200, Mickaël Salaün wrote:
> As in is_access_to_paths_allowed(), it is also possible to reach
> disconnected root directories in collect_domain_accesses().
>
> Remove a wrong WARN_ON_ONCE() canary in collect_domain_accesses() and
> fix comment. Using an unlikely() annotation doesn't seem appropriate
> here. A following patch from Tingmao tests this case [1].
>
> Cc: Günther Noack <gnoack at google.com>
> Reported-by: Tingmao Wang <m at maowtm.org>
> Link: https://lore.kernel.org/r/09b24128f86973a6022e6aa8338945fcfb9a33e4.1749925391.git.m@maowtm.org [1]
> Fixes: b91c3e4ea756 ("landlock: Add support for file reparenting with LANDLOCK_ACCESS_FS_REFER")
> Signed-off-by: Mickaël Salaün <mic at digikod.net>
This patch hides an edge cases that I though wasn't supposed to happen.
I'll drop it in favor of this other patch which fixes the underlying
issue:
https://lore.kernel.org/all/20250701183812.3201231-1-mic@digikod.net/
> ---
> security/landlock/fs.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/security/landlock/fs.c b/security/landlock/fs.c
> index 6fee7c20f64d..1d6c4e728f92 100644
> --- a/security/landlock/fs.c
> +++ b/security/landlock/fs.c
> @@ -1061,8 +1061,8 @@ static bool collect_domain_accesses(
> break;
> }
>
> - /* We should not reach a root other than @mnt_root. */
> - if (dir == mnt_root || WARN_ON_ONCE(IS_ROOT(dir)))
> + /* Stops at the mount point or disconnected root directories. */
> + if (dir == mnt_root || IS_ROOT(dir))
> break;
>
> parent_dentry = dget_parent(dir);
> --
> 2.49.0
>
>
More information about the Linux-security-module-archive
mailing list