===== git log ====
commit b4f4480094b7c3ebda3319df0c3f96efd08b2176
Author: ShyamsundarR <srangana@redhat.com>
Date:   Tue Jun 12 10:50:43 2018 -0400

    doc: Updated final release notes for 4.1.0
    
    Fixes: bz#1575386
    
    Change-Id: Iad79e16d76a55a2c3fc46629f79fec677bad597f
    Signed-off-by: ShyamsundarR <srangana@redhat.com>

commit 2cca9b4f1ca853c20be43213400f9a8803a71a7d
Author: Pranith Kumar K <pkarampu@redhat.com>
Date:   Mon Jun 11 13:03:58 2018 +0530

    protocol/server: Fix xdata leak in seek fop
    
    Change-Id: I6125283ed22c04564f0b77bb7a50579a83e02eb0
    fixes: bz#1590128
    Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
    (cherry picked from commit fd5b48ea0afd907deb08604415bee14ab65f378b)

commit acd9a863e80a7f56e25b3ed151a4711126de3208
Author: Kotresh HR <khiremat@redhat.com>
Date:   Fri Jun 1 01:48:31 2018 -0400

    posix/ctime: Fix fops racing in updating mtime/atime
    
    In distributed systems, there could be races with fops
    updating mtime/atime which could result in different
    mtime/atime for same file. So updating them only if
    time is greater than the existing makes sure, only
    the highest time is retained. If the mtime/atime
    update comes from the explicit utime syscall, it is
    allowed to set to previous time.
    
    Thanks Xavi for helping in rooting the issue.
    
    Backport of:
    > Patch: https://review.gluster.org/#/c/20120/
    > BUG: 1584981
    > Change-Id: If1230a75b96d7f9a828795189fcc699049e7826e
    > Signed-off-by: Kotresh HR <khiremat@redhat.com>
    (cherry picked from commit a6f0e7a4f1ca203762cae2ed5e426b52124c74dc)
    
    
    fixes: bz#1585894
    Change-Id: If1230a75b96d7f9a828795189fcc699049e7826e
    Signed-off-by: Kotresh HR <khiremat@redhat.com>

More commit messages for this ChangeLog can be found at
https://forge.gluster.org/glusterfs-core/glusterfs/commits/v4.1.0
