diff options
author | Andrew Gabbasov <andrew_gabbasov@mentor.com> | 2016-01-15 09:44:22 +0100 |
---|---|---|
committer | Jan Kara <jack@suse.cz> | 2016-02-09 13:05:23 +0100 |
commit | 9293fcfbc1812a22ad5ce1b542eb90c1bbe01be1 (patch) | |
tree | ef5e96d406e9ac257911571591e0bcfb58afd9ad /fs/udf/udfdecl.h | |
parent | udf: Use separate buffer for copying split names (diff) | |
download | linux-9293fcfbc1812a22ad5ce1b542eb90c1bbe01be1.tar.xz linux-9293fcfbc1812a22ad5ce1b542eb90c1bbe01be1.zip |
udf: Remove struct ustr as non-needed intermediate storage
Although 'struct ustr' tries to structurize the data by combining
the string and its length, it doesn't actually make much benefit,
since it saves only one parameter, but introduces an extra copying
of the whole buffer, serving as an intermediate storage. It looks
quite inefficient and not actually needed.
This commit gets rid of the struct ustr by changing the parameters
of some functions appropriately.
Also, it removes using 'dstring' type, since it doesn't make much
sense too.
Just using the occasion, add a 'const' qualifier to udf_get_filename
to make consistent parameters sets.
Signed-off-by: Andrew Gabbasov <andrew_gabbasov@mentor.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/udf/udfdecl.h')
-rw-r--r-- | fs/udf/udfdecl.h | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/fs/udf/udfdecl.h b/fs/udf/udfdecl.h index 47a228248c5b..972b70625614 100644 --- a/fs/udf/udfdecl.h +++ b/fs/udf/udfdecl.h @@ -106,12 +106,6 @@ struct generic_desc { __le32 volDescSeqNum; }; -struct ustr { - uint8_t u_cmpID; - uint8_t u_name[UDF_NAME_LEN]; - uint8_t u_len; -}; - /* super.c */ @@ -214,12 +208,11 @@ udf_get_lb_pblock(struct super_block *sb, struct kernel_lb_addr *loc, } /* unicode.c */ -extern int udf_get_filename(struct super_block *, uint8_t *, int, uint8_t *, - int); +extern int udf_get_filename(struct super_block *, const uint8_t *, int, + uint8_t *, int); extern int udf_put_filename(struct super_block *, const uint8_t *, int, uint8_t *, int); -extern int udf_build_ustr(struct ustr *, dstring *, int); -extern int udf_CS0toUTF8(struct ustr *, const struct ustr *); +extern int udf_CS0toUTF8(uint8_t *, int, const uint8_t *, int); /* ialloc.c */ extern void udf_free_inode(struct inode *); |