core: Fix edge case when processing /proc/self/mountinfo (#7811)
Currently, if there are two /proc/self/mountinfo entries with the same mount point path, the mount setup flags computed for the second of these two entries will overwrite the mount setup flags computed for the first of these two entries. This is the root cause of issue #7798. This patch changes mount_setup_existing_unit to prevent the just_mounted mount setup flag from being overwritten if it is set to true. This will allow all mount units created from /proc/self/mountinfo entries to be initialized properly. Fixes: #7798
This commit is contained in:
parent
7c59ab4ba1
commit
65d36b4950
|
@ -1486,7 +1486,7 @@ static int mount_setup_existing_unit(
|
|||
|
||||
flags->just_changed = r1 > 0 || r2 > 0 || r3 > 0;
|
||||
flags->is_mounted = true;
|
||||
flags->just_mounted = !MOUNT(u)->from_proc_self_mountinfo;
|
||||
flags->just_mounted = !MOUNT(u)->from_proc_self_mountinfo || MOUNT(u)->just_mounted;
|
||||
|
||||
MOUNT(u)->from_proc_self_mountinfo = true;
|
||||
|
||||
|
|
Loading…
Reference in a new issue