http://git.samba.org/?p=vl/samba.git; a=shortlog;
h=refs/heads/struct_stat
Tim Prouty
tim.prouty at isilon.com
Thu May 14 17:06:55 GMT 2009
On May 14, 2009, at 7:49 AM, Volker Lendecke wrote:
> Hi!
>
> Under $SUBJECT find two commits that make SMB_STRUCT_STAT a
> structure that we define on our own. From the checkin
> message:
>
> Introduce "struct stat_ex" as a replacement for SMB_STRUCT_STAT
>
> This patch introduces
>
> struct stat_ex {
> dev_t st_ex_dev;
> ino_t st_ex_ino;
> mode_t st_ex_mode;
> nlink_t st_ex_nlink;
> uid_t st_ex_uid;
> gid_t st_ex_gid;
> dev_t st_ex_rdev;
> off_t st_ex_size;
> struct timespec st_ex_atime;
> struct timespec st_ex_mtime;
> struct timespec st_ex_ctime;
> struct timespec st_ex_btime; /* birthtime */
> blksize_t st_ex_blksize;
> blkcnt_t st_ex_blocks;
> };
> typedef struct stat_ex SMB_STRUCT_STAT;
In general, I really like these patches.
> It will very likely break all the onefs modules, but I think
> the changes will be reasonably easy to do.
Of course, it would be better if it didn't, but I don't mind taking a
few hours to fix it.
> Comments?
* Since the previous SMB_STRUCT_STAT allowed a system-specific stat
struct, additional information could be passed around in
SMB_STRUCT_STAT with only the vfs modules needing to know about it.
On OneFS, for example, SMB_VFS_FILE_ID_CREATE takes an SMB_STRUCT_STAT
and uses the system-specific st_snapid field to fill in the
file_id.extid. The quick solution is to just add an additional field
to the stat_ex struct in this case. Are there other dependencies on
SMB_STRUCT_STAT containing additional info?
* I love patch 2 :).
> Ah, sorry, forgot: I'd like to see this in 3.4 :-)
* A change of this scope seems too large to take this late in 3.4. My
vote is for it to go into master.
-Tim
More information about the samba-technical
mailing list