OSDN Git Service

fs/adfs: move append_filetype_suffix() into adfs_object_fixup()
authorRussell King <rmk+kernel@armlinux.org.uk>
Sun, 24 Mar 2019 13:08:41 +0000 (13:08 +0000)
committerRussell King <rmk+kernel@armlinux.org.uk>
Fri, 31 May 2019 09:31:05 +0000 (10:31 +0100)
append_filetype_suffix() is now only used in adfs_object_fixup(), so
move it there.

Acked-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
fs/adfs/adfs.h
fs/adfs/dir.c

index 1097bee..804c6a7 100644 (file)
@@ -113,19 +113,6 @@ struct object_info {
        __u16           filetype;
 };
 
-/* RISC OS 12-bit filetype converts to ,xyz hex filename suffix */
-static inline int append_filetype_suffix(char *buf, __u16 filetype)
-{
-       if (filetype == 0xffff) /* no explicit 12-bit file type was set */
-               return 0;
-
-       *buf++ = ',';
-       *buf++ = hex_asc_lo(filetype >> 8);
-       *buf++ = hex_asc_lo(filetype >> 4);
-       *buf++ = hex_asc_lo(filetype >> 0);
-       return 4;
-}
-
 struct adfs_dir_ops {
        int     (*read)(struct super_block *sb, unsigned int id, unsigned int sz, struct adfs_dir *dir);
        int     (*setpos)(struct adfs_dir *dir, unsigned int fpos);
index 5d88108..51ed80f 100644 (file)
@@ -42,11 +42,14 @@ void adfs_object_fixup(struct adfs_dir *dir, struct object_info *obj)
                obj->filetype = (__u16) ((0x000fff00 & obj->loadaddr) >> 8);
 
                /* optionally append the ,xyz hex filetype suffix */
-               if (ADFS_SB(dir->sb)->s_ftsuffix)
-                       obj->name_len +=
-                               append_filetype_suffix(
-                                       &obj->name[obj->name_len],
-                                       obj->filetype);
+               if (ADFS_SB(dir->sb)->s_ftsuffix) {
+                       __u16 filetype = obj->filetype;
+
+                       obj->name[obj->name_len++] = ',';
+                       obj->name[obj->name_len++] = hex_asc_lo(filetype >> 8);
+                       obj->name[obj->name_len++] = hex_asc_lo(filetype >> 4);
+                       obj->name[obj->name_len++] = hex_asc_lo(filetype >> 0);
+               }
        }
 }