Re: [PATCH v3 0/3] init/initramfs.c: make initramfs support pivot_root

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Menglong,

On Fri, 28 May 2021 22:37:59 +0800
menglong8.dong@xxxxxxxxx wrote:

> From: Menglong Dong <dong.menglong@xxxxxxxxxx>
> 
> As Luis Chamberlain suggested, I split the patch:
> [init/initramfs.c: make initramfs support pivot_root]
> (https://lore.kernel.org/linux-fsdevel/20210520154244.20209-1-dong.menglong@xxxxxxxxxx/)
> into three.
> 
> The goal of the series patches is to make pivot_root() support initramfs.
> 
> In the first patch, I introduce the function ramdisk_exec_exist(), which
> is used to check the exist of 'ramdisk_execute_command' in LOOKUP_DOWN
> lookup mode.
> 
> In the second patch, I create a second mount, which is called
> 'user root', and make it become the root. Therefore, the root has a
> parent mount, and it can be umounted or pivot_root.
> 
> In the third patch, I fix rootfs_fs_type with ramfs, as it is not used
> directly any more, and it make no sense to switch it between ramfs and
> tmpfs, just fix it with ramfs to simplify the code.
> 
> 
> Changes since V2:
> 
> In the first patch, I use vfs_path_lookup() in init_eaccess() to make the
> path lookup follow the mount on '/'. After this, the problem reported by
> Masami Hiramatsu is solved. Thanks for your report :/

Thank you for the fix, I confirmed that the issue has been solved with this.

Tested-by: Masami Hiramatsu <mhiramat@xxxxxxxxxx>

for this series.

Regards,


> 
> 
> Changes since V1:
> 
> In the first patch, I add the flag LOOKUP_DOWN to init_eaccess(), to make
> it support the check of filesystem mounted on '/'.
> 
> In the second patch, I control 'user root' with kconfig option
> 'CONFIG_INITRAMFS_USER_ROOT', and add some comments, as Luis Chamberlain
> suggested.
> 
> In the third patch, I make 'rootfs_fs_type' in control of
> 'CONFIG_INITRAMFS_USER_ROOT'.
> 
> 
> 
> Menglong Dong (3):
>   init/main.c: introduce function ramdisk_exec_exist()
>   init/do_cmounts.c: introduce 'user_root' for initramfs
>   init/do_mounts.c: fix rootfs_fs_type with ramfs
> 
>  fs/init.c            |  11 ++++-
>  include/linux/init.h |   5 ++
>  init/do_mounts.c     | 109 +++++++++++++++++++++++++++++++++++++++++++
>  init/do_mounts.h     |  18 ++++++-
>  init/initramfs.c     |  10 ++++
>  init/main.c          |   7 ++-
>  usr/Kconfig          |  10 ++++
>  7 files changed, 166 insertions(+), 4 deletions(-)
> 
> -- 
> 2.32.0.rc0
> 


-- 
Masami Hiramatsu <mhiramat@xxxxxxxxxx>



[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux