diff options
author | David Disseldorp <ddiss@suse.de> | 2025-03-04 16:57:49 +1100 |
---|---|---|
committer | Christian Brauner <brauner@kernel.org> | 2025-03-08 12:13:26 +0100 |
commit | 43094e109f6d0ace63690c5558b482606bdd2455 (patch) | |
tree | 5abaa9d8d27ecc2e305bc67c64ce3f3ff3bf16b3 /init | |
parent | 7be37c94da01be3364d0798544401087f2464c8a (diff) |
initramfs: reuse name_len for dir mtime tracking
We already have a nulterm-inclusive, checked name_len for the directory
name, so use that instead of calling strlen().
Signed-off-by: David Disseldorp <ddiss@suse.de>
Link: https://lore.kernel.org/r/20250304061020.9815-7-ddiss@suse.de
Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'init')
-rw-r--r-- | init/initramfs.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/init/initramfs.c b/init/initramfs.c index df75624cdefb..b9cacdc54eaf 100644 --- a/init/initramfs.c +++ b/init/initramfs.c @@ -144,9 +144,8 @@ struct dir_entry { char name[]; }; -static void __init dir_add(const char *name, time64_t mtime) +static void __init dir_add(const char *name, size_t nlen, time64_t mtime) { - size_t nlen = strlen(name) + 1; struct dir_entry *de; de = kmalloc(sizeof(struct dir_entry) + nlen, GFP_KERNEL); @@ -170,7 +169,7 @@ static void __init dir_utime(void) #else static void __init do_utime(char *filename, time64_t mtime) {} static void __init do_utime_path(const struct path *path, time64_t mtime) {} -static void __init dir_add(const char *name, time64_t mtime) {} +static void __init dir_add(const char *name, size_t nlen, time64_t mtime) {} static void __init dir_utime(void) {} #endif @@ -394,7 +393,7 @@ static int __init do_name(void) init_mkdir(collected, mode); init_chown(collected, uid, gid, 0); init_chmod(collected, mode); - dir_add(collected, mtime); + dir_add(collected, name_len, mtime); } else if (S_ISBLK(mode) || S_ISCHR(mode) || S_ISFIFO(mode) || S_ISSOCK(mode)) { if (maybe_link() == 0) { |