• M
    ovl: fix warning in ovl_create_real() · 028b030c
    Miklos Szeredi 提交于
    stable inclusion
    from linux-4.19.222
    commit 445d2dc63e5871d218f21b8f62ab29ac72f2e6b8
    
    --------------------------------
    
    commit 1f5573cf upstream.
    
    Syzbot triggered the following warning in ovl_workdir_create() ->
    ovl_create_real():
    
    	if (!err && WARN_ON(!newdentry->d_inode)) {
    
    The reason is that the cgroup2 filesystem returns from mkdir without
    instantiating the new dentry.
    
    Weird filesystems such as this will be rejected by overlayfs at a later
    stage during setup, but to prevent such a warning, call ovl_mkdir_real()
    directly from ovl_workdir_create() and reject this case early.
    
    Reported-and-tested-by: syzbot+75eab84fd0af9e8bf66b@syzkaller.appspotmail.com
    Signed-off-by: NMiklos Szeredi <mszeredi@redhat.com>
    Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: NYang Yingliang <yangyingliang@huawei.com>
    028b030c
dir.c 28.9 KB