@@ -365,17 +365,13 @@ static int vfs_statx(int dfd, struct filename *filename, int flags,
365365int vfs_fstatat (int dfd , const char __user * filename ,
366366 struct kstat * stat , int flags )
367367{
368- int ret ;
369- int statx_flags = flags | AT_NO_AUTOMOUNT ;
370- struct filename * name = getname_maybe_null (filename , flags );
368+ CLASS (filename_maybe_null , name )(filename , flags );
371369
372370 if (!name && dfd >= 0 )
373371 return vfs_fstat (dfd , stat );
374372
375- ret = vfs_statx (dfd , name , statx_flags , stat , STATX_BASIC_STATS );
376- putname (name );
377-
378- return ret ;
373+ return vfs_statx (dfd , name , flags | AT_NO_AUTOMOUNT ,
374+ stat , STATX_BASIC_STATS );
379375}
380376
381377#ifdef __ARCH_WANT_OLD_STAT
@@ -810,16 +806,12 @@ SYSCALL_DEFINE5(statx,
810806 unsigned int , mask ,
811807 struct statx __user * , buffer )
812808{
813- int ret ;
814- struct filename * name = getname_maybe_null (filename , flags );
809+ CLASS (filename_maybe_null , name )(filename , flags );
815810
816811 if (!name && dfd >= 0 )
817812 return do_statx_fd (dfd , flags & ~AT_NO_AUTOMOUNT , mask , buffer );
818813
819- ret = do_statx (dfd , name , flags , mask , buffer );
820- putname (name );
821-
822- return ret ;
814+ return do_statx (dfd , name , flags , mask , buffer );
823815}
824816
825817#if defined(CONFIG_COMPAT ) && defined(__ARCH_WANT_COMPAT_STAT )
0 commit comments