On Mon, Jun 2, 2025 at 6:36 AM Song Liu <song@xxxxxxxxxx> wrote: > > On Sat, May 31, 2025 at 6:51 AM Tingmao Wang <m@xxxxxxxxxx> wrote: > [...] > > I'm not sure if the original behavior was intentional, but since this > > technically counts as a functional changes, just pointing this out. > > Thanks for pointing it out! I think it is possible to keep current > behavior. Or we can change the behavior and state that clearly > in the commit log. Mickaël, WDYT? > > > > > Also I'm slightly worried about the performance overhead of doing > > path_connected for every hop in the iteration (but ultimately it's > > Mickaël's call). At least for Landlock, I think if we want to block all > > Maybe we need a flag to path_parent (or path_walk_parent) so > that we only check for path_connected when necessary. More thoughts on path_connected(). I think it makes sense for path_parent (or path_walk_parent) to continue walking with path_connected() == false. This is because for most security use cases, it makes sense for umounted bind mount to fall back to the permissions of the original mount OTOH, it also makes sense for follow_dotdot to reject this access at path lookup time. If the user of path_walk_parent decided to stop walking at disconnected path, another check can be added at the caller side. If there are no objections, I will remove the path_connected check from path_walk_parent(). Thanks, Song