Re: [PATCH 3/3] xstat: Implement a requestable extra result to procure some inode flags [ver #4]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



[CC+=linux-api]

On Fri, Jul 2, 2010 at 7:45 PM, Andreas Dilger <adilger@xxxxxxxxx> wrote:
> On 2010-07-01, at 17:57, David Howells wrote:
>> [This is, for the moment, to be considered an example.  Do we actually want to
>> export these flags?  Should they be a full member of struct xstat?]
>
> I would say this should be a full-fledged member of struct xstat.
> I think they are fairly standard (available on many filesystems
> today), and requiring an ioctl to access them is unpleasant.
>
>> (1) User settable flags (to be consistent with the BSD st_flags field):
>>
>>       UF_NODUMP       Do not dump this file.
>>       UF_IMMUTABLE    This file is immutable.
>>       UF_APPEND       This file is append-only.
>>       UF_OPAQUE       This directory is opaque (unionfs).
>>       UF_NOUNLINK     This file can't be removed or renamed.
>>       UF_COMPRESSED   This file is compressed.
>>       UF_HIDDEN       This file shouldn't be displayed in a GUI.
>>
>>    The UF_SETTABLE constant is the union of the above flags.
>>
>> (2) Superuser settable flags (to be consistent with the BSD st_flags field):
>>
>>       SF_ARCHIVED     This file has been archived.
>>       SF_IMMUTABLE    This file is immutable.
>>       SF_APPEND       This file is append-only.
>>       SF_NOUNLINK     This file can't be removed or renamed.
>>       SF_HIDDEN       This file is a snapshot inode.
>>
>>    The SF_SETTABLE constant is the union of the above flags.
>>
>> (3) Linux-specific flags:
>>
>>       XSTAT_LF_MAGIC_FILE     Magic file, such as found in procfs and sysfs.
>>       XSTAT_LF_SYNC           File is written synchronously.
>>       XSTAT_LF_NOATIME        Atime is not updated on this file.
>>       XSTAT_LF_JOURNALLED_DATA Data modifications to this file are journalled.
>>       XSTAT_LF_ENCRYPTED      This file is encrypted.
>>       XSTAT_LF_SYSTEM         This file is a system file (FAT/NTFS/CIFS).
>>       XSTAT_LF_TEMPORARY      This file is a temporary file (NTFS/CIFS).
>>       XSTAT_LF_OFFLINE        file is currently unavailable (CIFS).
>
> Yuck on the names.  Why not stick with the "UF_" and "SF_" prefixes?
> Since we don't need to keep _binary_ compatibility with these flag values
> (only name portability) we can use the same flag values as the
> FS_*_FL definitions in fs.h.  That is what all of the existing filesystems
> already use (ext2/3/4, ocfs, btrfs, reiserfs, xfs, jfs).

Agree on the naming. Andreas expresses what I intended when I proposed the idea.

Cheers,

Michael


-- 
Michael Kerrisk Linux man-pages maintainer;
http://www.kernel.org/doc/man-pages/
Author of "The Linux Programming Interface", http://blog.man7.org/
--
To unsubscribe from this list: send the line "unsubscribe linux-cifs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux