Re: [PATCH 11/16] f2fs: add inode operations for special inodes

From: Vyacheslav Dubeyko
Date: Sat Oct 13 2012 - 18:21:50 EST



On Oct 14, 2012, at 12:52 AM, Arnd Bergmann wrote:

> On Friday 05 October 2012, êìê wrote:
>> +const char *media_ext_lists[] = {
>> + "jpg",
>> + "gif",
>> + "png",
>> + "avi",
>> + "divx",
>> + "mp4",
>> + "mp3",
>> ...
>
>> + * Set multimedia files as cold files for hot/cold data separation
>> + */
>> +static inline void set_cold_file(struct inode *inode, const unsigned char *name)
>> +{
>> + const char **extlist = media_ext_lists;
>> +
>> + while (*extlist) {
>> + if (!is_multimedia_file(name, *extlist)) {
>> + F2FS_I(inode)->is_cold = 1;
>> + break;
>> + }
>> + extlist++;
>> + }
>> +}
>
> This is a very clever way of categorizing files by their name, but I wonder if hardcoding
> the list of file name extensions at in the kernel source is the best strategy. Generally
> I would consider this to be a policy that should be configurable by the user.
>
> Unfortunately I can't think of a good interface to configure this, but maybe someone
> else has a useful idea. Maybe the list can be stored in the superblock and get written
> at mkfs time from the same defaults, but with the option of overriding it using
> a debugfs tool.
>

By the way, how about extended attributes? It is possible to save in extended attribute a hint about file's content nature during creation operation or later. Moreover, extended attribute gives possibility to change hint after renaming operation, for example.

With the best regards,
Vyacheslav Dubeyko.

> Arnd
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/