diff options
| author | Al Viro <viro@zeniv.linux.org.uk> | 2026-01-06 21:00:10 -0500 |
|---|---|---|
| committer | Al Viro <viro@zeniv.linux.org.uk> | 2026-01-13 15:18:07 -0500 |
| commit | a9900a27dfe58e638690a6c3e8d477daa548d192 (patch) | |
| tree | 29358c650a92892ff3286b707f0edfc234525a50 /fs | |
| parent | 7ca83f8ebe86706c4164ac21871f4a5adb86a430 (diff) | |
switch __getname_maybe_null() to CLASS(filename_flags)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs')
| -rw-r--r-- | fs/namei.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/fs/namei.c b/fs/namei.c index 06d60808b0ff..f1a2161bd691 100644 --- a/fs/namei.c +++ b/fs/namei.c @@ -227,7 +227,6 @@ struct filename *getname_uflags(const char __user *filename, int uflags) struct filename *__getname_maybe_null(const char __user *pathname) { - struct filename *name; char c; /* try to save on allocations; loss on um, though */ @@ -236,12 +235,11 @@ struct filename *__getname_maybe_null(const char __user *pathname) if (!c) return NULL; - name = getname_flags(pathname, LOOKUP_EMPTY); - if (!IS_ERR(name) && !(name->name[0])) { - putname(name); - name = NULL; - } - return name; + CLASS(filename_flags, name)(pathname, LOOKUP_EMPTY); + /* empty pathname translates to NULL */ + if (!IS_ERR(name) && !(name->name[0])) + return NULL; + return no_free_ptr(name); } struct filename *getname_kernel(const char * filename) |
