Re: [Gluster-devel] md-cache: May bug found in md-cache.c
Hello Amar, it should be done. Thank you for the explanation Regards David Von: Amar Tumballi Suryanarayan Gesendet: Mittwoch, 20. Februar 2019 14:55 An: David Spisla Cc: Gluster Devel Betreff: Re: [Gluster-devel] md-cache: May bug found in md-cache.c Hi David, https://docs.gluster.org/en/latest/Developer-guide/Backport-Guidelines/ gives more details about it. But easiest is to go to your patch (https://review.gluster.org/22234), and then click on 'Cherry Pick' button. In the pop-up, 'branch:' field, give 'release-6' and Submit. If you want it in release-5 branch too, repeat the same, with branch being 'release-5'. Siimlarly we need 'clone-of' bug for both the branches (the original bug used in patch is for master branch). That should be it. Rest, we can take care. Thanks a lot! Regards, Amar On Wed, Feb 20, 2019 at 6:58 PM David Spisla mailto:david.spi...@iternity.com>> wrote: Hello Amar, no problem. How can I do that? Can you please tell me the procedure? Regards David Von: Amar Tumballi Suryanarayan mailto:atumb...@redhat.com>> Gesendet: Mittwoch, 20. Februar 2019 14:18 An: David Spisla mailto:spisl...@gmail.com>> Cc: Gluster Devel mailto:gluster-devel@gluster.org>> Betreff: Re: [Gluster-devel] md-cache: May bug found in md-cache.c Hi David, Thanks for the patch, it got merged in master now. Can you please post it into release branches, so we can take them in release-6, release-5 branch, so next releases can have them. Regards, Amar On Tue, Feb 19, 2019 at 8:49 PM David Spisla mailto:spisl...@gmail.com>> wrote: Hello, I already open a bug: https://bugzilla.redhat.com/show_bug.cgi?id=1678726 There is also a link to a bug fix patch Regards David Spisla Am Di., 19. Feb. 2019 um 13:07 Uhr schrieb David Spisla mailto:spisl...@gmail.com>>: Hi folks, The 'struct md_cache' in md-cache.c uses int data types which are not in common with the data types used in the 'struct iatt' in iatt.h . If one take a closer look to the implementations one can see that the struct in md-cache.c uses still the int data types like in the struct 'old_iatt' . This can lead to unexpected side effects and some values of iatt maybe will not mapped correctly. I would suggest to open a bug report. What do you think? Additional info: struct md_cache { ia_prot_t md_prot; uint32_t md_nlink; uint32_t md_uid; uint32_t md_gid; uint32_t md_atime; uint32_t md_atime_nsec; uint32_t md_mtime; uint32_t md_mtime_nsec; uint32_t md_ctime; uint32_t md_ctime_nsec; uint64_t md_rdev; uint64_t md_size; uint64_t md_blocks; uint64_t invalidation_time; uint64_t generation; dict_t *xattr; char *linkname; time_t ia_time; time_t xa_time; gf_boolean_t need_lookup; gf_boolean_t valid; gf_boolean_t gen_rollover; gf_boolean_t invalidation_rollover; gf_lock_t lock; }; struct iatt { uint64_t ia_flags; uint64_t ia_ino; /* inode number */ uint64_t ia_dev; /* backing device ID */ uint64_t ia_rdev;/* device ID (if special file) */ uint64_t ia_size;/* file size in bytes */ uint32_t ia_nlink; /* Link count */ uint32_t ia_uid; /* user ID of owner */ uint32_t ia_gid; /* group ID of owner */ uint32_t ia_blksize; /* blocksize for filesystem I/O */ uint64_t ia_blocks; /* number of 512B blocks allocated */ int64_t ia_atime;/* last access time */ int64_t ia_mtime;/* last modification time */ int64_t ia_ctime;/* last status change time */ int64_t ia_btime;/* creation time. Fill using statx */ uint32_t ia_atime_nsec; uint32_t ia_mtime_nsec; uint32_t ia_ctime_nsec; uint32_t ia_btime_nsec; uint64_t ia_attributes; /* chattr related:compressed, immutable, * append only, encrypted etc.*/ uint64_t ia_attributes_mask; /* Mask for the attributes */ uuid_t ia_gfid; ia_type_t ia_type; /* type of file */ ia_prot_t ia_prot; /* protection */ }; struct old_iatt { uint64_t ia_ino; /* inode number */ uuid_t ia_gfid; uint64_t ia_dev; /* backing device ID */ ia_type_t ia_type; /* type of file */ ia_prot_t ia_prot; /* protection */ uint32_t ia_nlink; /* Link count */ uint32_t ia_uid; /* user ID of owner */ uint32_t ia_gid; /* group ID of owner */ uint64_t ia_rdev;/* device ID (if special file) */ uint64_t ia_size;/* file size in bytes */ uint32_t ia_blksize; /* blocksize for filesystem I/O */ uint64_t ia_blocks; /* number of 512B blocks allocated */ uint32_t ia_atime; /* last access time */ uint32_t ia_atime_nsec; uint32_t ia_mtime; /* last modification time */ uint32_t ia_mtime_nsec; uint32_t ia_ctime; /* last status change time */ uint32_t ia_ctime_nsec; }; ___ Gluster-devel mailing list Gluster-devel@gluster.
Re: [Gluster-devel] md-cache: May bug found in md-cache.c
Hello Amar, no problem. How can I do that? Can you please tell me the procedure? Regards David Von: Amar Tumballi Suryanarayan Gesendet: Mittwoch, 20. Februar 2019 14:18 An: David Spisla Cc: Gluster Devel Betreff: Re: [Gluster-devel] md-cache: May bug found in md-cache.c Hi David, Thanks for the patch, it got merged in master now. Can you please post it into release branches, so we can take them in release-6, release-5 branch, so next releases can have them. Regards, Amar On Tue, Feb 19, 2019 at 8:49 PM David Spisla mailto:spisl...@gmail.com>> wrote: Hello, I already open a bug: https://bugzilla.redhat.com/show_bug.cgi?id=1678726 There is also a link to a bug fix patch Regards David Spisla Am Di., 19. Feb. 2019 um 13:07 Uhr schrieb David Spisla mailto:spisl...@gmail.com>>: Hi folks, The 'struct md_cache' in md-cache.c uses int data types which are not in common with the data types used in the 'struct iatt' in iatt.h . If one take a closer look to the implementations one can see that the struct in md-cache.c uses still the int data types like in the struct 'old_iatt' . This can lead to unexpected side effects and some values of iatt maybe will not mapped correctly. I would suggest to open a bug report. What do you think? Additional info: struct md_cache { ia_prot_t md_prot; uint32_t md_nlink; uint32_t md_uid; uint32_t md_gid; uint32_t md_atime; uint32_t md_atime_nsec; uint32_t md_mtime; uint32_t md_mtime_nsec; uint32_t md_ctime; uint32_t md_ctime_nsec; uint64_t md_rdev; uint64_t md_size; uint64_t md_blocks; uint64_t invalidation_time; uint64_t generation; dict_t *xattr; char *linkname; time_t ia_time; time_t xa_time; gf_boolean_t need_lookup; gf_boolean_t valid; gf_boolean_t gen_rollover; gf_boolean_t invalidation_rollover; gf_lock_t lock; }; struct iatt { uint64_t ia_flags; uint64_t ia_ino; /* inode number */ uint64_t ia_dev; /* backing device ID */ uint64_t ia_rdev;/* device ID (if special file) */ uint64_t ia_size;/* file size in bytes */ uint32_t ia_nlink; /* Link count */ uint32_t ia_uid; /* user ID of owner */ uint32_t ia_gid; /* group ID of owner */ uint32_t ia_blksize; /* blocksize for filesystem I/O */ uint64_t ia_blocks; /* number of 512B blocks allocated */ int64_t ia_atime;/* last access time */ int64_t ia_mtime;/* last modification time */ int64_t ia_ctime;/* last status change time */ int64_t ia_btime;/* creation time. Fill using statx */ uint32_t ia_atime_nsec; uint32_t ia_mtime_nsec; uint32_t ia_ctime_nsec; uint32_t ia_btime_nsec; uint64_t ia_attributes; /* chattr related:compressed, immutable, * append only, encrypted etc.*/ uint64_t ia_attributes_mask; /* Mask for the attributes */ uuid_t ia_gfid; ia_type_t ia_type; /* type of file */ ia_prot_t ia_prot; /* protection */ }; struct old_iatt { uint64_t ia_ino; /* inode number */ uuid_t ia_gfid; uint64_t ia_dev; /* backing device ID */ ia_type_t ia_type; /* type of file */ ia_prot_t ia_prot; /* protection */ uint32_t ia_nlink; /* Link count */ uint32_t ia_uid; /* user ID of owner */ uint32_t ia_gid; /* group ID of owner */ uint64_t ia_rdev;/* device ID (if special file) */ uint64_t ia_size;/* file size in bytes */ uint32_t ia_blksize; /* blocksize for filesystem I/O */ uint64_t ia_blocks; /* number of 512B blocks allocated */ uint32_t ia_atime; /* last access time */ uint32_t ia_atime_nsec; uint32_t ia_mtime; /* last modification time */ uint32_t ia_mtime_nsec; uint32_t ia_ctime; /* last status change time */ uint32_t ia_ctime_nsec; }; ___ Gluster-devel mailing list Gluster-devel@gluster.org<mailto:Gluster-devel@gluster.org> https://lists.gluster.org/mailman/listinfo/gluster-devel -- Amar Tumballi (amarts) ___ Gluster-devel mailing list Gluster-devel@gluster.org https://lists.gluster.org/mailman/listinfo/gluster-devel
Re: [Gluster-devel] md-cache: May bug found in md-cache.c
Hi David, https://docs.gluster.org/en/latest/Developer-guide/Backport-Guidelines/ gives more details about it. But easiest is to go to your patch (https://review.gluster.org/22234), and then click on 'Cherry Pick' button. In the pop-up, 'branch:' field, give 'release-6' and Submit. If you want it in release-5 branch too, repeat the same, with branch being 'release-5'. Siimlarly we need 'clone-of' bug for both the branches (the original bug used in patch is for master branch). That should be it. Rest, we can take care. Thanks a lot! Regards, Amar On Wed, Feb 20, 2019 at 6:58 PM David Spisla wrote: > Hello Amar, > > > > no problem. How can I do that? Can you please tell me the procedure? > > > > Regards > > David > > > > *Von:* Amar Tumballi Suryanarayan > *Gesendet:* Mittwoch, 20. Februar 2019 14:18 > *An:* David Spisla > *Cc:* Gluster Devel > *Betreff:* Re: [Gluster-devel] md-cache: May bug found in md-cache.c > > > > Hi David, > > > > Thanks for the patch, it got merged in master now. Can you please post it > into release branches, so we can take them in release-6, release-5 branch, > so next releases can have them. > > > > Regards, > > Amar > > > > On Tue, Feb 19, 2019 at 8:49 PM David Spisla wrote: > > Hello, > > > > I already open a bug: > > https://bugzilla.redhat.com/show_bug.cgi?id=1678726 > > > > There is also a link to a bug fix patch > > > > Regards > > David Spisla > > > > Am Di., 19. Feb. 2019 um 13:07 Uhr schrieb David Spisla < > spisl...@gmail.com>: > > Hi folks, > > > > The 'struct md_cache' in md-cache.c uses int data types which are not in > common with the data types used in the 'struct iatt' in iatt.h . If one > take a closer look to the implementations one can see that the struct in > md-cache.c uses still the int data types like in the struct 'old_iatt' . > This can lead to unexpected side effects and some values of iatt maybe will > not mapped correctly. I would suggest to open a bug report. What do you > think? > > Additional info: > > struct md_cache { > ia_prot_t md_prot; > uint32_t md_nlink; > uint32_t md_uid; > uint32_t md_gid; > uint32_t md_atime; > uint32_t md_atime_nsec; > uint32_t md_mtime; > uint32_t md_mtime_nsec; > uint32_t md_ctime; > uint32_t md_ctime_nsec; > uint64_t md_rdev; > uint64_t md_size; > uint64_t md_blocks; > uint64_t invalidation_time; > uint64_t generation; > dict_t *xattr; > char *linkname; > time_t ia_time; > time_t xa_time; > gf_boolean_t need_lookup; > gf_boolean_t valid; > gf_boolean_t gen_rollover; > gf_boolean_t invalidation_rollover; > gf_lock_t lock; > }; > > struct iatt { > uint64_t ia_flags; > uint64_t ia_ino; /* inode number */ > uint64_t ia_dev; /* backing device ID */ > uint64_t ia_rdev;/* device ID (if special file) */ > uint64_t ia_size;/* file size in bytes */ > uint32_t ia_nlink; /* Link count */ > uint32_t ia_uid; /* user ID of owner */ > uint32_t ia_gid; /* group ID of owner */ > uint32_t ia_blksize; /* blocksize for filesystem I/O */ > uint64_t ia_blocks; /* number of 512B blocks allocated */ > int64_t ia_atime;/* last access time */ > int64_t ia_mtime;/* last modification time */ > int64_t ia_ctime;/* last status change time */ > int64_t ia_btime;/* creation time. Fill using statx */ > uint32_t ia_atime_nsec; > uint32_t ia_mtime_nsec; > uint32_t ia_ctime_nsec; > uint32_t ia_btime_nsec; > uint64_t ia_attributes; /* chattr related:compressed, immutable, > * append only, encrypted etc.*/ > uint64_t ia_attributes_mask; /* Mask for the attributes */ > > uuid_t ia_gfid; > ia_type_t ia_type; /* type of file */ > ia_prot_t ia_prot; /* protection */ > }; > > struct old_iatt { > uint64_t ia_ino; /* inode number */ > uuid_t ia_gfid; > uint64_t ia_dev; /* backing device ID */ > ia_type_t ia_type; /* type of file */ > ia_prot_t ia_prot; /* protection */ > uint32_t ia_nlink; /* Link count */ > uint32_t ia_uid; /* user ID of owner */ > uint32_t ia_gid; /* group ID of owner */ > uint64_t ia_rdev;/* device ID (if special file) */ > uint64_t ia_size;/* file size in bytes */ > uint32_t ia_blksize; /* blocksize for filesystem I/O */ > uint64_t ia_blocks; /* number of 512B blocks allocated */ > uint32_t ia_atime; /* last access time
Re: [Gluster-devel] md-cache: May bug found in md-cache.c
Hi David, Thanks for the patch, it got merged in master now. Can you please post it into release branches, so we can take them in release-6, release-5 branch, so next releases can have them. Regards, Amar On Tue, Feb 19, 2019 at 8:49 PM David Spisla wrote: > Hello, > > I already open a bug: > https://bugzilla.redhat.com/show_bug.cgi?id=1678726 > > There is also a link to a bug fix patch > > Regards > David Spisla > > Am Di., 19. Feb. 2019 um 13:07 Uhr schrieb David Spisla < > spisl...@gmail.com>: > >> Hi folks, >> >> The 'struct md_cache' in md-cache.c uses int data types which are not in >> common with the data types used in the 'struct iatt' in iatt.h . If one >> take a closer look to the implementations one can see that the struct in >> md-cache.c uses still the int data types like in the struct 'old_iatt' . >> This can lead to unexpected side effects and some values of iatt maybe will >> not mapped correctly. I would suggest to open a bug report. What do you >> think? >> >> Additional info: >> >> struct md_cache { >> ia_prot_t md_prot; >> uint32_t md_nlink; >> uint32_t md_uid; >> uint32_t md_gid; >> uint32_t md_atime; >> uint32_t md_atime_nsec; >> uint32_t md_mtime; >> uint32_t md_mtime_nsec; >> uint32_t md_ctime; >> uint32_t md_ctime_nsec; >> uint64_t md_rdev; >> uint64_t md_size; >> uint64_t md_blocks; >> uint64_t invalidation_time; >> uint64_t generation; >> dict_t *xattr; >> char *linkname; >> time_t ia_time; >> time_t xa_time; >> gf_boolean_t need_lookup; >> gf_boolean_t valid; >> gf_boolean_t gen_rollover; >> gf_boolean_t invalidation_rollover; >> gf_lock_t lock; >> }; >> >> struct iatt { >> uint64_t ia_flags; >> uint64_t ia_ino; /* inode number */ >> uint64_t ia_dev; /* backing device ID */ >> uint64_t ia_rdev;/* device ID (if special file) */ >> uint64_t ia_size;/* file size in bytes */ >> uint32_t ia_nlink; /* Link count */ >> uint32_t ia_uid; /* user ID of owner */ >> uint32_t ia_gid; /* group ID of owner */ >> uint32_t ia_blksize; /* blocksize for filesystem I/O */ >> uint64_t ia_blocks; /* number of 512B blocks allocated */ >> int64_t ia_atime;/* last access time */ >> int64_t ia_mtime;/* last modification time */ >> int64_t ia_ctime;/* last status change time */ >> int64_t ia_btime;/* creation time. Fill using statx */ >> uint32_t ia_atime_nsec; >> uint32_t ia_mtime_nsec; >> uint32_t ia_ctime_nsec; >> uint32_t ia_btime_nsec; >> uint64_t ia_attributes; /* chattr related:compressed, immutable, >> * append only, encrypted etc.*/ >> uint64_t ia_attributes_mask; /* Mask for the attributes */ >> >> uuid_t ia_gfid; >> ia_type_t ia_type; /* type of file */ >> ia_prot_t ia_prot; /* protection */ >> }; >> >> struct old_iatt { >> uint64_t ia_ino; /* inode number */ >> uuid_t ia_gfid; >> uint64_t ia_dev; /* backing device ID */ >> ia_type_t ia_type; /* type of file */ >> ia_prot_t ia_prot; /* protection */ >> uint32_t ia_nlink; /* Link count */ >> uint32_t ia_uid; /* user ID of owner */ >> uint32_t ia_gid; /* group ID of owner */ >> uint64_t ia_rdev;/* device ID (if special file) */ >> uint64_t ia_size;/* file size in bytes */ >> uint32_t ia_blksize; /* blocksize for filesystem I/O */ >> uint64_t ia_blocks; /* number of 512B blocks allocated */ >> uint32_t ia_atime; /* last access time */ >> uint32_t ia_atime_nsec; >> uint32_t ia_mtime; /* last modification time */ >> uint32_t ia_mtime_nsec; >> uint32_t ia_ctime; /* last status change time */ >> uint32_t ia_ctime_nsec; >> }; >> > ___ > Gluster-devel mailing list > Gluster-devel@gluster.org > https://lists.gluster.org/mailman/listinfo/gluster-devel -- Amar Tumballi (amarts) ___ Gluster-devel mailing list Gluster-devel@gluster.org https://lists.gluster.org/mailman/listinfo/gluster-devel
Re: [Gluster-devel] md-cache: May bug found in md-cache.c
Hello, I already open a bug: https://bugzilla.redhat.com/show_bug.cgi?id=1678726 There is also a link to a bug fix patch Regards David Spisla Am Di., 19. Feb. 2019 um 13:07 Uhr schrieb David Spisla : > Hi folks, > > The 'struct md_cache' in md-cache.c uses int data types which are not in > common with the data types used in the 'struct iatt' in iatt.h . If one > take a closer look to the implementations one can see that the struct in > md-cache.c uses still the int data types like in the struct 'old_iatt' . > This can lead to unexpected side effects and some values of iatt maybe will > not mapped correctly. I would suggest to open a bug report. What do you > think? > > Additional info: > > struct md_cache { > ia_prot_t md_prot; > uint32_t md_nlink; > uint32_t md_uid; > uint32_t md_gid; > uint32_t md_atime; > uint32_t md_atime_nsec; > uint32_t md_mtime; > uint32_t md_mtime_nsec; > uint32_t md_ctime; > uint32_t md_ctime_nsec; > uint64_t md_rdev; > uint64_t md_size; > uint64_t md_blocks; > uint64_t invalidation_time; > uint64_t generation; > dict_t *xattr; > char *linkname; > time_t ia_time; > time_t xa_time; > gf_boolean_t need_lookup; > gf_boolean_t valid; > gf_boolean_t gen_rollover; > gf_boolean_t invalidation_rollover; > gf_lock_t lock; > }; > > struct iatt { > uint64_t ia_flags; > uint64_t ia_ino; /* inode number */ > uint64_t ia_dev; /* backing device ID */ > uint64_t ia_rdev;/* device ID (if special file) */ > uint64_t ia_size;/* file size in bytes */ > uint32_t ia_nlink; /* Link count */ > uint32_t ia_uid; /* user ID of owner */ > uint32_t ia_gid; /* group ID of owner */ > uint32_t ia_blksize; /* blocksize for filesystem I/O */ > uint64_t ia_blocks; /* number of 512B blocks allocated */ > int64_t ia_atime;/* last access time */ > int64_t ia_mtime;/* last modification time */ > int64_t ia_ctime;/* last status change time */ > int64_t ia_btime;/* creation time. Fill using statx */ > uint32_t ia_atime_nsec; > uint32_t ia_mtime_nsec; > uint32_t ia_ctime_nsec; > uint32_t ia_btime_nsec; > uint64_t ia_attributes; /* chattr related:compressed, immutable, > * append only, encrypted etc.*/ > uint64_t ia_attributes_mask; /* Mask for the attributes */ > > uuid_t ia_gfid; > ia_type_t ia_type; /* type of file */ > ia_prot_t ia_prot; /* protection */ > }; > > struct old_iatt { > uint64_t ia_ino; /* inode number */ > uuid_t ia_gfid; > uint64_t ia_dev; /* backing device ID */ > ia_type_t ia_type; /* type of file */ > ia_prot_t ia_prot; /* protection */ > uint32_t ia_nlink; /* Link count */ > uint32_t ia_uid; /* user ID of owner */ > uint32_t ia_gid; /* group ID of owner */ > uint64_t ia_rdev;/* device ID (if special file) */ > uint64_t ia_size;/* file size in bytes */ > uint32_t ia_blksize; /* blocksize for filesystem I/O */ > uint64_t ia_blocks; /* number of 512B blocks allocated */ > uint32_t ia_atime; /* last access time */ > uint32_t ia_atime_nsec; > uint32_t ia_mtime; /* last modification time */ > uint32_t ia_mtime_nsec; > uint32_t ia_ctime; /* last status change time */ > uint32_t ia_ctime_nsec; > }; > ___ Gluster-devel mailing list Gluster-devel@gluster.org https://lists.gluster.org/mailman/listinfo/gluster-devel
[Gluster-devel] md-cache: May bug found in md-cache.c
Hi folks, The 'struct md_cache' in md-cache.c uses int data types which are not in common with the data types used in the 'struct iatt' in iatt.h . If one take a closer look to the implementations one can see that the struct in md-cache.c uses still the int data types like in the struct 'old_iatt' . This can lead to unexpected side effects and some values of iatt maybe will not mapped correctly. I would suggest to open a bug report. What do you think? Additional info: struct md_cache { ia_prot_t md_prot; uint32_t md_nlink; uint32_t md_uid; uint32_t md_gid; uint32_t md_atime; uint32_t md_atime_nsec; uint32_t md_mtime; uint32_t md_mtime_nsec; uint32_t md_ctime; uint32_t md_ctime_nsec; uint64_t md_rdev; uint64_t md_size; uint64_t md_blocks; uint64_t invalidation_time; uint64_t generation; dict_t *xattr; char *linkname; time_t ia_time; time_t xa_time; gf_boolean_t need_lookup; gf_boolean_t valid; gf_boolean_t gen_rollover; gf_boolean_t invalidation_rollover; gf_lock_t lock; }; struct iatt { uint64_t ia_flags; uint64_t ia_ino; /* inode number */ uint64_t ia_dev; /* backing device ID */ uint64_t ia_rdev;/* device ID (if special file) */ uint64_t ia_size;/* file size in bytes */ uint32_t ia_nlink; /* Link count */ uint32_t ia_uid; /* user ID of owner */ uint32_t ia_gid; /* group ID of owner */ uint32_t ia_blksize; /* blocksize for filesystem I/O */ uint64_t ia_blocks; /* number of 512B blocks allocated */ int64_t ia_atime;/* last access time */ int64_t ia_mtime;/* last modification time */ int64_t ia_ctime;/* last status change time */ int64_t ia_btime;/* creation time. Fill using statx */ uint32_t ia_atime_nsec; uint32_t ia_mtime_nsec; uint32_t ia_ctime_nsec; uint32_t ia_btime_nsec; uint64_t ia_attributes; /* chattr related:compressed, immutable, * append only, encrypted etc.*/ uint64_t ia_attributes_mask; /* Mask for the attributes */ uuid_t ia_gfid; ia_type_t ia_type; /* type of file */ ia_prot_t ia_prot; /* protection */ }; struct old_iatt { uint64_t ia_ino; /* inode number */ uuid_t ia_gfid; uint64_t ia_dev; /* backing device ID */ ia_type_t ia_type; /* type of file */ ia_prot_t ia_prot; /* protection */ uint32_t ia_nlink; /* Link count */ uint32_t ia_uid; /* user ID of owner */ uint32_t ia_gid; /* group ID of owner */ uint64_t ia_rdev;/* device ID (if special file) */ uint64_t ia_size;/* file size in bytes */ uint32_t ia_blksize; /* blocksize for filesystem I/O */ uint64_t ia_blocks; /* number of 512B blocks allocated */ uint32_t ia_atime; /* last access time */ uint32_t ia_atime_nsec; uint32_t ia_mtime; /* last modification time */ uint32_t ia_mtime_nsec; uint32_t ia_ctime; /* last status change time */ uint32_t ia_ctime_nsec; }; ___ Gluster-devel mailing list Gluster-devel@gluster.org https://lists.gluster.org/mailman/listinfo/gluster-devel