[Gluster-devel] md-cache: May bug found in md-cache.c

Amar Tumballi Suryanarayan atumball at redhat.com
Wed Feb 20 13:55:18 UTC 2019


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 <david.spisla at 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 <atumball at redhat.com>
> *Gesendet:* Mittwoch, 20. Februar 2019 14:18
> *An:* David Spisla <spisla80 at gmail.com>
> *Cc:* Gluster Devel <gluster-devel at 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 <spisla80 at 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 <
> spisla80 at 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 at gluster.org
> https://lists.gluster.org/mailman/listinfo/gluster-devel
>
>
>
>
> --
>
> Amar Tumballi (amarts)
>


-- 
Amar Tumballi (amarts)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gluster.org/pipermail/gluster-devel/attachments/20190220/55613bea/attachment-0001.html>


More information about the Gluster-devel mailing list