On 2023/4/25 16:21, Yang Xu wrote: > Newer glibc such as glibc 2.36 also defines 'struct mount_attr' > in addition to <linux/mount.h>. > > Usually we should use glibc header instead of kernel header. > But now mount.h is a special case because both new glibc header and > kernel header all define "struct mount_attr'. They also define MS* macro. > > Since we have some syscall wrapper in vfs/missing.h, we can use <linux.mount.h> directly > instead of <sys/mount.h> for detached_mounts_propagation.c. > > For utils.c, it doesn't use the macro or function in <sys/mount.h>, so > remove it directly. > > In fact, newer glibc(2.37-1)[1] has sloved conflict problem between <sys/mount.h> and <linux/mount.h>. > In the future(maybe ten years), we can remove this kernel header and use glibc header. > > [1]https://sourceware.org/git/?p=glibc.git;a=commit;h=774058d72942249f71d74e7f2b639f77184160a6 > > Acked-by: Christian Brauner <brauner@xxxxxxxxxx> > Signed-off-by: Yang Xu <xuyang2018.jy@xxxxxxxxxxx> > --- Tested-by: Ziyang Zhang <ZiyangZhang@xxxxxxxxxxxxxxxxx>