init: add an init_utimes helper
Add a simple helper to set timestamps with a kernel space file name and switch the early init code over to it. Signed-off-by: Christoph Hellwig <hch@lst.de>
This commit is contained in:
Родитель
716308a533
Коммит
235e57935b
13
fs/init.c
13
fs/init.c
|
@ -238,3 +238,16 @@ int __init init_rmdir(const char *pathname)
|
|||
{
|
||||
return do_rmdir(AT_FDCWD, getname_kernel(pathname));
|
||||
}
|
||||
|
||||
int __init init_utimes(char *filename, struct timespec64 *ts)
|
||||
{
|
||||
struct path path;
|
||||
int error;
|
||||
|
||||
error = kern_path(filename, 0, &path);
|
||||
if (error)
|
||||
return error;
|
||||
error = vfs_utimes(&path, ts);
|
||||
path_put(&path);
|
||||
return error;
|
||||
}
|
||||
|
|
|
@ -15,3 +15,4 @@ int __init init_symlink(const char *oldname, const char *newname);
|
|||
int __init init_unlink(const char *pathname);
|
||||
int __init init_mkdir(const char *pathname, umode_t mode);
|
||||
int __init init_rmdir(const char *pathname);
|
||||
int __init init_utimes(char *filename, struct timespec64 *ts);
|
||||
|
|
|
@ -111,8 +111,7 @@ static long __init do_utime(char *filename, time64_t mtime)
|
|||
t[0].tv_nsec = 0;
|
||||
t[1].tv_sec = mtime;
|
||||
t[1].tv_nsec = 0;
|
||||
|
||||
return do_utimes(AT_FDCWD, filename, t, AT_SYMLINK_NOFOLLOW);
|
||||
return init_utimes(filename, t);
|
||||
}
|
||||
|
||||
static __initdata LIST_HEAD(dir_list);
|
||||
|
|
Загрузка…
Ссылка в новой задаче