"Fossies" - the Fresh Open Source Software Archive

Member "glusterfs-6.9/ChangeLog" (23 Apr 2020, 9632783 Bytes) of package /linux/misc/glusterfs-6.9.tar.gz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 ===== git log ====
    2 commit 57b48f2802dbb4af4ccb3f215816a305a6f840a9
    3 Author: Hari Gowtham <hgowtham@redhat.com>
    4 Date:   Wed Apr 22 14:26:47 2020 +0530
    5 
    6     Adding release notes for release-6.9
    7     
    8     Change-Id: I21d153ed3d2991b7dc2bffea605b5abdca87b748
    9     fixes: #1175
   10     Signed-off-by: Hari Gowtham <hgowtham@redhat.com>
   11 
   12 commit 09d03c77c0c4d97a7f7b5a5d57349a6bd96544e7
   13 Author: Pranith Kumar K <pkarampu@redhat.com>
   14 Date:   Thu Apr 2 15:30:28 2020 +0530
   15 
   16     features/utime: Don't access frame after stack-wind
   17     
   18     Problem:
   19     frame is accessed after stack-wind. This can lead to crash
   20     if the cbk frees the frame.
   21     
   22     Fix:
   23     Use new frame for the wind instead.
   24     
   25     Updates: #832
   26     Change-Id: I64754609f1114b0bbd4d1336fa81a56f2cca6e03
   27     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
   28 
   29 commit 4d6f1bed68cabfc2ce76316892ce0a1726d879b8
   30 Author: Amar Tumballi <amar@kadalu.io>
   31 Date:   Wed Mar 4 00:46:08 2020 +0530
   32 
   33     utime: resolve an issue of permission denied logs
   34     
   35     In case where uid is not set to be 0, there are possible errors
   36     from acl xlator. So, set `uid = 0;` with pid indicating this is
   37     set from UTIME activity.
   38     
   39     The message "E [MSGID: 148002] [utime.c:146:gf_utime_set_mdata_setxattr_cbk] 0-dev_SNIP_data-utime: dict set of key for set-ctime-mdata failed [Permission denied]" repeated 2 times between [2019-12-19 21:27:55.042634] and [2019-12-19 21:27:55.047887]
   40     
   41     Change-Id: Ieadf329835a40a13ac0bf908dac776e66954466c
   42     Fixes: #832
   43     Signed-off-by: Amar Tumballi <amar@kadalu.io>
   44     (cherry picked from commit eb916c057036db8289b41265797e5dce066d1512)
   45 
   46 commit ce037b615c46c27278fa91065643ec51ceb764df
   47 Author: Pranith Kumar K <pkarampu@redhat.com>
   48 Date:   Tue Apr 7 16:05:16 2020 +0530
   49 
   50     mount/fuse: Wait for 'mount' child to exit before dying
   51     
   52     Problem:
   53     tests/bugs/protocol/bug-1433815-auth-allow.t fails
   54     sometimes because of stale mount. This stale mount
   55     comes into picture when parent process dies without
   56     waiting for the child process which mounts fuse fs
   57     to die
   58     
   59     Fix:
   60     Wait for mounting child process to die before dying.
   61     
   62     Fixes: #1152
   63     Change-Id: I8baee8720e88614fdb762ea822d5877973eef8dc
   64     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
   65 
   66 commit 105bb9c58676a47cb61635df792b188d6a4af563
   67 Author: Xavi Hernandez <xhernandez@redhat.com>
   68 Date:   Mon Mar 30 11:09:39 2020 +0200
   69 
   70     md-cache: avoid clearing cache when not necessary
   71     
   72     mdc_inode_xatt_set() blindly cleared current cache when dict was not
   73     NULL, even if there was no xattr requested.
   74     
   75     This patch fixes this by only calling mdc_inode_xatt_set() when we have
   76     explicitly requested something to cache.
   77     
   78     Change-Id: Idc91a4693f1ff39f7059acde26682ccc361b947d
   79     Fixes: #1140
   80     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
   81 
   82 commit b398c6629d8cdb5964531f74fcc938c047c6ef63
   83 Author: Xavi Hernandez <xhernandez@redhat.com>
   84 Date:   Fri Mar 27 23:56:15 2020 +0100
   85 
   86     write-behind: fix data corruption
   87     
   88     There was a bug in write-behind that allowed a previous completed write
   89     to overwrite the overlapping region of data from a future write.
   90     
   91     Suppose we want to send three writes (W1, W2 and W3). W1 and W2 are
   92     sequential, and W3 writes at the same offset of W2:
   93     
   94         W2.offset = W3.offset = W1.offset + W1.size
   95     
   96     Both W1 and W2 are sent in parallel. W3 is only sent after W2 completes.
   97     So W3 should *always* overwrite the overlapping part of W2.
   98     
   99     Suppose write-behind processes the requests from 2 concurrent threads:
  100     
  101         Thread 1                    Thread 2
  102     
  103         <received W1>
  104                                     <received W2>
  105         wb_enqueue_tempted(W1)
  106         /* W1 is assigned gen X */
  107                                     wb_enqueue_tempted(W2)
  108                                     /* W2 is assigned gen X */
  109     
  110                                     wb_process_queue()
  111                                       __wb_preprocess_winds()
  112                                         /* W1 and W2 are sequential and all
  113                                          * other requisites are met to merge
  114                                          * both requests. */
  115                                         __wb_collapse_small_writes(W1, W2)
  116                                         __wb_fulfill_request(W2)
  117     
  118                                       __wb_pick_unwinds() -> W2
  119                                       /* In this case, since the request is
  120                                        * already fulfilled, wb_inode->gen
  121                                        * is not updated. */
  122     
  123                                     wb_do_unwinds()
  124                                       STACK_UNWIND(W2)
  125     
  126                                     /* The application has received the
  127                                      * result of W2, so it can send W3. */
  128                                     <received W3>
  129     
  130                                     wb_enqueue_tempted(W3)
  131                                     /* W3 is assigned gen X */
  132     
  133                                     wb_process_queue()
  134                                       /* Here we have W1 (which contains
  135                                        * the conflicting W2) and W3 with
  136                                        * same gen, so they are interpreted
  137                                        * as concurrent writes that do not
  138                                        * conflict. */
  139                                       __wb_pick_winds() -> W3
  140     
  141                                     wb_do_winds()
  142                                       STACK_WIND(W3)
  143     
  144         wb_process_queue()
  145           /* Eventually W1 will be
  146            * ready to be sent */
  147           __wb_pick_winds() -> W1
  148           __wb_pick_unwinds() -> W1
  149             /* Here wb_inode->gen is
  150              * incremented. */
  151     
  152         wb_do_unwinds()
  153           STACK_UNWIND(W1)
  154     
  155         wb_do_winds()
  156           STACK_WIND(W1)
  157     
  158     So, as we can see, W3 is sent before W1, which shouldn't happen.
  159     
  160     The problem is that wb_inode->gen is only incremented for requests that
  161     have not been fulfilled but, after a merge, the request is marked as
  162     fulfilled even though it has not been sent to the brick. This allows
  163     that future requests are assigned to the same generation, which could
  164     be internally reordered.
  165     
  166     Solution:
  167     
  168     Increment wb_inode->gen before any unwind, even if it's for a fulfilled
  169     request.
  170     
  171     Special thanks to Stefan Ring for writing a reproducer that has been
  172     crucial to identify the issue.
  173     
  174     Change-Id: Id4ab0f294a09aca9a863ecaeef8856474662ab45
  175     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
  176     Fixes: #884
  177 
  178 commit 97ca0a599208b0564dcf5b9dff49e4466e056e14
  179 Author: Sunny Kumar <sunkumar@redhat.com>
  180 Date:   Thu Mar 26 10:46:16 2020 +0000
  181 
  182     snap_scheduler: python3 compatibility and new test case
  183     
  184     Problem:
  185     "snap_scheduler.py init" command failing with the below traceback:
  186     
  187     [root@dhcp43-104 ~]# snap_scheduler.py init
  188     Traceback (most recent call last):
  189       File "/usr/sbin/snap_scheduler.py", line 941, in <module>
  190         sys.exit(main(sys.argv[1:]))
  191       File "/usr/sbin/snap_scheduler.py", line 851, in main
  192         initLogger()
  193       File "/usr/sbin/snap_scheduler.py", line 153, in initLogger
  194         logfile = os.path.join(process.stdout.read()[:-1], SCRIPT_NAME + ".log")
  195       File "/usr/lib64/python3.6/posixpath.py", line 94, in join
  196         genericpath._check_arg_types('join', a, *p)
  197       File "/usr/lib64/python3.6/genericpath.py", line 151, in _check_arg_types
  198         raise TypeError("Can't mix strings and bytes in path components") from None
  199     TypeError: Can't mix strings and bytes in path components
  200     
  201     Solution:
  202     
  203     Added the 'universal_newlines' flag to Popen to support backward compatibility.
  204     
  205     Added a basic test for snapshot scheduler.
  206     
  207     Backport of:
  208     
  209        >Upstream Patch: https://review.gluster.org/#/c/glusterfs/+/24257/
  210        >Change-Id: I78e8fabd866fd96638747ecd21d292f5ca074a4e
  211        >Fixes: #1134
  212        >Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
  213        >(cherry picked from commit a7d7ec066e56ac03bf252c26beb20fdc2c3b6772)
  214     
  215     Change-Id: I78e8fabd866fd96638747ecd21d292f5ca074a4e
  216     Fixes: #1134
  217     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
  218 
  219 commit 7ea9eec1e89b9e9576120e89aef15b15f3d14768
  220 Author: Ravishankar N <ravishankar@redhat.com>
  221 Date:   Mon Dec 24 13:00:19 2018 +0530
  222 
  223     afr: mark pending xattrs as a part of metadata heal
  224     
  225     ...if pending xattrs are zero for all children.
  226     
  227     Problem:
  228     If there are no pending xattrs and a metadata heal needs to be
  229     performed, it can be possible that we end up with xattrs inadvertendly
  230     deleted from all bricks, as explained in the  BZ.
  231     
  232     Fix:
  233     After picking one among the sources as the good copy, mark pending xattrs on
  234     all sources to blame the sinks. Now even if this metadata heal fails midway,
  235     a subsequent heal will still choose one of the valid sources that it
  236     picked previously.
  237     
  238     Updates: #1067
  239     Change-Id: If1b050b70b0ad911e162c04db4d89b263e2b8d7b
  240     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
  241     (cherry picked from commit 2d5ba449e9200b16184b1e7fc84cabd015f1f779)
  242 
  243 commit 5d5bcea32953680ab19afbeb620fcc0316d3f9cb
  244 Author: Xavi Hernandez <xhernandez@redhat.com>
  245 Date:   Sun Mar 1 19:49:04 2020 +0100
  246 
  247     cluster/afr: fix race when bricks come up
  248     
  249     The was a problem when self-heal was sending lookups at the same time
  250     that one of the bricks was coming up. In this case there was a chance
  251     that the number of 'up' bricks changes in the middle of sending the
  252     requests to subvolumes which caused a discrepancy in the expected
  253     number of replies and the actual number of sent requests.
  254     
  255     This discrepancy caused that AFR continued executing requests before
  256     all requests were complete. Eventually, the frame of the pending
  257     request was destroyed when the operation terminated, causing a use-
  258     after-free issue when the answer was finally received.
  259     
  260     In theory the same thing could happen in the reverse way, i.e. AFR
  261     tries to wait for more replies than sent requests, causing a hang.
  262     
  263     Backport of:
  264     > Change-Id: I7ed6108554ca379d532efb1a29b2de8085410b70
  265     > Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
  266     > Fixes: bz#1808875
  267     
  268     Change-Id: I7ed6108554ca379d532efb1a29b2de8085410b70
  269     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
  270     Fixes: bz#1809439
  271 
  272 commit 091727094e29edfe61c7fb4a5dfd51bf2eaa7b8b
  273 Author: Xavi Hernandez <xhernandez@redhat.com>
  274 Date:   Sun Mar 8 18:36:45 2020 +0100
  275 
  276     open-behind: fix missing fd reference
  277     
  278     Open behind was not keeping any reference on fd's pending to be
  279     opened. This makes it possible that a concurrent close and en entry
  280     fop (unlink, rename, ...) caused destruction of the fd while it
  281     was still being used.
  282     
  283     Change-Id: Ie9e992902cf2cd7be4af1f8b4e57af9bd6afd8e9
  284     Fixes: #1028
  285     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
  286 
  287 commit 7f4b42e7ae9c75fe405b7682299222bbd88f524f
  288 Author: Soumya Koduri <skoduri@redhat.com>
  289 Date:   Mon Apr 6 12:36:44 2020 +0530
  290 
  291     gfapi: Suspend synctasks instead of blocking them
  292     
  293     There are certain conditions which blocks the current
  294     execution thread (like waiting on mutex lock or condition
  295     variable or I/O response). In such cases, if it is a
  296     synctask thread, we should suspend the task instead
  297     of blocking it (like done in SYNCOP using synctask_yield)
  298     
  299     This is to avoid deadlock like the one mentioned below -
  300     
  301     1) synctaskA sets fs->migration_in_progress to 1 and
  302        does I/O (LOOKUP)
  303     2) Other synctask threads wait for fs->migration_in_progress
  304       to be reset to 0 by synctaskA and hence blocked
  305     3) but synctaskA cannot resume as all synctask threads are blocked
  306        on (2).
  307     
  308     Note: this same approach is already used by few other components
  309     like syncbarrier etc.
  310     
  311     Change-Id: If90f870d663bb242c702a5b86ac52eeda67c6f0d
  312     Fixes: #1146
  313     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
  314     (cherry picked from commit 55914f968d907ed747774da15285b42653afda61)
  315 
  316 commit 631711ba8f2d110279999a9f7fa75eb0c2dc8d1d
  317 Author: Vishal Pandey <vpandey@redhat.com>
  318 Date:   Tue Nov 19 11:39:22 2019 +0530
  319 
  320     glusterd: Brick process fails to come up with brickmux on
  321     
  322     Issue:
  323     1- In a cluster of 3 Nodes N1, N2, N3. Create 3 volumes vol1,
  324     vol2, vol3 with 3 bricks (one from each node)
  325     2- Set cluster.brick-multiplex on
  326     3- Start all 3 volumes
  327     4- Check if all bricks on a node are running on same port
  328     5- Kill N1
  329     6- Set performance.readdir-ahead for volumes vol1, vol2, vol3
  330     7- Bring N1 up and check volume status
  331     8- All bricks processes not running on N1.
  332     
  333     Root Cause -
  334     Since, There is a diff in volfile versions in N1 as compared
  335     to N2 and N3 therefore glusterd_import_friend_volume() is called.
  336     glusterd_import_friend_volume() copies the new_volinfo and deletes
  337     old_volinfo and then calls glusterd_start_bricks().
  338     glusterd_start_bricks() looks for the volfiles and sends an rpc
  339     request to glusterfs_handle_attach(). Now, since the volinfo
  340     has been deleted by glusterd_delete_stale_volume()
  341     from priv->volumes list before glusterd_start_bricks() and
  342     glusterd_create_volfiles_and_notify_services() and
  343     glusterd_list_add_order is called after glusterd_start_bricks(),
  344     therefore the attach RPC req gets an empty volfile path
  345     and that causes the brick to crash.
  346     
  347     Fix- Call glusterd_list_add_order() and
  348     glusterd_create_volfiles_and_notify_services before
  349     glusterd_start_bricks() cal is made in glusterd_import_friend_volume
  350     
  351     > Change-Id: Idfe0e8710f7eb77ca3ddfa1cabeb45b2987f41aa
  352     > Bug: bz#1773856
  353     > Signed-off-by: Mohammed Rafi KC <rkavunga@redhat.com>
  354     
  355     Change-Id: Idfe0e8710f7eb77ca3ddfa1cabeb45b2987f41aa
  356     Fixes: bz#1808966
  357     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
  358 
  359 commit 1b43afb1fd13ee038027f949d754be93fc60759c
  360 Author: Hari Gowtham <hgowtham@redhat.com>
  361 Date:   Mon Mar 2 12:15:50 2020 +0530
  362 
  363     Adding release notes for release-6.8
  364     
  365     Change-Id: I7cb7d0f863c4ef32ab8d4e0db43e2f8135a54e4f
  366     fixes: bz#1806846
  367     Signed-off-by: Hari Gowtham <hgowtham@redhat.com>
  368 
  369 commit b9940cb47dc91e6a7711f2626f5877e00177a0c2
  370 Author: Xavi Hernandez <xhernandez@redhat.com>
  371 Date:   Tue Jan 14 13:28:47 2020 +0100
  372 
  373     events: fix IPv6 memory corruption
  374     
  375     When an event was generated and the target host was resolved to an IPv6
  376     address, there was a memory overflow when that address was copied to a
  377     fixed IPv4 structure (IPv6 addresses are longer than IPv4 ones).
  378     
  379     This fix correctly handles IPv4 and IPv6 addresses returned by
  380     getaddrinfo()
  381     
  382     Backport of:
  383     > Change-Id: I5864a0c6e6f1b405bd85988529570140cf23b250
  384     > Fixes: bz#1790870
  385     > Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
  386     
  387     Change-Id: I5864a0c6e6f1b405bd85988529570140cf23b250
  388     Fixes: bz#1792857
  389     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
  390 
  391 commit 0bfb22c7d7e6a41c920cb3556c6a55474c66b6cf
  392 Author: Aravinda VK <avishwan@redhat.com>
  393 Date:   Mon Sep 16 10:04:26 2019 +0530
  394 
  395     eventsapi: Set IPv4/IPv6 family based on input IP
  396     
  397     server.sin_family was set to AF_INET while creating socket connection,
  398     this was failing if the input address is IPv6(`::1`).
  399     
  400     With this patch, sin_family is set by reading the ai_family of
  401     `getaddrinfo` result.
  402     
  403     Backport of:
  404     > Fixes: bz#1752330
  405     > Change-Id: I499f957b432842fa989c698f6e5b25b7016084eb
  406     > Signed-off-by: Aravinda VK <avishwan@redhat.com>
  407     
  408     Fixes: bz#1807786
  409     Change-Id: I499f957b432842fa989c698f6e5b25b7016084eb
  410     Signed-off-by: Aravinda VK <avishwan@redhat.com>
  411 
  412 commit dabdb62dc5fe0b343cceb3a95140ca6c554d6181
  413 Author: Rinku Kothiya <rkothiya@redhat.com>
  414 Date:   Fri Jun 14 07:53:06 2019 +0000
  415 
  416     core: replace inet_addr with inet_pton
  417     
  418     Fixes warning raised by RPMDiff on the use of inet_addr, which may
  419     impact Ipv6 support
  420     
  421     Backport of:
  422     > fixes: bz#1721385
  423     > Change-Id: Id2d9afa1747efa64bc79d90dd2566bff54deedeb
  424     > Signed-off-by: Rinku Kothiya <rkothiya@redhat.com>
  425     
  426     Fixes: bz#1807793
  427     Change-Id: Id2d9afa1747efa64bc79d90dd2566bff54deedeb
  428     Signed-off-by: Rinku Kothiya <rkothiya@redhat.com>
  429 
  430 commit 8b0a15e273e83ceaa5bd431d6c524908be4b2bd5
  431 Author: Xavi Hernandez <xhernandez@redhat.com>
  432 Date:   Fri Feb 7 10:19:57 2020 +0100
  433 
  434     core: fix memory pool management races
  435     
  436     Objects allocated from a per-thread memory pool keep a reference to it
  437     to be able to return the object to the pool when not used anymore. The
  438     object holding this reference can have a long life cycle that could
  439     survive a glfs_fini() call.
  440     
  441     This means that it's unsafe to destroy memory pools from glfs_fini().
  442     
  443     Another side effect of destroying memory pools from glfs_fini() is that
  444     the TLS variable that points to one of those pools cannot be reset for
  445     all alive threads.  This means that any attempt to allocate memory from
  446     those threads will access already free'd memory, which is very
  447     dangerous.
  448     
  449     To fix these issues, mem_pools_fini() doesn't destroy pool lists
  450     anymore. They should be destroyed when the library is unloaded or the
  451     process is terminated, but this cannot be done right now because
  452     gluster doesn't stop other threads before calling exit(), which could
  453     cause some races.
  454     
  455     This patch is the backport of 2 master patches:
  456     > Change-Id: Ib189a5510ab6bdac78983c6c65a022e9634b0965
  457     > Fixes: bz#1801684
  458     > Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
  459     >
  460     > Change-Id: Id7cfb4407fcf208e28f03a7c3cdc3ef9c1f3bf9b
  461     > Fixes: bz#1801684
  462     > Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
  463     
  464     Change-Id: Id7cfb4407fcf208e28f03a7c3cdc3ef9c1f3bf9b
  465     Fixes: bz#1805671
  466     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
  467 
  468 commit bd37f5350ac9b85c18353069c36a6ae4e489d100
  469 Author: Ashish Pandey <aspandey@redhat.com>
  470 Date:   Thu Jul 11 16:52:49 2019 +0530
  471 
  472     cluster/ec: Change handling of heal failure to avoid crash
  473     
  474     Problem:
  475     ec_getxattr_heal_cbk was called with NULL as second argument
  476     in case heal was failing.
  477     This function was dereferencing "cookie" argument which caused crash.
  478     
  479     Solution:
  480     Cookie is changed to carry the value that was supposed to be
  481     stored in fop->data, so even in the case when fop is NULL in error
  482     case, there won't be any NULL dereference.
  483     
  484     Thanks to Xavi for the suggestion about the fix.
  485     
  486     Change-Id: I0798000d5cadb17c3c2fbfa1baf77033ffc2bb8c
  487     fixes: bz#1806836
  488 
  489 commit 559fd060c59edec69ba66be7e0a447c8e0408d51
  490 Author: Ravishankar N <ravishankar@redhat.com>
  491 Date:   Tue Feb 11 14:34:48 2020 +0530
  492 
  493     afr: prevent spurious entry heals leading to gfid split-brain
  494     
  495     Problem:
  496     In a hyperconverged setup with granular-entry-heal enabled, if a file is
  497     recreated while one of the bricks is down, and an index heal is triggered
  498     (with the brick still down), entry-self heal was doing a spurious heal
  499     with just the 2 good bricks. It was doing a post-op leading to removal
  500     of the filename from .glusterfs/indices/entry-changes as well as
  501     erroneous setting of afr xattrs on the parent. When the brick came up,
  502     the xattrs were cleared, resulting in the renamed file not getting
  503     healed and leading to gfid split-brain and EIO on the mount.
  504     
  505     Fix:
  506     Proceed with entry heal only when shd can connect to all bricks of the replica,
  507     just like in data and metadata heal.
  508     
  509     fixes: bz#1804594
  510     Change-Id: I916ae26ad1fabf259bc6362da52d433b7223b17e
  511     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
  512     (cherry picked from commit 06453d77d056fbaa393a137ca277a20e38d2f67e)
  513 
  514 commit 922c41d2d001df4d447280620bec6a2c4cf63357
  515 Author: Mohit Agrawal <moagrawal@redhat.com>
  516 Date:   Thu Feb 20 13:00:06 2020 +0530
  517 
  518     lock: check null value of dict to avoid log flooding
  519     
  520     > updates: bz#1712322
  521     > Change-Id: I120a1d23506f9ebcf88c7ea2f2eff4978a61cf4a
  522     > Signed-off-by: Susant Palai <spalai@redhat.com>
  523     > (cherry picked from commit 2bb1807879493cb77ec9b5088485d88f13b84828)
  524     
  525     updates: bz#1797985
  526     Change-Id: I120a1d23506f9ebcf88c7ea2f2eff4978a61cf4a
  527     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
  528 
  529 commit 4989d01be1b3058fa4a32d8bb36e8c9150dc6a8b
  530 Author: Ashish Pandey <aspandey@redhat.com>
  531 Date:   Fri Jan 3 16:54:33 2020 +0530
  532 
  533     cluster/thin-arbiter: Wait for TA connection before ta-file lookup
  534     
  535     Problem:
  536     When we mount a ta volume, as soon as 2 data bricks are connected
  537     we consider that the mount is done and then send a lookup/create on
  538     ta file on ta node. However, this connection with ta node might not
  539     have been completed.
  540     Due to this delay, ta replica id file will not be created and we
  541     will see ENOTCONN error in log file if we do lookup.
  542     
  543     Solution:
  544     As we know that this ta node could have a higher latency, we should
  545     wait for reasonable time for connection to happen before sending
  546     lookup/create on replica id file.
  547     
  548     fixes: bz#1804546
  549     Change-Id: I36f90865afe617e4e84cee57fec832a16f5dd6cc
  550     (cherry picked from commit a7fa54ddea3fe429f143b37e4de06a93b49d776a)
  551 
  552 commit dc810f3acbb268b6f5478ed9df6c7a69a6569567
  553 Author: Shwetha K Acharya <sacharya@redhat.com>
  554 Date:   Tue Jan 14 10:51:06 2020 +0530
  555 
  556     tools/glusterfind: Remove an extra argument
  557     
  558     Backport of:
  559        > Upstream Patch: https://review.gluster.org/#/c/glusterfs/+/24011/
  560        >fixes: bz#1790748
  561        >Change-Id: I1cb12c975142794139456d0f8e99fbdbb03c53a1
  562        >Signed-off-by: Shwetha K Acharya <sacharya@redhat.com>
  563        >(cherry picked from commit d73872e764214f8071c8915536a75bdac1e5e685)
  564     
  565     fixes: bz#1790850
  566     Change-Id: I1cb12c975142794139456d0f8e99fbdbb03c53a1
  567     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
  568 
  569 commit b7c10c26930541736b829a805a213caa0df360cd
  570 Author: Pranith Kumar K <pkarampu@redhat.com>
  571 Date:   Thu Oct 24 12:24:35 2019 +0530
  572 
  573     gf-event: Handle unix volfile-servers
  574     
  575     Problem:
  576     glfsheal program uses unix-socket-based volfile server.
  577     volfile server will be the path to socket in this case.
  578     gf_event expects this to be hostname in all cases. So getaddrinfo
  579     will fail on the unix-socket path, events won't be sent in this case.
  580     
  581     Fix:
  582     In case of unix sockets, default to localhost
  583     
  584     fixes: bz#1793096
  585     Change-Id: I60d27608792c29d83fb82beb5fde5ef4754bece8
  586     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
  587 
  588 commit 611961144704672c6a670fc7ad91a6e8000b2c0f
  589 Author: Kinglong Mee <kinglongmee@gmail.com>
  590 Date:   Thu Jul 11 18:57:13 2019 +0800
  591 
  592     cluster/ec: skip updating ctx->loc again when ec_fix_open/opendir
  593     
  594     The ec_manager_open/opendir memsets ctx->loc which causes
  595     memory/inode leak, and ec_fheal uses ctx->loc out of fd->lock
  596     that loc_copy may copy bad data when memset it.
  597     
  598     This patch skips updating ctx->loc when it is initilizaed.
  599     With it, ctx->loc is filled once, and never updated.
  600     
  601     Change-Id: I3bf5ffce4caf4c1c667f7acaa14b451d37a3550a
  602     fixes: bz#1806838
  603     Signed-off-by: Kinglong Mee <mijinlong@horiscale.com>
  604 
  605 commit 96d326cc917baf6ac44f4deacef6d251ebcdf0ea
  606 Author: karthik-us <ksubrahm@redhat.com>
  607 Date:   Thu Jun 6 10:59:42 2019 +0530
  608 
  609     Cluster/afr: Don't treat all bricks having metadata pending as split-brain
  610     
  611     Problem:
  612     We currently don't have a roll-back/undoing of post-ops if quorum is not met.
  613     Though the FOP is still unwound with failure, the xattrs remain on the disk.
  614     Due to these partial post-ops and partial heals (healing only when 2 bricks
  615     are up), we can end up in metadata split-brain purely from the afr xattrs
  616     point of view i.e each brick is blamed by atleast one of the others for
  617     metadata. These scenarios are hit when there is frequent connect/disconnect
  618     of the client/shd to the bricks.
  619     
  620     Fix:
  621     Pick a source based on the xattr values. If 2 bricks blame one, the blamed
  622     one must be treated as sink. If there is no majority, all are sources. Once
  623     we pick a source, self-heal will then do the heal instead of erroring out
  624     due to split-brain.
  625     This patch also adds restriction of all the bricks to be up to perform
  626     metadata heal to avoid any metadata loss.
  627     
  628     Removed the test case tests/bugs/replicate/bug-1468279-source-not-blaming-sinks.t
  629     as it was doing metadata heal even when only 2 of 3 bricks were up.
  630     
  631     Change-Id: I07a9d62f84ceda329dcab1f02a33aeed258dcb09
  632     fixes: bz#1805097
  633     Signed-off-by: karthik-us <ksubrahm@redhat.com>
  634 
  635 commit cf68b3f73de6b531c15ea103d884e89aeee706b4
  636 Author: Mohit Agrawal <moagrawal@redhat.com>
  637 Date:   Tue Jan 21 21:09:56 2020 +0530
  638 
  639     server: Mount fails after reboot 1/3 gluster nodes
  640     
  641     Problem: At the time of coming up one server node(1x3) after reboot
  642     client is unmounted.The client is unmounted because a client
  643     is getting AUTH_FAILED event and client call fini for the graph.The
  644     client is getting AUTH_FAILED because brick is not attached with a
  645     graph at that moment
  646     
  647     Solution: To avoid the unmounting the client graph throw ENOENT error
  648               from server in case if brick is not attached with server at
  649               the time of authenticate clients.
  650     
  651     > Credits: Xavi Hernandez <xhernandez@redhat.com>
  652     > Change-Id: Ie6fbd73cbcf23a35d8db8841b3b6036e87682f5e
  653     > Fixes: bz#1793852
  654     > Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
  655     > (cherry picked from commit > f6421dff22a6ddaf14134f6894deae219948c89d)
  656     
  657     Change-Id: Ie6fbd73cbcf23a35d8db8841b3b6036e87682f5e
  658     Fixes: bz#1794020
  659     Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
  660 
  661 commit 9bde9ac78f31214a8c4b18bccc54abd9a809cdc9
  662 Author: HuangShujun <549702281@qq.com>
  663 Date:   Thu Dec 5 10:07:10 2019 +0200
  664 
  665     To fix readdir-ahead memory leak
  666     
  667     Glusterfs client process has memory leak if create serveral files under one folder, and delete the folder.
  668     According to statedump, the ref counts of readdir-ahead is bigger than zero in the inode table. Readdir-ahead get parent inode by inode_parent in rda_mark_inode_dirty when each rda_writev_cbk,the inode ref count of parent folder will be increased in inode_parent, but readdir-ahead do not unref it later.
  669     The correction is unref the parent inode at the end of rda_mark_inode_dirty
  670     
  671     Backport of:
  672     > Change-Id: Iee68ab1089cbc2fbc4185b93720fb1f66ee89524
  673     > Fixes: bz#1779055
  674     > Signed-off-by: HuangShujun <549702281@qq.com>
  675     
  676     Change-Id: Iee68ab1089cbc2fbc4185b93720fb1f66ee89524
  677     (cherry picked from commit 99044a5cedcff9a9eec40a07ecb32bd66271cd02)
  678     Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
  679     Fixes: bz#1789337
  680 
  681 commit b41f24c341cd508e5137618ffbba6a600c497f38
  682 Author: Sunny Kumar <sunkumar@redhat.com>
  683 Date:   Fri Jan 10 14:28:35 2020 +0000
  684 
  685     glusterfind: python3 compatibility
  686     
  687     Problem:
  688     While we delete gluster volume the hook script 'S57glusterfind-delete-post.py'
  689     is failed to execute and error message can be observed in glusterd log.
  690     
  691     Traceback:
  692       File "/var/lib/glusterd/hooks/1/delete/post/S57glusterfind-delete-post", line 69, in <module>
  693         main()
  694       File "/var/lib/glusterd/hooks/1/delete/post/S57glusterfind-delete-post", line 39, in main
  695         glusterfind_dir = os.path.join(get_glusterd_workdir(), "glusterfind")
  696       File "/usr/lib64/python3.7/posixpath.py", line 94, in join
  697         genericpath._check_arg_types('join', a, *p)
  698       File "/usr/lib64/python3.7/genericpath.py", line 155, in _check_arg_types
  699         raise TypeError("Can't mix strings and bytes in path components") from None
  700     TypeError: Can't mix strings and bytes in path components
  701     
  702     Solution:
  703     
  704     Added the 'universal_newlines' flag to Popen to support backward compatibility.
  705     
  706     Backport of:
  707     
  708     >   Change-Id: Ie5655b11b55535c5ad2338108d0448e6fdaacf4f
  709     >   Fixes: bz#1789478
  710     >   Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
  711     >   (cherry picked from commit 33c3cbe71b67f523538b04334f1ef962953281ed)
  712     
  713     Change-Id: Ie5655b11b55535c5ad2338108d0448e6fdaacf4f
  714     Fixes: bz#1790449
  715     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
  716 
  717 commit 912b92d3b7c6695e0e1a053bb56b9013aac06b81
  718 Author: Milind Changire <mchangir@redhat.com>
  719 Date:   Thu Jan 5 19:53:19 2017 +0530
  720 
  721     tools/glusterfind: handle offline bricks
  722     
  723     Problem:
  724     glusterfind is unable to copy remote output file to local node when a
  725     remove-brick is in progress on the remote node. After copying remote
  726     files, in the --full output listing path, a "sort -u" command is run on
  727     the collected files. However, "sort" exits with an error code if it
  728     finds any file missing.
  729     
  730     Solution:
  731     Maintain a map of (pid, output file) when the node commands are started
  732     and remove the mapping for the pid for which the command returns an
  733     error. Use the list of files present in the map for the "sort" command.
  734     
  735     Backport of:
  736     >    Change-Id: Ie6e019037379f4cb163f24b1c65eb382efc2fb3b
  737     >    fixes: bz#1410439
  738     >    Signed-off-by: Milind Changire <mchangir@redhat.com>
  739     >    Signed-off-by: Shwetha K Acharya <sacharya@redhat.com>
  740     >    (cherry picked from commit 42c1605f42b89520d4d05806d7074e9e93b63640)
  741     
  742     Change-Id: Ie6e019037379f4cb163f24b1c65eb382efc2fb3b
  743     Fixes: bz#1790445
  744     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
  745 
  746 commit 3b2e7ce026f72b939f9300e675e73b4597743e00
  747 Author: Sunny Kumar <sunkumar@redhat.com>
  748 Date:   Fri Dec 27 13:26:04 2019 +0000
  749 
  750     extras: enable log rotation for USS logs
  751     
  752     Added logrotate support for user serviceable snapshot's logs.
  753     
  754     Backport of:
  755         >Change-Id: Ic920eaa8ab5e44daf5937a027c6913d7bb26d517
  756         >Fixes: bz#1786722
  757         >Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
  758     
  759     
  760     Change-Id: Ic920eaa8ab5e44daf5937a027c6913d7bb26d517
  761     Fixes: bz#1786754
  762     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
  763 
  764 commit ff1eae7f882b8f12380e0c35a9a73b672583cd4c
  765 Author: N Balachandran <nbalacha@redhat.com>
  766 Date:   Tue Oct 1 17:37:15 2019 +0530
  767 
  768     cluster/dht: Correct fd processing loop
  769     
  770     The fd processing loops in the
  771     dht_migration_complete_check_task and the
  772     dht_rebalance_inprogress_task functions were unsafe
  773     and could cause an open to be sent on an already freed
  774     fd. This has been fixed.
  775     
  776     > Change-Id: I0a3c7d2fba314089e03dfd704f9dceb134749540
  777     > Fixes: bz#1757399
  778     > Signed-off-by: N Balachandran <nbalacha@redhat.com>
  779     > (cherry picked from commit 9b15867070b0cc241ab165886292ecffc3bc0aed)
  780     
  781     Change-Id: I0a3c7d2fba314089e03dfd704f9dceb134749540
  782     Fixes: bz#1786983
  783     Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
  784 
  785 commit 366d0c6c12611f29bc6e9a3666ebf1f1e048b8a6
  786 Author: hari gowtham <hgowtham@redhat.com>
  787 Date:   Thu Dec 26 20:27:49 2019 +0530
  788 
  789     doc: Added release 6.7 notes
  790     
  791     Fixes: bz#1780540
  792     
  793     Change-Id: I02ef8c24bc19c321ab2db1d13224ea9e89325e3a
  794     Signed-off-by: hari gowtham <hgowtham@redhat.com>
  795 
  796 commit 3d3f74fdf195f9cec3c9c79ae8f2fa50720fd09f
  797 Author: Mohit Agrawal <moagrawal@redhat.com>
  798 Date:   Thu Oct 3 14:06:52 2019 +0530
  799 
  800     rpc: Synchronize slot allocation code
  801     
  802     Problem: Current slot allocation/deallocation code path is not
  803              synchronized.There are scenario when due to race condition
  804              in slot allocation/deallocation code path brick is crashed.
  805     
  806     Solution: Synchronize slot allocation/deallocation code path to
  807               avoid the issue
  808     
  809     > Change-Id: I4fb659a75234218ffa0e5e0bf9308f669f75fc25
  810     > Fixes: bz#1763036
  811     > Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
  812     > (cherry picked from commit faf5ac13c4ee00a05e9451bf8da3be2a9043bbf2)
  813     
  814     Change-Id: I4fb659a75234218ffa0e5e0bf9308f669f75fc25
  815     Fixes: bz#1778182
  816     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
  817 
  818 commit 308991a977a6e3d5725de5321710d6dcf4983bb3
  819 Author: Kotresh HR <khiremat@redhat.com>
  820 Date:   Tue Nov 12 21:53:20 2019 +0530
  821 
  822     geo-rep: Fix py2/py3 compatibility in repce
  823     
  824     Geo-rep fails to start on python2 only machine like
  825     centos6. It fails with "ImportError no module named _io".
  826     This patch fixes the same.
  827     
  828     Backport of:
  829      > Patch: https://review.gluster.org//23702/
  830      > BUG: 1771577
  831      > Change-Id: I8228458a853a230546f9faf29a0e9e0f23b3efec
  832      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
  833     (cherry picked from commit 9595ecca3de49fdf37d30b151f5c3e071e0a80d0)
  834     
  835     fixes: bz#1771842
  836     Change-Id: I8228458a853a230546f9faf29a0e9e0f23b3efec
  837     Signed-off-by: Kotresh HR <khiremat@redhat.com>
  838 
  839 commit 0ff62bab64b184cba25655f553fee1649826345b
  840 Author: Sunny Kumar <sunkumar@redhat.com>
  841 Date:   Mon Dec 16 12:52:41 2019 +0000
  842 
  843     test: fix non-root test case for geo-rep
  844     
  845     Problem:
  846     On a freshly installed system non-root geo-rep test case gets blocked.
  847     
  848     Solution:
  849     
  850     On a freshly installed system, the remote key need to be accepted automatically by ssh-copy-id.
  851     
  852     Credits: M. Scherer <mscherer@redhat.com>
  853     
  854     Backport of:
  855     
  856     >    Change-Id: I5077f99a6681660f7e3e84c25ef216f521b7c29c
  857     >    Fixes: bz#1779742
  858     >    Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
  859     
  860     Change-Id: I5077f99a6681660f7e3e84c25ef216f521b7c29c
  861     Fixes: bz#1784796
  862     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
  863 
  864 commit 78b63e0feed1937cae66156ea455a3977847a2fd
  865 Author: Xavi Hernandez <xhernandez@redhat.com>
  866 Date:   Wed Dec 11 18:21:14 2019 +0100
  867 
  868     socket: fix error handling
  869     
  870     When __socket_proto_state_machine() detected a problem in the size of
  871     the request or it couldn't allocate an iobuf of the requested size, it
  872     returned -ENOMEM (-12). However the caller was expecting only -1 in
  873     case of error. For this reason the error passes undetected initially,
  874     adding back the socket to the epoll object. On further processing,
  875     however, the error is finally detected and the connection terminated.
  876     Meanwhile, another thread could receive a poll_in event from the same
  877     connection, which could cause races with the connection destruction.
  878     When this happened, the process crashed.
  879     
  880     To fix this, all error detection conditions have been hardened to be
  881     more strict on what is valid and what not. Also, we don't return
  882     -ENOMEM anymore. We always return -1 in case of error.
  883     
  884     An additional change has been done to prevent destruction of the
  885     transport object while it may still be needed.
  886     
  887     Backport of:
  888     > Change-Id: I6e59cd81cbf670f7adfdde942625d4e6c3fbc82d
  889     > Fixes: bz#1782495
  890     > Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
  891     
  892     Change-Id: I6e59cd81cbf670f7adfdde942625d4e6c3fbc82d
  893     Fixes: bz#1749625
  894     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
  895 
  896 commit c95bfb0fddc609d39c2e2a44fe7dce1d95ccf506
  897 Author: Mohit Agrawal <moagrawal@redhat.com>
  898 Date:   Tue Oct 22 18:52:25 2019 +0530
  899 
  900     extras: Cgroup(CPU/Mem) restriction are not working on gluster process
  901     
  902     Problem: After Configure the Cgroup(CPU/MEM) limit to a gluster processes
  903              resource(CPU/MEM) limits are not applicable to the gluster
  904              processes.Cgroup limits are not applicable because all threads are
  905              not moved into a newly created cgroup to apply restriction.
  906     
  907     Solution: To move a gluster thread to newly created cgroup change the
  908               condition in script
  909     
  910     > Change-Id: I8ad81c69200e4ec43a74f6052481551cf835354c
  911     > Fixes: bz#1764208
  912     > Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
  913     > (cherry picked from commit f5811979935ce607391825ac6913a95f588818e3)
  914     > (Reviewed on upstream link https://review.gluster.org/#/c/glusterfs/+/23599/)
  915     
  916     Change-Id: I8ad81c69200e4ec43a74f6052481551cf835354c
  917     Fixes: bz#1766425
  918     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
  919 
  920 commit f28277fea8d5fa02b166d3e6e3856de033115704
  921 Author: Sunny Kumar <sunkumar@redhat.com>
  922 Date:   Fri Apr 12 19:55:10 2019 +0530
  923 
  924     libgfchangelog : use find_library to locate shared library
  925     
  926     Issue:
  927     
  928     libgfchangelog.so: cannot open shared object file
  929     
  930     Due to hardcoded shared library name runtime loader looks for particular version of
  931     a shared library.
  932     
  933     Solution:
  934     
  935     Using find_library to locate shared library at runtime solves this issue.
  936     
  937     Traceback (most recent call last):
  938       File "/usr/libexec/glusterfs/python/syncdaemon/gsyncd.py", line 323, in main
  939         func(args)
  940       File "/usr/libexec/glusterfs/python/syncdaemon/subcmds.py", line 82, in subcmd_worker
  941         local.service_loop(remote)
  942       File "/usr/libexec/glusterfs/python/syncdaemon/resource.py", line 1261, in service_loop
  943         changelog_agent.init()
  944       File "/usr/libexec/glusterfs/python/syncdaemon/repce.py", line 233, in __call__
  945         return self.ins(self.meth, *a)
  946       File "/usr/libexec/glusterfs/python/syncdaemon/repce.py", line 215, in __call__
  947         raise res
  948     OSError: libgfchangelog.so: cannot open shared object file: No such file or directory
  949     
  950     Backport of:
  951      > Patch: https://review.gluster.org/22557
  952      > Change-Id: I3dd013d701ed1cd99ba7ef20d1898f343e1db8f5
  953      > BUG: 1699394
  954      > Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
  955     (cherry picked from commit f316c8b797283818bd800569771870a4b9bf1310)
  956     
  957     Change-Id: I3dd013d701ed1cd99ba7ef20d1898f343e1db8f5
  958     fixes: bz#1770100
  959     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
  960 
  961 commit 6b23d7bb7c8250b0e95b64705f5f7ca7c00819a9
  962 Author: Liguang Li <liguang.lee6@gmail.com>
  963 Date:   Fri Jun 21 12:18:58 2019 +0800
  964 
  965     Detach iot_worker to release its resources
  966     
  967     When iot_worker terminates, its resources have not been reaped, which
  968     will consumes lots of memory.
  969     
  970     Detach iot_worker to automically release its resources back to the
  971     system.
  972     
  973     Change-Id: I71fabb2940e76ad54dc56b4c41aeeead2644b8bb
  974     fixes: bz#1768726
  975     Signed-off-by: Liguang Li <liguang.lee6@gmail.com>
  976     Signed-off-by: N Balachandran <nbalacha@redhat.com>
  977 
  978 commit b100f7f4dca1971cfdbfb88e0b922bb5885cc7d6
  979 Author: Pranith Kumar K <pkarampu@redhat.com>
  980 Date:   Fri Aug 2 12:05:09 2019 +0530
  981 
  982     cluster/ec: Update lock->good_mask on parent fop failure
  983     
  984     When discard/truncate performs write fop, it should do so
  985     after updating lock->good_mask to make sure readv happens
  986     on the correct mask
  987     
  988     fixes: bz#1739449
  989     Change-Id: Idfef0bbcca8860d53707094722e6ba3f81c583b7
  990     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
  991 
  992 commit 46e83e48ad37bf5c2a54d3bb5aa6e09d3d0382ff
  993 Author: Pranith Kumar K <pkarampu@redhat.com>
  994 Date:   Mon Jul 29 14:08:37 2019 +0530
  995 
  996     cluster/ec: Fix reopen flags to avoid misbehavior
  997     
  998     Problem:
  999     when a file needs to be re-opened O_APPEND and O_EXCL
 1000     flags are not filtered in EC.
 1001     
 1002     - O_APPEND should be filtered because EC doesn't send O_APPEND below EC for
 1003     open to make sure writes happen on the individual fragments instead of at the
 1004     end of the file.
 1005     
 1006     - O_EXCL should be filtered because shd could have created the file so even
 1007     when file exists open should succeed
 1008     
 1009     - O_CREAT should be filtered because open happens with gfid as parameter. So
 1010     open fop will create just the gfid which will lead to problems.
 1011     
 1012     Fix:
 1013     Filter out these two flags in reopen.
 1014     
 1015     Change-Id: Ia280470fcb5188a09caa07bf665a2a94bce23bc4
 1016     Fixes: bz#1739450
 1017     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
 1018 
 1019 commit eb1e0b17d292c0f7ceda5256da186d96a364b7f6
 1020 Author: Pranith Kumar K <pkarampu@redhat.com>
 1021 Date:   Thu Jul 18 11:25:31 2019 +0530
 1022 
 1023     cluster/ec: Always read from good-mask
 1024     
 1025     There are cases where fop->mask may have fop->healing added
 1026     and readv shouldn't be wound on fop->healing. To avoid this
 1027     always wind readv to lock->good_mask
 1028     
 1029     updates: bz#1739449
 1030     Change-Id: I2226ef0229daf5ff315d51e868b980ee48060b87
 1031     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
 1032 
 1033 commit be7efe61efeb1552c30cb96ece6c11446a913484
 1034 Author: Kinglong Mee <kinglongmee@gmail.com>
 1035 Date:   Mon Jul 8 21:13:28 2019 +0800
 1036 
 1037     cluster/ec: inherit healing from lock when it has info
 1038     
 1039     If lock has info, fop should inherit healing mask from it.
 1040     Otherwise, fop cannot inherit right healing when changed_flags is zero.
 1041     
 1042     Change-Id: Ife80c9169d2c555024347a20300b0583f7e8a87f
 1043     updates: bz#1739449
 1044     Signed-off-by: Kinglong Mee <mijinlong@horiscale.com>
 1045 
 1046 commit eaabd1ee6be50b8f40b67b0e1ff28dd9fc802546
 1047 Author: Pranith Kumar K <pkarampu@redhat.com>
 1048 Date:   Thu Jun 20 17:05:49 2019 +0530
 1049 
 1050     cluster/ec: Prevent double pre-op xattrops
 1051     
 1052     Problem:
 1053     Race:
 1054     Thread-1                                    Thread-2
 1055     1) Does ec_get_size_version() to perform
 1056     pre-op fxattrop as part of write-1
 1057                                                2) Calls ec_set_dirty_flag() in
 1058                                                   ec_get_size_version() for write-2.
 1059     					      This sets dirty[] to 1
 1060     3) Completes executing
 1061     ec_prepare_update_cbk leading to
 1062     ctx->dirty[] = '1'
 1063     					   4) Takes LOCK(inode->lock) to check if there are
 1064     					      any flags and sets dirty-flag because
 1065     				              lock->waiting_flag is 0 now. This leads to
 1066     					      fxattrop to increment on-disk dirty[] to '2'
 1067     
 1068     At the end of the writes the file will be marked for heal even when it doesn't need heal.
 1069     
 1070     Fix:
 1071     Perform ec_set_dirty_flag() and other checks inside LOCK() to prevent dirty[] to be marked
 1072     as '1' in step 2) above
 1073     
 1074     Updates bz#1739446
 1075     Change-Id: Icac2ab39c0b1e7e154387800fbededc561612865
 1076     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
 1077 
 1078 commit 84487199afeb486c5836f8f4396e90884e501311
 1079 Author: hari gowtham <hgowtham@redhat.com>
 1080 Date:   Fri Oct 25 13:57:40 2019 +0530
 1081 
 1082     doc: Added release 6.6 notes
 1083     
 1084     Fixes: bz#1762237
 1085     
 1086     Change-Id: If339505ca0436947b814d9b0bc0b78f92d5d3317
 1087     Signed-off-by: hari gowtham <hgowtham@redhat.com>
 1088 
 1089 commit 44bc5732640fd23969e4a63cbb3eb6bb9fd387b2
 1090 Author: Sunny Kumar <sunkumar@redhat.com>
 1091 Date:   Thu Oct 24 14:40:37 2019 +0530
 1092 
 1093     test: fix suspicous non-root geo-rep test failures
 1094     
 1095     Export of env variable is required for ssh-copy-id command.
 1096     
 1097     Backport of:
 1098     
 1099     >    fixes: bz#1765426
 1100     >    Change-Id: Icaf7a848cb8f4ae9f887d885a8c5bb71f26633b4
 1101     >    Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 1102     
 1103     fixes: bz#1765433
 1104     Change-Id: Icaf7a848cb8f4ae9f887d885a8c5bb71f26633b4
 1105     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 1106     (cherry picked from commit bfebfa9f2ec9dfc5dbf4a68c3518f98364ebc461)
 1107 
 1108 commit 1a3ca8ac92d0e64726de2337d4341079598b34b8
 1109 Author: Kotresh HR <khiremat@redhat.com>
 1110 Date:   Sun Oct 20 01:01:39 2019 +0530
 1111 
 1112     geo-rep: Fix Permission denied traceback on non root setup
 1113     
 1114     Problem:
 1115     While syncing rename of directory in hybrid crawl, geo-rep
 1116     crashes as below.
 1117     
 1118     Traceback (most recent call last):
 1119       File "/usr/local/libexec/glusterfs/python/syncdaemon/repce.py", line 118, in worker
 1120         res = getattr(self.obj, rmeth)(*in_data[2:])
 1121       File "/usr/local/libexec/glusterfs/python/syncdaemon/resource.py", line 588, in entry_ops
 1122         src_entry = get_slv_dir_path(slv_host, slv_volume, gfid)
 1123       File "/usr/local/libexec/glusterfs/python/syncdaemon/syncdutils.py", line 687, in get_slv_dir_path
 1124         [ENOENT], [ESTALE])
 1125       File "/usr/local/libexec/glusterfs/python/syncdaemon/syncdutils.py", line 546, in errno_wrap
 1126         return call(*arg)
 1127     PermissionError: [Errno 13] Permission denied: '/bricks/brick1/b1/.glusterfs/8e/c0/8ec0fcd4-d50f-4a6e-b473-a7943ab66640'
 1128     
 1129     Cause:
 1130     Conversion of gfid to path for a directory uses readlink on backend
 1131     .glusterfs gfid path. But this fails for non root user with
 1132     permission denied.
 1133     
 1134     Fix:
 1135     Use gfid2path interface to get the path from gfid
 1136     
 1137     Backport of:
 1138      > Patch: https://review.gluster.org/23570
 1139      > Change-Id: I9d40c713a1b32cea95144cbc0f384ada82972222
 1140      > BUG: 1763439
 1141      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1142     
 1143     Change-Id: I9d40c713a1b32cea95144cbc0f384ada82972222
 1144     fixes: bz#1764183
 1145     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1146 
 1147 commit 02fb4e2b603deb8467bf7567749de6d55c70a4bc
 1148 Author: Xavi Hernandez <xhernandez@redhat.com>
 1149 Date:   Wed Jul 17 14:50:22 2019 +0200
 1150 
 1151     cluster/ec: fix EIO error for concurrent writes on sparse files
 1152     
 1153     EC doesn't allow concurrent writes on overlapping areas, they are
 1154     serialized. However non-overlapping writes are serviced in parallel.
 1155     When a write is not aligned, EC first needs to read the entire chunk
 1156     from disk, apply the modified fragment and write it again.
 1157     
 1158     The problem appears on sparse files because a write to an offset
 1159     implicitly creates data on offsets below it (so, in some way, they
 1160     are overlapping). For example, if a file is empty and we read 10 bytes
 1161     from offset 10, read() will return 0 bytes. Now, if we write one byte
 1162     at offset 1M and retry the same read, the system call will return 10
 1163     bytes (all containing 0's).
 1164     
 1165     So if we have two writes, the first one at offset 10 and the second one
 1166     at offset 1M, EC will send both in parallel because they do not overlap.
 1167     However, the first one will try to read missing data from the first chunk
 1168     (i.e. offsets 0 to 9) to recombine the entire chunk and do the final write.
 1169     This read will happen in parallel with the write to 1M. What could happen
 1170     is that half of the bricks process the write before the read, and the
 1171     half do the read before the write. Some bricks will return 10 bytes of
 1172     data while the otherw will return 0 bytes (because the file on the brick
 1173     has not been expanded yet).
 1174     
 1175     When EC tries to recombine the answers from the bricks, it can't, because
 1176     it needs more than half consistent answers to recover the data. So this
 1177     read fails with EIO error. This error is propagated to the parent write,
 1178     which is aborted and EIO is returned to the application.
 1179     
 1180     The issue happened because EC assumed that a write to a given offset
 1181     implies that offsets below it exist.
 1182     
 1183     This fix prevents the read of the chunk from bricks if the current size
 1184     of the file is smaller than the read chunk offset. This size is
 1185     correctly tracked, so this fixes the issue.
 1186     
 1187     Also modifying ec-stripe.t file for Test #13 within it.
 1188     In this patch, if a file size is less than the offset we are writing, we
 1189     fill zeros in head and tail and do not consider it strip cache miss.
 1190     That actually make sense as we know what data that part holds and there is
 1191     no need of reading it from bricks.
 1192     
 1193     
 1194     Backport of:
 1195      > Patch:https://review.gluster.org/#/c/glusterfs/+/23066/
 1196      > Change-Id: Ic342e8c35c555b8534109e9314c9a0710b6225d6
 1197      > BUG: 1730715
 1198      > Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 1199     
 1200     (cherry picked from commit b01a43586c5abc23a874e5528a063c508f952cbd)
 1201     
 1202     Change-Id: Ic342e8c35c555b8534109e9314c9a0710b6225d6
 1203     Fixes: bz#1739451
 1204     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 1205 
 1206 commit 02f26172c00143953310e9dd4f8ec08f3de66954
 1207 Author: Krutika Dhananjay <kdhananj@redhat.com>
 1208 Date:   Wed Aug 7 12:12:43 2019 +0530
 1209 
 1210     features/shard: Send correct size when reads are sent beyond file size
 1211     
 1212     Change-Id: I0cebaaf55c09eb1fb77a274268ff564e871b743b
 1213     fixes bz#1737141
 1214     Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
 1215     (cherry picked from commit 51237eda7c4b3846d08c5d24d1e3fe9b7ffba1d4)
 1216 
 1217 commit 3b6d7a1ef0ad8c50984354e941af68ca80261da7
 1218 Author: Kotresh HR <khiremat@redhat.com>
 1219 Date:   Wed Oct 16 14:25:47 2019 +0530
 1220 
 1221     geo-rep: Fix config upgrade on non-participating node
 1222     
 1223     After upgrade, if the config files are of old format, it
 1224     gets migrated to new format. Monitor process migrates it.
 1225     Since monitor doesn't run on nodes where bricks are not
 1226     hosted, it doesn't get migrated there. So this patch fixes
 1227     the config upgrade on nodes which doesn't host bricks.
 1228     This happens during config either on get/set/reset.
 1229     
 1230     Backport of:
 1231      > Patch: https://review.gluster.org/23555
 1232      > Change-Id: Ibade2f2310b0f3affea21a3baa1ae0eb71162cba
 1233      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1234      > BUG: 1762220
 1235     
 1236     Change-Id: Ibade2f2310b0f3affea21a3baa1ae0eb71162cba
 1237     fixes: bz#1763028
 1238     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1239 
 1240 commit 92c9452944c0a50f2781e85572adffc20067828f
 1241 Author: Sunny Kumar <sunkumar@redhat.com>
 1242 Date:   Tue Sep 24 18:22:13 2019 +0530
 1243 
 1244     tests : test case for non-root geo-rep setup
 1245     
 1246     Added test case for non-root geo-rep setup.
 1247     
 1248     Backport of:
 1249      > Patch: https://review.gluster.org/22902
 1250      > Change-Id: Ib6ebee79949a9f61bdc5c7b5e11b51b262750e98
 1251      > BUG: 1717827
 1252      > Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 1253      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1254     
 1255     Change-Id: Ib6ebee79949a9f61bdc5c7b5e11b51b262750e98
 1256     fixes: bz#1764178
 1257     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1258 
 1259 commit dde7f909d4ea9ad3f5bf7cacbef79b7af15efd5e
 1260 Author: Kotresh HR <khiremat@redhat.com>
 1261 Date:   Fri Aug 16 16:07:03 2019 +0530
 1262 
 1263     geo-rep: Fix the name of changelog archive file
 1264     
 1265     Background:
 1266     The processed changelogs are archived each month in a single tar file.
 1267     The default format is "archive_YYYYMM.tar" which is specified as "%%Y%%m"
 1268     in configuration file.
 1269     
 1270     Problem:
 1271     The created changelog archive file didn't have corresponding year
 1272     and month. It created as "archive_%Y%m.tar" on python2 only systems.
 1273     
 1274     Cause and Fix:
 1275     Geo-rep expects "%Y%m" after the ConfigParser reads it from config file.
 1276     Since it was "%%Y%%m" in config file, geo-rep used to get correct value
 1277     "%Y%m" in python3 and "%%Y%%m" in python2 which is incorrect.
 1278     The fix can be to use "%Y%m" in config file but that fails in python3.
 1279     So the fix is to use "RawConfigParser" in geo-rep and use "%Y%m". This
 1280     works both in python2 and python3.
 1281     
 1282     Backport of:
 1283      > Patch: https://review.gluster.org/23248
 1284      > Change-Id: Ie5b7d2bc04d0d53cd1769e064c2d67aaf95d557c
 1285      > BUG: 1741890
 1286      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1287     
 1288     Change-Id: Ie5b7d2bc04d0d53cd1769e064c2d67aaf95d557c
 1289     fixes: bz#1764176
 1290     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1291 
 1292 commit e812ea3982d61c5ee329c034b1c857824fdd1a5a
 1293 Author: Aravinda VK <avishwan@redhat.com>
 1294 Date:   Mon Aug 5 19:00:21 2019 +0530
 1295 
 1296     geo-rep: Fix Config Get Race
 1297     
 1298     When two threads(sync jobs) in Geo-rep worker calls `gconf.get` and
 1299     `gconf.getr`(realtime) at the sametime, `getr` resets the conf object
 1300     and other one gets None. Thread Lock is introduced to fix the issue.
 1301     
 1302     ```
 1303       File "/usr/libexec/glusterfs/python/syncdaemon/syncdutils.py",
 1304       line 368, in twrap
 1305         tf(*aargs)
 1306       File "/usr/libexec/glusterfs/python/syncdaemon/master.py", line 1987,
 1307       in syncjob
 1308         po = self.sync_engine(pb, self.log_err)
 1309       File "/usr/libexec/glusterfs/python/syncdaemon/resource.py",
 1310       line 1444, in rsync
 1311         rconf.ssh_ctl_args + \
 1312     AttributeError: 'NoneType' object has no attribute 'split'
 1313     ```
 1314     
 1315     Backport of:
 1316      > Patch: https://review.gluster.org/23158
 1317      > Change-Id: I9c245e5c36338265354e158f5baa32b119eb2da5
 1318      > BUG: 1737484
 1319      > Signed-off-by: Aravinda VK <avishwan@redhat.com>
 1320     
 1321     Change-Id: I9c245e5c36338265354e158f5baa32b119eb2da5
 1322     fixes: bz#1764174
 1323     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1324 
 1325 commit 57510c2a28de017a147dc7fd8d95e2794a519714
 1326 Author: Shwetha K Acharya <sacharya@redhat.com>
 1327 Date:   Tue Jul 2 15:00:25 2019 +0530
 1328 
 1329     geo-rep: Test case for upgrading config file
 1330     
 1331     Added test case for the patch
 1332     https://review.gluster.org/#/c/glusterfs/+/22894/4
 1333     
 1334     Also updated if else structure in gsyncdconfig.py to avoid
 1335     repeated occurance of values in new configfile.
 1336     
 1337     Backport of:
 1338      > Patch: https://review.gluster.org/22982
 1339      > BUG: 1707731
 1340      > Change-Id: If97e1d37ac52dbd17d47be6cb659fc5a3ccab6d7
 1341      > Signed-off-by: Shwetha K Acharya <sacharya@redhat.com>
 1342     
 1343     fixes: bz#1764171
 1344     Change-Id: If97e1d37ac52dbd17d47be6cb659fc5a3ccab6d7
 1345     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1346 
 1347 commit b7f1d937d3de45558a4da35792e4546368f4d34a
 1348 Author: Sunny Kumar <sunkumar@redhat.com>
 1349 Date:   Thu Jun 20 18:47:45 2019 +0530
 1350 
 1351     geo-rep : fix gluster command path for non-root session
 1352     
 1353     Problem:
 1354     gluster command not found.
 1355     
 1356     Cause:
 1357     In Volinfo class we issue command 'gluster vol info' to get information
 1358     about volume like getting brick_root to perform various operation.
 1359     When geo-rep session is configured for non-root user Volinfo class
 1360     fails to issue gluster command due to unavailability of gluster
 1361     binary path for non-root user.
 1362     
 1363     Solution:
 1364     Use config value 'slave-gluster-command-dir'/'gluster-command-dir' to get path
 1365     for gluster command based on caller.
 1366     
 1367     Backport of:
 1368      > Patch: https://review.gluster.org/22920
 1369      > BUG: 1722740
 1370      > Change-Id: I4ec46373da01f5d00ecd160c4e8c6239da8b3859
 1371      > Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 1372     
 1373     fixes: bz#1764172
 1374     Change-Id: I4ec46373da01f5d00ecd160c4e8c6239da8b3859
 1375     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1376 
 1377 commit 9f26bb9522ade281d794ef8c2e3a5cb00612cfed
 1378 Author: Shwetha K Acharya <sacharya@redhat.com>
 1379 Date:   Wed May 29 16:49:01 2019 +0530
 1380 
 1381     geo-rep: Upgrading config file to new version
 1382     
 1383     - configuration handling is enhanced with patch
 1384     https://review.gluster.org/#/c/glusterfs/+/18257/
 1385     - hence, the old configurations are not applied when
 1386     Geo-rep session is created in the old version and upgraded.
 1387     
 1388     This patch solves the issue. It,
 1389     - checks if the config file is old.
 1390     - parses required values from old config file and stores in new
 1391       config file, which ensures that configerations are applied on
 1392       upgrade.
 1393     - stores old config file as backup.
 1394     - handles changes in options introduced in
 1395       https://review.gluster.org/#/c/glusterfs/+/18257/
 1396     
 1397     Backport of:
 1398      > Patch: https://review.gluster.org/22894
 1399      > BUG: bz#1707731
 1400      > Change-Id: Iad8da6c1e1ae8ecf7c84dfdf8ea3ac6966d8a2a0
 1401      > Signed-off-by: Shwetha K Acharya <sacharya@redhat.com>
 1402     
 1403     updates: bz#1764171
 1404     Change-Id: Iad8da6c1e1ae8ecf7c84dfdf8ea3ac6966d8a2a0
 1405     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1406 
 1407 commit 938efb6fc2552baef0f0dc65918d181d49b5ff40
 1408 Author: Mohit Agrawal <moagrawal@redhat.com>
 1409 Date:   Mon Oct 14 15:42:31 2019 +0530
 1410 
 1411     dht: Rebalance causing IO Error - File descriptor in bad state
 1412     
 1413     Problem : When a file is migrated, dht attempts to re-open all open
 1414               fds on the new cached subvol. Earlier, if dht had not opened the fd,
 1415               the client xlator would be unable to find the remote fd and would
 1416               fall back to using an anon fd for the fop. That behavior changed with
 1417               https://review.gluster.org/#/c/glusterfs/+/15804, causing fops to fail
 1418               with EBADFD if the fd was not available on the cached subvol.
 1419               The client xlator returns EBADFD if the remote fd is not found but
 1420               dht only checks for EBADF before re-opening fds on the new cached subvol.
 1421     
 1422     Solution: Handle EBADFD at dht code path to avoid the issue
 1423     
 1424     >Change-Id: I43c51995cdd48d05b12e4b2889c8dbe2bb2a72d8
 1425     >Fixes: bz#1758579
 1426     >(cherry picked from commit 9314a9fbf487614c736cf6c4c1b93078d37bb9df)
 1427     >(Reviewed on upstream https://review.gluster.org/#/c/glusterfs/+/23518/)
 1428     
 1429     Change-Id: I43c51995cdd48d05b12e4b2889c8dbe2bb2a72d8
 1430     Fixes: bz#1761907
 1431 
 1432 commit b69eb47dd3ee968325fa070ee500c8b70fcc96bc
 1433 Author: karthik-us <ksubrahm@redhat.com>
 1434 Date:   Thu Sep 5 16:14:50 2019 +0530
 1435 
 1436     cluster/afr: Heal entries when there is a source & no healed_sinks
 1437     
 1438     Problem:
 1439     In a situation where B1 blames B2, B2 blames B1 and B3 doesn't blame
 1440     anything for entry heal, heal will not complete even though we have
 1441     clear source and sinks. This will happen because while doing
 1442     afr_selfheal_find_direction() only the bricks which are blamed by
 1443     non-accused bricks are considered as sinks. Later in
 1444     __afr_selfheal_entry_finalize_source() when it tries to mark all the
 1445     non-sources as sinks it fails to do so because there won't be any
 1446     healed_sinks marked, no witness present and there will be a source.
 1447     
 1448     Fix:
 1449     If there is a source and no healed_sinks, then reset all the locked
 1450     sources to 0 and healed sinks to 1 to do conservative merge.
 1451     
 1452     Change-Id: If40d8bc95d52a52b2730f55bdcf135109b421548
 1453     Fixes: bz#1760706
 1454     Signed-off-by: karthik-us <ksubrahm@redhat.com>
 1455 
 1456 commit 50dbcd45fa3165247608e2b889d6a802ba5d6323
 1457 Author: Ravishankar N <ravishankar@redhat.com>
 1458 Date:   Sat Sep 28 08:53:08 2019 +0530
 1459 
 1460     afr: support split-brain CLI for replica 3
 1461     
 1462     Ever since we added quorum checks for lookups in afr via commit
 1463     bd44d59741bb8c0f5d7a62c5b1094179dd0ce8a4, the split-brain resolution
 1464     commands would not work for replica 3 because there would be no
 1465     readables for the lookup fop.
 1466     
 1467     The argument was that split-brains do not occur in replica 3 but we do
 1468     see (data/metadata) split-brain cases once in a while which indicate that there are
 1469     a few bugs/corner cases yet to be discovered and fixed.
 1470     
 1471     Fortunately, commit  8016d51a3bbd410b0b927ed66be50a09574b7982 added
 1472     GF_CLIENT_PID_GLFS_HEALD as the pid for all fops made by glfsheal. If we
 1473     leverage this and allow lookups in afr when pid is GF_CLIENT_PID_GLFS_HEALD,
 1474     split-brain resolution commands will work for replica 3 volumes too.
 1475     
 1476     Likewise, the check is added in shard_lookup as well to permit resolving
 1477     split-brains by specifying "/.shard/shard-file.xx" as the file name
 1478     (which previously used to fail with EPERM).
 1479     
 1480     Change-Id: I3c543dea79caf7cfbc1633e9089cb1cdd2538ba9
 1481     Fixes: bz#1760792
 1482     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
 1483     (cherry picked from commit 47dbd753187f69b3835d2e42fdbe7485874c4b3e)
 1484 
 1485 commit cc853e02ea42ab1b86d94f7ed83574c3e07bcb0c
 1486 Author: Homma <homma@allworks.co.jp>
 1487 Date:   Fri Jul 5 16:10:41 2019 +0530
 1488 
 1489     system/posix-acl: update ctx only if iatt is non-NULL
 1490     
 1491     We need to safe-guard against possible zero'ing out of iatt
 1492     structure in acl ctx, which can cause many issues.
 1493     
 1494     > fixes: bz#1668286
 1495     > Change-Id: Ie81a57d7453a6624078de3be8c0845bf4d432773
 1496     > Signed-off-by: Amar Tumballi <amarts@redhat.com>
 1497     > (cherry picked from commit 6bf9637a93011298d032332ca93009ba4e377e46)
 1498     
 1499     Change-Id: I992d25f1c1282d50aa0232d01586d2df2216551c
 1500     fixes: bz#1741402
 1501     Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
 1502 
 1503 commit cb848d75523ec81ec1a5ca581b540f8799761233
 1504 Author: Kaleb S. KEITHLEY <kkeithle@redhat.com>
 1505 Date:   Wed Oct 9 10:26:39 2019 -0400
 1506 
 1507     packaging: remove leftover bd cruft in rpm .spec
 1508     
 1509     $subject
 1510     
 1511     Change-Id: Ifd8e3340ae6868ea1fd2d0b53f02b093cc23f2cb
 1512     Fixes: bz#1760361
 1513     Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
 1514 
 1515 commit 27b95724fa27c09d851d1f4faf93a27948d99121
 1516 Author: N Balachandran <nbalacha@redhat.com>
 1517 Date:   Wed Sep 25 19:50:27 2019 +0530
 1518 
 1519     perf/write-behind: Clear frame->local on conflict error
 1520     
 1521     WB saves the wb_inode in frame->local for the truncate and
 1522     ftruncate fops. This value is not cleared in case of error
 1523     on a conflicting write request. FRAME_DESTROY finds a non-null
 1524     frame->local and tries to free it using mem_put. However,
 1525     wb_inode is allocated using GF_CALLOC, causing the
 1526     process to crash.
 1527     
 1528     credit: vpolakis@gmail.com
 1529     
 1530     Change-Id: I217f61470445775e05145aebe44c814731c1b8c5
 1531     fixes: bz#1755679
 1532     Signed-off-by: N Balachandran <nbalacha@redhat.com>
 1533 
 1534 commit a2b3ce5b3ef846971453644820d80101d1ebec9d
 1535 Author: Csaba Henk <csaba@redhat.com>
 1536 Date:   Tue Jul 9 11:06:49 2019 +0200
 1537 
 1538     fuse: add missing GF_FREE to fuse_interrupt
 1539     
 1540     Change-Id: Id7e003e4a53d0a0057c1c84e1cd704c80a6cb015
 1541     fixes: bz#1753571
 1542     Signed-off-by: N Balachandran <nbalacha@redhat.com>
 1543 
 1544 commit e152f753013f923f95ebdd63ffc4de0cd44221d1
 1545 Author: Kotresh HR <khiremat@redhat.com>
 1546 Date:   Mon Jul 29 18:30:42 2019 +0530
 1547 
 1548     ctime/rebalance: Heal ctime xattr on directory during rebalance
 1549     
 1550     After add-brick and rebalance, the ctime xattr is not present
 1551     on rebalanced directories on new brick. This patch fixes the
 1552     same.
 1553     
 1554     Note that ctime still doesn't support consistent time across
 1555     distribute sub-volume.
 1556     
 1557     This patch also fixes the in-memory inconsistency of time attributes
 1558     when metadata is self healed.
 1559     
 1560     Backport of:
 1561      > Patch: https://review.gluster.org/23127
 1562      > Change-Id: Ia20506f1839021bf61d4753191e7dc34b31bb2df
 1563      > BUG: 1734026
 1564      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1565     
 1566     Patch: https://review.gluster.org/23127
 1567     Change-Id: Ia20506f1839021bf61d4753191e7dc34b31bb2df
 1568     fixes: bz#1752413
 1569     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1570 
 1571 commit dbf3471f12864b5e716840c25e569407c2fe1c19
 1572 Author: Sunny Kumar <sunkumar@redhat.com>
 1573 Date:   Mon May 13 14:32:53 2019 +0530
 1574 
 1575     geo-rep : fix mountbroker setup
 1576     
 1577     Problem:
 1578     
 1579     Unable to setup mountbroker root directory while creating geo-replication
 1580     session for non-root user.
 1581     
 1582     Casue:
 1583     With patch[1] which defines the max-port for glusterd one extra sapce
 1584     got added in field of 'option max-port'.
 1585     [1]. https://review.gluster.org/#/c/glusterfs/+/21872/
 1586     
 1587     In geo-rep spliting of key-value pair form vol file was done on the
 1588     basis of space so this additional space caused "ValueError: too many values
 1589     to unpack".
 1590     
 1591     Solution:
 1592     Use split so that it can treat consecutive whitespace as a single separator.
 1593     
 1594     Backport of https://review.gluster.org/#/c/glusterfs/+/22716/
 1595     
 1596     >Fixes: bz#1709248
 1597     >Change-Id: Ia22070a43f95d66d84cb35487f23f9ee58b68c73
 1598     >Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 1599     >(cherry picked from commit 3dd03146bb7037ae2ebea0579d0b81be27fdd927)
 1600     
 1601     Fixes: bz#1750228
 1602     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 1603     Change-Id: Ia22070a43f95d66d84cb35487f23f9ee58b68c73
 1604 
 1605 commit 5a2af2fd06356f6fc79d591c352caffd4c511c9e
 1606 Author: Soumya Koduri <skoduri@redhat.com>
 1607 Date:   Wed Sep 18 16:32:08 2019 +0530
 1608 
 1609     gfapi: 'glfs_h_creat_open' - new API to create handle and open fd
 1610     
 1611     Right now we have two separate APIs, one
 1612     - 'glfs_h_creat_handle' to create handle & another
 1613     - 'glfs_h_open' to create a glfd to return to application
 1614     
 1615     Having two separate routines can result in access errors
 1616     while trying to create and write into a read-only file.
 1617     
 1618     Since a fd is opened even during file/directory creation,
 1619     introducing a new API to make these two operations atomic i.e,
 1620     which can create both handle & fd and pass them to application
 1621     
 1622     This is backport of below mainline patch -
 1623     - https://review.gluster.org/#/c/glusterfs/+/23448/
 1624     - bz#1753569
 1625     
 1626     Change-Id: Ibf513fcfcdad175f4d7eb6fa7a61b8feec6d33b5
 1627     fixes: bz#1755785
 1628     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 1629 
 1630 commit 356d46b13031be82cc2e0b0eaad7e7fcfccc7c35
 1631 Author: root <root@localhost.localdomain>
 1632 Date:   Sun Apr 7 19:31:17 2019 +0530
 1633 
 1634     dht: Custom xattrs are not healed in case of add-brick
 1635     
 1636     Problem: If any custom xattrs are set on the directory before
 1637              add a brick, xattrs are not healed on the directory
 1638              after adding a brick.
 1639     
 1640     Solution: xattr are not healed because dht_selfheal_dir_mkdir_lookup_cbk
 1641               checks the value of MDS and if MDS value is not negative
 1642               selfheal code path does not take reference of MDS xattrs.Change the
 1643               condition to take reference of MDS xattr so that custom xattrs are
 1644               populated on newly added brick
 1645     
 1646     Backport of:
 1647      > Patch: https://review.gluster.org/22520
 1648      > BUG: bz#1702299
 1649      > Change-Id: Id14beedb98cce6928055f294e1594b22132e811c
 1650      > Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 1651     
 1652     fixes: bz#1753561
 1653     Change-Id: Id14beedb98cce6928055f294e1594b22132e811c
 1654     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1655 
 1656 commit e9fd07ded055387a475a6047a2a4a1947e3d0a16
 1657 Author: Raghavendra Bhat <raghavendra@redhat.com>
 1658 Date:   Thu Aug 1 13:37:07 2019 -0400
 1659 
 1660     storage/posix: set the op_errno to proper errno during gfid set
 1661     
 1662     In posix_gfid_set, the proper error is not captured in one of
 1663     the failure cases.
 1664     
 1665     Change-Id: I1c13f0691a15d6893f1037b3a5fe385a99657e00
 1666     Fixes: bz#1746118
 1667     Signed-off-by: Raghavendra Bhat <raghavendra@redhat.com>
 1668     (cherry picked from commit ed7a3793073670e787063c47e55010fc7c963064)
 1669 
 1670 commit 3f4f2c50579211f9cc4a2bcc18988f5e819d6c91
 1671 Author: Soumya Koduri <skoduri@redhat.com>
 1672 Date:   Tue Sep 3 20:52:42 2019 +0530
 1673 
 1674     core/syncop: Bail out if frame creation fails
 1675     
 1676     There could be cases (either due to insufficient memory or
 1677     corrupted mem-pool) due to which frame creation fails. Bail out
 1678     with error in such cases.
 1679     
 1680     This is the backport of below mainline fix -
 1681     > Fixes: bz#1748448
 1682     > review url: https://review.gluster.org/#/c/glusterfs/+/23350/
 1683     
 1684     Change-Id: I8cc0a5852f6f04d2bac991e4eb79ecb42577da11
 1685     Fixes: bz#1751557
 1686     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 1687 
 1688 commit 850f20c5aeb0c935be99bef13e8a49bd52f186ff
 1689 Author: Mohammed Rafi KC <rkavunga@redhat.com>
 1690 Date:   Wed Jul 10 21:44:38 2019 +0530
 1691 
 1692     afr/lookup: Pass xattr_req in while doing a selfheal in lookup
 1693     
 1694     We were not passing xattr_req when doing a name self heal
 1695     as well as a meta data heal. Because of this, some xdata
 1696     was missing which causes i/o errors
 1697     
 1698     Backport of > https://review.gluster.org/#/c/glusterfs/+/23024/
 1699     >Change-Id: Ibfb1205a7eb0195632dc3820116ffbbb8043545f
 1700     >Fixes: bz#1728770
 1701     >Signed-off-by: Mohammed Rafi KC <rkavunga@redhat.com>
 1702     
 1703     Fixes: bz#1749307
 1704     Signed-off-by: Mohammed Rafi KC <rkavunga@redhat.com>
 1705     (cherry picked from commit d026f0bcfd301712e4f0671ccf238f43f2e6dd30)
 1706     
 1707     Change-Id: Ibfb1205a7eb0195632dc3820116ffbbb8043545f
 1708 
 1709 commit 78dcb37405be16f529d2efaaebcedd461d4f987c
 1710 Author: Mohit Agrawal <moagrawal@redhat.com>
 1711 Date:   Sun Sep 1 12:01:09 2019 +0530
 1712 
 1713     rpc: Update address family if it is not provide in cmd-line arguments
 1714     
 1715     Problem: After enabling transport-type to inet6 and passed ipv6
 1716              transport.socket.bind-address in glusterd.vol clients are
 1717              not started.
 1718     
 1719     Solution: Need to update address-family based on remote-address for
 1720               all gluster client process
 1721     
 1722     > Change-Id: Iaa3588cd87cebc45231bfd675745c1a457dc9b31
 1723     > Fixes: bz#1747746
 1724     > Credits: Amgad Saleh <amgad.saleh@nokia.com>
 1725     > Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 1726     > (cherry picked from commit 80b8cfe3f1386606bada97a76a0cad7acdf6b877)
 1727     
 1728     Change-Id: Iaa3588cd87cebc45231bfd675745c1a457dc9b31
 1729     Fixes: bz#1739320
 1730     Credits: Amgad Saleh <amgad.saleh@nokia.com>
 1731     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 1732 
 1733 commit 0f76921e986aee27b9f60e3bcda9509b983214a0
 1734 Author: Mohit Agrawal <moagrawal@redhat.com>
 1735 Date:   Mon Sep 2 10:46:10 2019 +0530
 1736 
 1737     glusterd: IPV6 hostname address is not parsed correctly
 1738     
 1739     Problem: IPV6 hostname address is not parsed correctly in function
 1740              glusterd_check_brick_order
 1741     
 1742     Solution: Update the code to parse hostname address
 1743     
 1744     > Change-Id: Ifb2f83f9c6e987b2292070e048e97eeb51b728ab
 1745     > Fixes: bz#1747746
 1746     > Credits: Amgad Saleh <amgad.saleh@nokia.com>
 1747     > Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 1748     > (cherry picked from commit 6563ffb04d7ba51a89726e7c5bbb85c7dbc685b5)
 1749     
 1750     Change-Id: Ifb2f83f9c6e987b2292070e048e97eeb51b728ab
 1751     Fixes: bz#1739320
 1752     Credits: Amgad Saleh <amgad.saleh@nokia.com>
 1753     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 1754 
 1755 commit 3f0658b54c92131ec468a66b9fe0c3ac86e42061
 1756 Author: Ravishankar N <ravishankar@redhat.com>
 1757 Date:   Fri Aug 30 10:30:31 2019 +0530
 1758 
 1759     afr: wake up index healer threads
 1760     
 1761     (Backport of https://review.gluster.org/#/c/glusterfs/+/23288/)
 1762     
 1763     ...whenever shd is re-enabled after disabling or there is a change in
 1764     `cluster.heal-timeout`, without needing to restart shd or waiting for the
 1765     current `cluster.heal-timeout` seconds to expire.
 1766     
 1767     See BZ 1743988 for more details.
 1768     
 1769     Change-Id: Ia5ebd7c8e9f5b54cba3199c141fdd1af2f9b9bfe
 1770     fixes: bz#1743988
 1771     Reported-by: Glen Kiessling <glenk1973@hotmail.com>
 1772     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
 1773 
 1774 commit 86ac340dd9c79c46a0d79ec2b5680a7b3acc301f
 1775 Author: Ravishankar N <ravishankar@redhat.com>
 1776 Date:   Wed Sep 4 11:27:30 2019 +0530
 1777 
 1778     tests: fix spurious failure of bug-1402841.t-mt-dir-scan-race.t
 1779     
 1780     Problem:
 1781     Since commit 600ba94183333c4af9b4a09616690994fd528478, shd starts
 1782     healing as soon as it is toggled from disabled to enabled. This was
 1783     causing the following line in the .t to fail on a 'fast' machine (always
 1784     on my laptop and sometimes on the jenkins slaves).
 1785     
 1786     EXPECT_NOT "^0$" get_pending_heal_count $V0
 1787     
 1788     because by the time shd was disabled, the heal was already completed.
 1789     
 1790     Fix:
 1791     Increase the no. of files to be healed and make it a variable called
 1792     FILE_COUNT, should we need to bump it up further because the machines
 1793     become even faster. Also created pending metadata heals to increase the
 1794     time taken to heal a file.
 1795     
 1796     fixes: bz#1749157
 1797     Change-Id: I5a26b08e45b8c19bce3c01ce67bdcc28ed48198d
 1798     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
 1799     (cherry picked from commit 724c657995a2e148243eeb78c68b620c6d7714a5)
 1800 
 1801 commit 4ca8dd7e24b40a156c7f4ba41f1d7da91ac21d84
 1802 Author: Kotresh HR <khiremat@redhat.com>
 1803 Date:   Thu Aug 8 10:05:12 2019 +0530
 1804 
 1805     ctime: Fix ctime issue with utime family of syscalls
 1806     
 1807     When atime|mtime is updated via utime family of syscalls,
 1808     ctime is not updated. This patch fixes the same.
 1809     
 1810     
 1811     Backport of:
 1812      > Patch: https://review.gluster.org/23177/
 1813      > Change-Id: I7f86d8f8a1e06a332c3449b5bbdbf128c9690f25
 1814      > BUg: 1738786
 1815      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1816     (cherry picked from commit 95f71df31dc73d85df722b0e7d3a7eb1e0237e7f)
 1817     
 1818     
 1819     Change-Id: I7f86d8f8a1e06a332c3449b5bbdbf128c9690f25
 1820     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1821     fixes: bz#1746138
 1822 
 1823 commit f7d1fa51cf7308a6d68ed9fa1e8cc4a7c66ad121
 1824 Author: Xiubo Li <xiubli@redhat.com>
 1825 Date:   Fri Jul 26 12:34:52 2019 +0800
 1826 
 1827     event: rename event_XXX with gf_ prefixed
 1828     
 1829     I hit one crash issue when using the libgfapi.
 1830     
 1831     In the libgfapi it will call glfs_poller() --> event_dispatch()
 1832     in file api/src/glfs.c:721, and the event_dispatch() is defined
 1833     by libgluster locally, the problem is the name of event_dispatch()
 1834     is the extremly the same with the one from libevent package form
 1835     the OS.
 1836     
 1837     For example, if a executable program Foo, which will also use and
 1838     link the libevent and the libgfapi at the same time, I can hit the
 1839     crash, like:
 1840     
 1841     kernel: glfs_glfspoll[68486]: segfault at 1c0 ip 00007fef006fd2b8 sp
 1842     00007feeeaffce30 error 4 in libevent-2.0.so.5.1.9[7fef006ed000+46000]
 1843     
 1844     The link for Foo is:
 1845     lib_foo_LADD = -levent $(GFAPI_LIBS)
 1846     It will crash.
 1847     
 1848     This is because the glfs_poller() is calling the event_dispatch() from
 1849     the libevent, not the libglsuter.
 1850     
 1851     The gfapi link info :
 1852     GFAPI_LIBS = -lacl -lgfapi -lglusterfs -lgfrpc -lgfxdr -luuid
 1853     
 1854     If I link Foo like:
 1855     lib_foo_LADD = $(GFAPI_LIBS) -levent
 1856     It will works well without any problem.
 1857     
 1858     And if Foo call one private lib, such as handler_glfs.so, and the
 1859     handler_glfs.so will link the GFAPI_LIBS directly, while the Foo won't
 1860     and it will dlopen(handler_glfs.so), then the crash will be hit everytime.
 1861     
 1862     The link info will be:
 1863     foo_LADD = -levent
 1864     libhandler_glfs_LIBADD = $(GFAPI_LIBS)
 1865     
 1866     I can avoid the crash temporarily by linking the GFAPI_LIBS in Foo too like:
 1867     foo_LADD = $(GFAPI_LIBS) -levent
 1868     libhandler_glfs_LIBADD = $(GFAPI_LIBS)
 1869     
 1870     But this is ugly since the Foo won't use any APIs from the GFAPI_LIBS.
 1871     
 1872     And in some cases when the --as-needed link option is added(on many dists
 1873     it is added as default), then the crash is back again, the above workaround
 1874     won't work.
 1875     
 1876     Backport of:
 1877     > https://review.gluster.org/#/c/glusterfs/+/23110/
 1878     > Change-Id: I38f0200b941bd1cff4bf3066fca2fc1f9a5263aa
 1879     > Fixes: #699
 1880     > Signed-off-by: Xiubo Li <xiubli@redhat.com>
 1881     
 1882     Change-Id: I38f0200b941bd1cff4bf3066fca2fc1f9a5263aa
 1883     updates: bz#1740525
 1884     Signed-off-by: Xiubo Li <xiubli@redhat.com>
 1885     (cherry picked from commit 799edc73c3d4f694c365c6a7c27c9ab8eed5f260)
 1886 
 1887 commit 2c46789ad04500b1e31585c6d51cd925d2ad895d
 1888 Author: Kotresh HR <khiremat@redhat.com>
 1889 Date:   Tue Aug 20 15:49:40 2019 +0530
 1890 
 1891     ctime: Fix incorrect realtime passed to frame->root->ctime
 1892     
 1893     On systems that don't support "timespec_get"(e.g., centos6), it
 1894     was using "clock_gettime" with "CLOCK_MONOTONIC" to get unix epoch
 1895     time which is incorrect. This patch introduces "timespec_now_realtime"
 1896     which uses "clock_gettime" with "CLOCK_REALTIME" which fixes
 1897     the issue.
 1898     
 1899     Backport of:
 1900      > Patch: https://review.gluster.org/23274/
 1901      > Change-Id: I57be35ce442d7e05319e82112b687eb4f28d7612
 1902      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1903      > BUG: 1743652
 1904     (cherry picked from commit d14d0749340d9cb1ef6fc4b35f2fb3015ed0339d)
 1905     
 1906     
 1907     Change-Id: I57be35ce442d7e05319e82112b687eb4f28d7612
 1908     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 1909     fixes: bz#1726175
 1910 
 1911 commit 6e7597e10c23aa0dea13fc4c390cb201cd22f1f7
 1912 Author: Anoop C S <anoopcs@redhat.com>
 1913 Date:   Sat Aug 10 10:30:26 2019 +0530
 1914 
 1915     performance/md-cache: Do not skip caching of null character xattr values
 1916     
 1917     Null character string is a valid xattr value in file system. But for
 1918     those xattrs processed by md-cache, it does not update its entries if
 1919     value is null('\0'). This results in ENODATA when those xattrs are
 1920     queried afterwards via getxattr() causing failures in basic operations
 1921     like create, copy etc in a specially configured Samba setup for Mac OS
 1922     clients.
 1923     
 1924     On the other side snapview-server is internally setting empty string("")
 1925     as value for xattrs received as part of listxattr() and are not intended
 1926     to be cached. Therefore we try to maintain that behaviour using an
 1927     additional dictionary key to prevent updation of entries in getxattr()
 1928     and fgetxattr() callbacks in md-cache.
 1929     
 1930     Credits: Poornima G <pgurusid@redhat.com>
 1931     
 1932     Change-Id: I7859cbad0a06ca6d788420c2a495e658699c6ff7
 1933     Fixes: bz#1743782
 1934     Signed-off-by: Anoop C S <anoopcs@redhat.com>
 1935     (cherry picked from commit b4b683736367d93daad08a5ee6ca95778c07c5a4)
 1936 
 1937 commit f9345933b75cf7181358d1e791d3741b7b73771b
 1938 Author: Ravishankar N <ravishankar@redhat.com>
 1939 Date:   Tue Jul 30 17:05:22 2019 +0530
 1940 
 1941     afr: restore timestamp of parent dir during entry-heal
 1942     
 1943     Fixes: bz#1741044
 1944     Change-Id: I29e338bac62104233a6f80212df8d0fb016affda
 1945     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
 1946     (cherry picked from commit 8e9c53ebf16705b9a1db2fc486dc24a5cb244ddd)
 1947 
 1948 commit 50af844bdc0de2c55b3b2b5b68f60b62b66cb12c
 1949 Author: Mohit Agrawal <moagrawal@redhat.com>
 1950 Date:   Mon Aug 19 16:00:24 2019 +0530
 1951 
 1952     glusterd: ./tests/bugs/glusterd/bug-1595320.t is failing
 1953     
 1954     Problem: sometime ./tests/bugs/glusterd/bug-1595320.t is failing  is
 1955              failing at the time of checking brick_process after sending
 1956              a kill signal to brick process
 1957     
 1958     Solution: Wait sometime after just sending a kill signal to brick
 1959               process to make sure brick process is stopped
 1960     
 1961     > Change-Id: Iee9e91284618abfc62a550d47e4f9117785def58
 1962     > Fixes: bz#1743200
 1963     > Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 1964     > (cherry picked from commit 8f1620ad7f5d3d040fee55c5f873349800e2268d)
 1965     
 1966     Change-Id: Iee9e91284618abfc62a550d47e4f9117785def58
 1967     Fixes: bz#1745421
 1968     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 1969 
 1970 commit c34338cfc6466bcdb2f6b1a8a3bde7f19c24d240
 1971 Author: Mohit Agrawal <moagrawal@redhat.com>
 1972 Date:   Tue Aug 13 18:45:43 2019 +0530
 1973 
 1974     rpc: glusterd start is failed and throwing an error Address already in use
 1975     
 1976     Problem: Some of the .t are failed due to bind is throwing
 1977              an error EADDRINUSE
 1978     
 1979     Solution: After killing all gluster processes .t is trying
 1980               to start glusterd but somehow if kernel has not cleaned
 1981               up resources(socket) then glusterd startup is failed due to
 1982               bind system call failure.To avoid the issue retries to call
 1983               bind 10 times to execute system call succesfully
 1984     
 1985     > Change-Id: Ia5fd6b788f7b211c1508c1b7304fc08a32266629
 1986     > Fixes: bz#1743020
 1987     > Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 1988     > (cherry picked from commit c370c70f77079339e2cfb7f284f3a2fb13fd2f97)
 1989     
 1990     Change-Id: Ia5fd6b788f7b211c1508c1b7304fc08a32266629
 1991     Fixes: bz#1743219
 1992     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 1993 
 1994 commit 988a3dcea74b30bafe4da07ac63bc0dafd20c8b5
 1995 Author: Raghavendra G <rgowdapp@redhat.com>
 1996 Date:   Tue Jun 4 19:22:45 2019 +0530
 1997 
 1998     protocol/client: propagte GF_EVENT_CHILD_PING only for connections to brick
 1999     
 2000     Two reasons:
 2001     * ping responses from glusterd may not be relevant for Halo
 2002       replication. Instead, it might be interested in only knowing whether
 2003       the brick itself is responsive.
 2004     * When a brick is killed, propagating GF_EVENT_CHILD_PING of ping
 2005       response from glusterd results in GF_EVENT_DISCONNECT spuriously
 2006       propagated to parent xlators. These DISCONNECT events are from the
 2007       connections client establishes with glusterd as part of its
 2008       reconnect logic. Without GF_EVENT_CHILD_PING, the last event
 2009       propagated to parent xlators would be the first DISCONNECT event
 2010       from brick and hence subsequent DISCONNECTS to glusterd are not
 2011       propagated as protocol/client prevents same event being propagated
 2012       to parent xlators consecutively. propagating GF_EVENT_CHILD_PING for
 2013       ping responses from glusterd would change the last_sent_event to
 2014       GF_EVENT_CHILD_PING and hence protocol/client cannot prevent
 2015       subsequent DISCONNECT events
 2016     
 2017     Signed-off-by: Raghavendra G <rgowdapp@redhat.com>
 2018     Fixes: bz#1739335
 2019     Change-Id: I50276680c52f05ca9e12149a3094923622d6eaef
 2020     (cherry picked from commit 5d66eafec581fb3209af74595784be8854ca40a4)
 2021 
 2022 commit f571e3b7bfb243f710ebc883f1dd3bd95242f126
 2023 Author: Hari Gowtham <hgowtham@redhat.com>
 2024 Date:   Wed Aug 7 11:21:29 2019 +0530
 2025 
 2026     doc: Added release 6.5 notes
 2027     
 2028     Fixes: bz#1737311
 2029     
 2030     Change-Id: I1f54bc9b04ee05c8ab802d92c1471cbfb1aa92a8
 2031     Signed-off-by: Hari Gowtham <hgowtham@redhat.com>
 2032 
 2033 commit cf42677ac0cc042ea4318062219908095d4027c0
 2034 Author: Kinglong Mee <kinglongmee@gmail.com>
 2035 Date:   Mon Aug 5 11:08:02 2019 +0800
 2036 
 2037     features/utime: always update ctime at setattr
 2038     
 2039     For the nfs EXCLUSIVE mode create may sets a later time
 2040     to mtime (at verifier), it should not set to ctime for
 2041     storage.ctime does not allowed set ctime to a earlier time.
 2042     
 2043      /* Earlier, mdata was updated only if the existing time is less
 2044       * than the time to be updated. This would fail the scenarios
 2045       * where mtime can be set to any time using the syscall. Hence
 2046       * just updating without comparison. But the ctime is not
 2047       * allowed to changed to older date.
 2048       */
 2049     
 2050     According to kernel's setattr, always set ctime at setattr,
 2051     and doesnot set ctime from mtime at storage.ctime.
 2052     
 2053     Backport of:
 2054      > Patch: https://review.gluster.org/23154
 2055      > Change-Id: I5cfde6cb7f8939da9617506e3dc80bd840e0d749
 2056      > BUG: 1737288
 2057      > Signed-off-by: Kinglong Mee <kinglongmee@gmail.com>
 2058     
 2059     Change-Id: I5cfde6cb7f8939da9617506e3dc80bd840e0d749
 2060     fixes: bz#1737746
 2061     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2062 
 2063 commit aa45fcc1384ea6120d582cdad35b1d610e6437af
 2064 Author: Kotresh HR <khiremat@redhat.com>
 2065 Date:   Mon Jul 29 16:22:10 2019 +0530
 2066 
 2067     posix/ctime: Fix race during lookup ctime xattr heal
 2068     
 2069     Problem:
 2070     Ctime heals the ctime xattr ("trusted.glusterfs.mdata") in lookup
 2071     if it's not present. In a multi client scenario, there is a race
 2072     which results in updating the ctime xattr to older value.
 2073     
 2074     e.g. Let c1 and c2 be two clients and file1 be the file which
 2075     doesn't have the ctime xattr. Let the ctime of file1 be t1.
 2076     (from backend, ctime heals time attributes from backend when not present).
 2077     
 2078     Now following operations are done on mount
 2079     c1 -> ls -l /mnt/file1  |   c2 -> ls -l /mnt/file1;echo "append" >> /mnt/file1;
 2080     
 2081     The race is that the both c1 and c2 didn't fetch the ctime xattr in lookup,
 2082     so both of them tries to heal ctime to time 't1'. If c2 wins the race and
 2083     appends the file before c1 heals it, it sets the time to 't1' and updates
 2084     it to 't2' (because of append). Now c1 proceeds to heal and sets it to 't1'
 2085     which is incorrect.
 2086     
 2087     Solution:
 2088     Compare the times during heal and only update the larger time. This is the
 2089     general approach used in ctime feature but got missed with healing legacy
 2090     files.
 2091     
 2092     Backport of:
 2093      > Patch: https://review.gluster.org/23131
 2094      > BUG: 1734299
 2095      > Change-Id: I930bda192c64c3d49d0aed431ce23d3bc57e51b7
 2096      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2097     
 2098     fixes: bz#1737745
 2099     Change-Id: I930bda192c64c3d49d0aed431ce23d3bc57e51b7
 2100     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2101 
 2102 commit 05f9dc24e13df9f993438ee9b98b7a1052cf8b12
 2103 Author: Kotresh HR <khiremat@redhat.com>
 2104 Date:   Wed Jul 31 15:40:55 2019 +0530
 2105 
 2106     geo-rep: Fix mount broker setup issue
 2107     
 2108     Even the use builtin 'type' command as in patch [1]
 2109     causes issues if argument in question is not part of PATH
 2110     environment variable for that user. This patch fixes the
 2111     same by doing source /etc/profile. This was already being
 2112     used in another part of script.
 2113     
 2114     [1] https://review.gluster.org/23089
 2115     
 2116     
 2117     Backport of:
 2118      > Patch: https://review.gluster.org/23136/
 2119      > Change-Id: Iceb78835967ec6a4350983eec9af28398410c002
 2120      > BUG: 1734738
 2121      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2122     (cherry picked from commit 84f7794547522463841068063b22fd3a8d8fca2b)
 2123     
 2124     Change-Id: Iceb78835967ec6a4350983eec9af28398410c002
 2125     fixes: bz#1737712
 2126     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2127 
 2128 commit 24293229112670149226a44d4d2f87829e248718
 2129 Author: Pranith Kumar K <pkarampu@redhat.com>
 2130 Date:   Mon Jul 22 20:55:33 2019 +0530
 2131 
 2132     features/utime: Fix mem_put crash
 2133     
 2134     Problem:
 2135     When frame->local is not null FRAME_DESTROY calls mem_put on it.
 2136     Since the stub is already destroyed in call_resume(), it leads
 2137     to crash
 2138     
 2139     Fix:
 2140     Set frame->local to NULL before calling call_resume()
 2141     
 2142     Backport of:
 2143      > Patch: https://review.gluster.org/23091
 2144      > BUG: 1593542
 2145      > Change-Id: I0f8adf406f4cefdb89d7624ba7a9d9c2eedfb1de
 2146      > Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
 2147     
 2148     fixes: bz#1733885
 2149     Change-Id: I0f8adf406f4cefdb89d7624ba7a9d9c2eedfb1de
 2150     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2151 
 2152 commit 173ec95d89244f169af778677fbc508843d83ef4
 2153 Author: Kotresh HR <khiremat@redhat.com>
 2154 Date:   Mon Jun 24 13:06:49 2019 +0530
 2155 
 2156     ctime: Set mdata xattr on legacy files
 2157     
 2158     Problem:
 2159     The files which were created before ctime enabled would not
 2160     have "trusted.glusterfs.mdata"(stores time attributes) xattr.
 2161     Upon fops which modifies either ctime or mtime, the xattr
 2162     gets created with latest ctime, mtime and atime, which is
 2163     incorrect. It should update only the corresponding time
 2164     attribute and rest from backend
 2165     
 2166     Solution:
 2167     Creating xattr with values from brick is not possible as
 2168     each brick of replica set would have different times.
 2169     So create the xattr upon successful lookup if the xattr
 2170     is not created
 2171     
 2172     Note To Reviewers:
 2173     The time attributes used to set xattr is got from successful
 2174     lookup. Instead of sending the whole iatt over the wire via
 2175     setxattr, a structure called mdata_iatt is sent. The mdata_iatt
 2176     contains only time attributes.
 2177     
 2178     Backport of:
 2179      > Patch:  https://review.gluster.org/22936
 2180      > Change-Id: I5e535631ddef04195361ae0364336410a2895dd4
 2181      > BUG: 1593542
 2182      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2183     
 2184     Change-Id: I5e535631ddef04195361ae0364336410a2895dd4
 2185     updates: bz#1733885
 2186     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2187 
 2188 commit 70b52c3461ab7f9af570bfbf6b8117e25cc824ba
 2189 Author: Kotresh HR <khiremat@redhat.com>
 2190 Date:   Mon Jul 22 17:35:21 2019 +0530
 2191 
 2192     geo-rep: Fix mount broker setup issue
 2193     
 2194     The patch [1] added validation in gverify.sh to check if the gluster
 2195     binary exists on slave by executing gluster directly on slave.  But for
 2196     non-root users, even though gluster binary is present, path is not
 2197     found when executed via ssh. Hence validate the gluster binary using
 2198     bash builtin 'type' command.
 2199     
 2200     [1] https://review.gluster.org/19224
 2201     
 2202     Backport of:
 2203      > Patch: https://review.gluster.org/23089/
 2204      > Change-Id: I93ca62c0c5b1e16263e586ddbbca8407d60ca126
 2205      > BUG: 1731920
 2206      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2207     (cherry picked from commit 2aa731a259ea457c07494e3c3edf6d5f7c02fe77)
 2208     
 2209     Change-Id: I93ca62c0c5b1e16263e586ddbbca8407d60ca126
 2210     fixes: bz#1733880
 2211     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2212 
 2213 commit 589d0118bd29388f53996ac14c4e11a3f3ff0783
 2214 Author: Soumya Koduri <skoduri@redhat.com>
 2215 Date:   Thu Jul 25 12:56:12 2019 +0530
 2216 
 2217     gfapi: Fix deadlock while processing upcall
 2218     
 2219     As mentioned in bug1733166, there could be potential deadlock
 2220     while processing upcalls depending on how each xlator choose
 2221     to act on it. The right way of fixing such issues
 2222     is to change rpc callback communication process.
 2223     - https://github.com/gluster/glusterfs/issues/697
 2224     
 2225     Till then, making changes in gfapi layer to avoid any I/O
 2226     processing.
 2227     
 2228     This is backport of below mainline patch
 2229     > https://review.gluster.org/#/c/glusterfs/+/23108/
 2230     > bz#1733166
 2231     
 2232     Change-Id: I2079e95339e5d761d5060707f4555cfacab95c83
 2233     fixes: bz#1736341
 2234     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 2235 
 2236 commit f51491e684f79c87ee1f7b406f8c748d7e2bf8d7
 2237 Author: Raghavendra Bhat <raghavendra@redhat.com>
 2238 Date:   Tue Jul 2 16:50:23 2019 -0400
 2239 
 2240     features/snapview-server: obtain the list of snapshots inside the lock
 2241     
 2242     The current list of snapshots from priv->dirents is obtained outside
 2243     the lock.
 2244     
 2245     Change-Id: I8876ec0a38308da5db058397382fbc82cc7ac177
 2246     Fixes: bz#1731509
 2247     (cherry picked from commit 8e795617fd6f5193d0d52a336059ce1a28108c0e)
 2248 
 2249 commit 481c3c71c428c31ac84e2e1acf21b0ae07e4e32d
 2250 Author: N Balachandran <nbalacha@redhat.com>
 2251 Date:   Tue Jun 4 14:51:44 2019 +0530
 2252 
 2253     cluster/dht: Fix directory perms during selfheal
 2254     
 2255     Fixed a bug in the revalidate code path that wiped out
 2256     directory permissions if no mds subvol was found.
 2257     
 2258     Backport of:
 2259     > Change-Id: I8b4239ffee7001493c59d4032a2d3062586ea115
 2260     > fixes: bz#1716830
 2261     > Signed-off-by: N Balachandran <nbalacha@redhat.com>
 2262     
 2263     Change-Id: I8b4239ffee7001493c59d4032a2d3062586ea115
 2264     fixes: bz#1716848
 2265     Signed-off-by: N Balachandran <nbalacha@redhat.com>
 2266 
 2267 commit c3aab13faa451d368ef5044fea945cb2d5597434
 2268 Author: Sanju Rakonde <srakonde@redhat.com>
 2269 Date:   Fri Jul 12 16:28:04 2019 +0530
 2270 
 2271     glusterd: do not mark skip_locking as true for geo-rep operations
 2272     
 2273     We need to send the commit req to peers in case of geo-rep
 2274     operations even though it is a no volname operation. In commit
 2275     phase peers try to set the txn_opinfo which will fail because
 2276     it is a no volname operation where we don't require a commit
 2277     phase. We mark skip_locking as true for no volname operations,
 2278     but we have to give an exception to geo-rep operations, so that
 2279     they can set txn_opinfo in commit phase.
 2280     
 2281     Please refer to detailed RCA at the bug: 1730545
 2282     
 2283     fixes: bz#1730545
 2284     
 2285     Cherrypicked from https://review.gluster.org/#/c/glusterfs/+/23034/
 2286     
 2287     > Change-Id: I9f2478b12a281f6e052035c0563c40543493a3fc
 2288     > Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 2289     
 2290     Change-Id: I9f2478b12a281f6e052035c0563c40543493a3fc
 2291     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 2292 
 2293 commit 8761be7ba773071c46fdc2e449c4d68a26ae2e36
 2294 Author: hari gowtham <hgowtham@redhat.com>
 2295 Date:   Wed Jul 17 02:51:29 2019 +0530
 2296 
 2297     doc: Added release notes for 6.4
 2298     
 2299     Fixes: bz#1726935
 2300     
 2301     Change-Id: If682cd271c07fdcb62d77ff007ff502ee4a28501
 2302     Signed-off-by: hari gowtham <hgowtham@redhat.com>
 2303 
 2304 commit cf8c11ad27ff5cbc168a73879fff851f0e630cbb
 2305 Author: Xavi Hernandez <xhernandez@redhat.com>
 2306 Date:   Thu Jul 4 13:21:33 2019 +0200
 2307 
 2308     core: fix deadlock between statedump and fd_anonymous()
 2309     
 2310     There exists a deadlock between statedump generation and fd_anonymous()
 2311     function because they are acquiring inode table lock and inode lock in
 2312     reverse order.
 2313     
 2314     This patch modifies fd_anonymous() so that it takes inode lock only when
 2315     it's really necessary, avoiding the deadlock.
 2316     
 2317     Backport of:
 2318     > Change-Id: I24355447f0ea1b39e2546782ad07f0512cc381e7
 2319     > BUG: 1727068
 2320     > Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 2321     
 2322     Change-Id: I24355447f0ea1b39e2546782ad07f0512cc381e7
 2323     Fixes: bz#1729952
 2324     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 2325 
 2326 commit 08f8a3b8ea85cae64083f0425c7cee9500d27a16
 2327 Author: Anoop C S <anoopcs@redhat.com>
 2328 Date:   Wed Jun 12 15:41:27 2019 +0530
 2329 
 2330     extras/hooks: Install and package newly added post add-brick hook script
 2331     
 2332     https://review.gluster.org/c/glusterfs/+/22913 added a new SELinux hook
 2333     script as a post add-brick operation to label new brick paths. But the
 2334     change failed to install and package new script. Therefore making
 2335     necessary changes to Makefile and spec file to get it installed and
 2336     packaged.
 2337     
 2338     Backport of:
 2339     > Change-Id: I67b8f4982c2783c34a4bc749fb4387c19a038225
 2340     > fixes: bz#1717953
 2341     > Signed-off-by: Anoop C S <anoopcs@redhat.com>
 2342     
 2343     Change-Id: I67b8f4982c2783c34a4bc749fb4387c19a038225
 2344     fixes: bz#1718227
 2345     Signed-off-by: Anoop C S <anoopcs@redhat.com>
 2346     (cherry picked from commit 647a1b83fa39a635b01fcba38a330485fcd6afdb)
 2347 
 2348 commit 99977a7b694f6ee137e7b749f04e0cc744dd17e3
 2349 Author: Raghavendra Bhat <raghavendra@redhat.com>
 2350 Date:   Tue Jun 25 10:51:33 2019 -0400
 2351 
 2352     features/snapview-server: use the same volfile server for gfapi options
 2353     
 2354     snapview server xlator makes use of "localhost" as the volfile server while
 2355     initing the new glfs instance to talk to a snapshot. While localhost is fine,
 2356     better use the same volfile server that was used to start the snapshot
 2357     daemon containing the snapview-server xlator.
 2358     
 2359     Change-Id: I4485d39b0e3d066f481adc6958ace53ea33237f7
 2360     fixes: bz#1727984
 2361     Signed-off-by: Raghavendra Bhat <raghavendra@redhat.com>
 2362     (cherry picked from commit 36f6e6df0ff15d0464b869803710adca2b65e8ba)
 2363 
 2364 commit d06f676a3af0fc09074699ead25a4872d0a6020d
 2365 Author: Atin Mukherjee <amukherj@redhat.com>
 2366 Date:   Tue Jun 11 09:52:06 2019 +0530
 2367 
 2368     glusterd: add GF_TRANSPORT_BOTH_TCP_RDMA in glusterd_get_gfproxy_client_volfile
 2369     
 2370     ... with out which volume creation fails with "volume create: <xyz>: failed:
 2371     Failed to create volume files"
 2372     
 2373     >Fixes: bz#1716812
 2374     >Change-Id: I2f4c2c6d5290f066b54e1c1db19e25db9937bedb
 2375     >Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 2376     
 2377     Fixes: bz#1721105
 2378     Change-Id: I2f4c2c6d5290f066b54e1c1db19e25db9937bedb
 2379     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 2380 
 2381 commit 2d36dea60d079092cb9af0e9be1eb7954a4e32ee
 2382 Author: Vijay Bellur <vbellur@redhat.com>
 2383 Date:   Wed Feb 27 13:38:33 2019 -0800
 2384 
 2385     mgmt/glusterd: Fix a memory leak when peer detach fails
 2386     
 2387     Dictionary object is not being unref'd when an error happens
 2388     in __glusterd_handle_cli_deprobe(). This patch addresses that problem.
 2389     
 2390     Change-Id: I11e1f92d06dc9edd1260845256f435ea31ef1a87
 2391     fixes: bz#1683815
 2392     Signed-off-by: Vijay Bellur <vbellur@redhat.com>
 2393     (cherry picked from commit 16b4936696c8b602243513fbde0b20a1e8417432)
 2394 
 2395 commit 0bd67afd2bf0cba6c18e2b635af5f45ef4c0a852
 2396 Author: Atin Mukherjee <amukherj@redhat.com>
 2397 Date:   Tue Jun 25 11:11:10 2019 +0530
 2398 
 2399     glusterd: conditionally clear txn_opinfo in stage op
 2400     
 2401     ...otherwise this leads to a crash when volume status is run on a
 2402     heterogeneous mode.
 2403     
 2404     > Fixes: bz#1723658
 2405     > Change-Id: I0d39f412b2e5e9d3ef0a3462b90b38bb5364b09d
 2406     > Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 2407      (cherry picked from commit a72452fcf90679b28baec12d2769cbaa982bb4e4)
 2408     
 2409     Fixes: bz#1728126
 2410     Change-Id: I0d39f412b2e5e9d3ef0a3462b90b38bb5364b09d
 2411     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 2412 
 2413 commit fdbb808e6dda80044ff9cc868eca265ca9614485
 2414 Author: Soumya Koduri <skoduri@redhat.com>
 2415 Date:   Fri Jun 7 17:20:15 2019 +0530
 2416 
 2417     gfapi: fix incorrect initialization of upcall syncop arguments
 2418     
 2419     While sending upcall notifications via synctasks, the argument used to
 2420     carry relevant data for these tasks is not initialized properly. This patch
 2421     is to fix the same.
 2422     
 2423     This is backport of below mainline fix -
 2424     > fixes: bz#1718316
 2425     > patch url: https://review.gluster.org/#/c/glusterfs/+/22839/
 2426     > Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 2427     
 2428     Change-Id: I9fa8f841e71d3c37d3819fbd430382928c07176c
 2429     fixes: bz#1720635
 2430     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 2431     (cherry picked from commit bc6fd4cfa6ed34de3ffc02e2279fcc713f80f530)
 2432 
 2433 commit e60c6b72f7ff6153e8de98f77f0ad001a1adfba9
 2434 Author: Soumya Koduri <skoduri@redhat.com>
 2435 Date:   Fri Jun 7 19:33:07 2019 +0530
 2436 
 2437     upcall: Avoid sending notifications for invalid inodes
 2438     
 2439     For nameless LOOKUPs, server creates a new inode which shall
 2440     remain invalid until the fop is successfully processed post
 2441     which it is linked to the inode table.
 2442     
 2443     But incase if there is an already linked inode for that entry,
 2444     it discards that newly created inode which results in upcall
 2445     notification. This may result in client being bombarded with
 2446     unnecessary upcalls affecting performance if the data set is huge.
 2447     
 2448     This issue can be avoided by looking up and storing the upcall
 2449     context in the original linked inode (if exists), thus saving up on
 2450     those extra callbacks.
 2451     
 2452     This is backport of below mainline fix -
 2453     > fixes: bz#1718338
 2454     > patch url: https://review.gluster.org/#/c/glusterfs/+/22840/
 2455     > Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 2456     
 2457     Change-Id: I044a1737819bb40d1a049d2f53c0566e746d2a17
 2458     fixes: bz#1720633
 2459     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 2460 
 2461 commit fb93da37914458996987665d8e10f7ef87772133
 2462 Author: Michael Adam <obnox@samba.org>
 2463 Date:   Thu Jun 20 13:09:37 2019 +0200
 2464 
 2465     [RFC] change get_real_filename implementation to use ENOATTR instead of ENOENT
 2466     
 2467     get_real_filename is implemented as a virtual extended attribute to help
 2468     Samba implement the case-insensitive but case preserving SMB protocol
 2469     more efficiently. It is implemented as a getxattr call on the parent directory
 2470     with the virtual key of "get_real_filename:<entryname>" by looking for a
 2471     spelling with different case for the provided file/dir name (<entryname>)
 2472     and returning this correct spelling as a result if the entry is found.
 2473     Originally (05aaec645a6262d431486eb5ac7cd702646cfcfb), the
 2474     implementation used the ENOENT errno to return the authoritative answer
 2475     that <entryname> does not exist in any case folding.
 2476     
 2477     Now this implementation is actually a violation or misuse of the defined
 2478     API for the getxattr call which returns ENOENT for the case that the dir
 2479     that the call is made against does not exist and ENOATTR (or the synonym
 2480     ENODATA) for the case that the xattr does not exist.
 2481     
 2482     This was not a problem until the gluster fuse-bridge was changed
 2483     to do map ENOENT to ESTALE in 59629f1da9dca670d5dcc6425f7f89b3e96b46bf,
 2484     after which we the getxattr call for get_real_filename returned an
 2485     ESTALE instead of ENOENT breaking the expectation in Samba.
 2486     
 2487     It is an independent problem that ESTALE should not leak out to user
 2488     space but is intended to trigger retries between fuse and gluster.
 2489     But nevertheless, the semantics seem to be incorrect here and should
 2490     be changed.
 2491     
 2492     This patch changes the implementation of the get_real_filename virtual
 2493     xattr to correctly return ENOATTR instead of ENOENT if the file/directory
 2494     being looked up is not found.
 2495     
 2496     The Samba glusterfs_fuse vfs module which takes advantage of the
 2497     get_real_filename over a fuse mount will receive a corresponding change
 2498     to map ENOATTR to ENOENT. Without this change, it will still work
 2499     correctly, but the performance optimization for nonexisting files is
 2500     lost. On the other hand side, this change removes the distinction
 2501     between the old not-implemented case and the implemented case.
 2502     So Samba changed to treat ENOATTR like ENOENT will not work correctly
 2503     any more against old servers that don't implement get_real_filename.
 2504     I.e. existing files will be reported as non-existing
 2505     
 2506     Backport of:
 2507     > Change-Id: I971b427ab8410636d5d201157d9af70e0d075b67
 2508     > fixes: bz#1722977
 2509     > Signed-off-by: Michael Adam <obnox@samba.org>
 2510     
 2511     Change-Id: I971b427ab8410636d5d201157d9af70e0d075b67
 2512     fixes: bz#1723659
 2513     Signed-off-by: Michael Adam <obnox@samba.org>
 2514     (cherry picked from commit dc1b87fcfef08c9497b0c02b2410c9d18bbc2dba)
 2515 
 2516 commit c6391433b67f7ab4eab7f85e080aec11019acf2c
 2517 Author: Anoop C S <anoopcs@redhat.com>
 2518 Date:   Thu Jun 6 18:33:19 2019 +0530
 2519 
 2520     extras/hooks: Add SELinux label on new bricks during add-brick
 2521     
 2522     Backport of:
 2523     > Change-Id: Ifd8ae5eeb91b968cc1a9a9b5d15844c5233d56db
 2524     > fixes: bz#1717953
 2525     > Signed-off-by: Anoop C S <anoopcs@redhat.com>
 2526     
 2527     Change-Id: Ifd8ae5eeb91b968cc1a9a9b5d15844c5233d56db
 2528     fixes: bz#1718227
 2529     Signed-off-by: Anoop C S <anoopcs@redhat.com>
 2530     (cherry picked from commit 582f91fcad42b6b7da653d2a587d196a7a1e0204)
 2531 
 2532 commit 25e4a1249f3904a2a918194541566e3cda512c6b
 2533 Author: Krutika Dhananjay <kdhananj@redhat.com>
 2534 Date:   Wed May 8 13:00:51 2019 +0530
 2535 
 2536     features/shard: Fix block-count accounting upon truncate to lower size
 2537     
 2538     Backport of:
 2539     > BUG: bz#1705884
 2540     > Change-Id: I9128a192e9bf8c3c3a959e96b7400879d03d7c53
 2541     > Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
 2542     
 2543     The way delta_blocks is computed in shard is incorrect, when a file
 2544     is truncated to a lower size. The accounting only considers change
 2545     in size of the last of the truncated shards.
 2546     
 2547     FIX:
 2548     
 2549     Get the block-count of each shard just before an unlink at posix in
 2550     xdata.  Their summation plus the change in size of last shard
 2551     (from an actual truncate) is used to compute delta_blocks which is
 2552     used in the xattrop for size update.
 2553     
 2554     Change-Id: I9128a192e9bf8c3c3a959e96b7400879d03d7c53
 2555     fixes: bz#1716871
 2556     Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
 2557     (cherry picked from commit 400b66d568ad18fefcb59949d1f8368d487b9a80)
 2558 
 2559 commit 1c635e5c6961ea0fc625af6399a4727542599653
 2560 Author: Krutika Dhananjay <kdhananj@redhat.com>
 2561 Date:   Fri May 3 10:50:40 2019 +0530
 2562 
 2563     features/shard: Fix integer overflow in block count accounting
 2564     
 2565     Backport of:
 2566     > BUG: bz#1705884
 2567     > Change-Id: I2c1ddab17457f45e27428575ad16fa678fd6c0eb
 2568     > Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
 2569     
 2570     ... by holding delta_blocks in 64-bit int as opposed to 32-bit int.
 2571     
 2572     Change-Id: I2c1ddab17457f45e27428575ad16fa678fd6c0eb
 2573     updates: bz#1716871
 2574     Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
 2575     (cherry picked from commit e18e98659dd2b41eb59cf593fd625f1821a20abf)
 2576 
 2577 commit b6abdb8f936f92345cc44dfdcb282691cfbd3db8
 2578 Author: Mohit Agrawal <moagrawal@redhat.com>
 2579 Date:   Mon Jun 17 11:10:42 2019 +0530
 2580 
 2581     tests: subdir-mount.t is failing for brick_mux regrssion
 2582     
 2583     To avoid the failure wait to run hook script S13create-subdir-mounts.sh
 2584     after executed add-brick command by test case.
 2585     
 2586     Change-Id: I063b6d0f86a550ed0a0527255e4dfbe8f0a8c02e
 2587     fixes: bz#1726327
 2588     > fixes: bz#1720993
 2589     > Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 2590     > (Cherry pick from commit 25ad5aca23b257cdd129cd1d4518b048fbba87bb)
 2591     > (Reviewed on upstream link https://review.gluster.org/#/c/glusterfs/+/22877/)
 2592 
 2593 commit 1c32880f7af41dcd7dc4fcc38f5e8f1619de6ce1
 2594 Author: Jiffin Tony Thottan <jthottan@redhat.com>
 2595 Date:   Wed Jun 26 15:58:33 2019 +0530
 2596 
 2597     posix : add posix_set_ctime() in posix_ftruncate()
 2598     
 2599     >Backport of https://review.gluster.org/#/c/glusterfs/+/22948/
 2600     >Change-Id: I0cb5320fea71306e0283509ae47024f23874b53b
 2601     >fixes: bz#1723761
 2602     
 2603     Change-Id: I0cb5320fea71306e0283509ae47024f23874b53b
 2604     fixes: bz#1724558
 2605     Signed-off-by: Jiffin Tony Thottan <jthottan@redhat.com>
 2606     (cherry picked from commit 7d8be567f2f904fc74d0990ebce2e8afbedab918)
 2607 
 2608 commit 93aec95ee88d3b5313fae8f7d58b1322dabf444d
 2609 Author: N Balachandran <nbalacha@redhat.com>
 2610 Date:   Fri Jun 21 09:04:19 2019 +0530
 2611 
 2612     cluster/dht:  Fixed a memleak in dht_rename_cbk
 2613     
 2614     Fixed a memleak in dht_rename_cbk when creating
 2615     a linkto file.
 2616     
 2617     >Change-Id: I705adef3cb79e33806520fc2b15558e90e2c211c
 2618     >fixes: bz#1722698
 2619     
 2620     Change-Id: I705adef3cb79e33806520fc2b15558e90e2c211c
 2621     fixes: bz#1726294
 2622     Signed-off-by: N Balachandran <nbalacha@redhat.com>
 2623     (cherry picked from commit 532b0fc8b1ace9ad48fdaf643e0b1a34020b6cd8)
 2624 
 2625 commit 3d10901842cdc11f5cf9ed5c97837b4d2efe0b60
 2626 Author: Xavi Hernandez <xhernandez@redhat.com>
 2627 Date:   Fri Jun 21 11:28:08 2019 +0200
 2628 
 2629     core: fix memory allocation issues
 2630     
 2631     Two problems have been identified that caused that gluster's memory
 2632     usage were twice higher than required.
 2633     
 2634     1. An off by 1 error caused that all objects allocated from the memory
 2635        pools were taken from a pool bigger than required. Since each pool
 2636        corresponds to a size equal to a power of two, this was wasting half
 2637        of the available memory.
 2638     
 2639     2. The header information used for accounting on each memory object was
 2640        not taken into consideration when searching for a suitable memory
 2641        pool. It was added later when each individual block was allocated.
 2642        This made this space "invisible" to memory accounting.
 2643     
 2644     Credits: Thanks to Nithya Balachandran for identifying this problem and
 2645              testing this patch.
 2646     
 2647     Backport of:
 2648     > BUG: 1722802
 2649     > Change-Id: I90e27ad795fe51ca11c13080f62207451f6c138c
 2650     > Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 2651     
 2652     Fixes: bz#1724210
 2653     Change-Id: I90e27ad795fe51ca11c13080f62207451f6c138c
 2654     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 2655 
 2656 commit 5d4564833963c5d668bd9d73ac3921848d843eb2
 2657 Author: Pranith Kumar K <pkarampu@redhat.com>
 2658 Date:   Mon May 6 15:57:16 2019 +0530
 2659 
 2660     libglusterfs: Fix compilation when --disable-mempool is used
 2661     
 2662     Backport of:
 2663     > BUG: 1193929
 2664     > Change-Id: I245c065b209bcce5db939b6a0a934ba6fd393b47
 2665     > Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
 2666     
 2667     Updates: bz#1724210
 2668     Change-Id: I245c065b209bcce5db939b6a0a934ba6fd393b47
 2669     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
 2670 
 2671 commit 1ad5583c2a5899ed35e8bc656e8982e8c8299177
 2672 Author: Yaniv Kaul <ykaul@redhat.com>
 2673 Date:   Wed Feb 27 15:48:42 2019 +0200
 2674 
 2675     mem-pool.{c|h}: minor changes
 2676     
 2677     1. Removed some code that was not needed. It did not really do anything.
 2678     2. CALLOC -> MALLOC in one place.
 2679     
 2680     Compile-tested only!
 2681     
 2682     Backport of:
 2683     > BUG: 1193929
 2684     > Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 2685     > Change-Id: I4419161e1bb636158e32b5d33044b06f1eef2449
 2686     
 2687     Updates: bz#1724210
 2688     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 2689     Change-Id: I4419161e1bb636158e32b5d33044b06f1eef2449
 2690 
 2691 commit 6697af343dfbe135735a035cbf592b94750bd589
 2692 Author: Xavi Hernandez <xhernandez@redhat.com>
 2693 Date:   Tue Mar 5 18:58:20 2019 +0100
 2694 
 2695     core: avoid dynamic TLS allocation when possible
 2696     
 2697     Some interdependencies between logging and memory management functions
 2698     make it impossible to use the logging framework before initializing
 2699     memory subsystem because they both depend on Thread Local Storage
 2700     allocated through pthread_key_create() during initialization.
 2701     
 2702     This causes a crash when we try to log something very early in the
 2703     initialization phase.
 2704     
 2705     To prevent this, several dynamically allocated TLS structures have
 2706     been replaced by static TLS reserved at compile time using '__thread'
 2707     keyword. This also reduces the number of error sources, making
 2708     initialization simpler.
 2709     
 2710     Backport of:
 2711     > BUG: 1193929
 2712     > Change-Id: I8ea2e072411e30790d50084b6b7e909c7bb01d50
 2713     > Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 2714     
 2715     Updates: bz#1724210
 2716     Change-Id: I8ea2e072411e30790d50084b6b7e909c7bb01d50
 2717     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 2718 
 2719 commit b7b76714691d464b09a6363ccc2783080cb17ea2
 2720 Author: Kotresh HR <khiremat@redhat.com>
 2721 Date:   Thu Jun 13 16:23:21 2019 +0530
 2722 
 2723     posix/ctime: Fix ctime upgrade issue
 2724     
 2725     Problem:
 2726     On a EC volume, during upgrade from the older version where
 2727     ctime feature is not enabled(or not present) to the newer
 2728     version where the ctime feature is available (enabled default),
 2729     the self heal hangs and doesn't complete.
 2730     
 2731     Cause:
 2732     The ctime feature has both client side code (utime) and
 2733     server side code (posix). The feature is driven from client.
 2734     Only if the client side sets the time in the frame, should
 2735     the server side sets the time attributes in xattr. But posix
 2736     setattr/fseattr was not doing that. When one of the server
 2737     nodes is updated, since ctime is enabled by default, it
 2738     starts setting xattr on setattr/fseattr on the updated node/brick.
 2739     
 2740     On a EC volume the first two updated nodes(bricks) are not a
 2741     problem because there are 4 other bricks with consistent data.
 2742     However once the third brick is updated, the new attribute(mdata xattr)
 2743     will cause an inconsistency on metadata on 3 bricks, which
 2744     prevents the file to be repaired.
 2745     
 2746     Fix:
 2747     Don't create mdata xattr with utimes/utimensat system call.
 2748     Only update if already present.
 2749     
 2750     Backport of:
 2751      > Patch: https://review.gluster.org/22858
 2752      > Change-Id: Ieacedecb8a738bb437283ef3e0f042fd49dc4c8c
 2753      > BUG: 1720201
 2754      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2755     
 2756     Change-Id: Ieacedecb8a738bb437283ef3e0f042fd49dc4c8c
 2757     fixes: bz#1722805
 2758     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2759 
 2760 commit dbb0c4de0d9f3b6cc77649fe8cd683c171eb1c8e
 2761 Author: Kotresh HR <khiremat@redhat.com>
 2762 Date:   Thu Jun 13 22:43:47 2019 +0530
 2763 
 2764     uss: Fix tar issue with ctime and uss enabled
 2765     
 2766     Problem:
 2767     If ctime and uss enabled, tar still complains with 'file
 2768     changed as we read it'
 2769     
 2770     Cause:
 2771     To clear nfs cache (gluster-nfs), the ctime was incremented
 2772     in snap-view client on stat cbk.
 2773     
 2774     Fix:
 2775     The ctime should not be incremented manually. Since gluster-nfs
 2776     is planning to be deprecated, this code is being removed to
 2777     fix the issue.
 2778     
 2779     Backport of:
 2780      > Patch: https://review.gluster.org/2861/
 2781      > Change-Id: Iae7f100c20fce880a50b008ba716077350281404
 2782      > BUG: 1720290
 2783      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2784        (cherry picked from commit 01846e7b9b0b92e4a10f5cbcc921bad90441660d)
 2785     
 2786     Change-Id: Iae7f100c20fce880a50b008ba716077350281404
 2787     fixes: bz#1721783
 2788     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2789 
 2790 commit 46edd697b2564d2cf1269fe9059ed2198a47a946
 2791 Author: Susant Palai <spalai@redhat.com>
 2792 Date:   Mon Apr 22 21:18:30 2019 +0530
 2793 
 2794     core: fix hang issue in __gf_free
 2795     
 2796     Currently GF_ASSERT is done under mem_accounting lock at some places.
 2797     On a GF_ASSERT failure, gf_msg_callingfn is called which calls gf_malloc
 2798     internally and it takes the same mem_accounting lock leading to deadlock.
 2799     
 2800     This is a temporary fix to avoid any hang issue in master.
 2801     https://review.gluster.org/#/c/glusterfs/+/22589/ is being worked on
 2802     in the mean while so that GF_ASSERT can be used under mem_accounting
 2803     lock.
 2804     
 2805     Backport of:
 2806     > Change-Id: I6d67f23979e7edd2695bdc6aab2997dae4a4060a
 2807     > BUG: 1700865
 2808     > Signed-off-by: Susant Palai <spalai@redhat.com>
 2809     
 2810     Change-Id: I6d67f23979e7edd2695bdc6aab2997dae4a4060a
 2811     Updates: bz#1724210
 2812     Signed-off-by: Susant Palai <spalai@redhat.com>
 2813 
 2814 commit c639b94d2b2b55f15435fe49257184b4a2aaaed1
 2815 Author: Yaniv Kaul <ykaul@redhat.com>
 2816 Date:   Thu Mar 21 19:51:30 2019 +0200
 2817 
 2818     mem-pool: remove dead code.
 2819     
 2820     Backport of:
 2821     > Change-Id: I3bbda719027b45e1289db2e6a718627141bcbdc8
 2822     > BUG: 1193929
 2823     > Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 2824     
 2825     Change-Id: I3bbda719027b45e1289db2e6a718627141bcbdc8
 2826     updates: bz#1724210
 2827     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 2828 
 2829 commit 5de46c74b281e6d0cf7168f8869bd179e7fff489
 2830 Author: Kotresh HR <khiremat@redhat.com>
 2831 Date:   Thu Jun 6 12:54:04 2019 +0530
 2832 
 2833     tests/utils: Fix py2/py3 util python scripts
 2834     
 2835     Following files are fixed.
 2836     
 2837     tests/bugs/distribute/overlap.py
 2838     tests/utils/changelogparser.py
 2839     tests/utils/create-files.py
 2840     tests/utils/gfid-access.py
 2841     tests/utils/libcxattr.py
 2842     
 2843     Backport of:
 2844     > Change-Id: I3db857cc19e19163d368d913eaec1269fbc37140
 2845     > BUG: 1193929
 2846     > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2847     
 2848     Change-Id: I3db857cc19e19163d368d913eaec1269fbc37140
 2849     updates: bz#1679998
 2850     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2851 
 2852 commit 9acd89087baea32b06142d51568df78e0ce57d54
 2853 Author: Hari Gowtham <hgowtham@redhat.com>
 2854 Date:   Sat Jun 8 20:28:10 2019 +0530
 2855 
 2856     doc: Added release notes for 6.3
 2857     
 2858     Fixes: bz#1718555
 2859     
 2860     Change-Id: Ibe540110156d70dc1bf308eccd08d49339f4ef7a
 2861     Signed-off-by: Hari Gowtham <hgowtham@redhat.com>
 2862 
 2863 commit 7a387f97315f55e1c741d6ad749fb5621f067de0
 2864 Author: Xavi Hernandez <xhernandez@redhat.com>
 2865 Date:   Thu May 9 11:07:18 2019 +0200
 2866 
 2867     cluster/ec: honor contention notifications for partially acquired locks
 2868     
 2869     EC was ignoring lock contention notifications received while a lock was
 2870     being acquired. When a lock is partially acquired (some bricks have
 2871     granted the lock but some others not yet) we can receive notifications
 2872     from acquired bricks, which should be honored, since we may not receive
 2873     more notifications after that.
 2874     
 2875     Since EC was ignoring them, once the lock was acquired, it was not
 2876     released until the eager-lock timeout, causing unnecessary delays on
 2877     other clients.
 2878     
 2879     This fix takes into consideration the notifications received before
 2880     having completed the full lock acquisition. After that, the lock will
 2881     be releaed as soon as possible.
 2882     
 2883     Backport of:
 2884     > BUG: bz#1708156
 2885     > Change-Id: I2a306dbdb29fb557dcab7788a258bd75d826cc12
 2886     > Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 2887     
 2888     Fixes: bz#1714172
 2889     Change-Id: I2a306dbdb29fb557dcab7788a258bd75d826cc12
 2890     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 2891 
 2892 commit 8c0bb45c9f002461d5c4a63e35ae215958405fb5
 2893 Author: Amgad Saleh <amgad.saleh@nokia.com>
 2894 Date:   Thu May 23 20:27:03 2019 -0500
 2895 
 2896     If bind-address is IPv6 return it successfully
 2897     
 2898     >Change-Id: Ibd37b6ea82b781a1a266b95f7596874134f30079
 2899     >fixes: bz#1713730
 2900     >Signed-off-by: Amgad Saleh <amgad.saleh@nokia.com>
 2901     
 2902     fixes: bz#1715012
 2903     Change-Id: I9a9877b6c32a1ccbd119301a4225808ddaa02de4
 2904     Signed-off-by: Hari Gowtham <hgowtham@redhat.com>
 2905 
 2906 commit 630b896166fe7d718958bcf57faad4985572ea05
 2907 Author: Hari Gowtham <hgowtham@redhat.com>
 2908 Date:   Thu May 23 17:13:04 2019 +0530
 2909 
 2910     doc: Added release notes for 6.2
 2911     
 2912     Fixes: bz#1701203
 2913     
 2914     Change-Id: Id105192610726e370fa977df2c29723201b94695
 2915     Signed-off-by: Hari Gowtham <hgowtham@redhat.com>
 2916 
 2917 commit fa8c8a3fa8bc217bc869fb3db09cb49c6457e402
 2918 Author: Kotresh HR <khiremat@redhat.com>
 2919 Date:   Tue May 14 11:05:45 2019 +0530
 2920 
 2921     geo-rep: Convert gfid conflict resolutiong logs into debug
 2922     
 2923     The gfid conflict resolution code path is not supposed
 2924     to hit in generic code path. But few of the heavy rename
 2925     workload (BUG: 1694820) makes it a generic case. So
 2926     logging the entries to be fixed as INFO floods the log
 2927     in these particular workloads. Hence convert them to DEBUG.
 2928     
 2929     Backport of:
 2930      > Patch: https://review.gluster.org/22720
 2931      > BUG: 1709653
 2932      > Change-Id: I4d5e102b87be5fe5b54f78f329e588882d72b9d9
 2933      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2934     
 2935     fixes: bz#1712223
 2936     Change-Id: I4d5e102b87be5fe5b54f78f329e588882d72b9d9
 2937     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2938 
 2939 commit 60df33ab0b7d57e3945d70ed933a5091c4d0b86c
 2940 Author: Kotresh HR <khiremat@redhat.com>
 2941 Date:   Wed May 8 11:26:06 2019 +0530
 2942 
 2943     geo-rep: Fix sync hang with tarssh
 2944     
 2945     Problem:
 2946     Geo-rep sync hangs when tarssh is used as sync
 2947     engine at heavy workload.
 2948     
 2949     Analysis and Root cause:
 2950     It's found out that the tar process was hung.
 2951     When debugged further, it's found out that stderr
 2952     buffer of tar process on master was full i.e., 64k.
 2953     When the buffer was copied to a file from /proc/pid/fd/2,
 2954     the hang is resolved.
 2955     
 2956     This can happen when files picked by tar process
 2957     to sync doesn't exist on master anymore. If this count
 2958     increases around 1k, the stderr buffer is filled up.
 2959     
 2960     Fix:
 2961     The tar process is executed using Popen with stderr as PIPE.
 2962     The final execution is something like below.
 2963     
 2964     tar | ssh <args> root@slave tar --overwrite -xf - -C <path>
 2965     
 2966     It was waiting on ssh process first using communicate() and then tar.
 2967     Note that communicate() reads stdout and stderr. So when stderr of tar
 2968     process is filled up, there is no one to read until untar via ssh is
 2969     completed. This can't happen and leads to deadlock.
 2970     Hence we should be waiting on both process parallely, so that stderr is
 2971     read on both processes.
 2972     
 2973     Backport of:
 2974      > Patch: https://review.gluster.org/22684/
 2975      > Change-Id: I609c7cc5c07e210c504771115b4d551a2e891adf
 2976      > BUG: 1707728
 2977      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2978     
 2979     Change-Id: I609c7cc5c07e210c504771115b4d551a2e891adf
 2980     fixes: bz#1709738
 2981     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2982 
 2983 commit d6f523927bdd5d8914650aae7bd6e6f69e91b49f
 2984 Author: Kotresh HR <khiremat@redhat.com>
 2985 Date:   Wed May 8 14:10:05 2019 +0530
 2986 
 2987     tests/geo-rep: Fix arequal checksum comparison
 2988     
 2989     The arequal checkusm comparison was always returning
 2990     as successful, eventhough, if it was not. Fixed the same.
 2991     
 2992     Backport of:
 2993     > Patch: https://review.gluster.org/22682
 2994     > Change-Id: I5083da25c0954126e452d06311d2d376f8540555
 2995     > BUG: 1707742
 2996     > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 2997     (cherry picked from commit 288cffd1ab7180cccfcdea36d0c469b9fa52108f)
 2998     
 2999     Change-Id: I5083da25c0954126e452d06311d2d376f8540555
 3000     fixes: bz#1712220
 3001     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 3002 
 3003 commit 072a21576a65b5b0b2597115280972376f076a91
 3004 Author: Kotresh HR <khiremat@redhat.com>
 3005 Date:   Wed May 8 10:56:31 2019 +0530
 3006 
 3007     geo-rep: Fix sync-method config
 3008     
 3009     Problem:
 3010     When 'use_tarssh' is set to true, it exits with successful
 3011     message but the default 'rsync' was used as sync-engine.
 3012     The new config 'sync-method' is not allowed to set from cli.
 3013     
 3014     Analysis and Fix:
 3015     The 'use_tarssh' config is deprecated with new
 3016     config framework and 'sync-method' is the new
 3017     config to choose sync-method i.e. tarssh or rsync.
 3018     This patch fixes the 'sync-method' config. The allowed
 3019     values are tarssh and rsync.
 3020     
 3021     Backport of:
 3022      > Patch: https://review.gluster.org/22683
 3023      > Change-Id: I0edb0319cad0455b29e49f2f08a64ce324735e84
 3024      > BUG: 1707686
 3025      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 3026     
 3027     Change-Id: I0edb0319cad0455b29e49f2f08a64ce324735e84
 3028     fixes: bz#1709737
 3029     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 3030 
 3031 commit 219c9bc92c721d49de78fd5a4d98aca7d3c66ad4
 3032 Author: Sunny Kumar <sunkumar@redhat.com>
 3033 Date:   Tue Apr 2 12:38:09 2019 +0530
 3034 
 3035     geo-rep: Fix rename with existing destination with same gfid
 3036     
 3037     Problem:
 3038        Geo-rep fails to sync the rename properly if destination exists.
 3039     It results in source to be remained on slave causing more number of
 3040     files on slave. Also heavy rename workload like logrotate caused
 3041     lot of ESTALE errors
 3042     
 3043     Cause:
 3044        Geo-rep fails to sync rename if destination exists if creation
 3045     of source file also falls into single batch of changelogs being
 3046     processed. This is because, after fixing problematic gfids verifying
 3047     from master, while re-processing original entries, CREATE also was
 3048     re-processed causing more files on slave and rename to be failed.
 3049     
 3050     Solution:
 3051        Entries need to be removed from retrial list after fixing
 3052     problematic gfids on slave so that it's not re-created again on slave.
 3053        Also treat ESTALE as EEXIST so that the error is properly handled
 3054     verifying the op on master volume.
 3055     
 3056     Backport of:
 3057      > Patch: https://review.gluster.org/22519/
 3058      > Change-Id: I50cf289e06b997adddff0552bf2466d9201dd1f9
 3059      > BUG: 1694820
 3060      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 3061      > Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 3062     
 3063     Change-Id: I50cf289e06b997adddff0552bf2466d9201dd1f9
 3064     fixes: bz#1709734
 3065     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 3066 
 3067 commit 4a4710b81000e330fc655d95f068ea1112f1f4fb
 3068 Author: Kotresh HR <khiremat@redhat.com>
 3069 Date:   Tue Apr 23 10:45:25 2019 +0530
 3070 
 3071     geo-rep: Fix entries and metadata counters in geo-rep status
 3072     
 3073     Entries counter was incremented twice and decremented only
 3074     once. And entries count was being used in place of metadata
 3075     entries. This patch fixes both of them.
 3076     
 3077     Backport of:
 3078      > Patch: https://review.gluster.org/22603
 3079      > BUG: 1512093
 3080      > Change-Id: I5601a5fe8d25c9d65b72eb529171e7117ebbb67f
 3081      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 3082       (cherry picked from commit e0a6941af6ed352911698012ada895d1296b549e)
 3083     
 3084     fixes: bz#1709685
 3085     Change-Id: I5601a5fe8d25c9d65b72eb529171e7117ebbb67f
 3086     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 3087 
 3088 commit 84b2d080812247acf204468e8b25b09e65b464aa
 3089 Author: Pranith Kumar K <pkarampu@redhat.com>
 3090 Date:   Sun May 5 21:17:24 2019 +0530
 3091 
 3092     cluster/ec: Reopen shouldn't happen with O_TRUNC
 3093     
 3094     Problem:
 3095     Doing re-open with O_TRUNC will truncate the fragment even when it is not
 3096     needed needing extra heals
 3097     
 3098     Fix:
 3099     At the time of re-open don't use O_TRUNC.
 3100     
 3101     fixes bz#1709660
 3102     Change-Id: Idc6408968efaad897b95a5a52481c66e843d3fb8
 3103     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
 3104 
 3105 commit 9f225fa2c419b3ecd17ac49bef6d727e1fc55fde
 3106 Author: Ravishankar N <ravishankar@redhat.com>
 3107 Date:   Tue Apr 9 09:44:33 2019 +0530
 3108 
 3109     afr: thin-arbiter lock release fixes
 3110     
 3111     - pass fop state instead of afr local to
 3112     afr_ta_dom_lock_check_and_release()
 3113     
 3114     - avoid afr_lock_release_synctask() being called simultaneosuly from
 3115     notify code path and transaction (post-op) code path due to races.
 3116     
 3117     - Check if the post-op on TA is valid based on event_gen checks.
 3118     
 3119     - Invalidate in-memory information when we get TA child down.
 3120     
 3121     Note: Thi patch addresses some pending review comments of commit
 3122     053b1309dc8fbc05fcde5223e734da9f694cf5cc
 3123     (https://review.gluster.org/#/c/glusterfs/+/20095/)
 3124     
 3125     fixes: bz#1709130
 3126     Change-Id: I2ccd7e1b53362f9f3fed8680aecb23b5011eb18c
 3127     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
 3128     (cherry picked from commit 9ab2747da78061882f6734df4b265bce11adaef1)
 3129 
 3130 commit a1fa0379b7ae059a9fbce737cd477407ab082c05
 3131 Author: Ashish Pandey <aspandey@redhat.com>
 3132 Date:   Fri Mar 8 10:42:12 2019 +0530
 3133 
 3134     cluster/afr : TA: Return actual error code in case of failure
 3135     
 3136     In afr_ta_post_op_do, we were sending EIO for every failure.
 3137     However, the original error code should be sent.
 3138     
 3139     Change-Id: I9fdc15dac00d758baf8e6f14db244f526481a63a
 3140     updates: bz#1709143
 3141     Signed-off-by: Ashish Pandey <aspandey@redhat.com>
 3142     (cherry picked from commit 63159cdb5374f458d7d2bffec24d4720ffc96d6c)
 3143 
 3144 commit ab296b5be79ac2859072fd89cda32715f2ac57a5
 3145 Author: N Balachandran <nbalacha@redhat.com>
 3146 Date:   Wed Apr 10 14:28:55 2019 +0530
 3147 
 3148     cluster/dht: Refactor dht lookup functions
 3149     
 3150     Part 2: Modify dht_revalidate_cbk to call
 3151     dht_selfheal_directory instead of separate calls
 3152     to heal attrs and xattrs.
 3153     
 3154     Change-Id: Id41ac6c4220c2c35484812bbfc6157fc3c86b142
 3155     fixes: bz#1707393
 3156     Signed-off-by: N Balachandran <nbalacha@redhat.com>
 3157 
 3158 commit 7f780f30e5b1c54702a2bf4f5624bac7b8912eee
 3159 Author: N Balachandran <nbalacha@redhat.com>
 3160 Date:   Mon Mar 25 15:56:56 2019 +0530
 3161 
 3162     cluster/dht: refactor dht lookup functions
 3163     
 3164     Part 1:  refactor the dht_lookup_dir_cbk
 3165     and dht_selfheal_directory functions.
 3166     Added a simple dht selfheal directory test
 3167     
 3168     Change-Id: I1410c26359e3c14b396adbe751937a52bd2fcff9
 3169     updates: bz#1707393
 3170     Signed-off-by: N Balachandran <nbalacha@redhat.com>
 3171 
 3172 commit 3fc7d08c1d5dd9ac9079ee60ea734342eafb42d0
 3173 Author: Sanju Rakonde <srakonde@redhat.com>
 3174 Date:   Fri Apr 26 22:28:53 2019 +0530
 3175 
 3176     glusterd: define dumpops in the xlator_api of glusterd
 3177     
 3178     Problem: statedump is not capturing information related to glusterd
 3179     
 3180     Solution: statdump is not capturing glusterd info because
 3181     trav->dumpops is null in gf_proc_dump_single_xlator_info ()
 3182     where trav is glusterd xlator object. trav->dumpops is null
 3183     because we missed to define dumpops in xlator_api of glusterd.
 3184     defining dumpops in xlator_api of glusterd fixes the issue.
 3185     
 3186     fixes: bz#1703759
 3187     Change-Id: If85429ecb1ef580aced8d5b88d09fc15258bfc4c
 3188     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 3189     (cherry picked from commit 5d866c13efdcdeddf184f012aa88a652e90ff22e)
 3190 
 3191 commit b2c6983d0c9eb980024743d8f9825bb4dcd44b6a
 3192 Author: Kotresh HR <khiremat@redhat.com>
 3193 Date:   Fri Apr 19 11:34:37 2019 +0530
 3194 
 3195     ctime: Fix log repeated logging during open
 3196     
 3197     The log "posix set mdata failed, No ctime" logged repeatedly
 3198     after the fix [1]. Those could be internal fops. This patch
 3199     fixes the same.
 3200     
 3201     [1] https://review.gluster.org/22540
 3202     
 3203     Backport of:
 3204      > Patch: https://review.gluster.org/#/c/glusterfs/+/22591/
 3205      > BUG:1701457
 3206      > Change-Id: I42799a90b976982cedb0ca11fa224d555eb05650
 3207      > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 3208     (cherry picked from commit 2d39572821306496c96797f4d122f8200aae4585)
 3209     
 3210     fixes: bz#1702734
 3211     Change-Id: I42799a90b976982cedb0ca11fa224d555eb05650
 3212     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 3213 
 3214 commit 2aa9898720e3be2a203bec960103afc2558ddff6
 3215 Author: Milan Zink <mzink@redhat.com>
 3216 Date:   Mon Feb 5 15:04:37 2018 +0100
 3217 
 3218     extras/hooks: syntactical errors in SELinux hooks, scipt logic improved
 3219     
 3220     Fixes: bz#1701818
 3221     Change-Id: Ia5fa1df81bbaec3a84653d136a331c76b457f42c
 3222     Signed-off-by: Milan Zink <zeten30@gmail.com>
 3223     (cherry picked from commit 1ad201a9fd6748d7ef49fb073fcfe8c6858d557d)
 3224 
 3225 commit bf69fa4727f2b4432d7d54312bc0177cbcf44936
 3226 Author: Pranith Kumar K <pkarampu@redhat.com>
 3227 Date:   Tue Apr 16 14:19:47 2019 +0530
 3228 
 3229     cluster/ec: fix fd reopen
 3230     
 3231     Currently EC tries to reopen fd's that have been opened while a brick
 3232     was down. This is done as part of regular write operations, just after
 3233     having acquired the locks, and it's sent as a sub-fop of the main write
 3234     fop.
 3235     
 3236     There were two problems:
 3237     
 3238     1. The reopen was attempted on all UP bricks, even if a previous lock
 3239     didn't succeed. This is incorrect because most probably the open will
 3240     fail.
 3241     
 3242     2. If reopen is sent and fails, the error is propagated to the main
 3243     operation, causing it to fail when it shouldn't.
 3244     
 3245     To fix this, we only attempt reopens on bricks where the current fop
 3246     owns a lock, and we prevent any error to be propagated to the main
 3247     fop.
 3248     
 3249     To implement this behaviour an argument used to indicate the minimum
 3250     number of required answers has overloaded to also include some flags. To
 3251     make the change consistent, it has been necessary to rename the
 3252     argument, which means that a lot of files have been changed. However
 3253     there are no functional changes.
 3254     
 3255     This change has also uncovered a problem in discard code, which didn't
 3256     correctely process requests of small sizes because no real discard fop
 3257     was being processed, only a write of 0's on some region. In this case
 3258     some fields of the fop remained uninitialized or with incorrect values.
 3259     To fix this, a new function has been created to simulate success on a
 3260     fop and it's used in the discard case.
 3261     
 3262     Thanks to Pranith for providing a test script that has also detected an
 3263     issue in this patch. This patch includes a small modification of this
 3264     script to force data to be written into bricks before stopping them.
 3265     
 3266     Backport of:
 3267     > Change-Id: If272343873369186c2fb8f43c1d9c52c3ea304ec
 3268     > BUG: bz#1699866
 3269     > Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 3270     
 3271     Change-Id: If272343873369186c2fb8f43c1d9c52c3ea304ec
 3272     Fixes: bz#1699917
 3273     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 3274 
 3275 commit ab6c9ff91a56e38ca80b0ff855f3aeafefd99fbb
 3276 Author: Xavi Hernandez <xhernandez@redhat.com>
 3277 Date:   Fri Apr 12 13:40:59 2019 +0200
 3278 
 3279     core: handle memory accounting correctly
 3280     
 3281     When a translator stops, memory accounting for that translator is not
 3282     destroyed (because there could remain memory allocated that references
 3283     it), but mutexes that coordinate updates of memory accounting were
 3284     destroyed. This caused incorrect memory accounting and even crashes in
 3285     debug mode.
 3286     
 3287     This patch also fixes some other things:
 3288     
 3289     * Reduce the number of atomic operations needed to manage memory
 3290       accounting.
 3291     * Correctly account memory when realloc() is used.
 3292     * Merge two critical sections into one.
 3293     * Cleaned the code a bit.
 3294     
 3295     Backport of:
 3296     > Change-Id: Id5eaee7338729b9bc52c931815ca3ff1e5a7dcc8
 3297     > BUG: bz#1659334
 3298     > Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 3299     
 3300     Change-Id: Id5eaee7338729b9bc52c931815ca3ff1e5a7dcc8
 3301     Fixes: bz#1702271
 3302     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 3303 
 3304 commit 5c521d403fbee36df5d44e39090b0030ca57c98b
 3305 Author: ShyamsundarR <srangana@redhat.com>
 3306 Date:   Wed Apr 17 11:34:31 2019 -0400
 3307 
 3308     doc: Added release notes for 6.1
 3309     
 3310     Fixes: bz#1692394
 3311     Change-Id: I44a28ec98932d54851dbf997988e1f8fd9877f0a
 3312     Signed-off-by: ShyamsundarR <srangana@redhat.com>
 3313 
 3314 commit 1bbf2f771322ae1fd5181360ce36fed30b6ff2ab
 3315 Author: Atin Mukherjee <amukherj@redhat.com>
 3316 Date:   Tue Apr 16 17:20:34 2019 +0530
 3317 
 3318     glusterd: fix loading ctime in client graph logic
 3319     
 3320     Commit efbf8ab wasn't handling all the scenarios of toggling ctime
 3321     option correctly and more over a ! had completely tossed up the logic.
 3322     
 3323     Fixes: bz#1698471
 3324     Change-Id: If12e2f69045e59878992ee2cd0518cc0eabcce0d
 3325     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 3326 
 3327 commit ec95f02b1ebe000e3bb6c7cc9c69a2ed172f50cc
 3328 Author: Aravinda VK <avishwan@redhat.com>
 3329 Date:   Tue Mar 26 13:20:13 2019 +0530
 3330 
 3331     geo-rep: fix integer config validation
 3332     
 3333     ssh-port validation is mentioned as `validation=int` in template
 3334     `gsyncd.conf`, but not handled this during geo-rep config set.
 3335     
 3336     Backport of https://review.gluster.org/22418
 3337     
 3338     Fixes: bz#1695445
 3339     Change-Id: I3f19d9b471b0a3327e4d094dfbefcc58ed2c34f6
 3340     Signed-off-by: Aravinda VK <avishwan@redhat.com>
 3341     (cherry picked from commit c574984e19d59e351372eacce0ce11fb36e96dd4)
 3342 
 3343 commit cbb52082da9d968908dc2f62b59328e948ced271
 3344 Author: Aravinda VK <avishwan@redhat.com>
 3345 Date:   Thu Mar 14 20:06:54 2019 +0530
 3346 
 3347     geo-rep: IPv6 support
 3348     
 3349     `address_family=inet6` needs to be added while mounting master and
 3350     slave volumes in gverify script.
 3351     
 3352     New option introduced to gluster cli(`--inet6`) which will be used
 3353     internally by geo-rep while calling `gluster volume info
 3354     --remote-host=<ipv6>`.
 3355     
 3356     Backport of https://review.gluster.org/22363
 3357     
 3358     Fixes: bz#1695436
 3359     Change-Id: I1e0d42cae07158df043e64a2f991882d8c897837
 3360     Signed-off-by: Aravinda VK <avishwan@redhat.com>
 3361     (cherry picked from commit 240e1d6821fbb779c3dd73f6f0225d755a5b7cc6)
 3362 
 3363 commit f39fc92d6521a5b87a635dd35989c0af90e7b789
 3364 Author: Kinglong Mee <kinglongmee@gmail.com>
 3365 Date:   Mon Mar 18 20:47:54 2019 +0800
 3366 
 3367     cluster-syncop: avoid duplicate unlock of inodelk/entrylk
 3368     
 3369     When using ec, there are many messages at brick log as,
 3370     
 3371     [inodelk.c:514:__inode_unlock_lock] 0-test-locks:  Matching lock not found for unlock 0-9223372036854775807, lo=68e040a84b7f0000 on 0x7f208c006f78
 3372     [MSGID: 115053] [server-rpc-fops_v2.c:280:server4_inodelk_cbk] 0-test-server: 2557439: INODELK <gfid:df4e41be-723f-4289-b7af-b4272b3e880c> (df4e41be-723f-4289-b7af-b4272b3e880c), client: CTX_ID:67d4a7f3-605a-4965-89a5-31309d62d1fa-GRAPH_ID:0-PID:1659-HOST:openfs-node2-PC_NAME:test-client-1-RECON_NO:-28, error-xlator: test-locks [Invalid argument]
 3373     
 3374     > Change-Id: Ib164d29ebb071f620a4ca9679c4345ef7c88512a
 3375     > Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
 3376     (cherry-pick of https://review.gluster.org/#/c/glusterfs/+/22377/)
 3377     
 3378     Change-Id: I6e0eaba6aca6cd99ba2a5ae2e580167d54d8ea26
 3379     Updates: bz#1690950
 3380     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
 3381 
 3382 commit b1186532c7fd093232617979aa8f3e932a645278
 3383 Author: Raghavendra G <rgowdapp@redhat.com>
 3384 Date:   Fri Mar 22 10:40:45 2019 +0530
 3385 
 3386     transport/socket: log shutdown msg occasionally
 3387     
 3388     Change-Id: If3fc0884e7e2f45de2d278b98693b7a473220a5e
 3389     Signed-off-by: Raghavendra G <rgowdapp@redhat.com>
 3390     Fixes: bz#1679904
 3391     (cherry picked from commit ec1b84300fe267dd12c1e42e7e91905db935f1e2)
 3392 
 3393 commit 7ec3a8527f2fb341fc1f6e54ded36b157e4904fe
 3394 Author: Pranith Kumar K <pkarampu@redhat.com>
 3395 Date:   Thu Apr 4 15:31:56 2019 +0530
 3396 
 3397     cluster/afr: Remove local from owners_list on failure of lock-acquisition
 3398     
 3399     When eager-lock lock acquisition fails because of say network failures, the
 3400     local is not being removed from owners_list, this leads to accumulation of
 3401     waiting frames and the application will hang because the waiting frames are
 3402     under the assumption that another transaction is in the process of acquiring
 3403     lock because owner-list is not empty. Handled this case as well in this patch.
 3404     Added asserts to make it easier to find these problems in future.
 3405     
 3406     fixes bz#1699731
 3407     Change-Id: I3101393265e9827755725b1f2d94a93d8709e923
 3408     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
 3409 
 3410 commit d2de3f66393d4f737e21eedab4200563a60f8bcc
 3411 Author: Mohit Agrawal <moagrawal@redhat.com>
 3412 Date:   Mon Apr 15 10:34:34 2019 +0530
 3413 
 3414     core: Log level changes do not effect on running client process
 3415     
 3416     Problem: commit c34e4161f3cb6539ec83a9020f3d27eb4759a975 set log-level
 3417              per xlator during reconfigure only for a brick process not for
 3418              the client process.
 3419     
 3420     Solution: 1) Change per xlator log-level only if brick_mux is enabled.To make sure
 3421                  about brick multiplex introudce a flag brick_mux at ctx->cmd_args.
 3422     
 3423     Note: There are two other changes done with this patch
 3424           1) Ignore client-log-level option to attach a brick with
 3425              already running brick if brick_mux is enabled
 3426           2) Add a log to print pid of the running process to make easier
 3427              debugging
 3428     
 3429     > Change-Id: I39e85de778e150d0685cd9a79425ce8b4783f9c9
 3430     > Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 3431     > Fixes: bz#1696046
 3432     > (Cherry picked from commit 798aadbe51a9a02dd98a0f861cc239ecf7c8ed57)
 3433     > (Reviewed on upstream link https://review.gluster.org/#/c/glusterfs/+/22495/)
 3434     
 3435     Change-Id: If91682830f894ab8f6857f19dcb1797fc15ca64c
 3436     Fixes: bz#1699715
 3437     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 3438 
 3439 commit 80d2dae631369d2e4b5e5f4aa0a102b541c22ad5
 3440 Author: Kotresh HR <khiremat@redhat.com>
 3441 Date:   Tue Apr 9 18:23:05 2019 +0530
 3442 
 3443     posix/ctime: Fix stat(time attributes) inconsistency during readdirp
 3444     
 3445     Problem:
 3446        Creation of tar file on gluster volume throws warning
 3447     'file changed as we read it'
 3448     
 3449     Cause:
 3450        During readdirp, for few of the files whose inode is not
 3451     present, time attributes were served from backend. This caused
 3452     the ctime of few files to be different between before readdir
 3453     and after readdir by tar.
 3454     
 3455     Solution:
 3456       If ctime feature is enabled and inode is not present, don't
 3457     serve the time attributes from backend file, serve it from xattr.
 3458     
 3459     Backport of:
 3460     > Patch: https://review.gluster.org/22540
 3461     > BUG: 1698078
 3462     > Change-Id: I427ef865f97399475faf5aa6ca495f7e317603ae
 3463     > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 3464     (cherry picked from commit c56f102da21c5b69e656a055aaf736281596284d)
 3465     
 3466     fixes: bz#1699703
 3467     Change-Id: I427ef865f97399475faf5aa6ca495f7e317603ae
 3468     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 3469 
 3470 commit 5f51159463f892bd118123bf2870b5a0be1c14ea
 3471 Author: Kinglong Mee <kinglongmee@gmail.com>
 3472 Date:   Fri Apr 12 11:35:55 2019 +0800
 3473 
 3474     ec: fix truncate lock to cover the write in tuncate clean
 3475     
 3476     ec_truncate_clean does writing under the lock granted for truncate,
 3477     but the lock is calculated by ec_adjust_offset_up, so that,
 3478     the write in ec_truncate_clean is out of lock.
 3479     
 3480     Updates: bz#1699499
 3481     Change-Id: Idbe1fd48d26afe49c36b77db9f12e0907f5a4134
 3482     Signed-off-by: Kinglong Mee <kinglongmee@gmail.com>
 3483     (cherry picked from commit 0e1223491e964096384edfae5032ed0d50d028ad)
 3484 
 3485 commit 88ecd64604ce01c5bc2c2ca88e33b8dcf57d5ee8
 3486 Author: Mohit Agrawal <moagrawal@redhat.com>
 3487 Date:   Thu Apr 11 20:38:53 2019 +0530
 3488 
 3489     core: Brick is not able to detach successfully in brick_mux environment
 3490     
 3491     Problem: In brick_mux environment, while volumes are stopped in a
 3492              loop bricks are not detached successfully. Brick's are not
 3493              detached because xprtrefcnt has not become 0 for detached brick.
 3494              At the time of initiating brick detach process server_notify
 3495              saves xprtrefcnt on detach brick and once counter has become
 3496              0 then server_rpc_notify spawn a server_graph_janitor_threads
 3497              for cleanup brick resources.xprtrefcnt has not become 0 because
 3498              socket framework is not working due to assigning 0 as a fd for socket.
 3499              In commit dc25d2c1eeace91669052e3cecc083896e7329b2
 3500              there was a change in changelog fini to close htime_fd if htime_fd is not
 3501              negative, by default htime_fd is 0 so it close 0 also.
 3502     
 3503     Solution: Initialize htime_fd to -1 after just allocate changelog_priv
 3504               by GF_CALLOC
 3505     
 3506     > Fixes: bz#1699025
 3507     > Change-Id: I5f7ca62a0eb1c0510c3e9b880d6ab8af8d736a25
 3508     > Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 3509     > (cherry picked from commit b777d83001d8006420b6c7d2d88fe68950aa7e00)
 3510     
 3511     Change-Id: I7a2b6fc2d36405d51990376333e093661be48475
 3512     Fixes: bz#1699714
 3513     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 3514 
 3515 commit 08278e88235c5de923c918612ee868657e97533a
 3516 Author: Mohit Agrawal <moagrawal@redhat.com>
 3517 Date:   Fri Apr 5 09:17:02 2019 +0530
 3518 
 3519     build: glusterfs build is failing on RHEL-6
 3520     
 3521     Problem: glusterfs build is throwing error undefined
 3522              reference to `dlclose' on RHEL 6
 3523     
 3524     Solution: Add LIB_DL link in Makefile.am to resolve the same
 3525     
 3526     > Fixes: bz#1696512
 3527     > Change-Id: I58019ca9e29d569d8e6df282b8ab178ad540843b
 3528     > Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
 3529     > (cherry picked from commit 064aad721c249d63fb89686b32e5d15de50e2f8c)
 3530     
 3531     Change-Id: I4f68553b501c283e2066ddc64e204db40552ee73
 3532     Fixes: bz#1699713
 3533     Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
 3534 
 3535 commit 6bd52e5108e73a1f1ac186d432f94a287d435475
 3536 Author: karthik-us <ksubrahm@redhat.com>
 3537 Date:   Mon Mar 18 11:57:28 2019 +0530
 3538 
 3539     cluster/afr: Thin-arbiter SHD fixes
 3540     
 3541     This patch address post-merge review comments for commit
 3542     5784a00f997212d34bd52b2303e20c097240d91c
 3543     
 3544     Change-Id: I7ed954664a2ae8e1091d23ee3ceb9c66e83bfeac
 3545     fixes: bz#1699319
 3546     Signed-off-by: karthik-us <ksubrahm@redhat.com>
 3547 
 3548 commit fbba6e397f5ce473eddca710d593a6c2b62906d5
 3549 Author: Pranith Kumar K <pkarampu@redhat.com>
 3550 Date:   Thu Mar 28 17:55:54 2019 +0530
 3551 
 3552     protocol/client: Do not fallback to anon-fd if fd is not open
 3553     
 3554     If an open comes on a file when a brick is down and after the brick comes up,
 3555     a fop comes on the fd, client xlator would still wind the fop on anon-fd
 3556     leading to wrong behavior of the fops in some cases.
 3557     
 3558     Example:
 3559     If lk fop is issued on the fd just after the brick is up in the scenario above,
 3560     lk fop will be sent on anon-fd instead of failing it on that client xlator.
 3561     This lock will never be freed upon close of the fd as flush on anon-fd is
 3562     invalid and is not wound below server xlator.
 3563     
 3564     As a fix, failing the fop unless the fd has FALLBACK_TO_ANON_FD flag.
 3565     
 3566     Change-Id: I77692d056660b2858e323bdabdfe0a381807cccc
 3567     fixes bz#1699198
 3568     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
 3569     (cherry picked from commit 92ae26ae8039847e38c738ef98835a14be9d4296)
 3570 
 3571 commit 74db82dd5d5cd47c59afb99b44a8b3d698c64167
 3572 Author: Ravishankar N <ravishankar@redhat.com>
 3573 Date:   Thu Mar 7 17:02:36 2019 +0530
 3574 
 3575     afr: thin-arbiter read txn fixes
 3576     
 3577     - Fixes afr_ta_read_txn() to handle inode refresh failures.
 3578     code-path.
 3579     - Fixes a double free issue of dict.
 3580     
 3581     Note: This patch address post-merge review comments for commit
 3582     69532c141be160b3fea03c1579ae4ac13018dcdf
 3583     
 3584     fixes: bz#1693992
 3585     Change-Id: Id5299b45b68569d47df6b73755918237a1592cb4
 3586     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
 3587     (cherry picked from commit 500bd0014128e6727e83b6cb77e8ac94304b8f4a)
 3588 
 3589 commit f792fd01aab1e50b4f662305e9c417064bd37c30
 3590 Author: Ashish Pandey <aspandey@redhat.com>
 3591 Date:   Wed Nov 28 11:22:52 2018 +0530
 3592 
 3593     cluster/ec: Don't enqueue an entry if it is already healing
 3594     
 3595     Problem:
 3596     1 - heal-wait-qlength is by default 128. If shd is disabled
 3597     and we need to heal files, client side heal is needed.
 3598     If we access these files that will trigger the heal.
 3599     However, it has been observed that a file will be enqueued
 3600     multiple times in the heal wait queue, which in turn causes
 3601     queue to be filled and prevent other files to be enqueued.
 3602     
 3603     2 - While a file is going through healing and a write fop from
 3604     mount comes on that file, it sends write on all the bricks including
 3605     healing one. At the end it updates version and size on all the
 3606     bricks. However, it does not unset dirty flag on all the bricks,
 3607     even if this write fop was successful on all the bricks.
 3608     After healing completion this dirty flag remain set and never
 3609     gets cleaned up if SHD is disabled.
 3610     
 3611     Solution:
 3612     1 - If an entry is already in queue or going through heal process,
 3613     don't enqueue next client side request to heal the same file.
 3614     
 3615     2 - Unset dirty on all the bricks at the end if fop has succeeded on
 3616     all the bricks even if some of the bricks are going through heal.
 3617     
 3618     Change-Id: Ia61ffe230c6502ce6cb934425d55e2f40dd1a727
 3619     updates: bz#1693223
 3620     Signed-off-by: Ashish Pandey <aspandey@redhat.com>
 3621     (cherry picked from commit 313dcefe7a62bd16cd794040df068f9bec9c6927)
 3622 
 3623 commit aca7ec21ed1823440abe8409f7f9c4a8864cf8fa
 3624 Author: Atin Mukherjee <amukherj@redhat.com>
 3625 Date:   Tue Apr 9 14:58:29 2019 +0530
 3626 
 3627     glusterd: load ctime in the client graph only if it's not turned off
 3628     
 3629     Considering ctime is a client side feature, we can't blindly load ctime
 3630     xlator into the client graph if it's explicitly turned off, that'd
 3631     result into backward compatibility issue where an old client can't mount
 3632     a volume configured on a server which is having ctime feature.
 3633     
 3634     Fixes: bz#1698471
 3635     Change-Id: I6ae7b96d056073aa6746de9a449cf319786d45cc
 3636     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 3637     (cherry picked from commit efbf8abcc3bc729a90d4a7b57dc515f1df8a5863)
 3638 
 3639 commit c2723c57d2cb85da5c14a900e049f4ce9469444d
 3640 Author: Atin Mukherjee <amukherj@redhat.com>
 3641 Date:   Tue Apr 2 10:45:15 2019 +0530
 3642 
 3643     logging: Fix GF_LOG_OCCASSIONALLY API
 3644     
 3645     GF_LOG_OCCASSIONALLY doesn't log on the first instance rather at every
 3646     42nd iterations which isn't effective as in some cases we might not have
 3647     the code flow hitting the same log for as many as 42 times and we'd end
 3648     up suppressing the log.
 3649     
 3650     Updates: bz#1679904
 3651     Change-Id: Iee293281d25a652b64df111d59b13de4efce06fa
 3652     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 3653     (cherry picked from commit d0d3e10d44366c68fc153e48b229e72a4aa26e61)
 3654 
 3655 commit 55c5e2ecc77bd13dfa66139a1c320e73f703775b
 3656 Author: Atin Mukherjee <amukherj@redhat.com>
 3657 Date:   Mon Mar 18 16:08:04 2019 +0530
 3658 
 3659     glusterd: fix txn-id mem leak
 3660     
 3661     This commit ensures the following:
 3662     1. Don't send commit op request to the remote nodes when gluster v
 3663     status all is executed as for the status all transaction the local
 3664     commit gets the name of the volumes and remote commit ops are
 3665     technically a no-op. So no need for additional rpc requests.
 3666     2. In op state machine flow, if the transaction is in staged state and
 3667     op_info.skip_locking is true, then no need to set the txn id in the
 3668     priv->glusterd_txn_opinfo dictionary which never gets freed.
 3669     
 3670     Fixes: bz#1694610
 3671     Change-Id: Ib6a9300ea29633f501abac2ba53fb72ff648c822
 3672     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 3673     (cherry picked from commit 34e010d64905b7387de57840d3fb16a326853c9b)
 3674 
 3675 commit 5946db166a428d37f5bbbb3df802a1e53cab5029
 3676 Author: Ravishankar N <ravishankar@redhat.com>
 3677 Date:   Fri Mar 15 19:31:03 2019 +0530
 3678 
 3679     afr: add client-pid to all gf_event() calls
 3680     
 3681     client-pid for glustershd is GF_CLIENT_PID_SELF_HEALD
 3682     client-pid for glfsheal is GF_CLIENT_PID_GLFS_HEALD
 3683     
 3684     updates: bz#1693155
 3685     Change-Id: Ib3a863af160ff48c822a5e6b0c27c575c9887470
 3686     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
 3687     (cherry picked from commit 8016d51a3bbd410b0b927ed66be50a09574b7982)
 3688 
 3689 commit 27a96f1f344d16de8085ace40c2be99c3cd83139
 3690 Author: Kaleb S. KEITHLEY <kkeithle@redhat.com>
 3691 Date:   Thu Mar 28 09:36:33 2019 -0400
 3692 
 3693     rpclib: slow floating point math and libm
 3694     
 3695     In release-6 rpc/rpc-lib (libgfrpc) added the function
 3696     get_rightmost_set_bit() which calls log2(3), a call that takes
 3697     a floating point parameter and returns a floating point.
 3698     
 3699     It's used thusly:
 3700         right_most_unset_bit = get_rightmost_set_bit(...);
 3701     
 3702     (So is it really the right-most unset bit, or the right-most set bit?)
 3703     
 3704     It's unclear to me whether this is in the data path or not. If it is,
 3705     it's rather scary to think about integer-to-float and float-to-integer
 3706     conversions and slow calls to libm functions in the data path.
 3707     
 3708     gcc and clang have __builtin_ctz() which returns the same result as
 3709     get_rightmost_set_bit(), and does it substantially faster. Approx
 3710     20M iterations of get_rightmost_set_bit() took ~33sec of wall clock
 3711     time on my devel machine, while 20M iterations of __builtin_ctz()
 3712     took < 9sec; get_rightmost_set_bit() is 3x slower than __builtin_ctz().
 3713     
 3714     And as a side benefit, we can again eliminate the need to link libgfrpc
 3715     with libm.
 3716     
 3717     Change-Id: If9e7e80874577c52223f8125b385fc930de20699
 3718     fixes: bz#1692957
 3719     Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
 3720 
 3721 commit c5bc21ebbc10248848b372db34a33a0fcb9ae2ae
 3722 Author: Ashish Pandey <aspandey@redhat.com>
 3723 Date:   Mon Mar 18 12:54:54 2019 +0530
 3724 
 3725     cluster/ec: Fix handling of heal info cases without locks
 3726     
 3727     When we use heal info command, it takes lot of time as in
 3728     some cases it takes lock on entries to find out if the
 3729     entry actually needs heal or not.
 3730     
 3731     There are some cases where we can avoid these locks and
 3732     can conclude if the entry needs heal or not.
 3733     
 3734     1 - We do a lookup (without lock) on an entry, which we found in
 3735     .glusterfs/indices/xattrop, and find that lock count is
 3736     zero. Now if the file contains dirty bit set on all or any
 3737     brick, we can say that this entry needs heal.
 3738     
 3739     2 - If the lock count is one and dirty is greater than 1,
 3740     then it also means that some fop had left the dirty bit set
 3741     which made the dirty count of current fop (which has taken lock)
 3742     more than one. At this point also we can definitely say that
 3743     this entry needs heal.
 3744     
 3745     This patch is modifying code to take into consideration above two
 3746     points.
 3747     It is also changing code to not to call ec_heal_inspect if ec_heal_do
 3748     was called from client side heal. Client side heal triggeres heal
 3749     only when it is sure that it requires heal.
 3750     
 3751     [We have changed the code to not to call heal for lookup]
 3752     
 3753     updates bz#1697764
 3754     Change-Id: I7f09f0ecd12f65a353297aefd57026fd2bebdf9c
 3755     Signed-off-by: Ashish Pandey <aspandey@redhat.com>
 3756     (cherry picked from commit da47caf2405c08c9abafc4a55525a8b2c2dd5bb8)
 3757 
 3758 commit 381e7603d9e8ff807e691b1d9272f050f341d2c6
 3759 Author: Kotresh HR <khiremat@redhat.com>
 3760 Date:   Thu Mar 28 07:17:16 2019 -0400
 3761 
 3762     geo-rep: Fix syncing multiple rename of symlink
 3763     
 3764     Problem:
 3765     Geo-rep fails to sync rename of symlink if it's
 3766     renamed multiple times if creation and rename
 3767     happened successively
 3768     
 3769     Worker crash at slave:
 3770     Traceback (most recent call last):
 3771       File "/usr/libexec/glusterfs/python/syncdaemon/repce.py",  in worker
 3772         res = getattr(self.obj, rmeth)(*in_data[2:])
 3773       File "/usr/libexec/glusterfs/python/syncdaemon/resource.py", in entry_ops
 3774         [ESTALE, EINVAL, EBUSY])
 3775       File "/usr/libexec/glusterfs/python/syncdaemon/syncdutils.py", in errno_wrap
 3776         return call(*arg)
 3777       File "/usr/libexec/glusterfs/python/syncdaemon/libcxattr.py", in lsetxattr
 3778         cls.raise_oserr()
 3779       File "/usr/libexec/glusterfs/python/syncdaemon/libcxattr.py", in raise_oserr
 3780         raise OSError(errn, os.strerror(errn))
 3781     OSError: [Errno 12] Cannot allocate memory
 3782     
 3783     Geo-rep Behaviour:
 3784     1. SYMLINK doesn't record target path in changelog.
 3785        So while syncing SYMLINK, readlink is done on
 3786        master to get target path.
 3787     
 3788     2. Geo-rep will create destination if source is not
 3789        present while syncing RENAME. Hence while syncing
 3790        RENAME of SYMLINK, target path is collected from
 3791        destination.
 3792     
 3793     Cause:
 3794     If symlink is created and renamed multiple times, creation of
 3795     symlink is ignored, as it's no longer present on master at
 3796     that path. While symlink is renamed multiple times at master,
 3797     when syncing first RENAME of SYMLINK, both source and destination
 3798     is not present, hence target path is not known.  In this case,
 3799     while creating destination directly at slave,  regular file
 3800     attributes were encoded into blob instead of symlink,
 3801     causing failure in gfid-access translator while decoding
 3802     blob.
 3803     
 3804     Solution:
 3805     While syncing of RENAME of SYMLINK, when target is not known
 3806     and when src and destination is not present on the master,
 3807     don't create destination. Ignore the rename. It's ok to ignore.
 3808     If it's unliked, it's fine.  If it's renamed to something else,
 3809     it will be synced then.
 3810     
 3811     Backport of:
 3812     > Change-Id: Ibdfa495513b7c05b5370ab0b89c69a6802338d87
 3813     > BUG: bz#1693648
 3814     > Signed-off-by: Kotresh HR <khiremat@redhat.com>
 3815     (cherry picked from commit 877af725b3e35b548d6d7aeec5adb21721d8bf8b)
 3816     
 3817     Change-Id: Ibdfa495513b7c05b5370ab0b89c69a6802338d87
 3818     fixes: bz#1694002
 3819     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 3820     (cherry picked from commit 877af725b3e35b548d6d7aeec5adb21721d8bf8b)
 3821 
 3822 commit 491ff40a7a9ffb186ab1c7772eb8d4e75ad2c2b0
 3823 Author: Soumya Koduri <skoduri@redhat.com>
 3824 Date:   Thu Mar 28 14:59:00 2019 +0530
 3825 
 3826     gfapi: Unblock epoll thread for upcall processing
 3827     
 3828     With commit#ad35193,we have made changes to offload
 3829     processing upcall notifications to synctask so as not
 3830     to block epoll threads. However seems like the issue wasnt
 3831     fully addressed.
 3832     
 3833     In "glfs_cbk_upcall_data" -> "synctask_new1" after creating synctask
 3834     if there is no callback defined, the thread waits on synctask_join
 3835     till the syncfn is finished. So that way even with those changes,
 3836     epoll threads are blocked till the upcalls are processed.
 3837     
 3838     Hence the right fix now is to define a callback function for that
 3839     synctask "glfs_cbk_upcall_syncop" so as to unblock epoll/notify threads
 3840     completely and the upcall processing can happen in parallel by synctask
 3841     threads.
 3842     
 3843     Change-Id: I4d8645e3588fab2c3ca534e0112773aaab68a5dd
 3844     fixes: bz#1694561
 3845     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 3846     (cherry picked from commit 4a03a71c6171f6e8382664d9d29857d06ef37741)
 3847 
 3848 commit dbfff66092178b03667b45cff9f97635129ab8be
 3849 Author: Poornima G <pgurusid@redhat.com>
 3850 Date:   Sun Mar 24 09:40:50 2019 +0530
 3851 
 3852     client-rpc: Fix the payload being sent on the wire
 3853     
 3854     The fops allocate 3 kind of payload(buffer) in the client xlator:
 3855     - fop payload, this is the buffer allocated by the write and put fop
 3856     - rsphdr paylod, this is the buffer required by the reply cbk of
 3857       some fops like lookup, readdir.
 3858     - rsp_paylod, this is the buffer required by the reply cbk of fops like
 3859       readv etc.
 3860     
 3861     Currently, in the lookup and readdir fop the rsphdr is sent as payload,
 3862     hence the allocated rsphdr buffer is also sent on the wire, increasing
 3863     the bandwidth consumption on the wire.
 3864     
 3865     With this patch, the issue is fixed.
 3866     
 3867     Fixes: bz#1692101
 3868     Change-Id: Ie8158921f4db319e60ad5f52d851fa5c9d4a269b
 3869     Signed-off-by: Poornima G <pgurusid@redhat.com>
 3870 
 3871 commit 4e7afab231e22fc740e2d8a39fd7eaefd1fa9f2f
 3872 Author: Ravishankar N <ravishankar@redhat.com>
 3873 Date:   Thu Mar 14 18:41:11 2019 +0530
 3874 
 3875     gfapi: add function to set client-pid
 3876     
 3877     This api offers the ability to set the pid of a client to a particular
 3878     value, identical to how gluster fuse clients provide the --client-pid
 3879     option. This is an internal API to be used by gluster processes only. See
 3880     https://lists.gluster.org/pipermail/gluster-devel/2019-March/055925.html
 3881     for more details. Currently glfsheal is the only proposed consumer.
 3882     
 3883     updates: bz#1693155
 3884     Change-Id: I0620be2127d79d69cdd57cffb29bba44e6e5da1f
 3885     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
 3886     (cherry picked from commit 08d502c3b05c6f7831bb4cc764bd458b405a99b1)
 3887 
 3888 commit cba59f6cb7fe4e2b9e6b7e7f35c9d659b5fa5450
 3889 Author: Yaniv Kaul <ykaul@redhat.com>
 3890 Date:   Wed Mar 20 13:05:44 2019 +0200
 3891 
 3892     server.c: fix Coverity CID 1399758
 3893     
 3894     1399758 Dereference before null check
 3895     
 3896     It was introduced @ commit 67f48bfcc16a38052e6c9ae7c25e69b03b8ae008
 3897     
 3898     updates: bz#1691187
 3899     > updates: bz#789278
 3900     > Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 3901     
 3902     > Change-Id: I1424b008b240691fe2a8924e31c708d0fb4f362d
 3903     > (cherry picked from commit 8aff9cc5c6277ef7dacfb89f1392b7c2eda9b825)
 3904     
 3905     Change-Id: Ie2160fb9ae9cdeacf845e849da7f6001b3b6b10b
 3906 
 3907 commit 3fadf5cc41d5ea3195d2228d23e890f27fc22f87
 3908 Author: ShyamsundarR <srangana@redhat.com>
 3909 Date:   Tue Mar 19 10:17:17 2019 -0400
 3910 
 3911     doc: Final version of release-6 release notes
 3912     
 3913     Fixes: bz#1672818
 3914     Change-Id: I6a98985a7f25bc2b85af5bd85f4be3ffac7d619d
 3915     Signed-off-by: ShyamsundarR <srangana@redhat.com>
 3916 
 3917 commit 7e90a3b592018f4e0d270d7102cf83aa3eb242d2
 3918 Author: Kotresh HR <khiremat@redhat.com>
 3919 Date:   Tue Mar 19 12:45:36 2019 +0530
 3920 
 3921     release-notes/6.0: Add ctime feature changes in release notes
 3922     
 3923     Change-Id: I3a305b9eb292a450c83de5628ceeadcb0a44afc7
 3924     updates: bz#1672818
 3925     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 3926     Signed-off-by: ShyamsundarR <srangana@redhat.com>
 3927 
 3928 commit 1398fa80455b3b825807ec508c45033ccfffdf7a
 3929 Author: Amar Tumballi <amarts@redhat.com>
 3930 Date:   Mon Mar 18 15:57:03 2019 +0530
 3931 
 3932     release-notes: add status of gd2 and a highlights section
 3933     
 3934     Change-Id: Idd4fd07b3fcdd7810c242eff0dcca9072048a43e
 3935     fixes: bz#1672818
 3936     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 3937     Signed-off-by: ShyamsundarR <srangana@redhat.com>
 3938 
 3939 commit c7a582818db71d50548a2cfce72ce9402ef5599a
 3940 Author: Mohit Agrawal <moagrawal@redhat.com>
 3941 Date:   Tue Mar 12 13:27:34 2019 +0530
 3942 
 3943     glusterfsd: Brick is getting crash at the time of startup
 3944     
 3945     Problem: Brick is getting crash because graph was not activated
 3946              at the time of accessing server_conf
 3947     
 3948     Solution: To avoid the crash check ctx->active before processing
 3949               a request
 3950     
 3951     > Change-Id: Ib112e0eace19189e45f430abdac5511c026bed47
 3952     > fixes: bz#1687705
 3953     >(cherry picked from commit 67f48bfcc16a38052e6c9ae7c25e69b03b8ae008)
 3954     > (Reviewed on upstream link https://review.gluster.org/#/c/glusterfs/+/22339/)
 3955     
 3956     Change-Id: I1367c564f04edbad145575b811c67522cc318851
 3957     fixes: bz#1688218
 3958     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 3959 
 3960 commit 3bcf210a5a9b922ea78b31ef0de8eaf97ff4dcb4
 3961 Author: Ashish Pandey <aspandey@redhat.com>
 3962 Date:   Wed Jan 30 14:24:14 2019 +0530
 3963 
 3964     rpm: add thin-arbiter package
 3965     
 3966     Discussion on thin arbiter volume -
 3967     https://github.com/gluster/glusterfs/issues/352#issuecomment-350981148
 3968     
 3969     Main idea of having this rpm package is to deploy thin-arbiter
 3970     without glusterd and other commands on a node, and all we need
 3971     on that tie-breaker node is to run a single glusterfs command.
 3972     Also note that, no other glusterfs installation needs
 3973     thin-arbiter.so.
 3974     
 3975     Make sure RPM contains sample vol file, which can work by default,
 3976     and a script to configure that volfile, along with translator image.
 3977     
 3978     Change-Id: Ibace758373d8a991b6a19b2ecc60c93b2f8fc489
 3979     updates: bz#1672818
 3980     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 3981     Signed-off-by: Ashish Pandey <aspandey@redhat.com>
 3982     (cherry picked from commit ca9bef7f1538beb570fcb190ff94f86f0b8ba38a)
 3983 
 3984 commit bda2feeaf2917996c59c0c2188bfa1a17d91895f
 3985 Author: Anoop C S <anoopcs@redhat.com>
 3986 Date:   Fri Feb 22 10:24:44 2019 +0530
 3987 
 3988     doc: Update release notes for Samba integration
 3989     
 3990     Change-Id: I2a246111522bd3cb0c9b228ed3387e72b0ac20a4
 3991     updates: bz#1672818
 3992     Signed-off-by: Anoop C S <anoopcs@redhat.com>
 3993 
 3994 commit 05fce4e66881f778d69240e93eeb2e2912455666
 3995 Author: Aravinda VK <avishwan@redhat.com>
 3996 Date:   Mon Mar 4 13:39:18 2019 +0530
 3997 
 3998     eventsapi: Fix error while handling GlusterCmdException
 3999     
 4000     `GlusterCmdException` was wrongly accessed instead of accessing
 4001     `GlusterCmdException.message`.
 4002     
 4003     Fixes: bz#1687248
 4004     Change-Id: I35ec1b05726050bfd8761e05ad9b9e47917dc0c6
 4005     Signed-off-by: Aravinda VK <avishwan@redhat.com>
 4006     (cherry picked from commit 27f6375df009c8c4798b72aeafce79456007d21f)
 4007 
 4008 commit 36c75523c1f0545f32db4b807623a8f94df98ca7
 4009 Author: Mohit Agrawal <moagrawal@redhat.com>
 4010 Date:   Fri Mar 1 13:41:24 2019 +0530
 4011 
 4012     glusterfsd: Multiple shd processes are spawned on brick_mux environment
 4013     
 4014     Problem: Multiple shd processes are spawned while starting volumes
 4015              in the loop on brick_mux environment.glusterd spawn a process
 4016              based on a pidfile and shd daemon is taking some time to
 4017              update pid in pidfile due to that glusterd is not able to
 4018              get shd pid
 4019     
 4020     Solution: Commit cd249f4cb783f8d79e79468c455732669e835a4f changed
 4021               the code to update pidfile in parent for any gluster daemon
 4022               after getting the status of forking child in parent.To resolve
 4023               the same correct the condition update pidfile in parent only
 4024               for glusterd and for rest of the daemon pidfile is updated in
 4025               child
 4026     
 4027     > Change-Id: Ifd14797fa949562594a285ec82d58384ad717e81
 4028     > fixes: bz#1684404
 4029     > (Cherry pick from commit 66986594a9023c49e61b32769b7e6b260b600626)
 4030     > (Reviewed on upstream link https://review.gluster.org/#/c/glusterfs/+/22290/)
 4031     
 4032     Change-Id: I9a68064d2da1acd0ec54b4071a9995ece0c3320c
 4033     fixes: bz#1683880
 4034     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 4035 
 4036 commit 9b58cfc83c26aa09eb1de8187cc65ed0c3390e97
 4037 Author: karthik-us <ksubrahm@redhat.com>
 4038 Date:   Thu Mar 7 22:26:49 2019 +0530
 4039 
 4040     cluster/afr: Send truncate on arbiter brick from SHD
 4041     
 4042     Problem:
 4043     In an arbiter volume configuration SHD will not send any writes onto the arbiter
 4044     brick even if there is data pending marker for the arbiter brick. If we have a
 4045     arbiter setup on the geo-rep master and there are data pending markers for the files
 4046     on arbiter brick, SHD will not mark any data changelog during healing. While syncing
 4047     the data from master to slave, if the arbiter-brick is considered as ACTIVE, then
 4048     there is a chance that slave will miss out some data. If the arbiter brick is being
 4049     newly added or replaced there is a chance of slave missing all the data during sync.
 4050     
 4051     Fix:
 4052     If there is data pending marker for the arbiter brick, send truncate on the arbiter
 4053     brick during heal, so that it will record truncate as the data transaction in changelog.
 4054     
 4055     Change-Id: I3242ba6cea6da495c418ef860d9c3359c5459dec
 4056     fixes: bz#1687672
 4057     Signed-off-by: karthik-us <ksubrahm@redhat.com>
 4058 
 4059 commit 0d0b54a9de6ed7e13495d1bbbfcf43d7ac13adc2
 4060 Author: Mohit Agrawal <moagrawal@redhat.com>
 4061 Date:   Tue Mar 5 13:39:46 2019 +0530
 4062 
 4063     glusterd: glusterd memory leak while running "gluster v profile" in a loop
 4064     
 4065     Problem: glusterd has memory leak while running "gluster v profile"
 4066              in a loop
 4067     
 4068     Solution: Resolve leak code path to avoid leak
 4069     
 4070     > Change-Id: Id608703ff6d0ad34ed8f921a5d25544e24cfadcd
 4071     > fixes: bz#1685414
 4072     > (Cherry pick from commit 9374484917466dff4688d96ff7faa0de1c804a6c)
 4073     > (Reviewed on link https://review.gluster.org/#/c/glusterfs/+/22301/)
 4074     
 4075     Change-Id: I1ca118265f97b188f94b3d5cff649ec36cb18ca0
 4076     fixes: bz#1685771
 4077     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 4078 
 4079 commit 47ed784e3759df8b237436a86f0d27acbe5efa81
 4080 Author: Kaleb S. KEITHLEY <kkeithle@redhat.com>
 4081 Date:   Fri Mar 8 10:17:14 2019 -0500
 4082 
 4083     packaging: rdma on s390x, unnecessary ldconfig scriptlets
 4084     
 4085     s390x has rdma since around fedora27, and in RHEL7 since July 2016.
 4086     see https://src.fedoraproject.org/rpms/glusterfs/pull-request/5
 4087     
 4088     Reported-By: Igor Gnatenko
 4089     Reported-By: Dan Horák <dan@danny.cz>
 4090     
 4091     master branch Change-Ids:
 4092     > Change-Id: Idad29425495f9c69bfd84b53b009a607abb418f0
 4093     > Change-Id: I914f36290e96a387cdd64ee633e75c2940ec1e56
 4094     
 4095     Change-Id: I7747700e982b365533ebd031164708b9ad97f18a
 4096     fixes: bz#1686875
 4097     Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
 4098 
 4099 commit 7964a320f380fa23727795ad6456ef0020fab35c
 4100 Author: Sanju Rakonde <srakonde@redhat.com>
 4101 Date:   Mon Mar 4 16:53:01 2019 +0530
 4102 
 4103     core: make compute_cksum function op_version compatible
 4104     
 4105     Problem: commit 5a152a changed the mechansim of computing the
 4106     checksum. In heterogeneous cluster, peers are running into
 4107     rejected state because we have different cksum computation
 4108     mechansims in upgraded and non-upgraded nodes.
 4109     
 4110     Solution: add a check for op-version so that all the nodes
 4111     in the cluster follow the same mechanism for computing the
 4112     cksum.
 4113     
 4114     fixes: bz#1684029
 4115     
 4116     > Change-Id: I1508f000e8c9895588b6011b8b6cc0eda7102193
 4117     > BUG: bz#1685120
 4118     > Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 4119     > (cherry picked from commit 073444b693b7a91c42963512e0fdafb57ad46670)
 4120     
 4121     Change-Id: I1508f000e8c9895588b6011b8b6cc0eda7102193
 4122 
 4123 commit 9c441360acc7288b75ba948726d2b7bc2e3d561c
 4124 Author: Amar Tumballi <amarts@redhat.com>
 4125 Date:   Tue Mar 5 08:39:16 2019 +0530
 4126 
 4127     dict: handle STR_OLD data type in xdr conversions
 4128     
 4129     Currently a dict conversion on wire for 3.x protocol happens using
 4130     `dict_unserialize()`, which sets the type of data as STR_OLD. But the
 4131     new protocol doesn't send it over the wire as its not considered as a
 4132     valid format in new processes.
 4133     
 4134     But considering we deal with old and new protocol when we do a rolling
 4135     upgrade, it will allow us to get all the information properly with new
 4136     protocol.
 4137     
 4138     Credits: Krutika Dhananjay
 4139     
 4140     Fixes: bz#1686364
 4141     Change-Id: I165c0021fb195b399790b9cf14a7416ae75ec84f
 4142     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 4143 
 4144 commit ae24a2c3903b402e701eca03c5b0de3f4382cb5c
 4145 Author: Raghavendra Gowdappa <rgowdapp@redhat.com>
 4146 Date:   Thu Mar 7 16:35:33 2019 +0530
 4147 
 4148     performance/readdir-ahead: fix deadlock
 4149     
 4150     This deadlock happens while processing dentry corresponding to current
 4151     directory (.) in rda_fill_readdirp. In this case following order is
 4152     followed:
 4153     
 4154     LOCK(directory_fd_ctx->lock);
 4155       rda_inode_ctx_get_iatt -> LOCK(directory_inode->lock);
 4156     
 4157     However, in rda_mark_inode_dirty following lock order is followed:
 4158     LOCK(directory_inode->lock);
 4159       LOCK(directory_fd_ctx->lock);
 4160     
 4161     these two codepaths when executed concurrently resulted in a deadlock.
 4162     
 4163     Current patch fixes this by removing locking directory inode and
 4164     fd-ctx in rda_fill_readdirp. This is fine as directory inode's stat
 4165     won't change due to writes to files within directory.
 4166     
 4167     Change-Id: Ic93a67a0dac8229bb0d79582e526a512e6f2569c
 4168     Signed-off-by: Raghavendra Gowdappa <rgowdapp@redhat.com>
 4169     Fixes: bz#1686399
 4170 
 4171 commit 8444c1ea54936732764c12aee075af8b6d952975
 4172 Author: Susant Palai <spalai@redhat.com>
 4173 Date:   Wed Feb 20 15:52:55 2019 +0530
 4174 
 4175     io-threads: Prioritize fops with NO_ROOT_SQUASH pid
 4176     
 4177     There was 30% regression observed in mkdir path with commit
 4178     b139bc58eb504adf5ef81658896c9283ae21f390. On analysis it is found
 4179     that io-threads xlator deprioritzes fops with all -ve pid.
 4180     
 4181     Some context in to the no-root-squash pid requirement:
 4182     DHT xlator does some of the internal fops with root privileges. This is
 4183     needed so that operations like layout healing should not be abandoned
 4184     because a non root user is operating.  If root-squash option is enabled
 4185     the layout set operation looses its root privilege as server xlator
 4186     converts the uid and pid to random numbers. Hence, the above mentioned
 4187     commit converted pid to GF_CLIENT_PID_NO_ROOT_SQUASH to continue fops
 4188     as root.
 4189     
 4190     Combining the above I am proposing not to deprioritize fops with
 4191     no-root-squash pid.
 4192     
 4193     > Change-Id: I54d056c01b25729304a77f9242fbaff39c5672ba
 4194     > fixes: bz#1676430
 4195     > Signed-off-by: Susant Palai <spalai@redhat.com>
 4196     (cherry picked from commit f5c3b1727f55ffaa3dcdb3c3a09b968ebb45dbb2)
 4197     
 4198     Change-Id: I54d056c01b25729304a77f9242fbaff39c5672ba
 4199     fixes: bz#1676429
 4200     Signed-off-by: Susant Palai <spalai@redhat.com>
 4201 
 4202 commit ea78c029a769e09fe2c9408f8b29b55f47141606
 4203 Author: hujianfei <hujianfei@cmss.chinamobile.com>
 4204 Date:   Fri Feb 15 04:07:46 2019 -0500
 4205 
 4206     glusterfsd: Do not process PROFILE_NFS_INFO if graph is not ready
 4207     
 4208     Otherwise, gnfs will crash in following situation.
 4209     Also see commit 2f9e555f.
 4210     
 4211     Reproducible Steps:
 4212     1. kill gnfs process
 4213     2. service glusterd restart;gluster volume profile [vol] info nfs
 4214     
 4215     dump trace info:
 4216     /lib64/libglusterfs.so.0(_gf_msg_backtrace_nomem+0xc2)[0x7fcf5cb6a872]
 4217     /lib64/libglusterfs.so.0(gf_print_trace+0x324)[0x7fcf5cb743a4]
 4218     /lib64/libc.so.6(+0x35670)[0x7fcf5b1d5670]
 4219     /usr/sbin/glusterfs(glusterfs_handle_nfs_profile+0x114)[0x7fcf5d066474]
 4220     /lib64/libglusterfs.so.0(synctask_wrap+0x12)[0x7fcf5cba1502]
 4221     /lib64/libc.so.6(+0x47110)[0x7fcf5b1e7110]
 4222     
 4223     Fixes: bz#1684777
 4224     
 4225     Change-Id: Id68edb3e4646c39544e0b4c90b5e0a9083b37b0d
 4226     Signed-off-by: hujianfei <hujianfei@cmss.chinamobile.com>
 4227     (cherry picked from commit 09394856e1197db4933e7e814589a3340eb739cd)
 4228 
 4229 commit 06a65016f17452130d826baea5b3879122dc950e
 4230 Author: Kaleb S. KEITHLEY <kkeithle@redhat.com>
 4231 Date:   Fri Feb 22 09:25:26 2019 -0500
 4232 
 4233     glusterfind: revert shebangs to #!/usr/bin/python3
 4234     
 4235     Using #!/usr/bin/env python is illegal in Fedora and RHEL packaging.
 4236     (Debian and SUSE packaging will complain about it too but don't
 4237     enforce it like Fedora packaging does. Yet.)
 4238     
 4239     We went through a giant exercise fixing these once already.
 4240     
 4241     The python needs to be python2/python3 clean. There is a build
 4242     scriptlet that converts the shebangs back to /usr/bin/python on rhel7.
 4243     
 4244     Change-Id: If208a2557f7e5d727cda98c27905e249cf485d5b
 4245     fixes: bz#1683716
 4246     Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
 4247 
 4248 commit 4cb1d6d94ac85c5e79171f8989b545ca098b61d9
 4249 Author: Milind Changire <mchangir@redhat.com>
 4250 Date:   Fri Feb 15 14:20:07 2019 +0530
 4251 
 4252     socket: socket event handlers now return void
 4253     
 4254     Problem:
 4255     Returning any value from socket event handlers to the event sub-system
 4256     doesn't make sense since event sub-system cannot handle socket
 4257     sub-system errors.
 4258     
 4259     Solution:
 4260     Change return type of all socket event handlers to 'void'
 4261     
 4262     mainline:
 4263     > Change-Id: I70dc2c57f12b7ea2fae41120f71aa0d7fe0b2b6f
 4264     > Fixes: bz#1651246
 4265     > Signed-off-by: Milind Changire <mchangir@redhat.com>
 4266     > Reviewed-on: https://review.gluster.org/c/glusterfs/+/22221
 4267     
 4268     Change-Id: I70dc2c57f12b7ea2fae41120f71aa0d7fe0b2b6f
 4269     Fixes: bz#1683900
 4270     Signed-off-by: Milind Changire <mchangir@redhat.com>
 4271     (cherry picked from commit 776ba851c6ee6c265253d44cf1d6e4e3d4a21772)
 4272 
 4273 commit cd6795c5e8ebdf23c6fd350d8df49e5b22b09056
 4274 Author: Arjun Sharma <arjsharm@redhat.com>
 4275 Date:   Thu Feb 21 18:09:50 2019 +0530
 4276 
 4277     Updating the glfs_setattr and glfs_fsetattr public APIs to use glfs_stat
 4278     
 4279     Change-Id: I0e86c8222c88b4c71087ec287ba81f8353d70822
 4280     updates: #389
 4281     Signed-off-by: Arjun <arjsharm@redhat.com>
 4282 
 4283 commit 73b8d6c8d1da7481f3d31698d07ed2e0658a153f
 4284 Author: Sanju Rakonde <srakonde@redhat.com>
 4285 Date:   Tue Feb 26 21:48:21 2019 +0530
 4286 
 4287     glusterd: remove experimental xlator options from glusterd-volume-set.c
 4288     
 4289     experimental xlators have been removed from the codebase. But we
 4290     missed to remove the options related to experimental xlators from
 4291     the codebase. This patch removes those options.
 4292     
 4293     fixes: bz#1683506
 4294     Change-Id: I3fa7e14c6cd8ebde5cebc8d2b0cb2409bf37c1ae
 4295     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 4296     (cherry picked from commit 5cddd4d758014fe116d9c130632eada2ecded88c)
 4297 
 4298 commit 77f327862a60d602fe5d9847331e018de65f30a7
 4299 Author: Aravinda VK <avishwan@redhat.com>
 4300 Date:   Thu Feb 21 11:25:55 2019 +0530
 4301 
 4302     eventsapi: Fix Python3 compatibility issues
 4303     
 4304     - Fixed Relative import and non-package import related issues.
 4305     - socketserver import issues fix
 4306     - Renamed installed directory name to `gfevents` from `events`(To
 4307       avoid any issues with other global libs)
 4308     
 4309     Fixes: bz#1683008
 4310     Change-Id: I3dc38bc92b23387a6dfbcc0ab8283178235bf756
 4311     Signed-off-by: Aravinda VK <avishwan@redhat.com>
 4312     (cherry picked from commit cd68f7b88b9a2c9a4e4ff9fca61517384e54130a)
 4313 
 4314 commit 3d7cd3d0f56f31dc8d87e9403f2c734c14de63f9
 4315 Author: Niels de Vos <ndevos@redhat.com>
 4316 Date:   Mon Feb 25 12:32:21 2019 +0100
 4317 
 4318     build: do not install service related files when building --without-server
 4319     
 4320     It seems that glusterfs-6 disables building the server (./configure
 4321     --without-server) on el6 and hence the installed but unpackaged files
 4322     should not get installed in the first place.
 4323     
 4324     Backport of commit 30f358bb6b69b8c31da550608a4996a84e8b420b:
 4325     > Change-Id: I7bea08202dd59ac309de8bc861da920ed3600bc6
 4326     > Fixes: bz#1680587
 4327     > Signed-off-by: Niels de Vos <ndevos@redhat.com>
 4328     
 4329     Change-Id: I7bea08202dd59ac309de8bc861da920ed3600bc6
 4330     Fixes: bz#1680586
 4331     Signed-off-by: Niels de Vos <ndevos@redhat.com>
 4332 
 4333 commit 0419d9ab932a2f4f9e734a92df8912be0b51f046
 4334 Author: Amar Tumballi <amarts@redhat.com>
 4335 Date:   Tue Feb 12 14:41:49 2019 +0530
 4336 
 4337     fuse: reflect the actual default for lru-limit option
 4338     
 4339     in both `--help` text and man page
 4340     
 4341     updates: bz#1679998
 4342     Change-Id: I9aa9367c6863ac8e2403255280697c9e6be26cf0
 4343     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 4344 
 4345 commit c360210685b2ebb152b45f24257cc19a12884cac
 4346 Author: David Spisla <david.spisla@iternity.com>
 4347 Date:   Tue Feb 19 14:56:11 2019 +0100
 4348 
 4349     md-cache: Adapt integer data types to avoid integer overflow
 4350     
 4351     The "struct iatt" in iatt.h is using int64_t types for storing
 4352     the atime, mtime and ctime. Therefore the struct 'struct md_cache' in
 4353     md-cache.c should also use this types to avoid an integer overflow.
 4354     
 4355     This can happen e.g. if someone uses a very high default-retention-period
 4356     in the WORM-Xlator.
 4357     
 4358     Change-Id: I605268d300ab622b9c8ab30e459dc00d9340aad1
 4359     fixes: bz#1680020
 4360     Signed-off-by: David Spisla <david.spisla@iternity.com>
 4361     (cherry picked from commit 15423e14f16dd1a15ee5e5cbbdbdd370e57ed59f)
 4362 
 4363 commit fce763a6fcd9331356e7d32c1aa8daf9e991aa56
 4364 Author: Niels de Vos <ndevos@redhat.com>
 4365 Date:   Fri Feb 22 15:17:48 2019 +0100
 4366 
 4367     build: include gluster/__init__.* files for python packaging
 4368     
 4369     The gluster/__init__.py file was originaly part of the glupy
 4370     installation. This file is required to have the python-gluster package
 4371     function correctly, it is expected to provide the 'gluster' namespace
 4372     for other python packages (like from the libgfapi-python project).
 4373     
 4374     Because glupy does not exist anymore, this file is now added to in a new
 4375     extras/python directory.
 4376     
 4377     Backport of commit b235a56394c09bb1d7308a620053dbe098d15967:
 4378     > Change-Id: I14fe959778ee3344d7d54ba342c7928a4d8080a2
 4379     > Fixes: c3fcff9ccbfcec1be242fd5cf210c9995586b078
 4380     > Fixes: 8293d21280fd6ddfc9bb54068cf87794fc6be207
 4381     > Updates: bz#1642810
 4382     > Signed-off-by: Niels de Vos <ndevos@redhat.com>
 4383     
 4384     Change-Id: I04e1e0dc4022b53c02053d5452f305b78e56c389
 4385     Updates: bz#1680585
 4386     Signed-off-by: Niels de Vos <ndevos@redhat.com>
 4387 
 4388 commit 5801a0e30e317bb752a121187332ba9f307cbb62
 4389 Author: Sahina Bose <sabose@redhat.com>
 4390 Date:   Mon Feb 11 11:07:49 2019 +0530
 4391 
 4392     packaging: Obsoleting glusterfs-gnfs for upgrade
 4393     
 4394     Master branch reference
 4395     >link : https://review.gluster.org/#/c/glusterfs/+/22190/
 4396     >fixes: bz#1672711
 4397     >Change-Id: Iad7194e788a8eeecd617614e9f8a1fe3264a384d
 4398     >Signed-off-by: Sahina Bose <sabose@redhat.com>
 4399     >Signed-off-by: Jiffin Tony Thottan <jthottan@redhat.com>
 4400     >(cherry picked from commit d3608bd26cbc3e47fc0e60e85bd9f66515e050b1)
 4401     
 4402     fixes: bz#1679965
 4403     Change-Id: Iad7194e788a8eeecd617614e9f8a1fe3264a384d
 4404     Signed-off-by: Jiffin Tony Thottan <jthottan@redhat.com>
 4405 
 4406 commit e6fabf8c330ec4ce540bf8a4daebd39320c407d9
 4407 Author: ShyamsundarR <srangana@redhat.com>
 4408 Date:   Mon Feb 18 15:02:10 2019 -0500
 4409 
 4410     doc: Added initial release notes for release-6
 4411     
 4412     Change-Id: I31fff344045344c501536b207c864e90ed34bf20
 4413     updates: bz#1672818
 4414     Signed-off-by: ShyamsundarR <srangana@redhat.com>
 4415 
 4416 commit 951abf5c53d4658b86b00ffb1147989c07527c3f
 4417 Author: N Balachandran <nbalacha@redhat.com>
 4418 Date:   Wed Feb 6 09:58:55 2019 +0530
 4419 
 4420     cluster/dht: Request linkto xattrs in dht_rmdir opendir
 4421     
 4422     If parallel-readdir is enabled, the rda xlator is loaded
 4423     below dht in the graph and proactively lists and caches
 4424     entries when an opendir is performed. dht_rmdir checks if
 4425     the directory being deleted contains stale linkto files by
 4426     performing a readdirp on its child subvols. However, as
 4427     the entries are actually read in during the opendir operation
 4428     which does not request the linkto xattr,no linkto xattrs are
 4429     present for the entries causing dht to incorrectly identify
 4430     them as data files and fail the rmdir operation with ENOTEMPTY.
 4431     DHT now always adds the linkto xattr in the list of xattrs
 4432     requested in the opendir.
 4433     
 4434     Change-Id: I0711198e66c59146282eb8b88084170bedfb4018
 4435     fixes: bz#1679004
 4436     Signed-off-by: N Balachandran <nbalacha@redhat.com>
 4437 
 4438 commit 5c9b2dfb4d251cc0201759c495bbd4d1ad5e3c87
 4439 Author: Kinglong Mee <kinglongmee@gmail.com>
 4440 Date:   Tue Jan 8 16:38:45 2019 +0800
 4441 
 4442     dht: fix double extra unref of inode at heal path
 4443     
 4444     The loc_wipe is done in the _out_ section, inode_unref(loc.parent) here
 4445     casues a double extra unref of loc.parent.
 4446     
 4447     > Change-Id: I2dc809328d3d34bf7b02c7df9a4f97788af511e6
 4448     > Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
 4449     (cherry-pick of https://review.gluster.org/#/c/glusterfs/+/21998/)
 4450     
 4451     Change-Id: I2dc809328d3d34bf7b02c7df9a4f97788af511e6
 4452     updates: bz#1679275
 4453     Signed-off-by: Susant Palai <spalai@redhat.com>
 4454 
 4455 commit bff265f8bc12eb43e82732b6ae81abf18a4b7a97
 4456 Author: Raghavendra Gowdappa <rgowdapp@redhat.com>
 4457 Date:   Wed Feb 13 17:08:14 2019 +0530
 4458 
 4459     performance/write-behind: fix use-after-free in readdirp
 4460     
 4461     Two issues were found:
 4462     1. in wb_readdirp_cbk, inode should unrefed after wb_inode is
 4463     unlocked. Otherwise, inode and hence the context wb_inode can be freed
 4464     by the type we try to unlock wb_inode
 4465     2. wb_readdirp_mark_end iterates over a list of wb_inodes of children
 4466     of a directory. But inodes could've been freed and hence the list
 4467     might be corrupted. To fix take a reference on inode before adding it
 4468     to invalidate_list of parent.
 4469     
 4470     Change-Id: I911b0e0b2060f7f41ded0b05db11af6f9b7c09c5
 4471     Signed-off-by: Raghavendra Gowdappa <rgowdapp@redhat.com>
 4472     Updates: bz#1678570
 4473     (cherry picked from commit 64cc4458918e8c8bfdeb114da0a6501b2b98491a)
 4474 
 4475 commit 1f8b2912c83d1e5ce95f9d73fcf7397c3435ba67
 4476 Author: Raghavendra Gowdappa <rgowdapp@redhat.com>
 4477 Date:   Tue Feb 19 08:04:52 2019 +0530
 4478 
 4479     performance/write-behind: handle call-stub leaks
 4480     
 4481     Change-Id: I7be9a5f48dcad1b136c479c58b1dca1e0488166d
 4482     Signed-off-by: Raghavendra Gowdappa <rgowdapp@redhat.com>
 4483     Fixes: bz#1678570
 4484     (cherry picked from commit 6175cb10cd5f59f3c7ae4100bc78f359b68ca3e9)
 4485 
 4486 commit 8d4b8e2644917ed25a9d9bef37803c4a2f7da84f
 4487 Author: N Balachandran <nbalacha@redhat.com>
 4488 Date:   Tue Feb 12 13:58:54 2019 +0530
 4489 
 4490     cluster/dht: Fix lookup selfheal and rmdir race
 4491     
 4492     A race between the lookup selfheal and rmdir can cause
 4493     directories to be healed only on non-hashed subvols.
 4494     This can prevent the directory from being listed from
 4495     the mount point and in turn causes rm -rf to fail with
 4496     ENOTEMPTY.
 4497     Fix: Update the layout information correctly and reduce
 4498     the call count only after processing the response.
 4499     
 4500     Change-Id: I812779aaf3d7bcf24aab1cb158cb6ed50d212451
 4501     fixes: bz#1677260
 4502     Signed-off-by: N Balachandran <nbalacha@redhat.com>
 4503 
 4504 commit 2026d246676679fba0970b1be9ae181afdcfbee6
 4505 Author: Raghavendra Gowdappa <rgowdapp@redhat.com>
 4506 Date:   Fri Feb 8 09:51:17 2019 +0530
 4507 
 4508     performance/md-cache: introduce an option to control invalidation of inodes
 4509     
 4510     Explicit invalidation by calling inode_invalidate is necessary when
 4511     same (meta)data is shared/access across multiple mounts. Without an
 4512     explicit inode_invalidate call, caches in the mount which didn't
 4513     witness writes wouldn't be aware of changes as writes wouldn't have
 4514     passed through them. However, if (meta)data is not shared, all
 4515     relevant I/O goes through the cache of single mount and hence is
 4516     coherent with (meta)data on bricks always. So, explicit inode
 4517     invalidation can be disabled for this case which gives a huge
 4518     performance boost for workloads that write data and then immediately
 4519     read the data they just wrote. Note that otherwise, local writes
 4520     (which pass through the cache) will change ctime and cause unnecessary
 4521     invalidations.
 4522     
 4523     The name of the option that controls this behavior is
 4524     "performance.global-cache-invalidation". This option is global and it
 4525     purges caches both in glusterfs and kernel stack for native FUSE
 4526     mounts. For non-native FUSE mounts, it purges cache only from
 4527     glusterfs stack. This option is effective only when
 4528     performance.stat-prefetch is on.
 4529     
 4530     Note that there is a similar option "performance.cache-invalidation",
 4531     but the scope of that option is limited to quick-read and md-cache.
 4532     
 4533     Change-Id: I462bb4b65ff9aae1f6ba76f50b1f2f94fb10323b
 4534     Signed-off-by: Raghavendra Gowdappa <rgowdapp@redhat.com>
 4535     updates: bz#1674364
 4536     (cherry picked from commit 2b5aa4489de2017a03bcb6ec8986286f0c76a670)
 4537 
 4538 commit beca73e04dfd92964db26aa46c10d704e47717d4
 4539 Author: Raghavendra Gowdappa <rgowdapp@redhat.com>
 4540 Date:   Fri Feb 8 17:39:49 2019 +0530
 4541 
 4542     mount/fuse: fix bug related to --auto-invalidation in mount script
 4543     
 4544     When "auto-invalidation" option was not specified for mount script,
 4545     glusterfs cmdline ended with "--auto-invalidation=" option. This patch
 4546     fixes that bug in mount script.
 4547     
 4548     Thanks to Amar for reporting it.
 4549     
 4550     Change-Id: Ie5cd4c6ffb3ac644d9d2b032035f914a935d05a8
 4551     Signed-off-by: Raghavendra Gowdappa <rgowdapp@redhat.com>
 4552     updates: bz#1674364
 4553 
 4554 commit e571233df3ea247eaf2ae5e06c331060dc75f9d3
 4555 Author: Atin Mukherjee <amukherj@redhat.com>
 4556 Date:   Thu Feb 7 14:45:39 2019 +0530
 4557 
 4558     glusterd: improve logging
 4559     
 4560     glusterd_resolve_all_bricks failure log should highlight the brick
 4561     identifier.
 4562     
 4563     Change-Id: I035b4650ef6a14bb1e1221d3bad1c40f9d43dbdd
 4564     fixes: bz#1673972
 4565     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 4566     (cherry picked from commit 12af2067a82e37079e76723d3e25ba1c72ca078a)
 4567 
 4568 commit 352e203266e9ae845aeea139fba670e702c634ed
 4569 Author: ShyamsundarR <srangana@redhat.com>
 4570 Date:   Tue Feb 5 20:44:28 2019 -0500
 4571 
 4572     api: Update all future API versions to rel-6
 4573     
 4574     As release 6 is branched, all future APIs now become 6.0
 4575     
 4576     This change implements the same.
 4577     
 4578     Change-Id: I6db368b4dc8585278ec11d4a411adcd04635de53
 4579     Updates: bz#1672818
 4580     Signed-off-by: ShyamsundarR <srangana@redhat.com>
 4581     (cherry picked from commit ddcb3c7438472072daa6fbe3f3b87067b6d7bc54)
 4582 
 4583 commit 8f6973e326543f66e06b5307d209e592cefab846
 4584 Author: Nigel Babu <nigelb@redhat.com>
 4585 Date:   Mon Jan 21 12:17:04 2019 +0530
 4586 
 4587     Bump up timeout for tests on AWS
 4588     
 4589     Fixes: bz#1673267
 4590     Change-Id: I2b9be45f199f6436b858536c6f49be85902217f0
 4591     Signed-off-by: Nigel Babu <nigelb@redhat.com>
 4592 
 4593 commit c396ba182639a429df5b27ecf4984164126934ff
 4594 Author: ShyamsundarR <srangana@redhat.com>
 4595 Date:   Tue Feb 5 19:59:13 2019 -0500
 4596 
 4597     Update rfc.sh for release-6
 4598     
 4599     Signed-off-by: ShyamsundarR <srangana@redhat.com>
 4600 
 4601 commit 90922d20f55e26b23bfab0fbc4e179e305c38037
 4602 Author: Sanju Rakonde <srakonde@redhat.com>
 4603 Date:   Mon Feb 4 15:07:14 2019 +0530
 4604 
 4605     glusterd: get-state command should not fail if any brick is gone bad
 4606     
 4607     Problem: get-state command will error out, if any of the underlying
 4608     brick(s) of volume(s) in the cluster go bad.
 4609     
 4610     It is expected that get-state command should not error out, but
 4611     should generate an output successfully.
 4612     
 4613     Solution: In glusterd_get_state(), a statfs call is made on the
 4614     brick path for every bricks of the volumes to calculate the total
 4615     and free memory available. If any of statfs call fails on any
 4616     brick, we should not error out and should report total memory and free
 4617     memory of that brick as 0.
 4618     
 4619     This patch also handles a statfs failure scenario in
 4620     glusterd_store_retrieve_bricks().
 4621     
 4622     fixes: bz#1672205
 4623     
 4624     Change-Id: Ia9e8a1d8843b65949d72fd6809bd21d39b31ad83
 4625     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 4626 
 4627 commit a9b51f2d1fd3a8be6496b62b989b6838b542936b
 4628 Author: Kotresh HR <khiremat@redhat.com>
 4629 Date:   Fri Feb 1 12:24:14 2019 +0530
 4630 
 4631     geo-rep: Fix configparser import issue
 4632     
 4633     'configparser' is backported to python2 and can
 4634     be installed using pip (pip install configparser).
 4635     So trying to import 'configparser' first and later
 4636     'ConfigParser' can cause issues w.r.t unicode strings.
 4637     
 4638     Always try importing 'ConfigParser' first and then
 4639     'configparser'. This solves python2/python3 compat
 4640     issues.
 4641     
 4642     Change-Id: I2a87c3fc46476296b8cb547338f35723518751cc
 4643     fixes: bz#1671637
 4644     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 4645 
 4646 commit f87a3e840306052a120529ea5a190240179078c1
 4647 Author: Rinku Kothiya <rkothiya@redhat.com>
 4648 Date:   Mon Jan 21 11:16:09 2019 +0000
 4649 
 4650     cli: Added the group option for volume set
 4651     
 4652     gluster volume set <VOLUME> group <GROUP> is used for setting multiple
 4653     pre-defined volume options, but this was undocumented. This patch doc-
 4654     ments this feature.
 4655     
 4656     fixes: bz#1243991
 4657     
 4658     Change-Id: Id346cf2537f85179caff32479f09555ce2e72e76
 4659     Signed-off-by: Rinku Kothiya <rkothiya@redhat.com>
 4660 
 4661 commit ec05f3a21f44e1fd5e089b7a0fffd5265b67cdfc
 4662 Author: Amar Tumballi <amarts@redhat.com>
 4663 Date:   Mon Dec 17 14:16:21 2018 +0530
 4664 
 4665     glusterd: manage upgrade to current master
 4666     
 4667     Scenarios tested:
 4668     
 4669     * Upgrade the node when there are stripe / tiering and regular
 4670     type of volumes are present.
 4671       - All volumes are started fine (as the change was not on brick volfile)
 4672       - For tier, the functionality may not even work, as changetimerecorder
 4673         is not present.
 4674       - 'gluster volume info' properly shows as 'NOT SUPPORTED' for stripe and
 4675         tier type of volume.
 4676     
 4677     * Upgrade in a rolling upgrade scenario, where an old version is
 4678     able to connect to higher master.
 4679       - on a normal volume, if the volfile-server was new, the newer client
 4680         volfiles needed to have utime xlator conditionally.
 4681       - with this one change, all other changes seem to work fine.
 4682     
 4683     Change-Id: Ib2d3b69dafa02b2c695a735b13c1aa70aba07cb8
 4684     updates: bz#1635688
 4685     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 4686 
 4687 commit da5ae3afcd1b16bb0f2f9bffc1878b17b75429ed
 4688 Author: N Balachandran <nbalacha@redhat.com>
 4689 Date:   Tue Jan 29 09:47:32 2019 +0530
 4690 
 4691     cluster/dht: Do not use gfid-req in fresh lookup
 4692     
 4693     Fuse sets a random gfid-req value for a fresh lookup. Posix
 4694     lookup will set this gfid on entries with missing gfids causing
 4695     a GFID mismatch for directories.
 4696     DHT will now ignore the Fuse provided gfid-req and use the GFID
 4697     returned from other subvols to heal the missing gfid.
 4698     
 4699     Change-Id: I5f541978808f246ba4542564251e341ec490db14
 4700     fixes: bz#1670259
 4701     Signed-off-by: N Balachandran <nbalacha@redhat.com>
 4702 
 4703 commit 23e530a135fc419fba401448290f8b1809e23f53
 4704 Author: Shwetha K Acharya <sacharya@redhat.com>
 4705 Date:   Mon Dec 10 13:45:34 2018 +0530
 4706 
 4707     glusterfind: python2 to python3 compat
 4708     
 4709     Made necessary modifications to ensure python3 compatibilty.
 4710     
 4711     fixes: bz#1658116
 4712     Change-Id: I5cf1d0447eaf3c44eb444245d1f67aadd60705c3
 4713     Signed-off-by: Shwetha K Acharya <sacharya@redhat.com>
 4714 
 4715 commit a229ee1c8cdf8e0ac1abaeb60cabe6ab08f60546
 4716 Author: Raghavendra Gowdappa <rgowdapp@redhat.com>
 4717 Date:   Tue Jan 29 08:05:07 2019 +0530
 4718 
 4719     mount/fuse: expose auto-invalidation as a mount option
 4720     
 4721     Auto invalidation is necessary when same (meta)data is shared/access
 4722     across multiple mounts. However, if (meta)data is not shared, all
 4723     relevant I/O goes through the cache of single mount and hence is
 4724     coherent with (meta)data on bricks always. So, fuse-auto-invalidation
 4725     can be disabled for this case which gives a huge performance boost for
 4726     workloads that write data and then immediately read the data they just
 4727     wrote.
 4728     
 4729     From glusterfs --help,
 4730     
 4731     <snip>
 4732           --auto-invalidation[=BOOL]   controls whether fuse-kernel can
 4733                                  auto-invalidate attribute, dentry and page-cache.
 4734                                  Disable this only if same files/directories are
 4735                                  not accessed across two different mounts
 4736                                  concurrently [default: "on"]
 4737     </snip>
 4738     
 4739     Details on how disabling auto-invalidation helped to reduce pgbench
 4740     init times can be found at [1]. Time taken for pgbench init of scale
 4741     8000 was 8340s. That will be an improvement of 86% (59280s vs 8340s)
 4742     with auto-invalidations turned off along with other
 4743     optimizations. Just disabling auto-invalidation contributed 56%
 4744     improvement by reducing the total time taken by 33260s.
 4745     
 4746     [1] https://www.spinics.net/lists/gluster-devel/msg25907.html
 4747     
 4748     Change-Id: I0ed730dba9064bd9c576ad1800170a21e100e1ce
 4749     Signed-off-by: Raghavendra Gowdappa <rgowdapp@redhat.com>
 4750     updates: bz#1664934
 4751 
 4752 commit 4674678951a1315975d66016fb55c49100b7819f
 4753 Author: Xavi Hernandez <xhernandez@redhat.com>
 4754 Date:   Thu Jan 24 18:31:10 2019 +0100
 4755 
 4756     core: make gf_thread_create() easier to use
 4757     
 4758     This patch creates a specific function to set the thread name using a
 4759     string format and a variable argument list, like printf().
 4760     
 4761     This function is used to set the thread name from gf_thread_create(),
 4762     which now accepts a variable argument list to create the full name. It's
 4763     not necessary anymore to use a local array to build the name of the
 4764     thread. This is done automatically.
 4765     
 4766     Change-Id: Idd8d01fd462c227359b96e98699f8c6d962dc17c
 4767     Updates: bz#1193929
 4768     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 4769 
 4770 commit 6b98735956c599ea621fa560b201fb7de6c36cac
 4771 Author: Ashish Pandey <aspandey@redhat.com>
 4772 Date:   Fri Dec 21 14:31:15 2018 +0530
 4773 
 4774     cluster/thin-arbiter: Consider thin-arbiter before marking new entry changelog
 4775     
 4776     If a fop to create an entry fails on one of the data brick,
 4777     we mark the pending changelog on the entry on brick for which
 4778     it was successful. This is done as part of post op phase to
 4779     make sure that entry gets healed even if it gets renamed to
 4780     some other path where its parent was not marked as bad.
 4781     
 4782     As it happens as part of post op, we should consider thin-arbiter
 4783     to check if the brick, which was successful, is the good brick or not.
 4784     This will avoide split brain and other issues.
 4785     
 4786     Change-Id: I12686675be98f02f70a5186b3ed748c541514d53
 4787     updates: bz#1662264
 4788     Signed-off-by: Ashish Pandey <aspandey@redhat.com>
 4789 
 4790 commit 7eda6fe62d4e47937afc2ba71b4fd858399bca05
 4791 Author: N Balachandran <nbalacha@redhat.com>
 4792 Date:   Mon Jan 28 11:55:17 2019 +0530
 4793 
 4794     cluster/dht: Remove internal permission bits
 4795     
 4796     Rebalance sets the sgid and t bits on a file
 4797     that is being migrated. These permissions are
 4798     not removed in dht_readdirp_cbk when listing files
 4799     causing them to show up on the mountpoint.
 4800     We now remove these permissions if a non-linkto
 4801     file has the linkto xattr set.
 4802     
 4803     Change-Id: I5c69b2ecfe2df804fe50faea903b242d01729596
 4804     fixes: bz#1669937
 4805     Signed-off-by: N Balachandran <nbalacha@redhat.com>
 4806 
 4807 commit 62a61c548d85d8c894907d7c43ef66c009a4757d
 4808 Author: Milind Changire <mchangir@redhat.com>
 4809 Date:   Thu Jan 31 11:30:27 2019 +0530
 4810 
 4811     core: move "dict is NULL" logs to DEBUG log level
 4812     
 4813     Too many logs get printed if dict_ref() and dict_unref() are passed NULL
 4814     pointer.
 4815     
 4816     fixes: bz#1671213
 4817     Change-Id: I18afd849d64318f68baa7b549ee310dac0e1e786
 4818     Signed-off-by: Milind Changire <mchangir@redhat.com>
 4819 
 4820 commit 2fb445babdd621b71676e40804fe98e95fc9084d
 4821 Author: Xavi Hernandez <xhernandez@redhat.com>
 4822 Date:   Thu Jan 31 08:13:58 2019 +0100
 4823 
 4824     syncop: remove unnecessary call to gf_backtrace_save()
 4825     
 4826     A call to gf_backtrace_save() was done on each context switch of a
 4827     synctask. The backtrace is generated writing to the filesystem, so it
 4828     can have an important impact on latency.
 4829     
 4830     The generated backtrace was not used anywhere, so it's been removed.
 4831     
 4832     Change-Id: I399a93b932c5b6e981c696c72c3e1ef44710ba52
 4833     Updates: bz#1193929
 4834     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 4835 
 4836 commit 8bc33a2d90df6439e7636aadbefdd9041f9698c3
 4837 Author: Mohit Agrawal <moagrawal@redhat.com>
 4838 Date:   Sat Sep 29 13:15:35 2018 +0530
 4839 
 4840     feature/bitrot: Avoid thread creation if xlator is not enabled
 4841     
 4842     Problem: Avoid thread creation for bitrot-stub
 4843              for a volume if feature is not enabled
 4844     
 4845     Solution: Before thread creation check the flag if feature
 4846               is enabled
 4847     
 4848     Updates: #475
 4849     Change-Id: I2c6cc35bba142d4b418cc986ada588e558512c8e
 4850     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 4851     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 4852 
 4853 commit b41cdeb638f9f9ec2fef13ec95c216faf52a9df9
 4854 Author: Mohit Agrawal <moagrawal@redhat.com>
 4855 Date:   Mon Jan 28 21:28:45 2019 +0530
 4856 
 4857     core: heketi-cli is throwing error "target is busy"
 4858     
 4859     Problem: When rpc-transport-disconnect happens, server_connection_cleanup_flush_cbk()
 4860              is supposed to call rpc_transport_unref() after open-files on
 4861              that transport are flushed per transport.But open-fd-count is
 4862              maintained in bound_xl->fd_count, which can be incremented/decremented
 4863              cumulatively in server_connection_cleanup() by all transport
 4864              disconnect paths. So instead of rpc_transport_unref() happening
 4865              per transport, it ends up doing it only once after all the files
 4866              on all the transports for the brick are flushed leading to
 4867              rpc-leaks.
 4868     
 4869     Solution: To avoid races maintain fd_cnt at client instead of maintaining
 4870               on brick
 4871     
 4872     Credits: Pranith Kumar Karampuri
 4873     Change-Id: I6e8ea37a61f82d9aefb227c5b3ab57a7a36850e6
 4874     fixes: bz#1668190
 4875     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 4876 
 4877 commit 09db11b0c020bc79d493c6d7e7ea4f3beb000c68
 4878 Author: Ravishankar N <ravishankar@redhat.com>
 4879 Date:   Tue Jan 29 11:51:16 2019 +0530
 4880 
 4881     readdir-ahead: do not zero-out iatt in fop cbk
 4882     
 4883     ...when ctime is zero. ia_type and ia_gfid always need to be non-zero
 4884     for things to work correctly.
 4885     
 4886     Problem:
 4887     Commit c9bde3021202f1d5c5a2d19ac05a510fc1f788ac zeroed out the iatt
 4888     buffer in the cbks of modification fops before unwinding if the ctime in
 4889     the buffer was zero. This was causing the fops to fail: noticeable when
 4890     AFR's 'consistent-metadata' option was enabled. (AFR zeros out the ctime
 4891     when the option is set. See commit
 4892     4c4624c9bad2edf27128cb122c64f15d7d63bbc8).
 4893     
 4894     Fixes:
 4895     -Do not zero out the ia_type and ia_gfid of the iatt buff under any
 4896     circumstance.
 4897     -Also, fixed _rda_inode_ctx_update_iatts() to always update these values from
 4898     the incoming buf when ctime is zero. Otherwise we end up with zero
 4899     ia_type and ia_gfid the first time the function is called *and* the
 4900     incoming buf has ctime set to zero.
 4901     
 4902     fixes: bz#1670253
 4903     Reported-By:Michael Hanselmann <public@hansmi.ch>
 4904     Change-Id: Ib72228892d42c3513c19fc6dfb543f2aa3489eca
 4905     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
 4906 
 4907 commit 4aee035cd2a32750326b83b5fe08af7c8abab284
 4908 Author: Kaleb S. KEITHLEY <kkeithle@redhat.com>
 4909 Date:   Tue Jan 29 03:16:16 2019 -0500
 4910 
 4911     api: bad GFAPI_4.1.6 block
 4912     
 4913     missing global: line, tabs not spaces
 4914     
 4915     Change-Id: Icdbc23b4e4cd608da1d764e81757201c4b1269a6
 4916     updates: bz#1193929
 4917     Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
 4918 
 4919 commit 829337ed3971a53086f1562d826e79d4f3e3ed39
 4920 Author: Amar Tumballi <amarts@redhat.com>
 4921 Date:   Mon Jan 28 18:30:24 2019 +0530
 4922 
 4923     features/sdfs: disable by default
 4924     
 4925     With the feature enabled, some of the performance testing results,
 4926     specially those which create millions of small files, got approximately
 4927     4x regression compared to version before enabling this.
 4928     
 4929     On master without this patch:  765 creates/sec
 4930     On master with this patch   : 3380 creates/sec
 4931     
 4932     Also there seems to be regression caused by this in 'ls -l' workload.
 4933     
 4934     On master without this patch:  3030 files/sec
 4935     On master with this patch   : 16610 files/sec
 4936     
 4937     This is a feature added to handle multiple clients parallely operating
 4938     (specially those which race for file creates with same name) on a single
 4939     namespace/directory. Considering that is < 3% of Gluster's usecase right
 4940     now, it makes sense to disable the feature by default, so we don't
 4941     penalize the default users who doesn't bother about this usecase.
 4942     Also note that the client side translators, specially, distribute,
 4943     replicate and disperse already handle the issue upto 99.5% of the cases
 4944     without SDFS, so it makes sense to keep the feature disabled by default.
 4945     
 4946     Credits: Shyamsunder <srangana@redhat.com> for running the tests and
 4947     getting the numbers.
 4948     
 4949     Change-Id: Iec49ce1d82e621e9db25eb633fcb1d932e74f4fc
 4950     Updates: bz#1670031
 4951     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 4952 
 4953 commit c7d1aee76d5713d1f337ab1c831c0ed74e4676e1
 4954 Author: Yaniv Kaul <ykaul@redhat.com>
 4955 Date:   Thu Dec 27 18:56:16 2018 +0200
 4956 
 4957     Multiple files: reduce work while under lock.
 4958     
 4959     Mostly, unlock before logging.
 4960     In some cases, moved different code that was not needed
 4961     to be under lock (for example, taking time, or malloc'ing)
 4962     to be executed before taking the lock.
 4963     
 4964     Note: logging might be slightly less accurate in order, since it may
 4965     not be done now under the lock, so order of logs is racy. I think
 4966     it's a reasonable compromise.
 4967     
 4968     Compile-tested only!
 4969     updates: bz#1193929
 4970     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 4971     
 4972     Change-Id: I2438710016afc9f4f62a176ef1a0d3ed793b4f89
 4973 
 4974 commit f747d55a7fd364e2b9a74fe40360ab3cb7b11537
 4975 Author: Zhang Huan <zhanghuan@open-fs.com>
 4976 Date:   Tue Jan 8 16:17:06 2019 +0800
 4977 
 4978     socket: fix issue on concurrent handle of a socket
 4979     
 4980     Found an issue on concurrent invoke of event handler to the same socket
 4981     fd, causing memory corruption. This issue arises after applying commit
 4982     "socket: Remove redundant in_lock in incoming message handling" that
 4983     removes priv->in_lock to serialize socket read.
 4984     
 4985     The following call sequence describes how concurrent socket event handle
 4986     happens.
 4987        thread 1                    thread 2                thread 3
 4988     epoll_wait() return
 4989     (slot->in_handler is 0)  call select_on_epoll()
 4990                              and epoll_ctl() on fd
 4991                                                         epoll_wait() return
 4992     slot->in_handler++
 4993     (slot->in_handler is 1)
 4994                                                         slot->in_handler++
 4995                                                         (slot->in_handler is 2)
 4996     call handler()                                      call handler()
 4997     
 4998     Fix this issue by skip invoke of handler if there is already a handler
 4999     inprogress.
 5000     
 5001     Change-Id: I437126ac772debcadb00993a948919c931cd607b
 5002     updates: bz#1467614
 5003     Signed-off-by: Zhang Huan <zhanghuan@open-fs.com>
 5004 
 5005 commit 72922c1fd69191b220f79905a23395c3a87f86ce
 5006 Author: Krutika Dhananjay <kdhananj@redhat.com>
 5007 Date:   Thu Jan 24 14:14:39 2019 +0530
 5008 
 5009     features/shard: Ref shard inode while adding to fsync list
 5010     
 5011     PROBLEM:
 5012     
 5013     Lot of the earlier changes in the management of shards in lru, fsync
 5014     lists assumed that if a given shard exists in fsync list, it must be
 5015     part of lru list as well. This was found to be not true.
 5016     
 5017     Consider this - a file is FALLOCATE'd to a size which would make the
 5018     number of participant shards to be greater than the lru list size.
 5019     In this case, some of the resolved shards that are to participate in
 5020     this fop will be evicted from lru list to give way to the rest of the
 5021     shards. And once FALLOCATE completes, these shards are added to fsync
 5022     list but without a ref. After the fop completes, these shard inodes
 5023     are unref'd and destroyed while their inode ctxs are still part of
 5024     fsync list. Now when an FSYNC is called on the base file and the
 5025     fsync-list traversed, the client crashes due to illegal memory access.
 5026     
 5027     FIX:
 5028     
 5029     Hold a ref on the shard inode when adding to fsync list as well.
 5030     And unref under following conditions:
 5031     1. when the shard is evicted from lru list
 5032     2. when the base file is fsync'd
 5033     3. when the shards are deleted.
 5034     
 5035     Change-Id: Iab460667d091b8388322f59b6cb27ce69299b1b2
 5036     fixes: bz#1669077
 5037     Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
 5038 
 5039 commit 99b3ab0cf3d3389a2ff89c29cfff906cd36693a3
 5040 Author: Amar Tumballi <amarts@redhat.com>
 5041 Date:   Fri Jan 11 11:57:07 2019 +0530
 5042 
 5043     tests: run nfs tests only if --enable-gnfs is provided
 5044     
 5045     Fixes: bz#1665358
 5046     Change-Id: Idbf88ec3ac683733b32c313377eeb72f2819bf0d
 5047     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 5048 
 5049 commit 06061aaa447f03e2522483d02525619ebc9854db
 5050 Author: Ravishankar N <ravishankar@redhat.com>
 5051 Date:   Thu Jan 24 12:14:11 2019 +0530
 5052 
 5053     afr/self-heal:Fix wrong type checking
 5054     
 5055     gf_dirent struct has d_type variable which should check
 5056     with DT_DIR istead of IA_IFDIR or IA_IFDIR has to compare
 5057     with entry->d_stat.ia_type
 5058     
 5059     Change-Id: Idf1059ce2a590734bc5b6adaad73604d9a708804
 5060     updates: bz#1653359
 5061     Signed-off-by: Mohammed Rafi KC <rkavunga@redhat.com>
 5062 
 5063 commit 04f84756e1baa5eff4560339700f82970eaa5d80
 5064 Author: Mohit Agrawal <moagrawal@redhat.com>
 5065 Date:   Tue Jan 22 12:57:50 2019 +0530
 5066 
 5067     core: heketi-cli is throwing error "target is busy"
 5068     
 5069     Problem: At the time of deleting block hosting volume
 5070              through heketi-cli , it is throwing an error "target is busy".
 5071              cli is throwing an error because brick is not detached successfully
 5072              and brick is not detached due to race condition to cleanp xprt
 5073              associated with detached brick
 5074     
 5075     Solution: To avoid xprt specifc race condition introduce an atomic flag
 5076               on rpc_transport
 5077     
 5078     Change-Id: Id4ff1fe8375a63be71fb3343f455190a1b8bb6d4
 5079     fixes: bz#1668190
 5080     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 5081 
 5082 commit 9de432847cd699457623de84f76f7598aecd61e3
 5083 Author: Amar Tumballi <amarts@redhat.com>
 5084 Date:   Tue Jan 22 13:30:34 2019 +0530
 5085 
 5086     tests/bug-brick-mux-restart: add extra information
 5087     
 5088     so that we can understand more about process memory and thread consumptions
 5089     With this, we will also be able to understand more about the process details
 5090     with brick-mux.
 5091     
 5092     updates: bz#1193929
 5093     Change-Id: I147a3e3814fc37dfb635217d0a0f0184fae0994f
 5094     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 5095 
 5096 commit 990d6a99d41111ea18481db55566a96c2fc4dad4
 5097 Author: Amar Tumballi <amarts@redhat.com>
 5098 Date:   Wed Jan 16 20:24:06 2019 +0530
 5099 
 5100     core: move logs which are only developer relevant to DEBUG level
 5101     
 5102     We had only changed the log level to DEBUG in release branch earlier.
 5103     But considering 90%+ of our deployments happen in same env, we can look
 5104     at these specific logs on need basis. With this change, the master
 5105     branch will be easier to debug with lesser logs.
 5106     
 5107     Change-Id: I4157a7ec7d5ec9c2948b2bbc1e4cb8317f28d6b8
 5108     Updates: bz#1666833
 5109     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 5110 
 5111 commit cf12a446f86169d0954e68dad36a7763cb178a0e
 5112 Author: Mohammed Rafi KC <rkavunga@redhat.com>
 5113 Date:   Mon Jan 21 17:01:33 2019 +0530
 5114 
 5115     performance/readdir-ahead: Fix deadlock in readdir ahead.
 5116     
 5117     This patch fixes a lock contention in reaadir-ahead xlator.
 5118     
 5119     There are two issues, one is the processing of "." ".."
 5120     entry while holding an fd_ctx lock. The other one is destroying
 5121     the stack inside a fd_ctx lock.
 5122     
 5123     Change-Id: Id0bf83a3d9fea6b40015b8d167525c59c6cfa25e
 5124     updates: bz#1659708
 5125     Signed-off-by: Mohammed Rafi KC <rkavunga@redhat.com>
 5126 
 5127 commit d193ed84ae2886d89b899e02e9642e61bdab462a
 5128 Author: Shwetha K Acharya <sacharya@redhat.com>
 5129 Date:   Mon Dec 31 10:55:21 2018 +0530
 5130 
 5131     tools/glusterfind: option to display only files/directories
 5132     
 5133     Updated full find to filter for files and directories.
 5134     --full --type f  lists only the files,
 5135     --full --type d lists only the directories,
 5136     --full (by default) lists both files and directories.
 5137     
 5138     fixes: #579
 5139     Change-Id: If2c91a21a131667d5de34635c1846013e8fa20b7
 5140     Signed-off-by: Shwetha K Acharya <sacharya@redhat.com>
 5141 
 5142 commit 86d4eac6c6f2d774a579ef134f6526f75504c46e
 5143 Author: Mohit Agrawal <moagrawal@redhat.com>
 5144 Date:   Tue Jan 22 18:01:40 2019 +0530
 5145 
 5146     posix: Change data type to dump nr_files to statedump
 5147     
 5148     Problem: In commit 2261e444a47ffffb5d64305efceee1d5a734cd75
 5149              wrong data type of nr_files was changed to dump
 5150              nr_files to statedump so build is failing on 32bit
 5151              environment
 5152     
 5153     Solution: Change data type to avoid errors
 5154     
 5155     Change-Id: Ifb4b19feda6e0e56d110b23351e7a0efd5bfa29b
 5156     fixes: bz#1657607
 5157     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 5158 
 5159 commit 832f60d41d9a392e77e5b81e7a44a97003b7541f
 5160 Author: Poornima G <pgurusid@redhat.com>
 5161 Date:   Tue Jan 22 16:07:52 2019 +0530
 5162 
 5163     rpc: Fix double free
 5164     
 5165     The value rsp.xdata.xdata_val was being freed twice. It was assigned
 5166     to dict->extra_stdfree, dict_destroy would free it and also there was
 5167     an explicit free. Getting rid of explicit free in this patch.
 5168     
 5169     Change-Id: Ia9c73454bec3970b33f154fa754398bf3b045645
 5170     fixes: bz#1668268
 5171     Signed-off-by: Poornima G <pgurusid@redhat.com>
 5172 
 5173 commit b6c417785e54620331ae35d6971fe8bef98b4619
 5174 Author: Milind Changire <mchangir@redhat.com>
 5175 Date:   Tue Jan 22 12:10:59 2019 +0530
 5176 
 5177     rpc: use address-family option from vol file
 5178     
 5179     This patch helps enable IPv6 connections in the cluster.
 5180     The default address-family is IPv4 without using this option explicitly.
 5181     
 5182     When address-family is set to "inet6" in the /etc/glusterfs/glusterd.vol
 5183     file, the mount command-line also needs to have
 5184     -o xlator-option="transport.address-family=inet6" added to it.
 5185     
 5186     This option also gets added to the brick command-line.
 5187     Snapshot and gfapi use-cases should also use this option to pass in the
 5188     inet6 address-family.
 5189     
 5190     Change-Id: I97db91021af27bacb6d7578e33ea4817f66d7270
 5191     fixes: bz#1635863
 5192     Signed-off-by: Milind Changire <mchangir@redhat.com>
 5193 
 5194 commit 67bc3775685198b9ab10c1f2a0d957b157bb4acd
 5195 Author: Iraj Jamali <ijamali@redhat.com>
 5196 Date:   Fri Nov 30 17:23:57 2018 +0530
 5197 
 5198     afr: not resolve splitbrains when copies are of same size
 5199     
 5200     Automatic Splitbrain with size as policy must
 5201     not resolve splitbrains when the copies are of same size.
 5202     Determining if the sizes of copies are same and
 5203     returning -1 in that case.
 5204     
 5205     updates: bz#1655052
 5206     
 5207     Change-Id: I3d8e8b4d7962b070ed16c3ee02a1e5a926fd5eab
 5208     Signed-off-by: Iraj Jamali <ijamali@redhat.com>
 5209 
 5210 commit cd5714554627fe90ee2c77685cb410a8fb25eceb
 5211 Author: Zhang Huan <zhanghuan@open-fs.com>
 5212 Date:   Thu Jan 3 17:57:38 2019 +0800
 5213 
 5214     socket: don't pass return value from protocol handler to event handler
 5215     
 5216     Event handler handles socket level error only, while protocol handler
 5217     handles in protocol level error. If protocol handler decides to
 5218     disconnect on error in any case, it should call disconnect instead of
 5219     return an error back to event handler.
 5220     
 5221     Change-Id: I9375be98cc52cb969085333f3c7229a91207d1bd
 5222     updates: bz#1666143
 5223     Signed-off-by: Zhang Huan <zhanghuan@open-fs.com>
 5224 
 5225 commit 4d9935a4db67be0237db5fc6a2b51086635571f6
 5226 Author: Zhang Huan <zhanghuan@open-fs.com>
 5227 Date:   Sat Dec 29 16:26:58 2018 +0800
 5228 
 5229     socket: fix issue when socket read return with EAGAIN
 5230     
 5231     In the case socket read returns EAGAIN, positive value about remaining
 5232     vector to send is returned. This return value will be passed all the way
 5233     back to event handler, making it complains.
 5234     
 5235     [2018-12-29 08:02:25.603199] T [socket.c:1640:__socket_read_simple_payload] 0-test-client-0-extra.0: partial read on non-blocking socket.
 5236     [2018-12-29 08:02:25.603201] T [rpc-clnt.c:654:rpc_clnt_reply_init] 0-test-client-2-extra.1: received rpc message (RPC XID: 0xfa6 Program: GlusterFS 4.x v1, ProgVers: 400, Proc: 12) from rpc-transport (test-client-2-extra.1)
 5237     [2018-12-29 08:02:25.603207] T [socket.c:3129:socket_event_handler] 0-test-client-0-extra.0: (sock:32) socket_event_poll_in returned 1
 5238     
 5239     Formerly, in socket_proto_state_machine, return value of socket_readv is
 5240     used to check if message is all read-in. In this commit, it is checked
 5241     whether size of bytes indicated in header are all read in. In this way,
 5242     only 0 and -1 will be returned from socket_proto_state_machine(),
 5243     indicating whether there is error in the underlying socket.
 5244     
 5245     Change-Id: I8be0d178b049f0720d738a03aec41c4b375d2972
 5246     updates: bz#1666143
 5247     Signed-off-by: Zhang Huan <zhanghuan@open-fs.com>
 5248 
 5249 commit 3c556353cd1dde0593096c9e9e11b877403971f0
 5250 Author: Susant Palai <spalai@redhat.com>
 5251 Date:   Fri Jan 18 17:26:36 2019 +0530
 5252 
 5253     locks/fencing: Add a security knob for fencing
 5254     
 5255     There is a low level security issue with fencing since one client
 5256     can preempt another client's lock.
 5257     
 5258     This patch does not completely eliminate the issue of a client
 5259     misbehaving, but certainly it adds a security layer for default use cases
 5260     that does not need fencing.
 5261     
 5262     Change-Id: I55cd15f2ed1ae0f2556e3d27a2ef4bc10fdada1c
 5263     updates: #466
 5264     Signed-off-by: Susant Palai <spalai@redhat.com>
 5265 
 5266 commit 4f58d35f064e5fba3a02b7be8b2525ebe2114254
 5267 Author: N Balachandran <nbalacha@redhat.com>
 5268 Date:   Mon Jan 21 15:15:51 2019 +0530
 5269 
 5270     cluster/dht: Delete invalid linkto files in rmdir
 5271     
 5272     rm -rf <dir> fails on dirs which contain linkto files
 5273     that point to themselves because dht incorrectly thought
 5274     that they were cached files after looking them up.
 5275     The fix now treats them as invalid linkto files
 5276     and deletes them.
 5277     
 5278     Change-Id: I376c72a5309714ee339c74485e02cfb4e29be643
 5279     fixes: bz#1667804
 5280     Signed-off-by: N Balachandran <nbalacha@redhat.com>
 5281 
 5282 commit 4deeab02e3d15bd266f24d0f7b28f0e5401fa950
 5283 Author: Mohit Agrawal <moagrawal@redhat.com>
 5284 Date:   Mon Jan 21 17:53:12 2019 +0530
 5285 
 5286     glusterd: Avoid dict_leak in __glusterd_handle_cli_uuid_get function
 5287     
 5288     Change-Id: Iefe08b136044495f6fa2b092c9e8c833efee1400
 5289     fixes: bz#1667905
 5290     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 5291 
 5292 commit 2a8a66d58ad7ad28d32de42bd3423d7aa3917e3b
 5293 Author: Xiubo Li <xiubli@redhat.com>
 5294 Date:   Sun Jan 13 17:30:11 2019 +0800
 5295 
 5296     common-utils: make vector a const parameter
 5297     
 5298     To avoid the warning and preparing for adding writesame support.
 5299     
 5300     Updates: #617
 5301     Change-Id: I0710b1e4c240368a9bf52968bddc6e250ae2028d
 5302     Signed-off-by: Xiubo Li <xiubli@redhat.com>
 5303 
 5304 commit 5903111ad21cb937258c0fda24ea7dec466347b4
 5305 Author: Mohit Agrawal <moagrawal@redhat.com>
 5306 Date:   Mon Jan 21 09:12:30 2019 +0530
 5307 
 5308     glusterd: Resolve memory leak in get-state command
 5309     
 5310     In gluster get-state volumeoptions command there was some amount of leak
 5311     observed. This fix resolves the identified leaks.
 5312     
 5313     Change-Id: Ibde5743d1136fa72c531d48bb1b0b5da0c0b82a1
 5314     fixes: bz#1667779
 5315     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 5316 
 5317 commit 11aaecccad03d5803dc7be63c3e36af75da8126d
 5318 Author: Iraj Jamali <ijamali@redhat.com>
 5319 Date:   Mon Jan 7 15:19:18 2019 +0530
 5320 
 5321     posix: fix coverity issue
 5322     
 5323     Logically dead code
 5324     
 5325     CID: 1398468
 5326     Updates: bz#789278
 5327     
 5328     Change-Id: I8713a0c51777eb64e617d00ab72fd1db4994b6ab
 5329     Signed-off-by: Iraj Jamali <ijamali@redhat.com>
 5330 
 5331 commit cd16967a77d04a8d0c5d5c3ab5346ccdd1df89cb
 5332 Author: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
 5333 Date:   Fri Nov 30 19:49:59 2018 +0530
 5334 
 5335     afr: Splitbrain with size as policy must not resolve for directory
 5336     
 5337     In automatic Splitbrain resolution when favorite child policy
 5338     is set as size, split brain resolution must not work for
 5339     directories.
 5340     
 5341     Currently, if a directory is in split brain with both copies
 5342     having same size, the source is selected arbitrarily
 5343     and healed.
 5344     
 5345     fixes: bz#1655050
 5346     Change-Id: I5739498639c17c89874cc577362e543adab55f5d
 5347     Signed-off-by: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
 5348 
 5349 commit 55b40dfbb2551b1507d532a03bdf199acb37bf6a
 5350 Author: Rinku Kothiya <rkothiya@redhat.com>
 5351 Date:   Mon Jan 14 13:24:20 2019 +0000
 5352 
 5353     cli: Added a welcome and help message
 5354     
 5355     When gluster command is fired without any arguments it just shows the
 5356     prompt, so added a welcome message and info to get help.
 5357     
 5358     fixes: bz#1535528
 5359     
 5360     Change-Id: I627b66b67443716e9270025c1e47b98b6facba13
 5361     Signed-off-by: Rinku Kothiya <rkothiya@redhat.com>
 5362 
 5363 commit c5bb929b367121f2610f74630882254da7fd882a
 5364 Author: Kinglong Mee <kinglongmee@gmail.com>
 5365 Date:   Fri Jan 18 10:38:14 2019 +0800
 5366 
 5367     quotad: fix wrong memory free
 5368     
 5369     1. cli_req.dict.dict_val,
 5370        It must be freed no metter operation error or success.
 5371        Fix it as lookup "alloca" memory before decode.
 5372     
 5373     2. args.xdata.xdata_val,
 5374        It is allocated by "alloca", free is unneeded.
 5375     
 5376     3. qd_nameless_lookup,
 5377        It olny needs gfid, a gfs3_lookup_req argument is unneeded.
 5378     
 5379     Change-Id: I746dddf7f3d1465b1885af2644afe0bcf0a5665b
 5380     fixes: bz#1656682
 5381     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
 5382 
 5383 commit 0687b0beb5cc58d5aac9e203f0feebcd7e9eea03
 5384 Author: Rinku Kothiya <rkothiya@redhat.com>
 5385 Date:   Tue Jan 1 21:06:05 2019 +0530
 5386 
 5387     core: Feature added to accept CidrIp in auth.allow
 5388     
 5389     Added functionality to gluster volume set auth.allow command to
 5390     accept CIDR IP addresses. Modified few functions to isolate cidr
 5391     feature so that it prevents other gluster commands such as peer
 5392     probe to use cidr format ip. The functions are modified in such
 5393     a way that they have an option to enable accepting of cidr
 5394     format for other gluster commands if required in furture.
 5395     
 5396     updates: bz#1138841
 5397     
 5398     Change-Id: Ie6734002a7078f1820e5df42d404411cce945e8b
 5399     Credits: Mohit Agrawal
 5400     Signed-off-by: Rinku Kothiya <rkothiya@redhat.com>
 5401 
 5402 commit ebaf09a2a329517936232510e117debc3795e80b
 5403 Author: Susant Palai <spalai@redhat.com>
 5404 Date:   Fri Nov 30 15:04:17 2018 +0530
 5405 
 5406     lock: Add fencing support
 5407     
 5408     design reference: https://review.gluster.org/#/c/glusterfs-specs/+/21925/
 5409     
 5410     This patch adds the lock preempt support.
 5411     
 5412     Note: The current model stores lock enforcement information as separate
 5413     xattr on disk. There is another effort going in parallel to store this
 5414     in stat(x) of the file. This patch is self sufficient to add fencing
 5415     support. Based on the availability of the stat(x) support either I will
 5416     rebase this patch or we can modify the necessary bits post merging this
 5417     patch.
 5418     
 5419     Change-Id: If4a42f3e0afaee1f66cdb0360ad4e0c005b5b017
 5420     updates: #466
 5421     Signed-off-by: Susant Palai <spalai@redhat.com>
 5422 
 5423 commit 11cf73bc4173c13a9de54ea8d816eb72d8b01f48
 5424 Author: Sunny Kumar <sunkumar@redhat.com>
 5425 Date:   Mon Jan 14 11:48:55 2019 +0530
 5426 
 5427     geo-rep : fix rename sync on hybrid crawl
 5428     
 5429     Problem: When geo-rep is configured as hybrid crawl
 5430              directory renames are not synced to the slave.
 5431     
 5432     Solution: Rename sync of directory was failing due to incorrect
 5433               destination path calculation.
 5434               During check for existence on slave we miscalculated
 5435               realpath. <host:brickpath/dir>.
 5436     
 5437     Change-Id: I23f1ea60e86a917598fe869d5d24f8da654d8a0a
 5438     fixes: bz#1665826
 5439     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 5440 
 5441 commit 0301a66bda44582e3a48519f2a5d365b0c38090d
 5442 Author: Zhang Huan <zhanghuan@open-fs.com>
 5443 Date:   Sat Dec 29 15:51:13 2018 +0800
 5444 
 5445     socket: fix issue when socket write return with EAGAIN
 5446     
 5447     In the case socket write return with EAGAIN, the remaining vector count
 5448     is return all way back to event handler, making followup pollin event to
 5449     skip handling and dispatch loop complains about failure. Even thought
 5450     temporary write failure is not an error.
 5451     
 5452     [2018-12-29 07:31:41.772310] E [MSGID: 101191] [event-epoll.c:674:event_dispatch_epoll_worker] 0-epoll: Failed to dispatch handler
 5453     
 5454     Change-Id: Idf03d120b5f7619eda19720a583cbcc3e7da2504
 5455     updates: bz#1666143
 5456     Signed-off-by: Zhang Huan <zhanghuan@open-fs.com>
 5457 
 5458 commit 22778ca88977fa061c468ca257aec74d4e7d09f4
 5459 Author: Zhang Huan <zhanghuan@open-fs.com>
 5460 Date:   Thu Dec 27 14:13:48 2018 +0800
 5461 
 5462     socket: fix counting of socket total_bytes_read and total_bytes_write
 5463     
 5464     Change-Id: If35d0dbae963facf00ab6bcf07c6e4d1706ed982
 5465     updates: bz#1666143
 5466     Signed-off-by: Zhang Huan <zhanghuan@open-fs.com>
 5467 
 5468 commit 98550952bef0d84677706e75ff53a41dc8c90dec
 5469 Author: Mohit Agrawal <moagrawal@redhat.com>
 5470 Date:   Fri Dec 7 14:36:45 2018 +0530
 5471 
 5472     core: Resolve memory leak for brick
 5473     
 5474     Problem: Some functions are not freeing memory allocated by
 5475              xdr_to_genric so it has become leak
 5476     
 5477     Solution: Call free to avoid leak
 5478     
 5479     Change-Id: I3524fe2831d1511d378a032f21467edae3850314
 5480     fixes: bz#1656682
 5481     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 5482 
 5483 commit 213f31bf9e72eee57a6579b66e259af8e59e9c67
 5484 Author: Arjun <arjsharm@redhat.com>
 5485 Date:   Tue Dec 4 11:02:37 2018 +0530
 5486 
 5487     gfapi : making glfs_setattr/glfs_fsetattr as public
 5488     
 5489     Initially glfs_fsetattr and glfs_setattr, both functions accepted iatt as arguements
 5490     but now they accept stat and later in the function the stat is being converted to iatt
 5491     so that it can be passed to syncop_fsetattr/syncop_setattr.
 5492     
 5493     Change-Id: I41a9e0124785a32ca19ef4d492c5ed5002e66ede
 5494     updates: #389
 5495     Signed-off-by: Arjun Sharma <arjsharm@redhat.com>
 5496 
 5497 commit 2261e444a47ffffb5d64305efceee1d5a734cd75
 5498 Author: Mohit Agrawal <moagrawal@redhat.com>
 5499 Date:   Mon Dec 10 11:14:04 2018 +0530
 5500 
 5501     posix: Convert several posix_private members to gf_atomic
 5502     
 5503     Change-Id: I629698d8ddf6f15428880bdc1501d36bc37b8ebb
 5504     fixes: bz#1657607
 5505     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 5506 
 5507 commit f578cdad23d8a8428a7012f777f4987507f19ea4
 5508 Author: Mohit Agrawal <moagrawal@redhat.com>
 5509 Date:   Sat Jan 12 11:17:23 2019 +0530
 5510 
 5511     core: glusterd/add-brick-and-validate-replicated-volume-options.t is crash
 5512     
 5513     Problem: Sometime brick is getting crash at the time of handling
 5514              pmap signin request
 5515     
 5516     Solution: glusterfs_mgmt_pamp_signin is using same frame to send
 5517               pmap signin request so to avoid crash send signin request
 5518               on separate frame
 5519     
 5520     Change-Id: I443f854171ec4372e8d5f84bdc576c468e92c493
 5521     fixes: bz#1665656
 5522     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 5523 
 5524 commit 211521f039bb5c883ef444577b5962bad9e18be1
 5525 Author: Mohit Agrawal <moagrawal@redhat.com>
 5526 Date:   Fri Nov 30 16:07:39 2018 +0530
 5527 
 5528     core: Resolve dict_leak at the time of destroying graph
 5529     
 5530     Problem: In gluster code some of the places it call's get_new_dict
 5531              to create a dictionary without taking reference so at the time
 5532              of dict_unref it has become a leak
 5533     
 5534     Solution: To resolve the same call dict_new instead of get_new_dict
 5535     
 5536     updates bz#1650403
 5537     Change-Id: I3ccbbf5af07079a4fa09aad2cd0458c8625b2f06
 5538     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 5539 
 5540 commit 8216ed2171789c8b6c6dc1e44cc171c89b1c063d
 5541 Author: Xiubo Li <xiubli@redhat.com>
 5542 Date:   Fri Jan 4 15:22:24 2019 +0800
 5543 
 5544     cluster/afr: fix zerofill transaction.start
 5545     
 5546     This maybe one mistake when coding.
 5547     
 5548     Fixes: bz#1665332
 5549     Change-Id: Ia8f8dadf4a71579240ff9950b141ca528bd342b3
 5550     Signed-off-by: Xiubo Li <xiubli@redhat.com>
 5551 
 5552 commit 741f652769bc074fe85da1485e0e16df6e6766f1
 5553 Author: Sanju Rakonde <srakonde@redhat.com>
 5554 Date:   Thu Jan 10 16:17:39 2019 +0530
 5555 
 5556     glusterd: fix crash
 5557     
 5558     Problem: running "gluster get-state glusterd odir /get-state"
 5559     resulted in glusterd crash.
 5560     
 5561     Cause: In the above command output directory has been specified
 5562     without "/" at the end. If "/" is not given at the end, "/" will
 5563     be added to path using "strcat", so the added character "/" is
 5564     not having memory allocated. When tried to free, glusterd will
 5565     crash as"/" has no memory allocated.
 5566     
 5567     Solution: Instead of concatenating "/" to output directory, add
 5568     it to output filename.
 5569     
 5570     Change-Id: I5dc00a71e46fbef4d07fe99ae23b36fb60dec1c2
 5571     fixes: bz#1665038
 5572     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 5573 
 5574 commit ed2d1ad8266b09e4a71ffd193be3cf85467f4f06
 5575 Author: Vijay Bellur <vbellur@redhat.com>
 5576 Date:   Thu Jan 10 23:00:49 2019 -0800
 5577 
 5578     features/index: Correct incorrect definition in header
 5579     
 5580     s/QUIESCE/INDEX/
 5581     
 5582     fixes: bz#1665363
 5583     
 5584     Change-Id: I6dc4fde682cedeaa10d870267b8909af1a9449c0
 5585     Signed-off-by: Vijay Bellur <vbellur@redhat.com>
 5586 
 5587 commit 01779e6c6c2c876a9e137d51ee1ce6a8062ea893
 5588 Author: Iraj Jamali <ijamali@redhat.com>
 5589 Date:   Mon Dec 17 11:23:59 2018 +0530
 5590 
 5591     fix 32-bit-build-smoke warnings
 5592     
 5593     fixes: bz#1622665
 5594     
 5595     Change-Id: I777d67b1b62c284c62a02277238ad7538eef001e
 5596     Signed-off-by: Iraj Jamali <ijamali@redhat.com>
 5597 
 5598 commit c0c2022e7d7097e96270a74f37813eda0c4e6339
 5599 Author: Krutika Dhananjay <kdhananj@redhat.com>
 5600 Date:   Fri Dec 28 18:53:15 2018 +0530
 5601 
 5602     features/shard: Fix launch of multiple synctasks for background deletion
 5603     
 5604     PROBLEM:
 5605     
 5606     When multiple sharded files are deleted in quick succession, multiple
 5607     issues were observed:
 5608     1. misleading logs corresponding to a sharded file where while one log
 5609        message said the shards corresponding to the file were deleted
 5610        successfully, this was followed by multiple logs suggesting the very
 5611        same operation failed. This was because of multiple synctasks
 5612        attempting to clean up shards of the same file and only one of them
 5613        succeeding (the one that gets ENTRYLK successfully), and the rest of
 5614        them logging failure.
 5615     
 5616     2. multiple synctasks to do background deletion would be launched, one
 5617        for each deleted file but all of them could readdir entries from
 5618        .remove_me at the same time could potentially contend for ENTRYLK on
 5619        .shard for each of the entry names. This is undesirable and wasteful.
 5620     
 5621     FIX:
 5622     Background deletion will now follow a state machine. In the event that
 5623     there are multiple attempts to launch synctask for background deletion,
 5624     one for each file deleted, only the first task is launched. And if while
 5625     this task is doing the cleanup, more attempts are made to delete other
 5626     files, the state of the synctask is adjusted so that it restarts the
 5627     crawl even after reaching end-of-directory to pick up any files it may
 5628     have missed in the previous iteration.
 5629     
 5630     This patch also fixes uninitialized lk-owner during syncop_entrylk()
 5631     which was leading to multiple background deletion synctasks entering
 5632     the critical section at the same time and leading to illegal memory access
 5633     of base inode in the second syntcask after it was destroyed post shard deletion
 5634     by the first synctask.
 5635     
 5636     Change-Id: Ib33773d27fb4be463c7a8a5a6a4b63689705324e
 5637     updates: bz#1662368
 5638     Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
 5639 
 5640 commit 18bbb0f5b5bf6c96f764b7949df8a0a136b931ce
 5641 Author: Amar Tumballi <amarts@redhat.com>
 5642 Date:   Fri Dec 28 17:45:58 2018 +0530
 5643 
 5644     configure: fix the duplicate CFLAGS options
 5645     
 5646     updates: bz#1193929
 5647     Change-Id: I403878719a3f81fb2ea951a951f84880fb54f3cc
 5648     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 5649 
 5650 commit 5a152a7a70f771d951af713ab9701bcbc651e7e2
 5651 Author: Varsha Rao <varao@redhat.com>
 5652 Date:   Wed Jan 9 15:10:37 2019 +0530
 5653 
 5654     libglusterfs/common-utils.c: Fix buffer size for checksum computation
 5655     
 5656     Problem: When quorum count option is updated, the change is not reflected in
 5657     the nfs-server.vol file. This is because in get_checksum_for_file(), when the
 5658     last part of the file read has size less than buffer size, the read buffer
 5659     stores old data value along with correct data value.
 5660     
 5661     Solution: Pass the bytes read instead of fixed buffer size, for calculating
 5662     checksum.
 5663     
 5664     Change-Id: I4b641607c8a262961b3f3da0028a54e08c3f8589
 5665     fixes: bz#1657744
 5666     Signed-off-by: Varsha Rao <varao@redhat.com>
 5667 
 5668 commit 8c1eda9b5a19861be7e02f89cefae942c624d677
 5669 Author: Kinglong Mee <kinglongmee@gmail.com>
 5670 Date:   Wed Jan 9 14:09:03 2019 +0800
 5671 
 5672     doc: fix wrong description of localtime-logging in manpages
 5673     
 5674     -L is the short option of --log-level, not --localtime-logging,
 5675     and also, --localtime-logging does not contain an argument.
 5676     
 5677     Change-Id: I7e1163cb88b84ab5faecd0a65a1f7257e731d2a7
 5678     updates: bz#1664551
 5679     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
 5680 
 5681 commit aa85b54c6fa329f05ec24c1e98c59b2f993bf32b
 5682 Author: Vijay Bellur <vbellur@redhat.com>
 5683 Date:   Tue Nov 27 11:47:12 2018 +0530
 5684 
 5685     extras/systemd: Remove socket activated syslog.target and add documentation keys
 5686     
 5687     Adopting patch provided by Patrick Matthäi <pmatthaei@debian.org> at:
 5688     
 5689     https://bugzilla.redhat.com/attachment.cgi?id=1470751
 5690     
 5691     fixes: bz#1560561
 5692     Change-Id: I363a049c743c65823e6c4f153cbe20b47fcb64fb
 5693     Signed-off-by: Vijay Bellur <vbellur@redhat.com>
 5694 
 5695 commit 1e28c54c5ec8d84ec8a22493161314010992918e
 5696 Author: Mohit Agrawal <moagrawal@redhat.com>
 5697 Date:   Wed Jan 2 16:25:35 2019 +0530
 5698 
 5699     core: brick process is crashed at the time of spawn thread
 5700     
 5701     Problem: brick is getting crashed at the time of calling
 5702              pthread_detach after just call gf_thread_create.If
 5703              sufficient resources are not available on the system
 5704              pthread_create returns EAGAIN (non-negative) but the
 5705              caller function expects negative error code in case of failure
 5706     
 5707     Solution: Change the condition in caller function to avoid the crash
 5708     
 5709     Change-Id: Ifeaa49f809957eb6c33aa9792f5af1b55566756d
 5710     fixes: bz#1662906
 5711 
 5712 commit fa7ae128706062afefcb0a3117527b8bef21f396
 5713 Author: Vijay Bellur <vbellur@redhat.com>
 5714 Date:   Thu Jan 10 11:08:49 2019 -0800
 5715 
 5716     performance/md-cache: Fix a crash when statfs caching is enabled
 5717     
 5718     mem_put() in STACK_UNWIND_STRICT causes a crash if frame->local is not null
 5719     as md-cache obtains local from CALLOC.
 5720     
 5721     Changed two occurrences of STACK_UNWIND_STRICT to MDC_STACK_UNWIND as
 5722     the latter macro does not rely on STACK_UNWIND_STRICT for cleaning up
 5723     frame->local.
 5724     
 5725     fixes: bz#1632503
 5726     Change-Id: I1b3edcb9372a164ef73119e99a49e747765d7166
 5727     Signed-off-by: Vijay Bellur <vbellur@redhat.com>
 5728 
 5729 commit 99ac5a83805e46659124acfefbc05c9b6dda1a1b
 5730 Author: Amar Tumballi <amarts@redhat.com>
 5731 Date:   Thu Jan 10 17:12:53 2019 +0530
 5732 
 5733     tests: increase the timeout for distribute bug 1117851.t
 5734     
 5735     The test is in borderline of 200seconds, and many a times, randomly
 5736     takes little more time, and fails the whole regression. Better to keep
 5737     timeout high, so we don't 'randomly' fail regression tests.
 5738     
 5739     updates: bz#1193929
 5740     Change-Id: Ib0d3a9f7a75ee44446ec6da5e0510cccf83eecaa
 5741     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 5742 
 5743 commit 77669043e290cb6a4c82dded96286370cf5c7db0
 5744 Author: Sunny Kumar <sunkumar@redhat.com>
 5745 Date:   Tue Jan 8 16:35:35 2019 +0530
 5746 
 5747     afr : fix memory leak
 5748     
 5749     This patch fixes memory leak reported by ASan.
 5750     
 5751     The fix was first merged by
 5752     https://review.gluster.org/#/c/glusterfs/+/21805.
 5753     
 5754     But later change was reverted due to this patch
 5755     https://review.gluster.org/#/c/glusterfs/+/21178/.
 5756     
 5757     updates: bz#1633930
 5758     
 5759     Change-Id: I1febe121e0be33a637397a0b54d6b78391692b0d
 5760     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 5761 
 5762 commit f091c5570efd5c754c40d40336bad8183a3e16e0
 5763 Author: Sunil Kumar Acharya <sheggodu@redhat.com>
 5764 Date:   Thu Dec 27 19:18:35 2018 +0530
 5765 
 5766     cluster/afr: Disable client side heals in AFR by default.
 5767     
 5768     With this changeset, default value for the AFR client side
 5769     heal volume option is set to "off"
 5770     
 5771     fixes: bz#1663102
 5772     Change-Id: Ie4016932339c4896487e3e7cb5caca68739b7ba2
 5773     Signed-off-by: Sunil Kumar Acharya <sheggodu@redhat.com>
 5774 
 5775 commit d1231f00dc176bb9f4583b0a69b81f7e16a74eb5
 5776 Author: Susant Palai <spalai@redhat.com>
 5777 Date:   Wed Jan 9 16:57:21 2019 +0530
 5778 
 5779     dht: Add NULL check for stbuf in dht_rmdir_lookup_cbk
 5780     
 5781     Change-Id: I2ced288113a369cc6497a77ac1871007df434da4
 5782     fixes: bz#1664647
 5783     Signed-off-by: Susant Palai <spalai@redhat.com>
 5784 
 5785 commit c45050fcdf749706dcaa74c86f43493cdbf254d4
 5786 Author: Krutika Dhananjay <kdhananj@redhat.com>
 5787 Date:   Fri Dec 21 20:51:03 2018 +0530
 5788 
 5789     features/locks: Dump connection_id even for posix locks
 5790     
 5791     ... in statedump for a better debugging experience.
 5792     
 5793     BEFORE:
 5794     
 5795     posixlk.posixlk[0](ACTIVE)=type=WRITE, whence=0, start=0, len=0,
 5796     pid = 13635, owner=2dd2c3a11706dc8c, client=0x7f159012b000,
 5797     connection-id=(null), granted at 2018-12-31 14:20:42
 5798     
 5799     connection-id is null above.
 5800     
 5801     AFTER:
 5802     
 5803     posixlk.posixlk[0](ACTIVE)=type=WRITE, whence=0, start=0, len=0,
 5804     pid = 10977, owner=b485e33df21bdaa2, client=0x7fa24c01ab90,
 5805     connection-id=CTX_ID:68e12340-eed2-4386-bf5e-1f43cf8693d9-GRAPH_ID:0-
 5806     PID:10901-HOST:dhcp35-215.lab.eng.blr.redhat.com-PC_NAME:patchy-client-0-
 5807     RECON_NO:-0, granted at 2018-12-31 14:33:50
 5808     
 5809     Change-Id: I4608994bacabb558a3be8c1634ee6b1d2d3022e2
 5810     fixes: bz#1662679
 5811     Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
 5812 
 5813 commit d54f5cdfbca7af2da2139fb76af1f1e416a6d848
 5814 Author: Amar Tumballi <amarts@redhat.com>
 5815 Date:   Wed Jan 2 18:20:07 2019 +0530
 5816 
 5817     timer-wheel: run the timer function outside of locked region
 5818     
 5819     Surprizingly this also reduced 80% CPU overhead 'perf record' tool reported
 5820     in posix_spin_lock in a brick-mux test volume initialization process.
 5821     
 5822     updates: bz#1193929
 5823     Change-Id: I4e1df60d6fd094105c312df39f1527d3f07bed68
 5824     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 5825 
 5826 commit aa28fe32364e39981981d18c784e7f396d56153f
 5827 Author: Krutika Dhananjay <kdhananj@redhat.com>
 5828 Date:   Fri Dec 28 07:27:11 2018 +0530
 5829 
 5830     features/shard: Assign fop id during background deletion to prevent excessive logging
 5831     
 5832     ... of the kind
 5833     
 5834     "[2018-12-26 05:22:44.195019] E [MSGID: 133010]
 5835     [shard.c:2253:shard_common_lookup_shards_cbk] 0-volume1-shard: Lookup
 5836     on shard 785 failed. Base file gfid = cd938e64-bf06-476f-a5d4-d580a0d37416
 5837     [No such file or directory]"
 5838     
 5839     shard_common_lookup_shards_cbk() has a specific check to ignore ENOENT error without
 5840     logging them during specific fops. But because background deletion is done in a new
 5841     frame (with local->fop being GF_FOP_NULL), the ENOENT check is skipped and the
 5842     absence of shards gets logged everytime.
 5843     
 5844     To fix this, local->fop is initialized to GF_FOP_UNLINK during background deletion.
 5845     
 5846     Change-Id: I0ca8d3b3bfbcd354b4a555eee520eb0479bcda35
 5847     updates: bz#1662368
 5848     Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
 5849 
 5850 commit 37653efdc7681d1b0f255054ec2f9c9ddd4c8b14
 5851 Author: Amar Tumballi <amarts@redhat.com>
 5852 Date:   Fri Jan 4 07:04:50 2019 +0000
 5853 
 5854     Revert "iobuf: Get rid of pre allocated iobuf_pool and use per thread mem pool"
 5855     
 5856     This reverts commit b87c397091bac6a4a6dec4e45a7671fad4a11770.
 5857     
 5858     There seems to be some performance regression with the patch and hence recommended to have it reverted.
 5859     
 5860     Updates: #325
 5861     Change-Id: Id85d6203173a44fad6cf51d39b3e96f37afcec09
 5862 
 5863 commit 054c7ea91603acfcb01db8455b25dda7e5e831b2
 5864 Author: Raghavendra Bhat <raghavendra@redhat.com>
 5865 Date:   Mon Jan 7 13:58:01 2019 -0500
 5866 
 5867     features/bit-rot: do not send version and signature keys in dict
 5868     
 5869     In lookup, if the file has been marked as bad, then bit-rot-stub
 5870     was sending the version and signature xattr values as well in the
 5871     response dictinary. This is not needed. Only bad file marker has
 5872     to be sent.
 5873     
 5874     Change-Id: Id59c02e9857577c60849fd28ef657f71e0b15207
 5875     fixes: bz#1664122
 5876     Signed-off-by: Raghavendra Bhat <raghavendra@redhat.com>
 5877 
 5878 commit 86f5d75c70a5fa6f1790b17d12d56fd8b37b9ddd
 5879 Author: Vijay Bellur <vbellur@redhat.com>
 5880 Date:   Fri Nov 16 23:26:35 2018 +0530
 5881 
 5882     performance/io-threads: Improve debuggability in statedump
 5883     
 5884     statedump from io-threads lacked information to understand the number of
 5885     running threads & number of requests in each priority queue. This patch
 5886     addresses that.
 5887     
 5888     Sample statedump output w/ this patch:
 5889     
 5890     current_high_priority_threads=7
 5891     current_normal_priority_threads=9
 5892     current_low_priority_threads=0
 5893     current_least_priority_threads=0
 5894     fast_priority_queue_length=32
 5895     normal_priority_queue_length=45
 5896     
 5897     Also, changed the wording for least priority queue in
 5898     iot_get_pri_meaning().
 5899     
 5900     Change-Id: Ic5f6391a15cc28884383f5185fce1cb52e0d10a5
 5901     fixes: bz#1664124
 5902     Signed-off-by: Vijay Bellur <vbellur@redhat.com>
 5903 
 5904 commit 1a3c2a48e7cd44f2cc8b7b5384321d289aedab8e
 5905 Author: ShyamsundarR <srangana@redhat.com>
 5906 Date:   Thu Dec 20 15:28:37 2018 -0500
 5907 
 5908     gfapi: update returned/callback pre/post attributes to glfs_stat
 5909     
 5910     Change-Id: Ie0fe971e694101aa011d66aa496d0644669c2c5a
 5911     Updates: #389
 5912     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
 5913     Signed-off-by: ShyamsundarR <srangana@redhat.com>
 5914 
 5915 commit c31f1c232a6673c4e3fc3188e15ae0e708a54613
 5916 Author: ShyamsundarR <srangana@redhat.com>
 5917 Date:   Wed Nov 21 09:43:23 2018 -0500
 5918 
 5919     gfapi: new api glfs_statx as linux's statx
 5920     
 5921     Change-Id: I44dd6ceef0954ae7fc13f920e84d81bbd3f6a774
 5922     Updates: #389
 5923     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
 5924     Signed-off-by: ShyamsundarR <srangana@redhat.com>
 5925 
 5926 commit f99f51ca87fd8703947df985901cbce37bc6c818
 5927 Author: Kinglong Mee <mijinlong@open-fs.com>
 5928 Date:   Thu Jan 3 17:07:27 2019 +0800
 5929 
 5930     glfs-fops.c: fix the bad string length for snprintf
 5931     
 5932     Snprintf reserves one byte for the ending '\0'.
 5933     A NAME_MAX bytes d_name is truncated to NAME_MAX - 1 bytes.
 5934     
 5935     Change-Id: Ic884d18cee24360e55ddb896dc587b0b74ef97fe
 5936     updates: bz#1193929
 5937     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
 5938 
 5939 commit a9b0003c717087ff168bc143c70559162e53e0d5
 5940 Author: Soumya Koduri <skoduri@redhat.com>
 5941 Date:   Tue Dec 25 13:29:15 2018 -0500
 5942 
 5943     leases: Reset lease_ctx->timer post deletion
 5944     
 5945     To avoid use_after_free, reset lease_ctx->timer back to NULL
 5946     after the structure has been freed.
 5947     
 5948     Change-Id: Icd213ec809b8af934afdb519c335a4680a1d6cdc
 5949     updates: bz#1648768
 5950     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 5951 
 5952 commit 8b4822d457cd62c1525b6fbaac8668c79f3951c0
 5953 Author: Kinglong Mee <kinglongmee@gmail.com>
 5954 Date:   Thu Dec 20 16:58:34 2018 +0800
 5955 
 5956     rpc-clnt: reduce transport connect log for EINPROGRESS
 5957     
 5958     quotad and ganesha.nfsd prints many logs as,
 5959     
 5960     [rpc-clnt.c:1739:rpc_clnt_submit ] 0-<VOLUME_NAME>-quota: error returned while attempting to connect to host: (null), port 0
 5961     
 5962     Change-Id: Ic0c815400619e4a87a772a51b19822920228c1ef
 5963     Updates: bz#1596787
 5964     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
 5965 
 5966 commit 4a15ea1fd36390fa247dc2e429f14dc8fd621c49
 5967 Author: Pranith Kumar K <pkarampu@redhat.com>
 5968 Date:   Wed Jan 2 18:42:19 2019 +0530
 5969 
 5970     rpcsvc: Don't expect dictionary values to be available
 5971     
 5972     When reconfigure happens, string values from one dictionary
 5973     are directly set in another dictionary. This can lead to
 5974     invalid memory when the first dictionary is freed up.
 5975     So do dict_set_dynstr_with_alloc instead of dict_set_str
 5976     
 5977     updates bz#1650403
 5978     Change-Id: Id53236467521cfdeb07e7178d87ba6cf88d17003
 5979     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
 5980 
 5981 commit 95ec7391d8db26b933e542694add2b419dddf89f
 5982 Author: Sanju Rakonde <srakonde@redhat.com>
 5983 Date:   Fri Jan 4 15:49:53 2019 +0530
 5984 
 5985     glusterd: rebalance status should display information of localhost
 5986     
 5987     Problem:
 5988     https://review.gluster.org/#/c/glusterfs/+/21762/ has migrated
 5989     rebalance commands from op-sm framework to mgmt v3 framework.
 5990     
 5991     In a heterogenous cluster, if rebalance commands follow op-sm
 5992     framework, localhost information is not displayed in the
 5993     output of "gluster v rebalance <volname> status".
 5994     
 5995     Cause:
 5996     Previously without https://review.gluster.org/#/c/glusterfs/+/21762/
 5997     rebalance commands were following op-sm framework.
 5998     In glusterd_volume_rebalance_use_rsp_dict() current_index variable
 5999     keeps track of number/count of peers in trusted storage pool.
 6000     In op-sm, glusterd_volume_rebalance_use_rsp_dict() will be called
 6001     only for the peers. So the current index should start from 2
 6002     assuming local host as node 1.
 6003     
 6004     With the above patch, rebalance commands are following mgmt v3
 6005     framework. In mgmt v3, glusterd_volume_rebalance_use_rsp_dict()
 6006     is called for all nodes. For localhost it is called from
 6007     brick-op function and for peers it is called from brick-op
 6008     call back function. So the current index value should start
 6009     from 1.
 6010     
 6011     https://review.gluster.org/#/c/glusterfs/+/21762/ has changed the
 6012     value of current index to 1. Because of this, In heterogenous cluster,
 6013     local host's information is overwritten by one of the peers information.
 6014     And rebalance status will not display localhost's information in
 6015     the output.
 6016     
 6017     Solution: assign a value to current index based on a op-version
 6018     check.
 6019     
 6020     Change-Id: I2dfba1f007e908cf160acc4a4a5d8ef672572e4d
 6021     fixes: bz#1663243
 6022     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 6023 
 6024 commit f6d0141b47ac36f6d2b100252241ed64bc92f913
 6025 Author: Anoop C S <anoopcs@redhat.com>
 6026 Date:   Thu Jan 3 10:52:22 2019 +0530
 6027 
 6028     extras: Add readdir-ahead to samba group command
 6029     
 6030     Change-Id: I310f014a9ab8416d9833f5711ff902da1457f415
 6031     updates: bz#1193929
 6032     Signed-off-by: Anoop C S <anoopcs@redhat.com>
 6033 
 6034 commit 0d4535c8db7b4be3fcee685d12f6974f7af89810
 6035 Author: Sanju Rakonde <srakonde@redhat.com>
 6036 Date:   Thu Jan 3 19:09:36 2019 +0530
 6037 
 6038     glusterd: aggregate rsp from peers for profile command
 6039     
 6040     When we run profile info command, it should display statistics
 6041     of all the bricks of the volume. To display information of bricks
 6042     which are hosted on peers, we need to aggregate the response from
 6043     peers.
 6044     
 6045     For profile info command, all the statistics will be added into
 6046     the dictionary in brick-op phase. To aggregate the information from
 6047     peers, we need to call glusterd_syncop_aggr_rsp_dict() in brick-op
 6048     call back function.
 6049     
 6050     fixes: bz#1663223
 6051     
 6052     Change-Id: I5f5890c3d01974747f829128ab74be6071f4aa30
 6053     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 6054 
 6055 commit 44f3382328b3bd12d3bbcdbfc408660eecf4befc
 6056 Author: Zhang Huan <zhanghuan@open-fs.com>
 6057 Date:   Fri Dec 28 16:08:50 2018 +0800
 6058 
 6059     glusterd: fix memory leak in handshake
 6060     
 6061     Add missing unref to req_dict to fix memory leak in handle of
 6062     handshake.
 6063     
 6064     Change-Id: I0d8573fc3668c1a0ccc9030e3a096bbe20ed5c36
 6065     fixes: bz#1663077
 6066     Signed-off-by: Zhang Huan <zhanghuan@open-fs.com>
 6067 
 6068 commit d4fa2906b8e8a6de34c8e7b33b998fbc63f54cb1
 6069 Author: Sanju Rakonde <srakonde@redhat.com>
 6070 Date:   Wed Jan 2 12:29:53 2019 +0530
 6071 
 6072     glusterd: kill the process without releasing the cleanup mutex lock
 6073     
 6074     Problem:
 6075     glusterd acquires a cleanup mutex lock before it starts
 6076     cleanup process, so that any other thread which tries to acquire
 6077     lock on any resource will be blocked on cleanup mutex lock.
 6078     
 6079     We don't want any thread to try to acquire any resource, once
 6080     the cleanup is started. because other threads might try to acquire
 6081     lock on resources which are already freed by the thread which is
 6082     going though the cleanup phase.
 6083     
 6084     previously we were releasing the cleanup mutex lock before the
 6085     process exit. As we are releasing the cleanup mutex lock, before
 6086     the process can exit some other thread which is blocked on
 6087     cleanup mutex lock is acquiring the cleanup mutex lock and
 6088     trying to acquire some resources which are already freed as a
 6089     part of cleanup. This is leading glusterd to crash.
 6090     
 6091     Solution: We should exit the process without releasing the
 6092     cleanup mutex lock.
 6093     
 6094     Change-Id: Ibae1c62260f141019017f7a547519a5d38dc2bb6
 6095     fixes: bz#1654270
 6096     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 6097 
 6098 commit d9a8ccd354df6db94477bf9ecb09735194523665
 6099 Author: Soumya Koduri <skoduri@redhat.com>
 6100 Date:   Wed Dec 26 15:24:49 2018 +0530
 6101 
 6102     gfapi: nit cleanup related to releasing fs->mutex lock
 6103     
 6104     This is follow-up patch to the comment received for
 6105      - https://review.gluster.org/#/c/glusterfs/+/21882
 6106     
 6107     We need not hold the fs->mutex lock to log error message.
 6108     
 6109     Change-Id: I29d2ea2e6cfecc3dd94982bd48f4bc9f11cc3aac
 6110     fixes: bz#1660577
 6111     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 6112 
 6113 commit 1ea203d6b6960621c6b445db42d6254c726df321
 6114 Author: Sunny Kumar <sunkumar@redhat.com>
 6115 Date:   Fri Dec 28 13:04:36 2018 +0530
 6116 
 6117     libgfapi : fix coverity issue
 6118     
 6119     This patch fixes coverity issue in api/src/glfs-fops.c.
 6120     
 6121     CID: 1389247, 1389296, 1389369, 1389392.
 6122     All coverity defects are of type Mixing enum types (MIXED_ENUMS).
 6123     
 6124     updates: bz#789278
 6125     
 6126     Change-Id: I007bb317ed5f0b8ddaf94a93b3a4d02b1e74cb8d
 6127     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 6128 
 6129 commit 7a84e705ed0b96f479a0fc52fa734e0367bb2af2
 6130 Author: Harpreet Kaur <hlalwani@redhat.com>
 6131 Date:   Thu Dec 27 20:20:56 2018 +0530
 6132 
 6133     posix: buffer_size_warning coverity fix
 6134     
 6135     Defect: CID 1398469- Calling strncpy with a maximum size argument
 6136     of 4096 bytes on destination array key of size 4096 bytes might
 6137     leave the destination string unterminated.
 6138     
 6139     Fix: Using snprintf instead of strncpy.
 6140     
 6141     updates: bz#789278
 6142     
 6143     Change-Id: I4fdcd0cbf3af8b2ded94603d92d1ceb4112284c4
 6144     Signed-off-by: Harpreet Kaur <hlalwani@redhat.com>
 6145 
 6146 commit 63088d8225df025e03a0ea0a0d8fdc3e8e9b9b08
 6147 Author: Amar Tumballi <amarts@redhat.com>
 6148 Date:   Fri Dec 28 09:56:20 2018 +0530
 6149 
 6150     multiple-files: clang-scan fixes
 6151     
 6152     updates: bz#1622665
 6153     Change-Id: I9f3a75ed9be3d90f37843a140563c356830ef945
 6154     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 6155 
 6156 commit 3ce7b5dbf069e7bf09c3470753c21efe03339291
 6157 Author: Yaniv Kaul <ykaul@redhat.com>
 6158 Date:   Thu Nov 15 22:05:32 2018 +0200
 6159 
 6160     libglusterfs/src/mem-types.h: remove unused common enums from mem-types.h
 6161     
 6162     They were not used at all, just taking space.
 6163     I've also marked all those that are not common really, but used
 6164     in just one place - they probably should move there (in follow-up
 6165     patches)
 6166     
 6167     As a test, I've removed from the stripe xlator unused private
 6168     enums and moved one that was in the common list, but only
 6169     used in the stripe code, to be a private enum.
 6170     
 6171     Compile-tested only!
 6172     
 6173     updates: bz#1193929
 6174     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 6175     Change-Id: I1158dc1d259f1fd3f69904336c46c9d83cea799f
 6176 
 6177 commit 36883e160e07466929c2fe7d6050403751d25a49
 6178 Author: Amar Tumballi <amarts@redhat.com>
 6179 Date:   Fri Sep 28 23:20:28 2018 +0530
 6180 
 6181     configure: add a message about asan option
 6182     
 6183     This added hint helps to get ASan logs for the daemon processes, with
 6184     this one can start using asan for regression tests.
 6185     
 6186     updates: bz#1633930
 6187     Change-Id: I3b39892d45d29ae514dad8ab10f65703c02003f1
 6188     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 6189 
 6190 commit a12bdfa72af9cc8df21d25b580058b49f3aa154a
 6191 Author: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
 6192 Date:   Thu Dec 13 17:59:20 2018 +0530
 6193 
 6194     glusterd: NULL pointer dereferencing clang fix
 6195     
 6196     Added ternary operator to avoid this issue
 6197     
 6198     Updates: bz#1622665
 6199     
 6200     Change-Id: I163d0628304a0d61249d1d97a4a3d3bee4ba4927
 6201     Signed-off-by: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
 6202 
 6203 commit cd29723ab1a572fd9c2ceb3414b11d654cb9a08a
 6204 Author: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
 6205 Date:   Fri Dec 21 03:59:16 2018 +0530
 6206 
 6207     mgmt/glusterd: fix clang warning
 6208     
 6209     Attempt to free rsp.dict.dict_val twice
 6210     
 6211     Change-Id: I5dbc50430f59ca8d0c739b0fbe95d71981852889
 6212     Updates: bz#1622665
 6213     Signed-off-by: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
 6214 
 6215 commit a12cadc1377ef51ad52defd1da91bf8f599e5786
 6216 Author: Pranith Kumar K <pkarampu@redhat.com>
 6217 Date:   Tue Dec 18 14:38:22 2018 +0530
 6218 
 6219     cluster/afr: Refactor internal locking code to allow multiple inodelks
 6220     
 6221     For implementing copy_file_range fop, AFR needs to perform two inodelks in the
 6222     same transaction. This patch brings in the necessary structure to make it
 6223     easier to do so.
 6224     
 6225     Entry-locks in AFR were already taking multiple entry-locks on different inodes
 6226     with the respective basenames. This patch extends the logic in inodelks to use
 6227     the same lockee_t structure. This lead to removal of quite a lot of duplicate
 6228     code present in afr-lk-common.c as both the locks are doing same things except
 6229     'winding' part.
 6230     
 6231     updates: #536
 6232     Change-Id: Ibfce7e3f260bb27b18645152ec680c33866fe0ae
 6233     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
 6234 
 6235 commit 8d38c5b7337e44ad9f282966c0aa2e99bd7da506
 6236 Author: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
 6237 Date:   Fri Dec 28 10:44:32 2018 +0530
 6238 
 6239     rpc/rpc-lib: fix coverity issue
 6240     
 6241     Defect: Code can never be reached because of the
 6242     condition queue_index > 1024 cannot be true.
 6243     
 6244     CID: 1398471 Logically dead code
 6245     updates: bz#789278
 6246     
 6247     Change-Id: I367cda7e734f6d774900a58d8664cffcab69126f
 6248     Signed-off-by: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
 6249 
 6250 commit de1fb17ac392427605ead87690f30f1a488f66a7
 6251 Author: Sunny Kumar <sunkumar@redhat.com>
 6252 Date:   Fri Dec 28 08:38:24 2018 +0530
 6253 
 6254     rpc : fix coverity in rpc/rpc-lib/src/rpcsvc.c
 6255     
 6256     This patch fixes newly introduced coverity.
 6257     
 6258     CID: 1398472: Dereference before null check.
 6259     updates: bz#789278
 6260     
 6261     Change-Id: Ie9b13084097de8f24b138acd7608c3e15b3bba9c
 6262     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 6263 
 6264 commit 89f1ebef957813f1262603ea5ec82539edb1ecad
 6265 Author: Niels de Vos <ndevos@redhat.com>
 6266 Date:   Thu Dec 27 13:21:57 2018 +0100
 6267 
 6268     barrier: replace boolean-switch statement with if/else
 6269     
 6270     Squash some ugly warnings, and make the code a little bit simpler by
 6271     removing some unneeded goto jumps.
 6272     
 6273     On Ubuntu 16.04 the following warnings were reported by Amudhan:
 6274     
 6275           CC	   barrier.lo
 6276         barrier.c: In function ‘notify’:
 6277         barrier.c:499:33: warning: switch condition has boolean value [-Wswitch-bool]
 6278                                  switch (past) {
 6279                                          ^
 6280         barrier.c: In function ‘reconfigure’:
 6281         barrier.c:565:25: warning: switch condition has boolean value [-Wswitch-bool]
 6282                          switch (past) {
 6283                                  ^
 6284     
 6285     Change-Id: Ifb6b75058dff8c789b729c76530a1358d391f4d1
 6286     Updates: bz#1193929
 6287     Reported-by: Amudhan P <amudhan83@gmail.com>
 6288     Signed-off-by: Niels de Vos <ndevos@redhat.com>
 6289 
 6290 commit a6dc153e47f9025b09e8aae14ca6ba96fa20a23e
 6291 Author: Sanju Rakonde <srakonde@redhat.com>
 6292 Date:   Thu Dec 27 14:54:28 2018 +0530
 6293 
 6294     glusterd: coverity fixes
 6295     
 6296     This patch addresses coverity issues with CID 1398470 and 1398475
 6297     
 6298     1398470 - Missing unlock - False positive, Added a annotation to
 6299                                make coverity happy
 6300     1398475 - Unused value
 6301     
 6302     Change-Id: I1bb3df0b716690fad8fc52c393c8b2b6c41f7860
 6303     updates: bz#789278
 6304     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 6305 
 6306 commit b5a8a91c1d86f30cb669ca469b83c99b2e9dafcb
 6307 Author: Ashish Pandey <aspandey@redhat.com>
 6308 Date:   Tue Oct 23 18:03:45 2018 +0530
 6309 
 6310     cluster/ta: Check number/type of locks held on ta file
 6311     
 6312     Change-Id: Iec47856ce2819e7d7d38a60279602e53ba45858d
 6313     updates: bz#1624332
 6314     Signed-off-by: Ashish Pandey <aspandey@redhat.com>
 6315 
 6316 commit a11c5c66321dd8411373a68cc163c981c7d083df
 6317 Author: N Balachandran <nbalacha@redhat.com>
 6318 Date:   Wed Dec 26 11:40:26 2018 +0530
 6319 
 6320     core: Fixed typos in nl-cache and logging-guidelines.md
 6321     
 6322     Replaced "recieve" with "receive".
 6323     
 6324     Change-Id: I58a3d3d4a0093df4743de9fae4d8ff152d4b216c
 6325     fixes: bz#1662089
 6326     Signed-off-by: N Balachandran <nbalacha@redhat.com>
 6327 
 6328 commit a3d12d340abc0fb8cfa4d2faffbd59a1e5ba5718
 6329 Author: N Balachandran <nbalacha@redhat.com>
 6330 Date:   Thu Dec 6 19:25:06 2018 +0530
 6331 
 6332     cluster/dht: refactor dht_lookup_cbk
 6333     
 6334     Rearrange the dht_lookup_cbk code to make
 6335     it easier to understand.
 6336     Corrected a message in dht_linkfile_create_lookup_cbk
 6337     
 6338     Change-Id: Id41db9ef901732f0410f1c007807362c630218ff
 6339     fixes: bz#1590385
 6340     Signed-off-by: N Balachandran <nbalacha@redhat.com>
 6341 
 6342 commit a1e7acc93a416fec6b87cc5601a9922759156771
 6343 Author: Krutika Dhananjay <kdhananj@redhat.com>
 6344 Date:   Fri Dec 21 09:58:16 2018 +0530
 6345 
 6346     socket: Remove redundant in_lock in incoming message handling
 6347     
 6348     A given epoll thread can handle only one incoming (POLLIN) request.
 6349     And until the socket is rearmed for listening, it is guaranteed that
 6350     there won't be any new incoming requests. As a result, the priv->in_lock
 6351     which guards the socket proto state machine seems redundant.
 6352     
 6353     This patch removes priv->in_lock.
 6354     
 6355     Change-Id: I26b6ddd852aba8c10385833b85ffd2e53e46cb8c
 6356     updates: bz#1467614
 6357     Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
 6358 
 6359 commit c3d23b06ce6bda906bdfb9bc8909bf30016c9995
 6360 Author: Sunny Kumar <sunkumar@redhat.com>
 6361 Date:   Thu Dec 20 02:41:17 2018 +0530
 6362 
 6363     cli: fix memory leak
 6364     
 6365     This patch fixes memory leak in cli/src/cli.c.
 6366     
 6367     Change-Id: I4956c4180b34d4a9e3e6e60eeafba8cb2031896e
 6368     updates: bz#1633930
 6369     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 6370 
 6371 commit d64fdf867fef36422ab84f2918f5d925597bc7d4
 6372 Author: Harpreet Kaur <hlalwani@redhat.com>
 6373 Date:   Fri Dec 14 13:12:26 2018 +0530
 6374 
 6375     posix: stack-buffer-overflow reported by asan
 6376     
 6377     This patch fixes buffer overflow in
 6378     $SRC/xlators/storage/posix/src/posix-inode-fd-ops.c
 6379     Memory access at offset 432 overflows "md5_checksum" variable.
 6380     SUMMARY: AddressSanitizer: stack-buffer-overflow (/lib64/libasan.so.5+0xb825a)
 6381     
 6382     updates: bz#1633930
 6383     
 6384     Change-Id: I46010a09161d02cdf0c69679a334ec1d3d49cffb
 6385     Signed-off-by: Harpreet Kaur <hlalwani@redhat.com>
 6386 
 6387 commit 8fe3c6107a2b431d7cc0b8cfaeeb7941cf9590f9
 6388 Author: Soumya Koduri <skoduri@redhat.com>
 6389 Date:   Tue Dec 18 22:07:55 2018 +0530
 6390 
 6391     gfapi: Access fs->oldvolfile under mutex lock
 6392     
 6393     In some cases (for eg., when there are multiple
 6394     RPC_CLNT_CONNECT notifications), multiple threads may fetch
 6395     volfile and try to update it in 'fs' object simultaneously.
 6396     Hence protect those variables' access under fs->mutex lock.
 6397     
 6398     Change-Id: Idaee9548560db32d83f4c04ebb1f375fee7864a9
 6399     fixes: bz#1660577
 6400     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 6401 
 6402 commit 233c909077fb1971e8813240a6161edc30c1e77b
 6403 Author: Sunny Kumar <sunkumar@redhat.com>
 6404 Date:   Fri Dec 21 23:50:00 2018 +0530
 6405 
 6406     meta : fix coverity issue
 6407     
 6408     This patch fixes coverity issue possible null dereference.
 6409     
 6410     Change-Id: I93c0847c3d93b29a1e001ed044a63e908c670167
 6411     updates: bz#789278
 6412     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 6413 
 6414 commit 730ab84586b73e8677537ed90b78fabf5dde3b48
 6415 Author: Mohit Agrawal <moagrawal@redhat.com>
 6416 Date:   Thu Dec 20 16:41:37 2018 +0530
 6417 
 6418     tests: Brick is getting OOM in ./tests/bugs/core/bug-1432542-mpx-restart-crash.t
 6419     
 6420     This test "tests/bugs/core/bug-1432542-mpx-restart-crash.t" case creates 20 2x3
 6421     volumes after enabling brick_mux.At the time of creating last volume brick is getting
 6422     OOM because brick consumption has increased from previous consumption due to these patches
 6423     https://review.gluster.org/#/c/glusterfs/+/19997/,
 6424     https://review.gluster.org/#/c/glusterfs/+/20362/
 6425     
 6426     To avoid OOM reduce NUM_VOLS to 15 so that brick consumption has reduced
 6427     
 6428     Change-Id: Ib98b47a3db6b990ff22c7e57396d51e7fef5c7e8
 6429     fixes: bz#1661214
 6430     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 6431 
 6432 commit 0c7425d431b90c9c5c087511b34150e30dbe028a
 6433 Author: Mohit Agrawal <moagrawal@redhat.com>
 6434 Date:   Wed Dec 19 08:14:44 2018 +0530
 6435 
 6436     rpc: Use adaptive mutex in rpcsvc_program_register
 6437     
 6438     Adaptive mutexes are used to protect critical/shared data items that
 6439     are held for short periods.It provides a balance between spin locks
 6440     and traditional mutex.We have observed after use adaptive mutex in
 6441     rpcsvc_program_register got some improvement.
 6442     
 6443     Change-Id: I7905744b32516ac4e4ca3c83c2e8e5e306093add
 6444     fixes: bz#1660701
 6445 
 6446 commit f2c2c906c0a81d24b14832974994604ea4569e0d
 6447 Author: Amar Tumballi <amarts@redhat.com>
 6448 Date:   Wed Dec 19 10:25:44 2018 +0530
 6449 
 6450     all: handle string-overflow warnings of coverity
 6451     
 6452     updates: bz#789278
 6453     Change-Id: I7de800b90a614e3666e965b0cafc70026a844b2d
 6454     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 6455 
 6456 commit e1f92176a8d372e99386c0f007d6a38c0a54ca5b
 6457 Author: Amar Tumballi <amarts@redhat.com>
 6458 Date:   Wed Dec 19 09:45:42 2018 +0530
 6459 
 6460     all: handle USE_AFTER_FREE warnings
 6461     
 6462     * we shouldn't be using 'local' after DHT_STACK_UNWIND() as it frees
 6463     the content of local. Add a 'goto out' or similar logic to handle
 6464     the situation.
 6465     
 6466     * fix possible overlook of unref(dict), instead of unref(xdata).
 6467     
 6468     * make coverity happy by re-ordering unref in meta-defaults.
 6469     
 6470     * gfid-access: re-order dictionary allocation so we don't have to
 6471       do a extra unref.
 6472     
 6473     * other obvious errors reported.
 6474     
 6475     updates: bz#789278
 6476     Change-Id: If05961ee946b0c4868df19861d7e4a927a2a2489
 6477     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 6478 
 6479 commit 8cde14a537f0112400744d518ed196eb8fa232f2
 6480 Author: Krutika Dhananjay <kdhananj@redhat.com>
 6481 Date:   Wed Dec 19 17:57:58 2018 +0530
 6482 
 6483     tests: Fix zero-flag.t script
 6484     
 6485     The default value of shard-block-size was changed from 4MB
 6486     to 64MB sometime back. The script "fallocate"s a 6MB file
 6487     and expects it to have 1 shard under .shard. This worked when
 6488     the shard-block-size was 4MB. With the default value now at 64MB,
 6489     file "file1" won't have any shards under .shard and the stat on the
 6490     1st shard's path fails with ENOENT.
 6491     
 6492     Changed the script to explicitly set shard-block-size to 4MB.
 6493     
 6494     Change-Id: I7f1785922287d16d74c95fa57cbbe12e6e66e4f7
 6495     fixes: bz#1656264
 6496     Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
 6497 
 6498 commit 2af8fca492f3e1152177641b5e6ab9ea59ec0acd
 6499 Author: Poornima G <pgurusid@redhat.com>
 6500 Date:   Thu Aug 16 16:36:08 2018 +0530
 6501 
 6502     posix: use synctask for janitor
 6503     
 6504     With brick mux, the number of threads increases as the number of
 6505     bricks increases. As an initiative to reduce the number of
 6506     threads in brick mux scenario, replacing janitor thread to use
 6507     synctask infra.
 6508     
 6509     Now close() and closedir() handle by separate janitor
 6510     thread which is linked with glusterfs_ctx.
 6511     
 6512     Updates #475
 6513     Change-Id: I0c4aaf728125ab7264442fde59f3d08542785f73
 6514     Signed-off-by: Poornima G <pgurusid@redhat.com>
 6515 
 6516 commit e3ec41af9a9f4d906dd7b512b3f4f91a6f338f4b
 6517 Author: Rinku Kothiya <rkothiya@redhat.com>
 6518 Date:   Mon Dec 17 19:55:20 2018 +0530
 6519 
 6520     rdma: fix possible buffer overflow
 6521     
 6522     used snprintf instead of sprintf and if the source string is bigger
 6523     than destination then logged a warning message.
 6524     
 6525     clang warning: ‘%s’ directive writing up to 1024 bytes into a region
 6526     of size 108.
 6527     
 6528     updates: bz#1622665
 6529     
 6530     Change-Id: Ia5e7c53d35d8178dd2c75708698599fe8bded5de
 6531     Signed-off-by: Rinku Kothiya <rkothiya@redhat.com>
 6532 
 6533 commit 9662504d45f3e285772f5188a7edf7ae3665cc6a
 6534 Author: karthik-us <ksubrahm@redhat.com>
 6535 Date:   Tue Dec 4 11:19:27 2018 +0530
 6536 
 6537     cluster/afr: Allow lookup on root if it is from ADD_REPLICA_MOUNT
 6538     
 6539     Problem: When trying to convert a plain distribute volume to replica-3
 6540     or arbiter type it is failing with ENOTCONN error as the lookup on
 6541     the root will fail as there is no quorum.
 6542     
 6543     Fix: Allow lookup on root if it is coming from the ADD_REPLICA_MOUNT
 6544     which is used while adding bricks to a volume. It will try to set the
 6545     pending xattrs for the newly added bricks to allow the heal to happen
 6546     in the right direction and avoid data loss scenarios.
 6547     
 6548     Note: This fix will solve the problem of type conversion only in the
 6549     case where the volume was mounted at least once. The conversion of
 6550     non mounted volumes will still fail since the dht selfheal tries to
 6551     set the directory layout will fail as they do that with the PID
 6552     GF_CLIENT_PID_NO_ROOT_SQUASH set in the frame->root.
 6553     
 6554     Change-Id: Ic511939981dad118cc946754341318b164954b3b
 6555     fixes: bz#1655854
 6556     Signed-off-by: karthik-us <ksubrahm@redhat.com>
 6557 
 6558 commit b87c397091bac6a4a6dec4e45a7671fad4a11770
 6559 Author: Poornima G <pgurusid@redhat.com>
 6560 Date:   Wed Nov 21 12:09:39 2018 +0530
 6561 
 6562     iobuf: Get rid of pre allocated iobuf_pool and use per thread mem pool
 6563     
 6564     The current implementation of iobuf_pool has two problems:
 6565     - prealloc of 12.5MB memory, this limits the scale factor of the gluster
 6566       processes due to RAM requirements
 6567     - lock contention, as the current implementation has one global
 6568       iobuf_pool lock. Credits for debugging and addressing the same goes to
 6569       Krutika Dhananjay <kdhananj@redhat.com>. Issue: #410
 6570     
 6571     Hence changing the iobuf implementation to use per thread mem pool.
 6572     This may theoritically appear to cause perf dip as there is no preallocation.
 6573     But per thread mem pool will not have significant perf impact as the last
 6574     allocated memory is kept alive for subsequent allocs, for some time.
 6575     The worst case would be if iobufs requested are of random sizes each time.
 6576     The best case is, if we get iobuf request of the same size. From the perf
 6577     tests, this patch did not seem to cause any perf decrease.
 6578     
 6579     Note that, with this patch, the rdma performance is going to degrade
 6580     drastically. In one of the previous patchsets we had fixes to not
 6581     degrade rdma perf, but rdma is not supported and also not tested [1].
 6582     Hence the decision was to not have code in rdma that is not tested
 6583     and not supported.
 6584     
 6585     [1] https://lists.gluster.org/pipermail/gluster-users.old/2018-July/034400.html
 6586     
 6587     Updates: #325
 6588     Change-Id: Ic2ef3bd498f9250dea25f25ba0c01fde19584b27
 6589     Signed-off-by: Poornima G <pgurusid@redhat.com>
 6590 
 6591 commit d50f22e6ae410fdcde573b6015b97dc1573bbb7e
 6592 Author: Raghavendra Gowdappa <rgowdapp@redhat.com>
 6593 Date:   Fri Oct 12 10:03:31 2018 +0530
 6594 
 6595     performance/io-cache: update pages with write data
 6596     
 6597     Currently io-cache invalidate pages falling in the range of write. But
 6598     instead it can update pages with same data so that reads can make use
 6599     of the cache.
 6600     
 6601     credits: Xavi Hernandez <xhernandez@redhat.com>
 6602     
 6603     Change-Id: I932bd3da97ddfd464187f3009b1013eb334f00a7
 6604     Signed-off-by: Raghavendra Gowdappa <rgowdapp@redhat.com>
 6605     updates: bz#1659869
 6606 
 6607 commit 51ff065b8b9d2117688053cddb29186e3135c4a1
 6608 Author: Raghavendra Gowdappa <rgowdapp@redhat.com>
 6609 Date:   Fri Dec 14 11:27:33 2018 +0530
 6610 
 6611     performance/ob: make open-behind as a child of quick-read
 6612     
 6613     With read-after-open being set to yes by default, if open-behind sees
 6614     any reads, it'll do an open on backend (and hence flush/release
 6615     later). This means with the current order of quick-read and
 6616     open-behind, open-behind sees all reads and hence also does open
 6617     bringing down performance for small file reads.
 6618     
 6619     Since for small files, reads are absorbed by quick-read, if quick-read
 6620     is made a parent of open-behind, ob doesn't witness any reads. For
 6621     read-only workloads, this means ob doen't do any opens (even with
 6622     read-after-open yes and use-anonymous-fd no).
 6623     
 6624     Change-Id: I138a42b006d104cff43ee6f07829e39c36f6f234
 6625     Signed-off-by: Raghavendra Gowdappa <rgowdapp@redhat.com>
 6626     Fixes: bz#1659327
 6627 
 6628 commit f9859218da827eac5b2102673e7a89497228e672
 6629 Author: Yaniv Kaul <ykaul@redhat.com>
 6630 Date:   Fri Dec 14 19:18:20 2018 +0200
 6631 
 6632     xlators/cluster/afr/src/afr-self-heal-common.c: remove a variable array.
 6633     
 6634     Added '-Wvla' and saw this - gcc doesn't like variable arrays.
 6635     There are plenty of others in the EC code, but this seems OK to remove:
 6636     there is no use for the array members (I hope - that was from reading
 6637     the code).
 6638     
 6639     Compile-tested only!
 6640     updates: bz#1193929
 6641     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 6642     
 6643     Change-Id: I350f4520e52b86c8bbcd60eea1b27ef99cd119aa
 6644 
 6645 commit f9220c89ae848c72df8232163d5a990283f15f5a
 6646 Author: Atin Mukherjee <amukherj@redhat.com>
 6647 Date:   Mon Dec 17 09:17:44 2018 +0530
 6648 
 6649     glusterd: define max-port to 60999
 6650     
 6651     As glusterd scans through all the ports in its defined range, with RHEL
 6652     7.3 onwards any port beyond 60999 isn't within the ephemeral port range
 6653     and following AVC denial message is seen.
 6654     
 6655     type=AVC msg=audit(1471946614.154:109): avc:  denied  { name_bind } for
 6656     pid=2302 comm="glusterd" src=61000 scontext=system_u:system_r:glusterd_t:s0
 6657     tcontext=system_u:object_r:ephemeral_port_t:s0 tclass=tcp_socket
 6658     
 6659     Fix is to define the max port range to 60999 in glusterd.vol file. The
 6660     port range can be tweaked through a reconfigure of this configuration
 6661     file though.
 6662     
 6663     Fixes: bz#1659857
 6664     Change-Id: I60fd4a421d8509b8dca4ca13b73999ae33965f72
 6665     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 6666 
 6667 commit 0b4b111fbd80a5d400a07d61e2b99f230f9be76f
 6668 Author: Sanju Rakonde <srakonde@redhat.com>
 6669 Date:   Fri Nov 30 16:16:55 2018 +0530
 6670 
 6671     glusterd: migrating rebalance commands to mgmt_v3 framework
 6672     
 6673     Current rebalance commands use the op_state machine framework.
 6674     Porting it to use the mgmt_v3 framework.
 6675     
 6676     Change-Id: I6faf4a6335c2e2f3d54bbde79908a7749e4613e7
 6677     fixes: bz#1655827
 6678     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 6679 
 6680 commit 9ff080382cb8c8aab561f4131c3f631e33670338
 6681 Author: Poornima G <pgurusid@redhat.com>
 6682 Date:   Wed Nov 21 10:01:08 2018 +0530
 6683 
 6684     mem-pool: Add api to mem_get based on requested size
 6685     
 6686     Currently mem-pool implementation provides api to get from the
 6687     mem pool based on the struct type. This is to retain api
 6688     compatibility with the old implementation of mem pool. Internally
 6689     in the mem pool structure there is a mapping from struct to size
 6690     based pools.
 6691     
 6692     In this patch, we are adding new APIs to fetch memory from mem pool,
 6693     given a size.
 6694     
 6695     Change-Id: Ib220ee45ebd134a7be8f6482db5a592dbb7b9211
 6696     Updates: #325
 6697     Signed-off-by: Poornima G <pgurusid@redhat.com>
 6698 
 6699 commit 822779332e193471a6caa3199f0f618d2aa2c900
 6700 Author: Sunny Kumar <sunkumar@redhat.com>
 6701 Date:   Mon Dec 17 14:07:27 2018 +0530
 6702 
 6703     geo-rep : fix slave volume read-only option
 6704     
 6705     Problem: When separate ssh key is given for non root user setting slave volume
 6706              read-only option results in failure.
 6707     
 6708     Solution: Check for extra param in case separate key is given for non-root user
 6709               and take action accordingly.
 6710     
 6711     Change-Id: Iafe9a2aa6b86cde1dcd7d63771048a6ae33c2cde
 6712     fixes: bz#1659971
 6713     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 6714 
 6715 commit c228f0c2d94c028619088c07b66f88488f7c3335
 6716 Author: Pranith Kumar K <pkarampu@redhat.com>
 6717 Date:   Sun Dec 2 15:35:09 2018 +0530
 6718 
 6719     Don't depend on string options to be valid always
 6720     
 6721     updates bz#1650403
 6722     Change-Id: Ib5a11e691599ce4bd93c1ed5aca6060592893961
 6723     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
 6724 
 6725 commit bdcb2d8497d77ff28cb031ae3992eb7ea0c90486
 6726 Author: Raghavendra Bhat <raghavendra@redhat.com>
 6727 Date:   Mon Dec 3 11:23:20 2018 -0500
 6728 
 6729     features/snapview-client: access priv->path inside lock
 6730     
 6731     To handle the race condition of a fop or a function accessing priv->path
 6732     and a reconfigure changing priv->path (because entry point directory
 6733     changed), the private structure's path is guarded by the lock.
 6734     
 6735     updates bz#1650403
 6736     Change-Id: I61c539da06d68d38eafcf2155699c7702f31323e
 6737     Signed-off-by: Raghavendra Bhat <raghavendra@redhat.com>
 6738 
 6739 commit 403c69d35827b6cbb430e97a797c318cca81e86e
 6740 Author: Yaniv Kaul <ykaul@redhat.com>
 6741 Date:   Thu Sep 13 16:03:23 2018 +0300
 6742 
 6743     AFR xlator: use dict_{setn|getn|deln|get_int32n|set_int32n|set_strn}
 6744     
 6745     In a previous patch (https://review.gluster.org/20769) we've
 6746     added the key length to be passed to dict_* funcs, to remove the need
 6747     to strlen() it. This patch moves some xlators to use it.
 6748     
 6749     - In some cases, moved strlen() of the key length outside of locks,
 6750     which is usually a good thing. Please verify it's safe to do so.
 6751     - In some cases, created a prefix for the keys, replacing something like
 6752     "%d-%d" with a "%s" in snprintf(). Not sure it adds value, but improves
 6753     readability.
 6754     
 6755     Please review carefully.
 6756     
 6757     Compile-tested only!
 6758     
 6759     Change-Id: I04f2a1eb2ecfc3283d849d150d10d088ae7aa7f1
 6760     updates: bz#1193929
 6761     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 6762 
 6763 commit f0c46df09fe542d6a365adc0c544ba460598501c
 6764 Author: Jiffin Tony Thottan <jthottan@redhat.com>
 6765 Date:   Wed Dec 12 12:10:44 2018 +0530
 6766 
 6767     selinux/glusterd : add "features.selinux" to glusterd-volume-set.c
 6768     
 6769     Fixes: bz#1659868
 6770     Change-Id: I38675ba4d47c8ba7f94cfb4734692683ddb3dcfd
 6771     Signed-off-by: Jiffin Tony Thottan <jthottan@redhat.com>
 6772 
 6773 commit 152907d438bf8bb571e43ec278ec7b01da2431a6
 6774 Author: Kotresh HR <khiremat@redhat.com>
 6775 Date:   Wed Dec 5 17:27:07 2018 +0530
 6776 
 6777     cluster/afr: Fix mem leak reported by ASAN
 6778     
 6779     Traceback:
 6780     
 6781     Direct leak of 765 byte(s) in 9 object(s) allocated from:
 6782         #0 0x7ffb9cad2c48 in malloc (/lib64/libasan.so.5+0xeec48)
 6783         #1 0x7ffb9c5f8949 in __gf_malloc ./libglusterfs/src/mem-pool.c:136
 6784         #2 0x7ffb9c5f91bb in gf_vasprintf ./libglusterfs/src/mem-pool.c:236
 6785         #3 0x7ffb9c5f938a in gf_asprintf ./libglusterfs/src/mem-pool.c:256
 6786         #4 0x7ffb826714ab in afr_get_heal_info ./xlators/cluster/afr/src/afr-common.c:6204
 6787         #5 0x7ffb825765e5 in afr_handle_heal_xattrs ./xlators/cluster/afr/src/afr-inode-read.c:1481
 6788         #6 0x7ffb825765e5 in afr_getxattr ./xlators/cluster/afr/src/afr-inode-read.c:1571
 6789         #7 0x7ffb9c635af7 in syncop_getxattr ./libglusterfs/src/syncop.c:1680
 6790         #8 0x406c78 in glfsh_process_entries ./heal/src/glfs-heal.c:810
 6791         #9 0x408555 in glfsh_crawl_directory ./heal/src/glfs-heal.c:898
 6792         #10 0x408cc0 in glfsh_print_pending_heals_type ./heal/src/glfs-heal.c:970
 6793         #11 0x408fc5 in glfsh_print_pending_heals ./heal/src/glfs-heal.c:1012
 6794         #12 0x409546 in glfsh_gather_heal_info ./heal/src/glfs-heal.c:1154
 6795         #13 0x403e96 in main ./heal/src/glfs-heal.c:1745
 6796         #14 0x7ffb99bc411a in __libc_start_main ../csu/libc-start.c:308
 6797     
 6798     The dictionary is referenced by caller to print the status.
 6799     So set it as dynstr, the last unref of dictionary will free it.
 6800     
 6801     updates: bz#1633930
 6802     Change-Id: Ib5a7cb891e6f7d90560859aaf6239e52ff5477d0
 6803     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 6804 
 6805 commit b40bb5394dbe5b391d8218d71d672d7e1820e5d3
 6806 Author: ShyamsundarR <srangana@redhat.com>
 6807 Date:   Fri Dec 14 16:57:01 2018 -0500
 6808 
 6809     dht: Fix clang warnings in dht-common.c
 6810     
 6811     Change-Id: I0894d62edd68e13d123aaa5ca1827b98283f0d3e
 6812     Updates: bz#1622665
 6813     Signed-off-by: ShyamsundarR <srangana@redhat.com>
 6814 
 6815 commit eb77d69be528580ca6e4c109762b862114beca87
 6816 Author: Csaba Henk <csaba@redhat.com>
 6817 Date:   Mon Oct 22 00:59:05 2018 +0200
 6818 
 6819     fuse: SETLKW interrupt
 6820     
 6821     Use the (f)getxattr based clearlocks interface to
 6822     interrupt a pending lock request.
 6823     
 6824     updates: #465
 6825     Change-Id: I4e91a4d8791fc688fed400a02de4c53487e61be2
 6826     Signed-off-by: Csaba Henk <csaba@redhat.com>
 6827 
 6828 commit d49b41e817d592c1904b6f01716df6546dad3ebe
 6829 Author: Amar Tumballi <amarts@redhat.com>
 6830 Date:   Tue Oct 16 16:31:49 2018 +0530
 6831 
 6832     fuse: add --lru-limit option
 6833     
 6834     The inode LRU mechanism is moot in fuse xlator (ie. there is no
 6835     limit for the LRU list), as fuse inodes are referenced from
 6836     kernel context, and thus they can only be dropped on request of
 6837     the kernel. This might results in a high number of passive
 6838     inodes which are useless for the glusterfs client, causing a
 6839     significant memory overhead.
 6840     
 6841     This change tries to remedy this by extending the LRU semantics
 6842     and allowing to set a finite limit on the fuse inode LRU.
 6843     
 6844     A brief history of problem:
 6845     
 6846     When gluster's inode table was designed, fuse didn't have any
 6847     'invalidate' method, which means, userspace application could
 6848     never ask kernel to send a 'forget()' fop, instead had to wait
 6849     for kernel to send it based on kernel's parameters. Inode table
 6850     remembers the number of times kernel has cached the inode based
 6851     on the 'nlookup' parameter. And 'nlookup' field is not used by
 6852     no other entry points (like server-protocol, gfapi etc).
 6853     
 6854     Hence the inode_table of fuse module always has to have lru-limit
 6855     as '0', which means no limit. GlusterFS always had to keep all
 6856     inodes in memory as kernel would have had a reference to it.
 6857     Again, the reason for this is, kernel's glusterfs inode reference
 6858     was pointer of 'inode_t' structure in glusterfs. As it is a
 6859     pointer, we could never free it (to prevent segfault, or memory
 6860     corruption).
 6861     
 6862     Solution:
 6863     
 6864     In the inode table, handle the prune case of inodes with 'nlookup'
 6865     differently, and call a 'invalidator' method, which in this case is
 6866     fuse_invalidate(), and it sends the request to kernel for getting
 6867     the forget request.
 6868     
 6869     When the kernel sends the forget, it means, it has dropped all
 6870     the reference to the inode, and it will send the forget with the
 6871     'nlookup' parameter too. We just need to make sure to reduce the
 6872     'nlookup' value we have when we get forget. That automatically
 6873     cause the relevant prune to happen.
 6874     
 6875     Credits: Csaba Henk, Xavier Hernandez, Raghavendra Gowdappa, Nithya B
 6876     
 6877     fixes: bz#1560969
 6878     Change-Id: Ifee0737b23b12b1426c224ec5b8f591f487d83a2
 6879     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 6880 
 6881 commit fc74ef85e0780e0a265275df00e4d0d4a2d05eab
 6882 Author: N Balachandran <nbalacha@redhat.com>
 6883 Date:   Fri Dec 14 16:42:26 2018 +0530
 6884 
 6885     performance/rda:  Fixed dict_t memory leak
 6886     
 6887     Removed all references to dict_t xdata_from_req which is
 6888     allocated but not used anywhere. It is also not cleaned up
 6889     and hence causes a memory leak.
 6890     
 6891     Change-Id: I2edb857696191e872ad12a12efc36999626bacc7
 6892     fixes: bz#1659432
 6893     Signed-off-by: N Balachandran <nbalacha@redhat.com>
 6894 
 6895 commit 5ec271c316ec6538130d25148179721c595dd5a2
 6896 Author: Iraj Jamali <ijamali@redhat.com>
 6897 Date:   Fri Nov 23 01:58:44 2018 +0530
 6898 
 6899     glusterfsd: Fix coverity issue
 6900     
 6901     Problem reported: value assigned to a variable is never used
 6902     
 6903     Fixes CID : 1274230
 6904     
 6905     updates: bz#789278
 6906     
 6907     Change-Id: I7afcb411876dea81c6820c5b31ae0a2896f9ca15
 6908     Signed-off-by: Iraj Jamali <ijamali@redhat.com>
 6909 
 6910 commit a6a5f7aa6f05d21db7e8b4fbc39f2c6f843aac39
 6911 Author: Anoop C S <anoopcs@redhat.com>
 6912 Date:   Thu Dec 6 15:05:20 2018 +0530
 6913 
 6914     extras: New group volume set command for Samba integration
 6915     
 6916      # gluster volume set <VOLNAME> group samba
 6917     
 6918     List of volume set options from group-samba are aimed at improving the below
 6919     workloads which consumes time and network hops in SMB world:
 6920     
 6921     * Listing of large directories
 6922     * Negative lookups during creation of files
 6923     
 6924     Caching the necessary metadata required for these workloads saves us time and
 6925     network hops. On the other side we have to ensure correctness(avoiding stale
 6926     cache) in caching(via md-cache) with the help of cache invalidation in an
 6927     environment where multiple client access is expected.
 6928     
 6929     Change-Id: Icdd2d8e5eb290e12bc509105418c668f432f4eae
 6930     fixes: bz#1656771
 6931     Signed-off-by: Anoop C S <anoopcs@redhat.com>
 6932 
 6933 commit 930d8b706136e2aaa1f3d173f79e1a4970e65561
 6934 Author: Csaba Henk <csaba@redhat.com>
 6935 Date:   Thu Dec 6 16:13:46 2018 +0100
 6936 
 6937     locks: handle "clear locks" xattr in fgetxattr too
 6938     
 6939     The lock clearing procedure was kicked in only in
 6940     getxattr context. We need it to work the same way
 6941     if it's triggered via fgetxattr (as is the case
 6942     with interrupt handling).
 6943     
 6944     Also cleaned up the instrumentation a bit (more logs,
 6945     proper management of allocated data).
 6946     
 6947     updates: #465
 6948     Change-Id: Icfca26ee181da3b8e15ca3fcf61cd5702e2730c8
 6949     Signed-off-by: Csaba Henk <csaba@redhat.com>
 6950 
 6951 commit e3d01793a3ef1307240fdc7d7f0d12be1488b921
 6952 Author: Yaniv Kaul <ykaul@redhat.com>
 6953 Date:   Sun Dec 2 23:19:46 2018 +0200
 6954 
 6955     Multiple posix related files: several modifications
 6956     
 6957     Just looked at posix.c and related code and performed
 6958     some changes and cleanups. The only important one is #3 below,
 6959     but surely the others (#2 and #4) need careful review.
 6960     Changes to other files are as they were related to code paths
 6961     in posix.c.
 6962     
 6963     I'll send a separate patch for other posix related files.
 6964     
 6965     Main changes:
 6966     1. Proper initializtion for parameters, where it made sense.
 6967     2. Logged outside the lock in several places.
 6968     3. Moved from CALLOC to MALLOC where it made sense.
 6969     4. Aligned structures.
 6970     5. moved dictionary functions to use _sizen where possible.
 6971     (dict_get() -> dict_get_sizen() for example)
 6972     
 6973     Compile-tested only!
 6974     
 6975     Change-Id: Ia84699fb495e06d095339c91c1ba770d1393bb6c
 6976     updates: bz#1193929
 6977     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 6978 
 6979 commit 2421453bf38469a8c0861f205bdee37e771aa39f
 6980 Author: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
 6981 Date:   Mon Dec 10 18:02:19 2018 +0530
 6982 
 6983     cli: variable-length array declaration clang fix
 6984     
 6985     Problem: Declared variable-length array can have zero size
 6986     
 6987     Added a goto statement to address this issue.
 6988     
 6989     Updates: bz#1622665
 6990     
 6991     Change-Id: Ibf80643490367a5f7e50f66f87e4296380be45de
 6992     Signed-off-by: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
 6993 
 6994 commit 64d800940e67b75d51f536816ee92bae59d6f850
 6995 Author: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
 6996 Date:   Thu Dec 13 11:14:10 2018 +0530
 6997 
 6998     cluster/ec: NULL pointer deferencing clang fix
 6999     
 7000     Removing VALIDATE_OR_GOTO check on "this"
 7001     
 7002     Change-Id: I154deaca5302b41c1cafd87077de880dd03ec613
 7003     Updates: bz#1622665
 7004     Signed-off-by: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
 7005 
 7006 commit bfe2b5e1530efd364af7a175c8a1c89bc4cab0bb
 7007 Author: ShyamsundarR <srangana@redhat.com>
 7008 Date:   Wed Dec 12 16:45:09 2018 -0500
 7009 
 7010     clang: Fix various missing checks for empty list
 7011     
 7012     When using list_for_each_entry(_safe) functions, care needs
 7013     to be taken that the list passed in are not empty, as these
 7014     functions are not empty list safe.
 7015     
 7016     clag scan reported various points where this this pattern
 7017     could be caught, and this patch fixes the same.
 7018     
 7019     Additionally the following changes are present in this patch,
 7020     - Added an explicit op_ret setting in error case in the
 7021     macro MAKE_INODE_HANDLE to address another clang issue reported
 7022     - Minor refactoring of some functions in quota code, to address
 7023     possible allocation failures in certain functions (which in turn
 7024     cause possible empty lists to be passed around)
 7025     
 7026     Change-Id: I1e761a8d218708f714effb56fa643df2a3ea2cc7
 7027     Updates: bz#1622665
 7028     Signed-off-by: ShyamsundarR <srangana@redhat.com>
 7029 
 7030 commit 8293d21280fd6ddfc9bb54068cf87794fc6be207
 7031 Author: Amar Tumballi <amarts@redhat.com>
 7032 Date:   Thu Dec 6 12:29:25 2018 +0530
 7033 
 7034     all: remove code which is not being considered in build
 7035     
 7036     These xlators are now removed from build as per discussion/announcement
 7037     done at https://lists.gluster.org/pipermail/gluster-users/2018-July/034400.html
 7038     
 7039     * move rot-13 to playground, as it is used only as demo
 7040       purpose, and is documented in many places.
 7041     
 7042     * Removed code of below xlators:
 7043       - cluster/stripe
 7044       - cluster/tier
 7045       - features/changetimerecorder
 7046       - features/glupy
 7047       - performance/symlink-cache
 7048       - encryption/crypt
 7049       - storage/bd
 7050       - experimental/posix2
 7051       - experimental/dht2
 7052       - experimental/fdl
 7053       - experimental/jbr
 7054     
 7055     updates: bz#1635688
 7056     Change-Id: I1d2d63c32535e149bc8dcb2daa76236c707996e8
 7057     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 7058 
 7059 commit af7e957b4954bd84b8f7df6bfbd59c939092ead2
 7060 Author: Amar Tumballi <amarts@redhat.com>
 7061 Date:   Thu Dec 6 16:24:52 2018 +0530
 7062 
 7063     xlator: make 'xlator_api' mandatory
 7064     
 7065     * Remove the options to load old symbol.
 7066     * keep only 'xlator_api' symbol from being exported using xlator.sym
 7067     * add xlator_api to all the xlators where its missing
 7068     
 7069     NOTE: This covers all the xlators which has at least a test case
 7070     to validate its loading. If there is a translator, which doesn't
 7071     have any test, then we should probably remove that from codebase.
 7072     
 7073     fixes: #164
 7074     Change-Id: Ibcdc8c9844cda6b4463d907a15813745d14c1ebb
 7075     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 7076 
 7077 commit 088e2cbb5ee3f3e766b7e4021e2d86d0c5187de0
 7078 Author: Amar Tumballi <amarts@redhat.com>
 7079 Date:   Tue Dec 11 16:20:58 2018 +0530
 7080 
 7081     symlink-cache: remove from the build
 7082     
 7083     symlink-cache was written as an experiment to reduce the load
 7084     on 'build' systems, which keep doing symlink resolution to get
 7085     the proper header files. But since last 6+ years, there was no
 7086     way to add it to the volfile using gluster cli, and hence was
 7087     not supported anymore. As it is not maintained, and as announced
 7088     on [1], we are planning to remove it from the build system.
 7089     
 7090     [1]- https://lists.gluster.org/pipermail/gluster-users/2018-July/034400.html
 7091     
 7092     updates: bz#1635688
 7093     Change-Id: Iaa25069bceed04cf65f79a4b4a02c05cee848eb5
 7094     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 7095 
 7096 commit fb917bf10b4783d5c669e81a5be1f902ca48cb84
 7097 Author: Mohit Agrawal <moagrawal@redhat.com>
 7098 Date:   Fri Nov 23 09:39:43 2018 +0530
 7099 
 7100     [geo-rep]: Worker still ACTIVE after killing bricks
 7101     
 7102     Problem: In changelog xlator after destroying listener it call's
 7103              unlink to delete changelog socket file but socket file
 7104              reference is not cleaned up from process memory
 7105     
 7106     Solution: 1) To cleanup reference completely from process memory
 7107                  serialize transport cleanup for changelog and then
 7108                  unlink socket file
 7109               2) Brick xlator will notify GF_EVENT_PARENT_DOWN to next
 7110                  xlator only after cleanup all xprts
 7111     
 7112     Test: To test the same run below steps
 7113           1) Setup some volume and enable brick mux
 7114           2) kill anyone brick with gf_attach
 7115           3) check changelog socket for specific to killed brick
 7116              in lsof, it should cleanup completely
 7117     
 7118     fixes: bz#1600145
 7119     
 7120     Change-Id: Iba06cbf77d8a87b34a60fce50f6d8c0d427fa491
 7121     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 7122 
 7123 commit 52d3f82db2f032eae1b60ffa2f283109858ce3df
 7124 Author: Ravishankar N <ravishankar@redhat.com>
 7125 Date:   Tue Dec 11 15:32:03 2018 +0530
 7126 
 7127     afr: some minor itable related cleanups
 7128     
 7129     - this->itable always needs to be allocated, hence move it outside
 7130     afr_selfheal_daemon_init().
 7131     - Invoke afr_selfheal_daemon_init() only for self-heal daemon case.
 7132     - remove redundant itable allocation in afr_discover().
 7133     - destroy itable in fini.
 7134     
 7135     Updates bz#1193929
 7136     Change-Id: Ib28b50b607386f5a5aa7d2f743c8b506ccb10eae
 7137     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
 7138 
 7139 commit 607bbd935f102602810fdeb61079b85ecb58a118
 7140 Author: Mohit Agrawal <moagrawal@redhat.com>
 7141 Date:   Wed Nov 21 14:33:53 2018 +0530
 7142 
 7143     rpc: Resolve memory leak in mgmt_pmap_signout_cbk
 7144     
 7145     Problem: At the time of submit signout request to mgmt
 7146              rpc_clnt_mgmt_pmap_signout create a frame but in cbk
 7147              frame is not destroyed
 7148     
 7149     Solution: cleanup frame in mgmt_pmap_signout_cbk to avoid leak
 7150     
 7151     Change-Id: I9961cacb2e02c8023c4c99e22e299b8729c2b09f
 7152     fixes: bz#1658045
 7153     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 7154 
 7155 commit c9d117d54aea1d775e0eef1881892d11fa12811e
 7156 Author: Milind Changire <mchangir@redhat.com>
 7157 Date:   Wed Dec 12 09:23:11 2018 +0530
 7158 
 7159     core: move invalid port logs to DEBUG log level
 7160     
 7161     Stop spamming "invalid port" logs in case sysadmin has reserved a large
 7162     number of ports.
 7163     
 7164     Change-Id: I244ef7693560cc404b36cadc6b05d92ec0e908d3
 7165     fixes: bz#1656517
 7166     Signed-off-by: Milind Changire <mchangir@redhat.com>
 7167 
 7168 commit 7dadea15c58eb92e5f5727190bf9446dd6fe7a3c
 7169 Author: Raghavendra Bhat <raghavendra@redhat.com>
 7170 Date:   Tue Nov 6 15:27:31 2018 -0500
 7171 
 7172     copy_file_range support in GlusterFS
 7173     
 7174         * libglusterfs changes to add new fop
 7175     
 7176         * Fuse changes:
 7177           - Changes in fuse bridge xlator to receive and send responses
 7178     
 7179         * posix changes to perform the op on the backend filesystem
 7180     
 7181         * protocol and rpc changes for sending and receiving the fop
 7182     
 7183         * gfapi changes for performing the fop
 7184     
 7185         * tools: glfs-copy-file-range tool for testing copy_file_range fop
 7186     
 7187           - Although, copy_file_range support has been added to the upstream
 7188     	    fuse kernel module, no release has been made yet of a kernel
 7189             which contains the support. It is expected to come in the
 7190             upcoming release of linux-4.20
 7191     
 7192             So, as of now, executing copy_file_range fop on a fused based
 7193             filesystem results in fuse kernel module sending read on the
 7194     	    source fd and write on the destination fd.
 7195     
 7196     	    Therefore a small gfapi based tool has been written to be able
 7197             test the copy_file_range fop. This tool is similar (in functionality)
 7198     	    to the example program given in copy_file_range man page.
 7199     
 7200     	    So, running regular copy_file_range on a fuse mount point and
 7201     	    running gfapi based glfs-copy-file-range tool gives some idea about
 7202     	    how fast, the copy_file_range (or reflink) can be.
 7203     
 7204     	    On the local machine this was the result obtained.
 7205     
 7206     	    mount -t glusterfs workstation:new /mnt/glusterfs
 7207     	    [root@workstation ~]# cd /mnt/glusterfs/
 7208     	    [root@workstation glusterfs]# ls
 7209     	    file
 7210     	    [root@workstation glusterfs]# cd
 7211     	    [root@workstation ~]# time /tmp/a.out /mnt/glusterfs/file /mnt/glusterfs/new
 7212     	    real  0m6.495s
 7213     	    user  0m0.000s
 7214     	    sys   0m1.439s
 7215     	    [root@workstation ~]# time glfs-copy-file-range $(hostname) new /tmp/glfs.log /file /rrr
 7216     	    OPEN_SRC: opening /file is success
 7217     	    OPEN_DST: opening /rrr is success
 7218     	    FSTAT_SRC: fstat on /rrr is success
 7219     	    copy_file_range successful
 7220     
 7221             real  0m0.309s
 7222             user  0m0.039s
 7223             sys   0m0.017s
 7224     
 7225             This tool needs following arguments
 7226              1) hostname
 7227              2) volume name
 7228              3) log file path
 7229              4) source file path (relative to the gluster volume root)
 7230              5) destination file path (relative to the gluster volume root)
 7231     
 7232             "glfs-copy-file-range <hostname> <volume> <log file path> <source> <destination>"
 7233     
 7234           - Added a testcase as well to run glfs-copy-file-range tool
 7235     
 7236         * io-stats changes to capture the fop for profiling
 7237     
 7238         * NOTE:
 7239     
 7240           - Added conditional check to see whether the copy_file_range syscall
 7241             is available or not. If not, then return ENOSYS.
 7242     
 7243           - Added conditional check for kernel minor version in fuse_kernel.h
 7244             and fuse-bridge while referring to copy_file_range. And the kernel
 7245             minor version is kept as it is. i.e. 24. Increment it in future
 7246             when there is a kernel release which contains the support for
 7247             copy_file_range fop in fuse kernel module.
 7248     
 7249         * The document which contains a writeup on this enhancement can be found at
 7250           https://docs.google.com/document/d/1BSILbXr_knynNwxSyyu503JoTz5QFM_4suNIh2WwrSc/edit
 7251     
 7252     Change-Id: I280069c814dd21ce6ec3be00a884fc24ab692367
 7253     updates: #536
 7254     Signed-off-by: Raghavendra Bhat <raghavendra@redhat.com>
 7255 
 7256 commit 5c723ade196600030ee84621384cceb10fff64d8
 7257 Author: karthik-us <ksubrahm@redhat.com>
 7258 Date:   Mon Dec 10 18:13:19 2018 +0530
 7259 
 7260     cluster/afr: Do not update read_subvol in inode_ctx after rename/link fop
 7261     
 7262     Since rename/link fops on a file will not change any data in it, it should
 7263     not update the read_subvol values in the inode_ctx, which interprets the
 7264     data & metadata readable subvols for that file. The old read_subvol values
 7265     should be retained even after the rename/link operations.
 7266     
 7267     Change-Id: I068044a426823a566f5bea8aa063cd689199d6dd
 7268     fixes: bz#1657783
 7269     Signed-off-by: karthik-us <ksubrahm@redhat.com>
 7270 
 7271 commit 3e3d83ee359c8bc8a8694865e0a8af869b2b8f33
 7272 Author: Harpreet Kaur <hlalwani@redhat.com>
 7273 Date:   Tue Dec 11 15:07:56 2018 +0530
 7274 
 7275     tools: stack-buffer-overflow reported by asan
 7276     
 7277     This patch fixes buffer overflow in $SRC/tools/setgfid2path/src/main.c
 7278     Memory access at offset 196 overflows "pgfid" variable
 7279     SUMMARY: AddressSanitizer: stack-buffer-overflow (/lib64/libasan.so.5+0x4e935)
 7280     
 7281     updates: bz#1633930
 7282     
 7283     Change-Id: Ib508c57e96c46b628f63c511437b853b39ae7955
 7284     Signed-off-by: Harpreet Kaur <hlalwani@redhat.com>
 7285 
 7286 commit e41fee7ba316655cdaafb9234a1590051f82db11
 7287 Author: Bhumika Goyal <bgoyal@redhat.com>
 7288 Date:   Thu Dec 6 15:04:55 2018 +0530
 7289 
 7290     afr: Resource leak coverity fixes
 7291     
 7292     Problem reported by Coverity: Leak of memory or pointers to
 7293     system resources.
 7294     Deallocate the memory pointed to by xattr_serz as the memory
 7295     reference is not stored anywhere.
 7296     
 7297     Fixes CID: 1124760, 124787, 1382418
 7298     
 7299     Change-Id: Ib9c2ef28c52e2d43de2552cfd959a98b26272bc1
 7300     updates: bz#789278
 7301     Signed-off-by: Bhumika Goyal <bgoyal@redhat.com>
 7302 
 7303 commit 08adbfb5d2edf9dc01ecc2cf2ca5eccb320b8721
 7304 Author: rishubhjain <rishubhjain47@gmail.com>
 7305 Date:   Mon Dec 10 13:04:13 2018 -0500
 7306 
 7307     write-behind/bit-rot: fix identifier
 7308     
 7309     Rename the identifiers, bit-rot-server to bit-rot in bit-rot.c & write-ahead to
 7310     write-behind in write-behind.c to ensure GD2 understands the options
 7311     
 7312     Change-Id: Id271ae97de2e54f4e30174482c4e1fb6afc728d3
 7313     Fixes: #164
 7314     Signed-off-by: rishubhjain <rishubhjain47@gmail.com>
 7315 
 7316 commit f50251daeece85d6ada79b1d1f6697d4fac59ad4
 7317 Author: Harpreet Kaur <hlalwani@redhat.com>
 7318 Date:   Mon Dec 10 16:14:54 2018 +0530
 7319 
 7320     nfs: memory leak issue reported by asan
 7321     
 7322     This patch fixes Direct leaks in exports.c
 7323     Leaks are happening in exp_file_parse
 7324     SUMMARY: AddressSanitizer: 5120 byte(s) leaked in 20 allocation(s).
 7325     SUMMARY: AddressSanitizer: 512 byte(s) leaked in 4 allocation(s).
 7326     
 7327     Updates: bz#1633930
 7328     
 7329     Change-Id: Ib4474f8f6c65d737ed54ed35b4234410d1fd673e
 7330     Signed-off-by: Harpreet Kaur <hlalwani@redhat.com>
 7331 
 7332 commit 8b3a1b19fbd73545cb86029ee34033d87190bca5
 7333 Author: Amar Tumballi <amarts@redhat.com>
 7334 Date:   Wed Dec 5 20:37:53 2018 +0530
 7335 
 7336     encryption: remove crypt xlator from build
 7337     
 7338     Based on the proposal to remove few features as they are not
 7339     actively maintained [1], removing crypt translator from the build.
 7340     
 7341     [1] - https://lists.gluster.org/pipermail/gluster-users/2018-July/034400.html
 7342     
 7343     Crypt xlator helped in on-disk / at-rest encryption of data. But
 7344     currently as there are no maintainers for this, planning to remove
 7345     it from master codebase. We are planning to host these experimental/
 7346     tech-preview xlators in another repository, so people who want to
 7347     contribute can still use the bits.
 7348     
 7349     updates: bz#1635688
 7350     
 7351     Change-Id: I7f2453907a595c34f635a88c49aab0845369c6e7
 7352     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 7353 
 7354 commit e82bcc33ed2d5cd54d3f918397f31818089299ad
 7355 Author: Mohit Agrawal <moagrawal@redhat.com>
 7356 Date:   Mon Nov 26 14:40:00 2018 +0530
 7357 
 7358     posix: posix_health_check_thread_proc crash due to priv is NULL
 7359     
 7360     Problem: posix_fini sends a cancellation request to health_check
 7361              thread and cleanup priv without ensuring health_check thread
 7362              is running
 7363     
 7364     Solution: Make health_check && disk_space thread joinable and call
 7365               gf_thread_cleanup_xint to wait unless thread is not finished
 7366     
 7367     Change-Id: I4d37b08138766881dab0922a47ed68a2c3411f13
 7368     fixes: bz#1636570
 7369     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 7370 
 7371 commit 2b7b6ff28fa92335613d0b5715acd552cfcfd759
 7372 Author: Mohit Agrawal <moagrawal@redhat.com>
 7373 Date:   Fri Dec 7 12:35:20 2018 +0530
 7374 
 7375     glusterd: Resolve memory leak in some glusterd functions
 7376     
 7377     Problem: Functions allocate memory for req structure but after submit
 7378              request they missed to cleanup memory
 7379     
 7380     Solution: After submit request cleanup allocated mmeory
 7381     
 7382     Change-Id: I8f995787ed8986b882f008ccd588670b5d4139f5
 7383     updates: bz#1633930
 7384     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 7385 
 7386 commit 74c72d0dd9a47b842f4247d939b64089a6fb8e43
 7387 Author: Sunny Kumar <sunkumar@redhat.com>
 7388 Date:   Fri Dec 7 10:53:44 2018 +0530
 7389 
 7390     cli : fix memory leak in cli-cmd-volume.c
 7391     
 7392     This patch fixes ememory leak reported by ASan.
 7393     
 7394     Tracebacks:
 7395     Direct leak of 84 byte(s) in 1 object(s) allocated from:
 7396         #0 0x7f71ea107848 in __interceptor_malloc (/lib64/libasan.so.5+0xef848)
 7397         #1 0x7f71e9e2ac49 in __gf_malloc ./libglusterfs/src/mem-pool.c:136
 7398         #2 0x7f71e9e2b4bb in gf_vasprintf ./libglusterfs/src/mem-pool.c:236
 7399         #3 0x7f71e9e2b68a in gf_asprintf ./libglusterfs/src/mem-pool.c:256
 7400         #4 0x41e8ec in cli_cmd_bitrot_cbk ./cli/src/cli-cmd-volume.c:1847
 7401         #5 0x410b39 in cli_cmd_process ./cli/src/cli-cmd.c:137
 7402         #6 0x40fe9d in cli_batch ./cli/src/input.c:29
 7403         #7 0x7f71e989558d in start_thread (/lib64/libpthread.so.0+0x858d)
 7404     
 7405     updates: bz#1633930
 7406     Change-Id: I8977e45add742e67047291f398f0ee79eb09afe4
 7407     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 7408 
 7409 commit 6e92171117c73d7a8901800299446a131e54b597
 7410 Author: Harpreet Kaur <hlalwani@redhat.com>
 7411 Date:   Wed Nov 28 14:06:36 2018 +0530
 7412 
 7413     geo-rep: Make slave volume read-only (by default)
 7414     
 7415     Added a command to set "features.read-only" option
 7416     to a default value "on" for slave volume.
 7417     Changes are made in:
 7418     $SRC//extras/hook-scripts/S56glusterd-geo-rep-create-post.sh
 7419     for root geo-rep and
 7420     $SRC/geo-replication/src/set_geo_rep_pem_keys.sh
 7421     for non-root geo-rep.
 7422     
 7423     Fixes: bz#1654187
 7424     
 7425     Change-Id: I15beeae3506f3f6b1dcba0a5c50b6344fd468c7c
 7426     Signed-off-by: Harpreet Kaur <hlalwani@redhat.com>
 7427 
 7428 commit 916df2c12b19ac84b7806d31226d7f832ca7e2bb
 7429 Author: Atin Mukherjee <amukherj@redhat.com>
 7430 Date:   Thu Dec 6 23:14:57 2018 +0530
 7431 
 7432     glusterd: fix get_mux_limit_per_process to read default value
 7433     
 7434     get_mux_limit_per_process () reads the global option dictionary and in
 7435     case it doesn't find out a key, assumes that
 7436     cluster.max-bricks-per-process option isn't configured however the
 7437     default value should be picked up in such case.
 7438     
 7439     Change-Id: I35dd8da084adbf59793d58557e818d8e6c17f9f3
 7440     Fixes: bz#1656951
 7441     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 7442 
 7443 commit 9ee330aaf0831bc04e2ed72c05be0701571b5294
 7444 Author: Raghavendra Gowdappa <rgowdapp@redhat.com>
 7445 Date:   Thu Dec 6 13:24:40 2018 +0530
 7446 
 7447     performance/readdir-ahead: update stats from prefetched dentries
 7448     
 7449     stats from prefetched dentries should be invalidated only if the
 7450     files pointed to those dentries were written in the window of
 7451     prefetching. Otherwise its safe to use these stats.
 7452     
 7453     Change-Id: I9ea5aeea4c75dfa03387fca32c626cb4e693290d
 7454     Signed-off-by: Raghavendra Gowdappa <rgowdapp@redhat.com>
 7455     Fixes: bz#1656348
 7456 
 7457 commit 40a9e53a44e887658fade3f03afc018e82b941b9
 7458 Author: Aravinda VK <avishwan@redhat.com>
 7459 Date:   Thu Dec 6 15:09:26 2018 +0530
 7460 
 7461     New xlator option to control enable/disable of xlators in Gd2
 7462     
 7463     Since glusterd2 don't maintain the xlator option details in code, it
 7464     directly reads the xlators options table from `*.so` files. To support
 7465     enable and disable of xlator new option added to the option table with
 7466     the name same as xlator name itself.
 7467     
 7468     This change will not affect the functionality with glusterd1.
 7469     
 7470     Change-Id: I23d9e537f3f422de72ddb353484466d3519de0c1
 7471     updates: #302
 7472     Signed-off-by: Aravinda VK <avishwan@redhat.com>
 7473 
 7474 commit f168db1da76775f11026c922a51a718b54abc4c9
 7475 Author: Mohit Agrawal <moagrawal@redhat.com>
 7476 Date:   Thu Dec 6 22:02:28 2018 +0530
 7477 
 7478     cli: fix memory leak in cli rpc ops
 7479     
 7480     Problem: In some of the cli fops dict_allocate_and_serialize
 7481              allocate memory for req structure but after submit
 7482              request it missed to cleanup memory fo req.dict.dict_val
 7483     
 7484     Solution: Call GF_FREE for req.dict.dict_val after submit
 7485               cli request
 7486     
 7487     Change-Id: I76c6b3082fa0be21dc595f87701550a318734ea5
 7488     updates: bz#1633930
 7489     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 7490 
 7491 commit 4bdabc49d034ab2b76e4861a6e10ae41deb86d5e
 7492 Author: Rinku Kothiya <rkothiya@redhat.com>
 7493 Date:   Wed Dec 5 19:18:17 2018 +0530
 7494 
 7495     cli: fix a memory leak reported by ASan.
 7496     
 7497     Fixed a leak in cli_cmd_volume_remove_brick_cbk.
 7498     SUMMARY: AddressSanitizer: 1152 byte(s) leaked in 8 allocation(s)
 7499     
 7500     updates: bz#1633930
 7501     
 7502     Credits: Mohit Agrawal
 7503     Change-Id: Idb59c3880329fde59c415c84d7f0bb09ae879a1a
 7504     Signed-off-by: Rinku Kothiya <rkothiya@redhat.com>
 7505 
 7506 commit 36e1175df6f404aad89b8a802d4f603ebaa3515b
 7507 Author: Kotresh HR <khiremat@redhat.com>
 7508 Date:   Wed Dec 5 12:55:14 2018 +0530
 7509 
 7510     cli: Fix mem-leaks reported by ASAN
 7511     
 7512     Tracebacks:
 7513     
 7514     Direct leak of 96 byte(s) in 1 object(s) allocated from:
 7515      #0 0x7f3acf9eac48 in malloc (/lib64/libasan.so.5+0xeec48)
 7516      #1 0x7f3acf510949 in __gf_malloc ./libglusterfs/src/mem-pool.c:136
 7517      #2 0x7f3acf5111bb in gf_vasprintf ./libglusterfs/src/mem-pool.c:236
 7518      #3 0x7f3acf51138a in gf_asprintf ./libglusterfs/src/mem-pool.c:256
 7519      #4 0x421611 in cli_cmd_volume_set_cbk ./cli/src/cli-cmd-volume.c:868
 7520      #5 0x410599 in cli_cmd_process ./cli/src/cli-cmd.c:135
 7521      #6 0x40f90d in cli_batch ./cli/src/input.c:29
 7522      #7 0x7f3acd78c593 in start_thread pthread_create.c:463
 7523     
 7524     Direct leak of 73 byte(s) in 1 object(s) allocated from:
 7525      #0 0x7f3acf9eac48 in malloc (/lib64/libasan.so.5+0xeec48)
 7526      #1 0x7f3acf510949 in __gf_malloc ./libglusterfs/src/mem-pool.c:136
 7527      #2 0x421519 in gf_strndup ../../libglusterfs/src/mem-pool.h:167
 7528      #3 0x421519 in gf_strdup ../../libglusterfs/src/mem-pool.h:184
 7529      #4 0x421519 in cli_cmd_volume_set_cbk cli/src/cli-cmd-volume.c:859
 7530      #5 0x410599 in cli_cmd_process cli/src/cli-cmd.c:135
 7531      #6 0x40f90d in cli_batch cli/src/input.c:29
 7532      #7 0x7f3acd78c593 in start_thread pthread_create.c:463
 7533     
 7534     Change-Id: I3312751c1e3178672360a678fe15b1f7f1054b22
 7535     updates: bz#1633930
 7536     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 7537 
 7538 commit 340e58f9b3bcdfe4314da65e592dcd5c2daf6fd9
 7539 Author: Amar Tumballi <amarts@redhat.com>
 7540 Date:   Wed Nov 28 10:05:39 2018 +0530
 7541 
 7542     all: add xlator_api to many translators
 7543     
 7544     Fixes: #164
 7545     Change-Id: I93ad6f0232a1dc534df099059f69951e1339086f
 7546     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 7547 
 7548 commit 7ea5f438f60df9aa16027030f2b24f31bc07524b
 7549 Author: Rinku Kothiya <rkothiya@redhat.com>
 7550 Date:   Tue Dec 4 19:27:27 2018 +0530
 7551 
 7552     cli: memory leak issue reported by asan
 7553     
 7554     This patch fixes dict leak in cli_cmd_volume_stop_cbk.
 7555     SUMMARY: AddressSanitizer: 640 byte(s) leaked in 4 allocation(s)
 7556     
 7557     Credits: Mohit Agrawal
 7558     Change-Id: If14983b8588e68d16d6bbb04b87e2f06fb97023d
 7559     fixes: bz#1633930
 7560     Signed-off-by: Rinku Kothiya <rkothiya@redhat.com>
 7561 
 7562 commit 20ef211cfa5b5fcc437484a879fdc5d4c66bbaf5
 7563 Author: ShyamsundarR <srangana@redhat.com>
 7564 Date:   Thu Nov 29 14:08:06 2018 -0500
 7565 
 7566     libglusterfs: Move devel headers under glusterfs directory
 7567     
 7568     libglusterfs devel package headers are referenced in code using
 7569     include semantics for a program, this while it works can be better
 7570     especially when dealing with out of tree xlator builds or in
 7571     general out of tree devel package usage.
 7572     
 7573     Towards this, the following changes are done,
 7574     - moved all devel headers under a glusterfs directory
 7575     - Included these headers using system header notation <> in all
 7576     code outside of libglusterfs
 7577     - Included these headers using own program notation "" within
 7578     libglusterfs
 7579     
 7580     This change although big, is just moving around the headers and
 7581     making it correct when including these headers from other sources.
 7582     
 7583     This helps us correctly include libglusterfs includes without
 7584     namespace conflicts.
 7585     
 7586     Change-Id: Id2a98854e671a7ee5d73be44da5ba1a74252423b
 7587     Updates: bz#1193929
 7588     Signed-off-by: ShyamsundarR <srangana@redhat.com>
 7589 
 7590 commit ad446dabb88439ba83e2092021b09894351e8e71
 7591 Author: Xie Changlong <xiechanglong@cmss.chinamobile.com>
 7592 Date:   Mon Dec 3 19:02:32 2018 +0800
 7593 
 7594     protocol/server: support server.all-squash
 7595     
 7596     We still use gnfs on our side, so do a little work to support
 7597     server.all-squash. Just like server.root-squash, it's also a
 7598     volume wide option. Also see bz#1285126
 7599     
 7600     $ gluster volume set <VOLNAME> server.all-squash on
 7601     
 7602     Note: If you enable server.root-squash and server.all-squash
 7603     at the same time, only server.all-squash works. Please refer
 7604     to following table
 7605     
 7606     +---------------+-----------------+---------------------------+
 7607     |               |all_squash       | no_all_squash             |
 7608     +-------------------------------------------------------------+
 7609     |               |                 |anonuid/anongid for root   |
 7610     |root_squash    |anonuid/anongid  |useruid/usergid for no-root|
 7611     +-------------------------------------------------------------+
 7612     |no_root_squash |anonuid/anongid  |useruid/usergid            |
 7613     +-------------------------------------------------------------+
 7614     
 7615     Updates bz#1285126
 7616     Signed-off-by: Xie Changlong <xiechanglong@cmss.chinamobile.com>
 7617     Signed-off-by: Xue Chuanyu <xuechuanyu@cmss.chinamobile.com>
 7618     Change-Id: Iea043318fe6e9a75fa92b396737985062a26b47e
 7619 
 7620 commit 7f7716f8194e06754d0417f27bcc40638c9f9f83
 7621 Author: Sunny Kumar <sunkumar@redhat.com>
 7622 Date:   Wed Dec 5 12:33:48 2018 +0530
 7623 
 7624     cli: fix memory leak in cli/src/cli-rpc-ops.c
 7625     
 7626     This Patch fixes memory leak reported by ASan.
 7627     Leaks are in gf_cli_status_cbk as a result of allocatating memory
 7628     using gf_asprintf in loop.
 7629     
 7630     SUMMARY: AddressSanitizer: 535 byte(s) leaked in 7 allocation(s).
 7631     
 7632     Change-Id: If2fd76c7c1ea6fc44baca295050800074f9d1323
 7633     updates: bz#1633930
 7634     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 7635 
 7636 commit d4723bdd30f0955ca68fec8c01bc87229c6a24c0
 7637 Author: Atin Mukherjee <amukherj@redhat.com>
 7638 Date:   Tue Nov 20 12:32:32 2018 +0530
 7639 
 7640     glusterd: glusterd to regenerate volfiles when GD_OP_VERSION_MAX changes
 7641     
 7642     While glusterd has an infra to allow post install of spec to bring it up
 7643     in the interim upgrade mode to allow all the volfiles to be regenerated
 7644     with the latest executable, in container world the same methodology is
 7645     not followed as container image always point to the specific gluster rpm
 7646     and gluster rpm doesn't go through an upgrade process.
 7647     
 7648     This fix does the following:
 7649     1. If glusterd.upgrade file doesn't exist, regenerate the volfiles
 7650     2. If maximum-operating-version read from glusterd.upgrade doesn't match
 7651     with GD_OP_VERSION_MAX, glusterd detects it to be a version where new
 7652     options are introduced and regenerate the volfiles.
 7653     
 7654     Tests done:
 7655     
 7656     1. Bring up glusterd, check if glusterd.upgrade file has been created
 7657     with GD_OP_VERSION_MAX value.
 7658     2. Post 1, restart glusterd and check glusterd hasn't regenerated the
 7659     volfiles as there's is no change in the GD_OP_VERSION_MAX vs the
 7660     op_version read from the file.
 7661     3. Bump up the GD_OP_VERSION_MAX in the code by 1 and post compilation
 7662     restart glusterd where the volfiles should be again regenerated.
 7663     
 7664     Note: The old way of having volfiles regenerated during an rpm upgrade
 7665     is kept as it is for now but eventually this can be sunset later.
 7666     
 7667     Change-Id: I75b49a1601c71e99f6a6bc360dd12dd03a96414b
 7668     Fixes: bz#1651463
 7669     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 7670 
 7671 commit afc3006b46bf9d6eb05e39af68bcd81041761a9c
 7672 Author: Harpreet kaur <hlalwani@redhat.com>
 7673 Date:   Tue Dec 4 18:09:49 2018 +0530
 7674 
 7675     cli: memory leak issue reported by asan
 7676     
 7677     This patch fixes Indirect leaks in cli-cmd-volume.c
 7678     Leaks are happening in cli_cmd_quota_cbk and
 7679     cli_cmd_quota_handle_list_all.
 7680     SUMMARY: AddressSanitizer: 1152 byte(s) leaked in 8 allocation(s)
 7681     
 7682     Updates: bz#1633930
 7683     
 7684     Change-Id: Ia6c0306e88bd81f74d1220303ead8095fbcf5623
 7685     Signed-off-by: Harpreet kaur <hlalwani@redhat.com>
 7686 
 7687 commit 382ad46bbcb79344285d5cb1fe3ce85f83317c44
 7688 Author: Kotresh HR <khiremat@redhat.com>
 7689 Date:   Tue Dec 4 05:01:54 2018 -0500
 7690 
 7691     tests/geo-rep: Mask failure of geo-rep arbiter test
 7692     
 7693     Comment out the particular test which is failing
 7694     arbitrarily. Also changed the code to differentiate
 7695     error cases. There could be some race because of
 7696     which it's failing arbitrarily. This will be debugged
 7697     and fixed in separate patch.
 7698     
 7699     Change-Id: I925df6421737d7a9abd9446a9d85029b4285ad2c
 7700     updates: bz#1193929
 7701     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 7702 
 7703 commit 5a8a06bc9d84c188d18b60e4bf0a97963572f065
 7704 Author: Chris Holcombe <xfactor973@gmail.com>
 7705 Date:   Thu Nov 29 10:26:44 2018 -0800
 7706 
 7707     debug/io-stats: Fix json output
 7708     
 7709     Summary: The json being output by the io-stats debug xlator
 7710     quotes the numbers. This is not necessary and makes parsing
 7711     in strongly typed languages more difficult.
 7712     
 7713     Change-Id: I3ac13700e2c52dbdc29d0bcdd39896d7871f36fe
 7714     fixes: bz#1654521
 7715     Signed-off-by: Chris Holcombe <xfactor973@gmail.com>
 7716 
 7717 commit 65dc176e7c3e3d598605b75f06b796fd0ade2c7e
 7718 Author: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
 7719 Date:   Fri Nov 30 22:01:53 2018 +0530
 7720 
 7721     rpc-transport/socket: NULL pointer dereferencing clang fix
 7722     
 7723     Problem: res->ai_addr could be NULL
 7724     
 7725     Added a check to address this issue
 7726     
 7727     Change-Id: Iac88a8d6dc1f009836554448afbc228df93decd6
 7728     Updates: bz#1622665
 7729     Signed-off-by: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
 7730 
 7731 commit 785106e13864b84f35ca3394518d05d69a4e755f
 7732 Author: Yaniv Kaul <ykaul@redhat.com>
 7733 Date:   Sun Nov 25 11:22:30 2018 +0200
 7734 
 7735     xlators/mgmt/glusterd/src/glusterd-volgen.c: use dict_ new functions
 7736     
 7737     In a previous patch (https://review.gluster.org/20769) we've
 7738     added the key length to be passed to dict_* funcs, to remove the need
 7739     to strlen() it. This patches makes use of these functions over
 7740     this whole file.
 7741     
 7742     Please review carefully, as there are many many changes there.
 7743     
 7744     Compile-tested only!
 7745     updates: bz#1193929
 7746     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 7747     
 7748     Change-Id: I2e1ee340300ec330936c31becda6bfe1b6533281
 7749 
 7750 commit 9c06057bae91440aabb1a1a69e5315b56454e1a2
 7751 Author: Atin Mukherjee <amukherj@redhat.com>
 7752 Date:   Wed Dec 5 10:52:30 2018 +0530
 7753 
 7754     tests: Mark tests/bugs/shard/zero-flag.t bad
 7755     
 7756     Change-Id: I2f4ca470c6666584e0feb129ab712f06772a86c2
 7757     Updates: bz#1656264
 7758     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 7759 
 7760 commit 239c67d49d0f9bec10212122513172e523b9abce
 7761 Author: Atin Mukherjee <amukherj@redhat.com>
 7762 Date:   Tue Dec 4 19:19:58 2018 +0530
 7763 
 7764     glusterd: set cluster.max-bricks-per-process to 250
 7765     
 7766     Commit 6821cec changed this default from 0 to 250 in the option table,
 7767     however the same wasn't done in the global option table.
 7768     
 7769     Change-Id: I6075f2ebc51e839510d6492fb62e706deb2d845b
 7770     Fixes: bz#1652118
 7771     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 7772 
 7773 commit 040a1dbcf6d954dc5965ead40d560a3107f2e3aa
 7774 Author: Krutika Dhananjay <kdhananj@redhat.com>
 7775 Date:   Wed Nov 28 12:39:31 2018 +0530
 7776 
 7777     extras: Add group-distributed-virt for single-brick ovirt-gluster use-case
 7778     
 7779     Change-Id: I930011327332b7ba30cc76f614efaf5932eb4f3d
 7780     fixes: bz#1654138
 7781     Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
 7782 
 7783 commit f80d9be732042477fc08ceb5873cd903002d7d1a
 7784 Author: Yaniv Kaul <ykaul@redhat.com>
 7785 Date:   Wed Nov 7 10:27:15 2018 +0200
 7786 
 7787     libglusterfs/src/iobuf.c: small refactor to re-use code.
 7788     
 7789     No functional changes (I hope).
 7790     Compile-tested only!
 7791     
 7792     updates: bz#1193929
 7793     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 7794     
 7795     Change-Id: Ifbec21c18a6dbe27c5271db156bff4d30ca85dbf
 7796 
 7797 commit f479f4618923ca497d499dcaa533d19a2403e0b5
 7798 Author: Sunny Kumar <sunkumar@redhat.com>
 7799 Date:   Tue Dec 4 00:18:42 2018 +0530
 7800 
 7801     cli: fix memory leak in cli-cmd-system.c
 7802     
 7803     This patch fixes memory leak reported by ASan.
 7804     
 7805     SUMMARY: AddressSanitizer: 384 byte(s) leaked in 2 allocation(s).
 7806     
 7807     updates: bz#1633930
 7808     Change-Id: I93ebddcfeea3d51547e00775db2c9d99f5dfafea
 7809     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 7810 
 7811 commit 82987486a9c9145caa6ce9ff31506ba2563a4a97
 7812 Author: Eli Schwartz <eschwartz@archlinux.org>
 7813 Date:   Tue Dec 4 11:38:48 2018 -0500
 7814 
 7815     configure.ac: fix option to stop automake aborting on pointless error
 7816     
 7817     glusterfs does not follow the GNU coding standards and therefore must
 7818     use the "foreign" strictness. Without this, autoreconf -fi would fail to
 7819     execute successfully because automake returned non-zero.
 7820     
 7821     This change ensures that people using autoreconf, the GNU preferred
 7822     invocation method for the autotools build system, can successfully set
 7823     up the build.
 7824     
 7825     Remove the pointless --foreign argument from the autogen.sh invocation
 7826     of automake. Not only is configure.ac the preferred way to define such
 7827     options (rather than handwritten, piecemeal invocations of every tool in
 7828     the autotools toolchain), it was never needed in the autogen.sh as that
 7829     script provides no error handling at all and always (incorrectly)
 7830     returns successfully as long as autotools itself is installed (no matter
 7831     how broken glusterfs itself is).
 7832     
 7833     Change-Id: Ib0246d5368a54594f517a322465cffb9a85c1b49
 7834     fixes: bz#1656100
 7835     Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
 7836 
 7837 commit 9b770760d94b1fc39ade01df35dd3bcf317a71ed
 7838 Author: Milan Zink <mzink@redhat.com>
 7839 Date:   Tue Jan 16 13:48:49 2018 +0100
 7840 
 7841     Do not blindly add volume share section to smb.conf
 7842     
 7843     With this change, by default GlusterFS volume share section will
 7844     no longer be added to smb.conf for client access unless user.cifs
 7845     or user.smb volume set options are enabled. This also fixes the
 7846     hook script to check for presence of all configuration possibilities
 7847     for those volume set options like 'enable' or 'on'.
 7848     
 7849     Change-Id: Ibecf7fffb4507d7255d963c3b1482afb0d0db984
 7850     Signed-off-by: Milan Zink <mzink@redhat.com>
 7851     Signed-off-by: Anoop C S <anoopcs@redhat.com>
 7852     Fixes: bz#1575836
 7853 
 7854 commit e48678567a5fb01166a065f9e192b80e721e4181
 7855 Author: Sanju Rakonde <srakonde@redhat.com>
 7856 Date:   Thu Nov 8 18:50:18 2018 +0530
 7857 
 7858     glusterd: migrating profile commands to mgmt_v3 framework
 7859     
 7860     Current profile commands use the op_state machine framework.
 7861     Porting it to use the mgmt_v3 framework.
 7862     
 7863     The following tests were performed on the patch:
 7864     case 1:
 7865     1. On a 3 node cluster, created and started 3 volumes
 7866     2. Mounted all the three volumes and wrote some data
 7867     3. Started profile operation for all the volumes
 7868     4. Ran "gluster v status" from N1,
 7869            "gluster v profile <volname1> info" form N2,
 7870            "gluster v profile <volname2> info" from N3 simultaneously in a
 7871        loop for around 10000 times
 7872     5. Didn't find any cores generated.
 7873     
 7874     case 2:
 7875     1. Repeat the steps 1,2 and 3 from case 1.
 7876     2. Ran "gluster v status" from N1,
 7877            "gluster v profile <volname1> info" form N2(terminal 1),
 7878            "gluster v profile <volname2> info" from N2(terminal 2)
 7879        simultaneously in a loop.
 7880     3. No cores were generated.
 7881     
 7882     fixes: bz#1654181
 7883     Change-Id: I83044cf5aee3970ef94066c89fcc41783ed468a6
 7884     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 7885 
 7886 commit 8e8f4bf3fa16d3790a5eb74b8f07b904024ee9d8
 7887 Author: Harpreet Kaur Lalwani <hlalwani@redhat.com>
 7888 Date:   Wed Nov 21 16:13:36 2018 +0530
 7889 
 7890     cli: "usage()" and "--help" for gluster cli
 7891     
 7892     Added a usage message which will be shown when a user enters an
 7893     "unrecognized word" or an "unrecognized command" on the cli.
 7894     Also added a "--help" option for gluster cli.
 7895     
 7896     fixes: bz#1535495
 7897     
 7898     Change-Id: Ibcfb3d1c84daa1054e09c5cdfa6a5dab19f534a6
 7899     Signed-off-by: Harpreet Kaur Lalwani <hlalwani@redhat.com>
 7900 
 7901 commit 54ebd47e4154c8b37680b2bac43775fc92ced153
 7902 Author: Kotresh HR <khiremat@redhat.com>
 7903 Date:   Sat Nov 17 13:14:24 2018 +0530
 7904 
 7905     geo-rep: Fix syncing of files with non-ascii filenames
 7906     
 7907     Problem:
 7908       Creation of files/directories with non-ascii names fails
 7909       to sync to the slave. It crashes with below traceback on
 7910       slave.
 7911       ...
 7912       File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/repce.py", line 118, in worker
 7913         res = getattr(self.obj, rmeth)(*in_data[2:])
 7914       File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/resource.py", line 709, in entry_ops
 7915         [ESTALE, EINVAL, EBUSY])
 7916       File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/syncdutils.py", line 546, in errno_wrap
 7917         return call(*arg)
 7918       File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/libcxattr.py", line 83, in lsetxattr
 7919         cls.raise_oserr()
 7920       File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/libcxattr.py", line 38, in raise_oserr
 7921         raise OSError(errn, os.strerror(errn))
 7922       OSError: [Errno 12] Cannot allocate memory
 7923     
 7924     Cause:
 7925       The length calculation arguments passed to blob creation was done before encoding. Hence
 7926       was failing in gfid-access layer.
 7927     
 7928     Fix:
 7929       It appears that the calculating lenght properly fixes this issue. But it will cause
 7930       issues in other places in 'python2' and not in 'python3'. So encoding and decoding
 7931       each required string to make geo-rep compatible with both 'python2' and 'python3'
 7932       is a nightmare and is not fool proof. Hence kept 'python2' code as is with out
 7933       encode/decode and applied encode/decode only to 'python3'
 7934     
 7935     Added non-ascii filename tests to regression
 7936     
 7937     fixes: bz#1650893
 7938     Change-Id: I35cfaf848e07b1a0b5cb93c01b98b472f08271a6
 7939     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 7940 
 7941 commit 748e993d1f30197c533933ddae889b317ccd00d3
 7942 Author: Milind Changire <mchangir@redhat.com>
 7943 Date:   Tue Nov 27 11:43:04 2018 +0530
 7944 
 7945     rpc: bump up server.event-threads
 7946     
 7947     Problem:
 7948     A single event-thread causes performance issues in the system.
 7949     
 7950     Solution:
 7951     Bump up event-threads to 2 to make the system more performant.
 7952     This helps in making the system more responsive and helps avoid the
 7953     ping-timer-expiry problem as well. However, setting the event-threads
 7954     to 2 is not the only thing required to avoid ping-timer-expiry issues.
 7955     
 7956     Change-Id: Idb0fd49e078db3bd5085dd083b0cdc77b59ddb00
 7957     fixes: bz#1653277
 7958     Signed-off-by: Milind Changire <mchangir@redhat.com>
 7959 
 7960 commit b3d88a0904131f6851f4185e43f815ecc3353ab5
 7961 Author: Soumya Koduri <skoduri@redhat.com>
 7962 Date:   Wed Nov 28 14:14:00 2018 +0530
 7963 
 7964     io-cache: xdata needs to be passed for readv operations
 7965     
 7966     io-cache xlator has been skipping xdata references when the
 7967     date needs to be read into page cache. This patch fixes the same.
 7968     
 7969     Note: similar changes may be needed for other fops as well
 7970     which are handled by io-cache.
 7971     
 7972     Change-Id: I28d73d4ba471d13eb55d0fd0b5197d222df77a2a
 7973     updates: bz#1648768
 7974     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 7975 
 7976 commit 9fc6cf898bcb7dc0f3f671e734678616722d0721
 7977 Author: Raghavendra Bhat <raghavendra@redhat.com>
 7978 Date:   Mon Dec 3 11:51:52 2018 -0500
 7979 
 7980     rpc: check if fini is there before calling it
 7981     
 7982     The rpc_transport_t structure is allocated and filled in the
 7983     rpc_transport_load function. If filling the fileds of the rpc
 7984     structure fails, then in the failure handling the structure is
 7985     freed by rpc_transport_cleanup. There, it unconditionally calls
 7986     fini. But, if the failure handling was invoked because of any
 7987     failure in between the allocation of rpc_transport_t and filling
 7988     the transport->fini (including the failure to fill fini ()), then
 7989     rpc_transport_cleanup can lead to a segfault.
 7990     
 7991     Change-Id: I8be9b84cd6b19933c559c9736198a6e440373f68
 7992     fixes: bz#1654917
 7993     Signed-off-by: Raghavendra Bhat <raghavendra@redhat.com>
 7994 
 7995 commit 2bb0e89e4bb113a93c6e786446a140cd99261af8
 7996 Author: Sanju Rakonde <srakonde@redhat.com>
 7997 Date:   Wed Nov 28 16:13:58 2018 +0530
 7998 
 7999     glusterd: perform rcu_read_lock/unlock() under cleanup_lock mutex
 8000     
 8001     Problem: glusterd should not try to acquire locks on any resources,
 8002     when it already received a SIGTERM and cleanup is started. Otherwise
 8003     we might hit segfault, since the thread which is going through
 8004     cleanup path will be freeing up the resouces and some other thread
 8005     might be trying to acquire locks on freed resources.
 8006     
 8007     Solution: perform rcu_read_lock/unlock() under cleanup_lock mutex.
 8008     
 8009     fixes: bz#1654270
 8010     Change-Id: I87a97cfe4f272f74f246d688660934638911ce54
 8011     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 8012 
 8013 commit 220722b426f4014abdca0c719b2ca4e3aefeecc4
 8014 Author: Sunny Kumar <sunkumar@redhat.com>
 8015 Date:   Fri Nov 30 17:46:59 2018 +0530
 8016 
 8017     cli : Memeory leak fix reported by ASAN
 8018     
 8019     This patch fixes memory leak in cli-rpc-ops.c.
 8020     
 8021     Functions: gf_cli_create_volume_cbk, gf_cli_delete_volume_cbk,
 8022                gf_cli_start_volume_cbk, gf_cli_remove_tier_brick_cbk,
 8023                gf_cli_list_volume_cbk.
 8024     
 8025     updates: bz#1633930
 8026     
 8027     Change-Id: I68a650fb972db18c90e6581a960eae3018f32d40
 8028     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 8029 
 8030 commit 46c15ea8fa98bb3d92580b192f03863c2e2a2d9c
 8031 Author: Mohit Agrawal <moagrawal@redhat.com>
 8032 Date:   Thu Nov 29 19:55:39 2018 +0530
 8033 
 8034     server: Resolve memory leak path in server_init
 8035     
 8036     Problem: 1) server_init does not cleanup allocate resources
 8037                 while it is failed before return error
 8038              2) dict leak at the time of graph destroying
 8039     
 8040     Solution: 1) free resources in case of server_init is failed
 8041               2) Take dict_ref of graph xlator before destroying
 8042                  the graph to avoid leak
 8043     
 8044     Change-Id: I9e31e156b9ed6bebe622745a8be0e470774e3d15
 8045     fixes: bz#1654917
 8046     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 8047 
 8048 commit f77fb6d568616592ab25501c402c140d15235ca9
 8049 Author: Raghavendra Bhat <raghavendra@redhat.com>
 8050 Date:   Thu Nov 29 12:04:45 2018 -0500
 8051 
 8052     features/bitrot: compare the signature with proper length
 8053     
 8054     * The scrubber was comparing the checksum of the file that it
 8055       calculated (by reading the file) with the on disk signature
 8056       (stored via xattr) wrongly. It was using strlen to calculate
 8057       the signature, while the actual length of the signature is
 8058       given by the brick. Just use the actual length that the brick
 8059       provides instead of trying to calculate the signature length via
 8060       strlen API.
 8061     
 8062     * In posix, gfid2path was using the same string that contains the
 8063       list of all the xattrs of file to save the value of the gfid2path
 8064       xattr as well. This causes confusion when gfid2path xattr is queried
 8065       by scrubber for getting the actual path of a corrupted file. Use
 8066       separate string to fetch the value of the xattr instead of the string
 8067       that contains the list of xattrs.
 8068     
 8069     Change-Id: I2d664ab524d2b312233476cb35863dde3122e9a9
 8070     fixes: bz#1654805
 8071     Signed-off-by: Raghavendra Bhat <raghavendra@redhat.com>
 8072 
 8073 commit 4d58730c0cd6ab5db39aec8a15276f7bd3371b04
 8074 Author: Ravishankar N <ravishankar@redhat.com>
 8075 Date:   Fri Sep 28 17:00:00 2018 +0530
 8076 
 8077     afr: assign gfid during name heal when no 'source' is present.
 8078     
 8079     Problem:
 8080     If parent dir is in split-brain or has dirty xattrs set, and the file
 8081     has gfid missing on one of the bricks, then name heal won't assign the
 8082     gfid.
 8083     
 8084     Fix:
 8085     Use the brick we select the gfid from as the 'source'.
 8086     
 8087     Note: Problem was found while trying to debug a split-brain issue on
 8088     Cynthia Zhou's setup.
 8089     
 8090     updates: bz#1637249
 8091     Change-Id: Id088d4f0fb017aa35122de426654194e581ed742
 8092     Reported-by: Cynthia Zhou <cynthia.zhou@nokia-sbell.com>
 8093     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
 8094 
 8095 commit 4364093869f59ed2af3f7d10d5a72df490eac9a9
 8096 Author: Poornima G <pgurusid@redhat.com>
 8097 Date:   Tue Nov 20 14:11:08 2018 +0530
 8098 
 8099     doc: Add brick mux thread reduction design doc in developer guide
 8100     
 8101     Change-Id: I5309efb5826d4385eadea29c1cf973f504eef9e5
 8102     Updates: #475
 8103     Signed-off-by: Poornima G <pgurusid@redhat.com>
 8104 
 8105 commit 080aa5b9e9d998552e23f7c33aed3afb0ca93c34
 8106 Author: Soumya Koduri <skoduri@redhat.com>
 8107 Date:   Wed Nov 28 12:45:41 2018 +0530
 8108 
 8109     leases: Do not conflict with internal fops
 8110     
 8111     Internal fops (with frame->root->pid < 0) are used to heal
 8112     or move data and maintains data integrity. That is they do not
 8113     modify client data which holds the lease. Hence no need to recall
 8114     Lease for such fops.
 8115     
 8116     Note: Like for locks, we would need rebalance and self-heal
 8117     daemon process to heal lease state as well.
 8118     
 8119     Change-Id: I8988693fef8d00e17c19dcc842e2238f9eb5ab48
 8120     updates: bz#1648768
 8121     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 8122 
 8123 commit b56bf714c1f22212700db50c057e4e47b99be739
 8124 Author: Yaniv Kaul <ykaul@redhat.com>
 8125 Date:   Fri Nov 23 12:14:59 2018 +0200
 8126 
 8127     rpc *.h fles: align structs
 8128     
 8129     Make an effort to slightly better align the structures.
 8130     
 8131     Change-Id: I6f80a451f2ffbf15adfb986cedc24c2799787b49
 8132     updates: bz#1193929
 8133     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 8134 
 8135 commit 99c72652f81ca5ea212adbb5a555e12a4de94491
 8136 Author: Jiffin Tony Thottan <jthottan@redhat.com>
 8137 Date:   Thu Nov 29 19:22:40 2018 +0530
 8138 
 8139     nfs : set ctx for every inode looked up nfs3_fh_resolve_inode_lookup_cbk()
 8140     
 8141     The inode ctx for nfs xlator is set with help nfs_fix_generation.
 8142     But currently gnfs is crashing because inode_ctx is becoming null
 8143     nfs3_resolve_inode_hard() is used to perform a lookup on entire
 8144     path and looks like function is missing to set the ctx for inode.
 8145     This patch will set ctx for the inode which it looked on.
 8146     
 8147     Change-Id: I464fa7f78df1bae990ebe97de8ccf6d5fb74fc9f
 8148     fixes: bz#1651439
 8149     Signed-off-by: Jiffin Tony Thottan <jthottan@redhat.com>
 8150 
 8151 commit 7c0cb6eebd37ced16bb3b4410404be12e8c892b5
 8152 Author: Harpreet Lalwani <hlalwani@redhat.com>
 8153 Date:   Mon Oct 15 12:41:17 2018 +0530
 8154 
 8155     cli: memory leak issue reported by asan
 8156     
 8157     This patch fixes Indirect leaks in tests/bugs/heal-symlinks.t.
 8158     Leaks are happening in cli_cmd_volume_heal_cbk.
 8159     SUMMARY: AddressSanitizer: 640 byte(s) leaked in 4 allocation(s).
 8160     
 8161     Updates: bz#1633930
 8162     
 8163     Change-Id: I970b4229630fdaf01aec66581c1287beef7560a3
 8164     Signed-off-by: Harpreet Lalwani <hlalwani@redhat.com>
 8165 
 8166 commit 0b54c92a22c89fd1d8e03cad2dfb70a5b73ee12a
 8167 Author: ShyamsundarR <srangana@redhat.com>
 8168 Date:   Fri Nov 30 11:58:57 2018 -0500
 8169 
 8170     clang: Fix io-stats.c NULL pointer issue reported by clang
 8171     
 8172     The issue pertains to checking if conf is NULL in BUMP_FOP
 8173     but not providing that safety in io_stats_release when using
 8174     conf to lock and bump nr_opens.
 8175     
 8176     This is now corrected to check if conf is non-NULL before
 8177     attempting the lock and bump nr_opens.
 8178     
 8179     Tested with local clang analyzer to ensure this fixes the
 8180     problem.
 8181     
 8182     Change-Id: Iffd6a97c2060d0a6930a8dc5914b1956c192cab1
 8183     Updates: bz#1622665
 8184     Signed-off-by: ShyamsundarR <srangana@redhat.com>
 8185 
 8186 commit 0566ecc878adc5a5aba2c3210485087a9a67da59
 8187 Author: Sunny Kumar <sunkumar@redhat.com>
 8188 Date:   Fri Nov 30 16:39:32 2018 +0530
 8189 
 8190     cli : Memeory leak fix reported by ASAN
 8191     
 8192     This patch fixes memory leak in cli-rpc-ops.c.
 8193     All leaks are happening in gf_cli_remove_brick_cbk.
 8194     
 8195     SUMMARY: AddressSanitizer: 2944 byte(s) leaked in 22 allocation(s).
 8196     
 8197     updates: bz#1633930
 8198     
 8199     Change-Id: I1e58d538eb9135f1aadcdb54d10b72f55e8a53d1
 8200     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 8201 
 8202 commit 98a672f5046620f5fc751ea803e0dfa0bf4e18d3
 8203 Author: Yaniv Kaul <ykaul@redhat.com>
 8204 Date:   Thu Nov 29 22:27:59 2018 +0200
 8205 
 8206     Multiple xlator .h files: remove unused private gf_* memory types.
 8207     
 8208     It seems there were quite a few unused enums (that in turn
 8209     cause unndeeded memory allocation) in some xlators.
 8210     I've removed them, hopefully not causing any damage.
 8211     
 8212     Compile-tested only!
 8213     
 8214     updates: bz#1193929
 8215     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 8216     
 8217     Change-Id: I8252bd763dc1506e2d922496d896cd2fc0886ea7
 8218 
 8219 commit e74d997f0d7eeb91fe6b5f0f0c3969bf4ac53f9f
 8220 Author: ShyamsundarR <srangana@redhat.com>
 8221 Date:   Thu Nov 29 15:37:23 2018 -0500
 8222 
 8223     clang: Fix clang warnings in snapview-server.c
 8224     
 8225     The warning by clang is due to the fact that we check for
 8226     frame->root to be NULL, but in stack unwind, we ignore the
 8227     same.
 8228     
 8229     If frame is non-NULL then frame->root is non-NULL as frame
 8230     creation ensures this. Further, across the code we do not
 8231     check both frame and frame->root for validity.
 8232     
 8233     Hence to fix these clang issues, removing the check for
 8234     frame->root in the various functions.
 8235     
 8236     NOTE: Initially clang reported 14 issues in the file, but
 8237     post commit 6eabefe6 the number reduced to 4, unsure why as
 8238     that commit does not address this issue.
 8239     
 8240     Change-Id: I04b63f2d006a1f95773aae9f904b4bd3d5118e62
 8241     Updates: bz#1622665
 8242     Signed-off-by: ShyamsundarR <srangana@redhat.com>
 8243 
 8244 commit 95e380eca19b9f0d03a53429535f15556e5724ad
 8245 Author: Raghavendra Gowdappa <rgowdapp@redhat.com>
 8246 Date:   Wed Oct 31 16:10:58 2018 +0530
 8247 
 8248     rpcsvc: provide each request handler thread its own queue
 8249     
 8250     A single global per program queue is contended by all request handler
 8251     threads and event threads. This can lead to high contention. So,
 8252     reduce the contention by providing each request handler thread its own
 8253     private queue.
 8254     
 8255     Thanks to "Manoj Pillai"<mpillai@redhat.com> for the idea of pairing a
 8256     single queue with a fixed request-handler-thread and event-thread,
 8257     which brought down the performance regression due to overhead of
 8258     queuing significantly.
 8259     
 8260     Thanks to "Xavi Hernandez"<xhernandez@redhat.com> for discussion on
 8261     how to communicate the event-thread death to request-handler-thread.
 8262     
 8263     Thanks to "Karan Sandha"<ksandha@redhat.com> for voluntarily running
 8264     the perf benchmarks to qualify that performance regression introduced
 8265     by ping-timer-fixes is fixed with this patch and patiently running
 8266     many iterations of regression tests while RCAing the issue.
 8267     
 8268     Thanks to "Milind Changire"<mchangir@redhat.com> for patiently running
 8269     the many iterations of perf benchmarking tests while RCAing the
 8270     regression caused by ping-timer-expiry fixes.
 8271     
 8272     Change-Id: I578c3fc67713f4234bd3abbec5d3fbba19059ea5
 8273     Fixes: bz#1644629
 8274     Signed-off-by: Raghavendra Gowdappa <rgowdapp@redhat.com>
 8275 
 8276 commit f0232d07f7e6543b56830be28f6e80f9085e6241
 8277 Author: Kaleb S. KEITHLEY <kkeithle@redhat.com>
 8278 Date:   Tue Nov 27 11:19:59 2018 -0500
 8279 
 8280     core: ctx calls naked calloc()
 8281     
 8282     liblglusterfs provides wrapper functions MALLOC/__gf_default_malloc,
 8283     CALLOC/__gf_default_calloc, and REALLOC/__gf_default_realloc for those
 8284     few places outside of mempool.c that need to call malloc/calloc/realloc
 8285     directly.
 8286     
 8287     Notable exceptions are "contrib" code, e.g. rbtree and timer-wheel,
 8288     and perhaps parsers generated by yacc+lex. But even parsers can be
 8289     fixed to at least call the wrappers mentioned above, if not our own
 8290     allocators.
 8291     
 8292     Change-Id: Ib8069815eba9b6c04c3adaf59727ec8d8795c4d1
 8293     updates: bz#1193929
 8294     Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
 8295 
 8296 commit 18b6d7ce7d490e807815270918a17a4b392a829d
 8297 Author: Raghavendra Gowdappa <rgowdapp@redhat.com>
 8298 Date:   Fri Nov 16 16:27:17 2018 +0530
 8299 
 8300     libglusterfs: rename macros roof and floor to not conflict with math.h
 8301     
 8302     Change-Id: I666eeb63ebd000711b3f793b948d4e0c04b1a242
 8303     Signed-off-by: Raghavendra Gowdappa <rgowdapp@redhat.com>
 8304     Updates: bz#1644629
 8305 
 8306 commit 9f9f46ff2d30ff87a6a4f8c2af491ea1aa92fbb2
 8307 Author: Kaleb S. KEITHLEY <kkeithle@redhat.com>
 8308 Date:   Tue Nov 27 14:24:15 2018 -0500
 8309 
 8310     glusterd: volume-ops calls naked malloc
 8311     
 8312     libglusterfs provides wrapper functions MALLOC/__gf_default_malloc,
 8313     CALLOC/__gf_default_calloc, and REALLOC/__gf_default_realloc for those
 8314     few places outside of mempool.c that need to call malloc/calloc/realloc
 8315     directly.
 8316     
 8317     Notable exceptions are "contrib" code, e.g. rbtree and timer-wheel,
 8318     and perhaps parsers generated by yacc+lex. But even parsers can be
 8319     fixed to at least call the wrappers mentioned above, if not our own
 8320     allocators
 8321     
 8322     Change-Id: Ie6156307b6d2183be9c9aff153afb7598974f4e4
 8323     updates: bz#1193929
 8324     Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
 8325 
 8326 commit 3566903e03f90e262483a5d53a6c85f0b16ece3a
 8327 Author: Harpreet Kaur <hlalwani@redhat.com>
 8328 Date:   Tue Nov 27 12:17:38 2018 +0530
 8329 
 8330     tests/geo-rep: Add Arbiter volume test case
 8331     
 8332     Added geo-rep regression tests with Arbiter volume.
 8333     
 8334     Fixes: bz#1653565
 8335     
 8336     Change-Id: Id99523c1f1d3d301fbe871aa0641d9ae4ed7b8d7
 8337     Signed-off-by: Harpreet Kaur <hlalwani@redhat.com>
 8338 
 8339 commit bbf1b9090b6b51292afab4af4479ef2d4ca61265
 8340 Author: Amar Tumballi <amarts@redhat.com>
 8341 Date:   Sun Nov 25 11:01:01 2018 +0530
 8342 
 8343     posix: fix memory leak
 8344     
 8345     Direct leak of 609960 byte(s) in 4485 object(s) allocated from:
 8346         #0 0x7f0d719bea50 in __interceptor_calloc (/lib64/libasan.so.5+0xefa50)
 8347         #1 0x7f0d716dc08f in __gf_calloc ../../../libglusterfs/src/mem-pool.c:111
 8348         #2 0x7f0d5d41d9b2 in __posix_get_mdata_xattr ../../../../../xlators/storage/posix/src/posix-metadata.c:240
 8349         #3 0x7f0d5d41dd6b in posix_get_mdata_xattr ../../../../../xlators/storage/posix/src/posix-metadata.c:317
 8350         #4 0x7f0d5d39e855 in posix_fdstat ../../../../../xlators/storage/posix/src/posix-helpers.c:685
 8351         #5 0x7f0d5d3d65ec in posix_create ../../../../../xlators/storage/posix/src/posix-entry-ops.c:2173
 8352     
 8353     Direct leak of 609960 byte(s) in 4485 object(s) allocated from:
 8354         #0 0x7f0d719bea50 in __interceptor_calloc (/lib64/libasan.so.5+0xefa50)
 8355         #1 0x7f0d716dc08f in __gf_calloc ../../../libglusterfs/src/mem-pool.c:111
 8356         #2 0x7f0d5d41ced2 in posix_set_mdata_xattr ../../../../../xlators/storage/posix/src/posix-metadata.c:359
 8357         #3 0x7f0d5d41e70f in posix_set_ctime ../../../../../xlators/storage/posix/src/posix-metadata.c:616
 8358         #4 0x7f0d5d3d662c in posix_create ../../../../../xlators/storage/posix/src/posix-entry-ops.c:2181
 8359     
 8360     We were freeing only the first context in inode during forget, and not the second.
 8361     
 8362     updates: bz#1633930
 8363     Change-Id: Ib61b4453aa3d2039d6ce660f52ef45390539b9db
 8364     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 8365 
 8366 commit 6d69a663497ba2bb90b42eae8384cc57d6e4b283
 8367 Author: Xavi Hernandez <xhernandez@redhat.com>
 8368 Date:   Tue Nov 27 12:21:01 2018 +0100
 8369 
 8370     mem-pool: minor fix and clarification
 8371     
 8372     A comment has been added to pool_destructor() function to explain why
 8373     locks are not needed there. Also, the initialization of 'poison' field
 8374     has been moved inside a locked region for further safety and clarity.
 8375     
 8376     Change-Id: Idbf23bda7f9228d60c644a1bea4b6c2cfc582090
 8377     updates: bz#1193929
 8378     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 8379 
 8380 commit 0a3540293bf2f4e96d79ca0d1baa168712472279
 8381 Author: Shwetha K Acharya <sacharya@redhat.com>
 8382 Date:   Fri Nov 23 17:28:07 2018 +0530
 8383 
 8384     geo-rep: Geo-rep help text issue
 8385     
 8386     Modified Geo-rep help text for better sanity.
 8387     
 8388     Change-Id: I48f4d0fd60c1ffcde753b37416e0c73afd0b5702
 8389     fixes: bz#1652887
 8390     Signed-off-by: Shwetha K Acharya <sacharya@redhat.com>
 8391 
 8392 commit a52d2d704318a930b0a2eb6d92701499fa97e52e
 8393 Author: Atin Mukherjee <amukherj@redhat.com>
 8394 Date:   Thu Nov 22 09:58:52 2018 +0530
 8395 
 8396     glusterd: perform store operation in cleanup lock
 8397     
 8398     All glusterd store operation and cleanup thread should work under a
 8399     critical section to avoid any partial store write.
 8400     
 8401     Change-Id: I4f12e738f597a1f925c87ea2f42565dcf9ecdb9d
 8402     Fixes: bz#1652430
 8403     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 8404 
 8405 commit c7eb1883bea6e72a72908b2e2966d4893d47db16
 8406 Author: Sunny Kumar <sunkumar@redhat.com>
 8407 Date:   Fri Nov 23 12:23:05 2018 +0530
 8408 
 8409     glusterd : fix high sev coverity issue
 8410     
 8411     This patch fixes CID : 1174824 : RESOURCE_LEAK
 8412     
 8413     Change-Id: I59d2d6ebc1fa3d7ebe0b97c7dbe3c5539128522a
 8414     updates: bz#789278
 8415     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 8416 
 8417 commit 01f3358501672e7c0fa8ae1f749f060af29bcd69
 8418 Author: Yaniv Kaul <ykaul@redhat.com>
 8419 Date:   Sun Nov 25 12:04:50 2018 +0200
 8420 
 8421     libglusterfs/src/dict.c : consistent initialization of parameters.
 8422     
 8423     Some were assigned NULL, for no good reason, some were assigned proper
 8424     initial value. Made them all consistent, as much as possible, to be
 8425     assigned reasonable initial values.
 8426     No expected functional changes (and I also assume the compiler
 8427     already did most of this work behind the scenes anyway, so no
 8428     performance implications either).
 8429     
 8430     Compile-tested only!
 8431     
 8432     updates: bz#1193929
 8433     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 8434     
 8435     Change-Id: I2bc0d4f2221124b5f9ef6150c86b7259074e7013
 8436 
 8437 commit b2a50989822c135c2e4cb84ad7ad400957a49d10
 8438 Author: Niels de Vos <ndevos@redhat.com>
 8439 Date:   Tue Nov 13 12:53:17 2018 +0100
 8440 
 8441     build: add option to compile with ThreadSanitizer
 8442     
 8443     ThreadSanitizer is a debugging tool that can detect threads that race
 8444     for data modifications. These races can result in data corruption and
 8445     are difficult to track and fix.
 8446     
 8447     Change-Id: Ibbdaf17c811e30e79cd5bdcf9cd9ff2d0cdb2abb
 8448     URL: https://github.com/google/sanitizers/wiki/ThreadSanitizerCppManual
 8449     Reported-by: Yaniv Kaul <ykaul@redhat.com>
 8450     Fixes: #543
 8451     Signed-off-by: Niels de Vos <ndevos@redhat.com>
 8452 
 8453 commit fc9889d0373c323aab0d93f8ca31d2d8151bd041
 8454 Author: Ravishankar N <ravishankar@redhat.com>
 8455 Date:   Fri Oct 26 17:51:38 2018 +0530
 8456 
 8457     glfsheal: add a '--nolog' flag
 8458     
 8459     ....and if set, change the log level to GF_LOG_NONE. This is useful for
 8460     monitoring applications which invoke the heal info set of commands once
 8461     every minute, leading to un-necessary glfsheal* logs in
 8462     /var/log/glusterfs/. For example, we can now run
 8463     
 8464     `gluster volume heal <VOLNAME> info --nolog`
 8465     `gluster volume heal <VOLNAME> info split-brain --nolog` etc.
 8466     
 8467     The default log level is still retained at GF_LOG_INFO.
 8468     
 8469     The patch also changes glfsheal internally to accept '--xml' instead of 'xml'.
 8470     Note: The --nolog flag is *not* displayed in the help anywhere, for the
 8471     sake of consistency in how the other flags are not displayed anywhere in
 8472     the help.
 8473     
 8474     fixes: bz#1643519
 8475     Change-Id: Ia08b6aa6e4a0548379db7e313dd4411ebc66f206
 8476     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
 8477 
 8478 commit b346c84ad5f090c3d99dc1cb80f24ca10747a085
 8479 Author: Ashish Pandey <aspandey@redhat.com>
 8480 Date:   Fri Aug 31 14:20:23 2018 +0530
 8481 
 8482     cluster/afr: Add test for thin-arbiter feature
 8483     
 8484     Test : Check success/failure of write fop while
 8485     different bricks/ta process are down.
 8486     
 8487     Change-Id: I3c376935df93ebf1f794c964bd19bc1280d91c59
 8488     updates: bz#1624332
 8489     Signed-off-by: Ashish Pandey <aspandey@redhat.com>
 8490 
 8491 commit a2829d1151cabd13764e271a07568b9c90261a76
 8492 Author: Susant Palai <spalai@redhat.com>
 8493 Date:   Fri Aug 3 17:43:28 2018 +0530
 8494 
 8495     coding-standard: memset before string functions similar to sprintf/snprintf etc
 8496     
 8497     String functions like sprintf/snprintf/vprintf etc terminates the string with a
 8498     null character. This makes meset redundant and also incurs some performance
 8499     penalty.
 8500     
 8501     Also added a comment about using GF_MALLOC instead of GF_CALLOC for allocating
 8502     buffer for strings, targeted by such functions.
 8503     
 8504     Fixes: bz#1193929
 8505     Change-Id: I4f40d4fd5342b70983936119606c6c9f352c303c
 8506     Signed-off-by: Susant Palai <spalai@redhat.com>
 8507 
 8508 commit c97938e0508d991f44fd6a02216ecae120bfcac8
 8509 Author: root <Shwetha Acharya>
 8510 Date:   Fri Nov 23 19:30:01 2018 +0530
 8511 
 8512     geo-rep: add no-verify and ssh-port options for create command
 8513     
 8514     Added the missing options and their description.
 8515     
 8516     fixes: bz#1652911
 8517     Change-Id: Id9135953bc6d32e645f004e1c77449899ca3d67c
 8518     Signed-off-by: root <Shwetha Acharya>
 8519 
 8520 commit 31f85a4c7b20d9e594109f933f97127ba43029a8
 8521 Author: Xavi Hernandez <xhernandez@redhat.com>
 8522 Date:   Wed Nov 7 18:54:23 2018 +0100
 8523 
 8524     libglusterfs: fix memory corruption caused by per-thread mem pools
 8525     
 8526     There was a race in the per-thread memory pool management that could lead
 8527     to memory corruption. The race appeared when the following sequence of
 8528     events happened:
 8529     
 8530     1. Thread T1 allocated a memory object O1 from its own private pool P1
 8531     2. T1 terminates and P1 is marked to be destroyed
 8532     3. The mem-sweeper thread is woken up and scans all private pools
 8533     4. It detects that P1 needs to be destroyed and starts releasing the
 8534        objects from hot and cold lists.
 8535     5. Thread T2 releases O1
 8536     6. O1 is added to the hot list of P1
 8537     
 8538     The problem happens because steps 4 and 6 are protected by diferent locks,
 8539     so they can run concurrently. This means that both T1 and T2 are modifying
 8540     the same list at the same time, potentially causing corruption.
 8541     
 8542     This patch fixes the problem using the following approach:
 8543     
 8544     1. When an object is released, it's only returned to the hot list of the
 8545        corresponding memory pool if it's not marked to be destroyed. Otherwise
 8546        the memory is released to the system.
 8547     2. Object release and mem-sweeper thread synchronize access to the deletion
 8548        mark of the memory pool to prevent simultaneous access to the list.
 8549     
 8550     Some other minor adjustments are made to reduce the lengths of the locked
 8551     regions.
 8552     
 8553     Fixes: bz#1651165
 8554     Change-Id: I63be3893f92096e57f54a6150e0461340084ddde
 8555     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 8556 
 8557 commit b2776b1ec1ad845ba568c4439bca3b57cc4d2592
 8558 Author: Kotresh HR <khiremat@redhat.com>
 8559 Date:   Tue Nov 20 12:36:55 2018 +0530
 8560 
 8561     geo-rep: Fix permissions with non-root setup
 8562     
 8563     Problem:
 8564     In non-root fail-over/fail-back(FO/FB), when slave is
 8565     promoted as master, the session goes to 'Faulty'
 8566     
 8567     Cause:
 8568     The command 'gluster-mountbroker <mountbroker-root> <group>'
 8569     is run as a pre-requisite on slave in non-root setup.
 8570     It modifies the permission and group of following required
 8571     directories and files recursively
 8572     
 8573       [1] /var/lib/glusterd/geo-replication
 8574       [2] /var/log/glusterfs/geo-replication-slaves
 8575     
 8576     In a normal setup, this is executed on slave node and hence
 8577     doing it recursively is not an issue on [1]. But when original
 8578     master becomes slave in non-root during FO/FB, it contains
 8579     ssh public keys and modifying permissions on them causes
 8580     geo-rep to fail with incorrect permissions.
 8581     
 8582     Fix:
 8583     Don't do permission change recursively. Fix permissions for
 8584     required files.
 8585     
 8586     fixes: bz#1651498
 8587     Change-Id: I68a744644842e3b00abc26c95c06f123aa78361d
 8588     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 8589 
 8590 commit ad35193718a99494ab1b852ca4cbdf054f73de88
 8591 Author: Soumya Koduri <skoduri@redhat.com>
 8592 Date:   Sun Nov 18 23:38:08 2018 +0530
 8593 
 8594     gfapi: Offload callback notifications to synctask
 8595     
 8596     Upcall notifications are received from server via epoll
 8597     and same thread is used to forward these notifications
 8598     to the application. This may lead to deadlock and hang
 8599     in the following scenario.
 8600     
 8601     Consider if as part of handling these callbacks,
 8602     application has to do some operations which involve
 8603     sending I/Os to gfapi stack which inturn have to wait for
 8604     epoll threads to receive repsonse. Thus this may lead to
 8605     deadlock if all the epoll threads are waiting to complete
 8606     these callback notifications.
 8607     
 8608     To address it, instead of using epoll thread itself,
 8609     make use of synctask to send those notificaitons to the
 8610     application.
 8611     
 8612     Change-Id: If614e0d09246e4279b9d1f40d883a32a39c8fd90
 8613     updates: bz#1648768
 8614     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 8615 
 8616 commit 0967f3dd0d73263c843d76e1837aa78c3fbf14c1
 8617 Author: Mohammed Rafi KC <rkavunga@redhat.com>
 8618 Date:   Fri Nov 23 11:31:38 2018 +0530
 8619 
 8620     coverity: Fix coverity issues
 8621     
 8622     This patch fixes coverity
 8623     CID : 1356537
 8624       https://scan6.coverity.com/reports.htm#v42907/p10714/fileInstanceId=87389108&defectInstanceId=26791927&mergedDefectId=1356537
 8625     CID : 1395666
 8626       https://scan6.coverity.com/reports.htm#v42907/p10714/fileInstanceId=87389187&defectInstanceId=26791932&mergedDefectId=1395666
 8627     CID : 1351707
 8628       https://scan6.coverity.com/reports.htm#v42907/p10714/fileInstanceId=87389027&defectInstanceId=26791973&mergedDefectId=1351707
 8629     CID : 1396910
 8630       https://scan6.coverity.com/reports.htm#v42907/p10714/fileInstanceId=87389027&defectInstanceId=26791973&mergedDefectId=13596910
 8631     
 8632     Change-Id: I8094981a741f4d61b083c05a98df23dcf5b022a2
 8633     updates: bz#789278
 8634     Signed-off-by: Mohammed Rafi KC <rkavunga@redhat.com>
 8635 
 8636 commit 6821cec47e2b7d37b1cda90a89bff12b2ac026ec
 8637 Author: Atin Mukherjee <amukherj@redhat.com>
 8638 Date:   Wed Nov 21 07:49:07 2018 +0530
 8639 
 8640     glusterd: make max-bricks-per-process default value to 250
 8641     
 8642     Change-Id: Ia2c6a10e2b76a4aa8bd4ea97e5ce33bdc813942e
 8643     Fixes: bz#1652118
 8644     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 8645 
 8646 commit 2097f5ef15c809ed4d8465c9fb26916c6d661bce
 8647 Author: Sanju Rakonde <srakonde@redhat.com>
 8648 Date:   Mon Nov 19 15:13:02 2018 +0530
 8649 
 8650     glusterd: volume status should not show NFS daemon
 8651     
 8652     With commit 8ad159b2a7, bz#1511339 got reintroduced.
 8653     
 8654     fixes: bz#1511339
 8655     
 8656     Change-Id: I1e34c1fc60c6dda04af25d123f1ca40964cadb7a
 8657     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 8658 
 8659 commit 988bbd966d4332f5b1074aea7e5467a6399bac83
 8660 Author: Mohammed Rafi KC <rkavunga@redhat.com>
 8661 Date:   Fri Nov 23 12:38:44 2018 +0530
 8662 
 8663     meta/coverity: Fix coverity in meta xlator
 8664     
 8665     CID : 1356536 Macro compares unsigned to 0
 8666       https://scan6.coverity.com/reports.htm#v42907/p10714/fileInstanceId=87389645&defectInstanceId=26791929&mergedDefectId=1356536
 8667     CID : 1356535 Macro compares unsigned to 0
 8668       https://scan6.coverity.com/reports.htm#v42907/p10714/fileInstanceId=87389645&defectInstanceId=26791926&mergedDefectId=1356535
 8669     
 8670     Change-Id: Icb1c9035589fa871c7223f767adbe0dfa672a9b4
 8671     updates: bz#789278
 8672     Signed-off-by: Mohammed Rafi KC <rkavunga@redhat.com>
 8673 
 8674 commit 424978302c7d5d0e03e54a6284c250e951ca694d
 8675 Author: Poornima G <pgurusid@redhat.com>
 8676 Date:   Thu Nov 22 21:41:37 2018 +0530
 8677 
 8678     Coverity fix for calling risky function - fscanf
 8679     
 8680     fscanf with %s reads a word, there is no restriction on the length
 8681     of that word, and the caller is required to pass a sufficiently
 8682     large buffer for storing thw word. If the input word exceeds the
 8683     buffer size, it will cause buffer overflow.
 8684     
 8685     To fix this, use fscanf with width parameter. Width specifies
 8686     the maximum number of characters to be read in the current reading
 8687     operation.
 8688     
 8689     Change-Id: If250abf5eb637b9fc2a79047e3599f83254cd4e5
 8690     updates: bz#1193929
 8691     Signed-off-by: Poornima G <pgurusid@redhat.com>
 8692 
 8693 commit a0fdc9202ca37dccab937e166c8ee696d049e08f
 8694 Author: Xavi Hernandez <xhernandez@redhat.com>
 8695 Date:   Fri Nov 23 10:37:40 2018 +0100
 8696 
 8697     core: create a constant for default network timeout
 8698     
 8699     A new constant named GF_NETWORK_TIMEOUT has been defined and all
 8700     references to the hard-coded timeout of 42 seconds have been
 8701     replaced with this constant.
 8702     
 8703     Change-Id: Id30f5ce4f1230f9288d9e300538624bcf1a6da27
 8704     fixes: bz#1652852
 8705     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
 8706 
 8707 commit 7e691da0d37745e12d2f3e132545db82f05ea8f6
 8708 Author: Pranith Kumar K <pkarampu@redhat.com>
 8709 Date:   Fri Nov 16 11:18:27 2018 +0530
 8710 
 8711     features/changelog: Fix dictionary-leak
 8712     
 8713     rpcsvc_transport_unix_options_build() allocates the dictionary and sets
 8714     it in the options variable, there is no need to allocate it before passing
 8715     to the function in changelog_rpc_server_init()
 8716     
 8717     updates bz#1650403
 8718     Change-Id: I5b4caedba6bda706dee723a2be34c3981bf971fb
 8719     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
 8720 
 8721 commit c0983c3532e2da04c8c8f63df2717c154e0724db
 8722 Author: Susant Palai <spalai@redhat.com>
 8723 Date:   Wed Nov 21 11:45:23 2018 +0530
 8724 
 8725     dht: fix buffer overflow
 8726     
 8727     CID: 1382461
 8728     
 8729     Change-Id: I25b5edf7fd5fdaa52079d0348ebb7f5de9f11503
 8730     updates: bz#789278
 8731     Signed-off-by: Susant Palai <spalai@redhat.com>
 8732 
 8733 commit da81c9938ec77401738999cf52ebf2fef695ba4d
 8734 Author: Milind Changire <mchangir@redhat.com>
 8735 Date:   Thu Nov 22 09:56:55 2018 +0530
 8736 
 8737     rpc: stop log flooding about ENODATA
 8738     
 8739     Problem:
 8740     Logs are being flooded with ENODATA errors.
 8741     This log was introduced via https://review.gluster.org/c/glusterfs/+/21481
 8742     
 8743     Solution:
 8744     Add a flag to remember that ENODATA error was logged for a
 8745     socket/transport
 8746     
 8747     Change-Id: I54c10b87e46c2592339cc8b966333b8d08331750
 8748     fixes: bz#1650389
 8749     Signed-off-by: Milind Changire <mchangir@redhat.com>
 8750 
 8751 commit 12285e76e8f93ef6f6aa2611869bd1f40955dc9e
 8752 Author: Mohit Agrawal <moagrawal@redhat.com>
 8753 Date:   Wed Nov 21 19:02:42 2018 +0530
 8754 
 8755     core: Resolve memory leak at the time of graph init
 8756     
 8757     Problem: In the commit 751b14f2bfd40e08ad395ccd98c6eb0a41ac4e91
 8758              one code path is missed to avoid leak at the time
 8759              of calling graph init
 8760     
 8761     Solution: Before destroying graph call xlator fini to avoid leak for
 8762               server-side xlators those call init during graph init
 8763     
 8764     Credit: Pranith Kumar Karampuri
 8765     fixes: bz#1651431
 8766     
 8767     Change-Id: I6e7cff0d792ab9d954524b28667e94f2d9ec19a2
 8768     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 8769 
 8770 commit 429843eb9e3685d11479c58b8bc6416889a01ee3
 8771 Author: Shwetha Acharya <sacharya@gmail.com>
 8772 Date:   Wed Nov 21 12:24:00 2018 +0530
 8773 
 8774     geo-rep: validate the config checkpoint date format
 8775     
 8776     Added a strlen check to ensure that the format is (Y-m-d H:M:S).
 8777     
 8778     Change-Id: I8844aaa33418d43ffe2320c4a05eb1eddd306903
 8779     updates: bz#1651584
 8780     Signed-off-by: Shwetha Acharya <sacharya@gmail.com>
 8781 
 8782 commit ada43dc22d158dcc8998bb35497f885951b52159
 8783 Author: Shwetha Acharya <sacharya@redhat.com>
 8784 Date:   Thu Nov 15 15:24:22 2018 +0530
 8785 
 8786     protocol/client: unchecked return value
 8787     
 8788     Problem: In client_process_response_v2, value returned from
 8789     function client_post_common_dict is not checked for errors
 8790     before being used.
 8791     
 8792     Solution: Added a check condition to resolve the issue.
 8793     
 8794     CID: 1390020
 8795     
 8796     Change-Id: I4d297f33c8dd332ae5f6f21667a4871133b2b570
 8797     updates: bz#789278
 8798     Signed-off-by: Shwetha Acharya <sacharya@redhat.com>
 8799 
 8800 commit 650b5c5271abeb0eef59ac1ebb0ea3c8c37023ab
 8801 Author: Raghavendra Bhat <raghavendra@redhat.com>
 8802 Date:   Wed Oct 31 16:31:35 2018 -0400
 8803 
 8804     snapview-server: close the gfapi handle present in a forgotten inode
 8805     
 8806     Currently, the snapdaemon can reach the lru limit of the inode table
 8807     and start sending forgets on the inodes that are least recently used.
 8808     snapview-server maintains the mapping between the domain of the
 8809     snapdaemon and the gfapi instance which it uses to access the snapshots
 8810     via a handle that is stored in the inode context of snapdaemon's inode.
 8811     The handle is glfs_h_object structure which itself points to the actual
 8812     inode present in the gfapi world.
 8813     
 8814     But, when snapview-server receives forget on a inode, it deleted the
 8815     inode context without actually closing the handle it had obtained to
 8816     map the inode from snapdaemon to the inode in gfapi world.
 8817     
 8818     So, this change makes sure that, the handle is closed as part of the
 8819     inode forget. And this closure of the handle will result in gfapi
 8820     world receiving forget and unref on its corresponding inode. But
 8821     care must be taken to ensure before the closure to ensure that
 8822     the gfapi instance from which the handle came from, is still valid
 8823     and not destroyed. Otherwise, sending a forget downward to the gfapi
 8824     world might result in the access of freed pointers. Hence, the
 8825     snapview-server xlator first checks whether that gfapi instance is
 8826     still there or not and then proceeds with closure of the handle.
 8827     
 8828     Change-Id: Ia7bb45112d0c651cc95f2e54d33d925dbd6955b0
 8829     fixes: bz#1646728
 8830     Signed-off-by: Raghavendra Bhat <raghavendra@redhat.com>
 8831 
 8832 commit 751b14f2bfd40e08ad395ccd98c6eb0a41ac4e91
 8833 Author: Mohit Agrawal <moagrawal@redhat.com>
 8834 Date:   Fri Nov 16 09:25:02 2018 +0530
 8835 
 8836     core: Resolve memory leak at the time of graph init
 8837     
 8838     Problem: Memory leak when graph init fails as during volfile
 8839              exchange between brick and glusterd
 8840     
 8841     Solution: Fix the error code path in glusterfs_graph_init
 8842     
 8843     Change-Id: If62bee61283fccb7fd60abc6ea217cfac12358fa
 8844     fixes: bz#1651431
 8845     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 8846 
 8847 commit fbfceb9f2ee240737b329de8aa5b13562f99fddb
 8848 Author: Iraj Jamali <ijamali@redhat.com>
 8849 Date:   Tue Oct 23 14:18:40 2018 +0530
 8850 
 8851     glusterfsd: NULL pointer dereferencing clang fix
 8852     
 8853     Added a check to avoid clang warning
 8854     
 8855     Updates: bz#1622665
 8856     
 8857     Change-Id: If9ae4e4f2ae13c85dad0e87d8dd6930dde74bbda
 8858     Signed-off-by: Iraj Jamali <ijamali@redhat.com>
 8859 
 8860 commit 4e0fab473a4ef8792e332efc83456bf63b540435
 8861 Author: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
 8862 Date:   Mon Nov 19 10:26:54 2018 +0530
 8863 
 8864     core: Retrieving the value of "client.ssl" option, before SSL is set up, fails
 8865     
 8866     Added a default value "off" for (client|server).ssl
 8867     
 8868     fixes: bz#1651059
 8869     Change-Id: I3d9c80093ac471d9d770fbd6c67f945491cf726e
 8870     Signed-off-by: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
 8871 
 8872 commit 5231d3d165135f7aae8716069c67788555332136
 8873 Author: Yaniv Kaul <ykaul@redhat.com>
 8874 Date:   Fri Nov 16 12:32:22 2018 +0200
 8875 
 8876     libglusterfs/src/common-utils.h: faster mem_0filled() function
 8877     
 8878     based on the amusing discussion @ https://rusty.ozlabs.org/?p=560
 8879     
 8880     Compile-tested only!
 8881     
 8882     updates: bz#1193929
 8883     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 8884     
 8885     Change-Id: I1cac54067eb44801b216d5620fc5ee2c89befdd0
 8886 
 8887 commit bdf8d8684fa4814cf055350db38f53618c5de6ae
 8888 Author: Kaleb S. KEITHLEY <kkeithle@redhat.com>
 8889 Date:   Fri Nov 16 12:46:49 2018 -0500
 8890 
 8891     core: fix strncpy, coverity annotation
 8892     
 8893     For added fun, coverity is not smart enough to detect that the
 8894     strncpy() is safe, and for extra laughs, using coverity annotations
 8895     doesn't do anything either; but we're adding them anyway, along
 8896     with marking the BUFFER_SIZE_WARNINGS as false positives on
 8897     scan.coverity.com.
 8898     
 8899     Change-Id: If7fa157eca565842109f32fee0399ac183b19ec7
 8900     updates: bz#1193929
 8901     Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
 8902 
 8903 commit 60689bd26f0c9cb9e761f2cf8c5f2b90e39884eb
 8904 Author: Vijay Bellur <vbellur@redhat.com>
 8905 Date:   Fri Nov 16 11:25:16 2018 +0530
 8906 
 8907     features/locks: Move logging outside of a locked region
 8908     
 8909     In pl_metalk(), logging was being done in a synchronized region.
 8910     Moving the log out of the synchronized region to avoid other threads
 8911     from being blocked on the lock.
 8912     
 8913     Thanks to Yaniv Kaul for pointing this out.
 8914     
 8915     Change-Id: I0cb39fb23ae7c798ca9c42c390500491aa8e622b
 8916     updates: bz#1644758
 8917     Signed-off-by: Vijay Bellur <vbellur@redhat.com>
 8918 
 8919 commit 5664c58089127ba5214a7d922eed1aa1b4932402
 8920 Author: N Balachandran <nbalacha@redhat.com>
 8921 Date:   Fri Nov 9 17:06:22 2018 +0530
 8922 
 8923     cluster/dht: sync brick root perms on add brick
 8924     
 8925     If a single brick is added to the volume and the
 8926     newly added brick is the first to respond to a
 8927     dht_revalidate call, its stbuf will not be merged
 8928     into local->stbuf as the brick does not yet have
 8929     a layout. The is_permission_different check therefore
 8930     fails to detect that an attr heal is required as it
 8931     only considers the stbuf values from existing bricks.
 8932     To fix this, merge all stbuf values into local->stbuf
 8933     and use local->prebuf to store the correct directory
 8934     attributes.
 8935     
 8936     Change-Id: Ic9e8b04a1ab9ed1248b6b056e3450bbafe32e1bc
 8937     fixes: bz#1648298
 8938     Signed-off-by: N Balachandran <nbalacha@redhat.com>
 8939 
 8940 commit 5af9799ab7c6185a852c48ef6b8655d294a50d2d
 8941 Author: Sunny Kumar <sunkumar@redhat.com>
 8942 Date:   Thu Aug 30 14:48:51 2018 +0530
 8943 
 8944     cli : fix coverity issue in cli-xml-output.c
 8945     
 8946     This patch fixes 1124659, 1241480 and 1274196.
 8947     
 8948     Change-Id: Ib89f53b8e34fcc47184d08ad57f2ee32fd00d78c
 8949     updates: bz#789278
 8950     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 8951 
 8952 commit b4faa9e7a25bdf0582f8b0fd69aa1381c307a61e
 8953 Author: Mohammed Rafi KC <rkavunga@redhat.com>
 8954 Date:   Thu Nov 15 13:18:36 2018 +0530
 8955 
 8956     glusterd/mux: Optimize brick disconnect handler code
 8957     
 8958     Removed unnecessary iteration during brick disconnect
 8959     handler when multiplex is enabled.
 8960     
 8961     Change-Id: I62dd3337b7e7da085da5d76aaae206e0b0edff9f
 8962     fixes: bz#1650115
 8963     Signed-off-by: Mohammed Rafi KC <rkavunga@redhat.com>
 8964 
 8965 commit c2e758b54d8a3f778e3e63db0000bb8b63de9b25
 8966 Author: Soumya Koduri <skoduri@redhat.com>
 8967 Date:   Mon Oct 29 14:41:26 2018 +0530
 8968 
 8969     lease: Treat unlk request as noop if lease not found
 8970     
 8971     When the glusterfs server recalls the lease, it expects
 8972     client to flush data and unlock the lease. If not it sets
 8973     a timer (starting from the time it sends RECALL request) and post
 8974     timeout, it revokes it.
 8975     
 8976     Here we could have a race where in client did send UNLK
 8977     lease request but because of network delay it may have reached
 8978     after server revokes it. To handle such situations, treat
 8979     such requests as noop and return sucesss.
 8980     
 8981     Change-Id: I166402d10273f4f115ff04030ecbc14676a01663
 8982     updates: bz#1648768
 8983     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 8984 
 8985 commit b7aec05aa965202ab73120acf0da4c32fe0cf16c
 8986 Author: Soumya Koduri <skoduri@redhat.com>
 8987 Date:   Sun Nov 11 22:53:07 2018 +0530
 8988 
 8989     leases: Fix incorrect inode_ref/unrefs
 8990     
 8991     From testing & code-reading, found couple of places where
 8992     we incorrectly unref the inode resulting in use_after_free
 8993     crash or ref leaks. This patch addresses couple of them.
 8994     
 8995     a) When we try to grant the very first lease for a inode,
 8996     inode_ref is taken in __add_lease. This ref should be active
 8997     till all the leases granted to that inode are released (i.e,
 8998     till lease_cnt > 0). In addition even after lease_cnt becomes '0',
 8999     the inode should be active till all the blocked fops are resumed.
 9000     
 9001     Hence release this ref, after resuming all those fops. To avoid
 9002     granting new leases while resuming those fops, defined a new boolean
 9003     (blocked_fops_resuming) to flag it in the lease_ctx.
 9004     
 9005     b) 'new_lease_inode' which creates new lease_inode_entry and
 9006     takes ref on inode, is used while adding that entry to
 9007     client_list and recall_list.
 9008     
 9009     Use its counter function '__destroy_lease_inode' which does unref
 9010     while removing those entries from those lists.
 9011     
 9012     c) inode ref is also taken when added to timer->data. Unref the same
 9013     after processing timer->data.
 9014     
 9015     Change-Id: Ie77c78ff4a971e0d9a66178597fb34faf39205fb
 9016     updates: bz#1648768
 9017     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 9018 
 9019 commit 04be5463b20ababc29942fa967017e763d0ae2af
 9020 Author: Soumya Koduri <skoduri@redhat.com>
 9021 Date:   Sat Nov 10 05:55:29 2018 -0500
 9022 
 9023     gfapi: Send fop_attr dict as part of syncop_open
 9024     
 9025     Leaseid (stored in thread locals) is sent to server via xdata.
 9026     This dict variable is set but not passed as argument in glfs_h_open().
 9027     Fixed the same.
 9028     
 9029     Change-Id: Idd2f8a0ec184b4b6b1ad1e6e5d75df551c36a96d
 9030     updates: bz#1648768
 9031     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 9032 
 9033 commit 818e60ac9269c49396480a151c049042af5b2929
 9034 Author: Mohit Agrawal <moagrawal@redhat.com>
 9035 Date:   Tue Nov 13 08:12:06 2018 +0530
 9036 
 9037     glusterd: fix Resource leak coverity issue
 9038     
 9039     Problem: In commit bcf1e8b07491b48c5372924dbbbad5b8391c6d81 code
 9040              was missed to free path return by function search_brick_path_from_proc
 9041     
 9042     This patch fixes CID:
 9043     1396668: Resource leak
 9044     
 9045     Change-Id: I4888c071c1058023c7e138a8bcb94ec97305fadf
 9046     fixes: bz#1646892
 9047     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 9048 
 9049 commit 8204c072ee80c5901ac38e66e346a2ba7da31892
 9050 Author: Shwetha Acharya <sacharya@redhat.com>
 9051 Date:   Wed Nov 14 16:28:03 2018 +0530
 9052 
 9053     cli: cluster.server-quorum-type help text is missing
 9054     
 9055     Added a default value "none" and additional description.
 9056     
 9057     Change-Id: I3a5c06f8ec1e502fc399860e4b5cb835102cd71d
 9058     Updates: bz#1608512
 9059     Signed-off-by: Shwetha Acharya <sacharya@redhat.com>
 9060 
 9061 commit fda594875c4cdb2a22e27aa13f5c66bee032ccb5
 9062 Author: Soumya Koduri <skoduri@redhat.com>
 9063 Date:   Fri Nov 9 02:29:52 2018 -0500
 9064 
 9065     afr: open_ftruncate_cbk should read fd from local->cont.open struct
 9066     
 9067     afr_open stores the fd as part of its local->cont.open struct
 9068     but when it calls ftruncate (if open flags contain O_TRUNC), the
 9069     corresponding cbk function (afr_ open_ftruncate_cbk) is
 9070     incorrectly referencing uninitialized local->fd. This patch fixes
 9071     the same.
 9072     
 9073     Change-Id: Icbdedbd1b8cfea11d8f41b6e5c4cb4b44d989aba
 9074     updates: bz#1648687
 9075     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
 9076 
 9077 commit 4a4ba1f2eb0be2da9e88560246730af87788295f
 9078 Author: Kaleb S. KEITHLE <kkeithle@redhat.com>
 9079 Date:   Fri Nov 9 09:45:05 2018 -0500
 9080 
 9081     core: fix strncpy warnings
 9082     
 9083     Since gcc-8.2.x (fedora-28 or so) gcc has been emitting warnings
 9084     about buggy use of strncpy.
 9085     
 9086     Most uses that gcc warns about in our sources are exactly backwards;
 9087     the 'limit' or len is the strlen/size of the _source param_, giving
 9088     exactly zero protection against overruns. (Which was, after all, one
 9089     of the points of using strncpy in the first place.)
 9090     
 9091     IOW, many warnings are about uses that look approximately like this:
 9092         ...
 9093         char dest[8];
 9094         char src[] = "this is a string longer than eight chars";
 9095         ...
 9096         strncpy (dest, src, sizeof(src)); /* boom */
 9097         ...
 9098     
 9099     The len/limit should be sizeof(dest).
 9100     
 9101     Note: the above example has a definite over-run. In our source the
 9102     overrun is typically only theoretical (but possibly exploitable.)
 9103     
 9104     Also strncpy doesn't null-terminate on truncation; snprintf does; prefer
 9105     snprintf over strncpy.
 9106     
 9107     Mildly surprising that coverity doesn't warn/isn't warning about this.
 9108     
 9109     Change-Id: I022d5c6346a751e181ad44d9a099531c1172626e
 9110     updates: bz#1193929
 9111     Signed-off-by: Kaleb S. KEITHLE <kkeithle@redhat.com>
 9112 
 9113 commit 76906af9d70fc784de728a70e3dbda62dece5e10
 9114 Author: Kaleb S. KEITHLE <kkeithle@redhat.com>
 9115 Date:   Fri Nov 9 11:27:11 2018 -0500
 9116 
 9117     core: fix strncpy warnings
 9118     
 9119     Since gcc-8.2.x (fedora-28 or so) gcc has been emitting warnings
 9120     about buggy use of strncpy.
 9121     
 9122     e.g.
 9123       warning: ‘strncpy’ output truncated before terminating nul
 9124       copying as many bytes from a string as its length
 9125     and
 9126       warning: ‘strncpy’ specified bound depends on the length of the
 9127       source argument
 9128     
 9129     Since we're copying string fragments and explicitly null terminating
 9130     use memcpy to silence the warning
 9131     
 9132     Change-Id: I413d84b5f4157f15c99e9af3e154ce594d5bcdc1
 9133     updates: bz#1193929
 9134     Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
 9135 
 9136 commit 8a5adc811637b147e6e42d952498bc99e3d670bb
 9137 Author: Yaniv Kaul <ykaul@redhat.com>
 9138 Date:   Thu Nov 8 08:25:00 2018 +0200
 9139 
 9140     rpc/rpc-lib/src/rpc-clnt.c: unlock sooner, if we fail to connect.
 9141     
 9142     Previously, we did not go to unlock the mutex if we failed
 9143     to connect. This patch fixes it.
 9144     
 9145     Compile-tested only!
 9146     
 9147     updates: bz#1193929
 9148     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 9149     
 9150     Change-Id: I0fcca066a2601dba6bc3e9eb8b3c9fc757ffe4db
 9151 
 9152 commit 013c8295d7cd7f5ad52bcf2585936ed320b8bbc7
 9153 Author: Pranith Kumar K <pkarampu@redhat.com>
 9154 Date:   Wed Nov 14 15:26:30 2018 +0530
 9155 
 9156     glusterfsd: Make io-stats xlator search position independent
 9157     
 9158     Problem:
 9159     glusterfsd notify trigger for profile info command expects
 9160     decompounder xlator to have the name of the brick and its
 9161     immediate child to be io-stats xlator. In GD2 decompounder
 9162     xlator doesn't exist, so this is preventing io-stats xlator
 9163     from receiving the profile info collection notification.
 9164     
 9165     Fix:
 9166     search for io-stats xlator below server xlator till the first
 9167     instance is found and send notification for it.
 9168     
 9169     fixes bz#1649709
 9170     Change-Id: I92a1d9019bbd5546050ab43d50d571c444e027ed
 9171     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
 9172 
 9173 commit 4c17065a02fb32acda32aac64da93ea5d326a7d5
 9174 Author: Susant Palai <spalai@redhat.com>
 9175 Date:   Tue Nov 13 12:13:03 2018 +0530
 9176 
 9177     posix: Fix null pointer dererfence
 9178     
 9179     CID: 1124799 1214618
 9180     
 9181     Change-Id: Iff05180983fe9600be0a2ce015a137e4efb8f533
 9182     updates: bz#789278
 9183     Signed-off-by: Susant Palai <spalai@redhat.com>
 9184 
 9185 commit 3e20df8674d489fba707079e2b5a58347a3b3928
 9186 Author: Susant Palai <spalai@redhat.com>
 9187 Date:   Thu Nov 8 12:27:07 2018 +0530
 9188 
 9189     feature/shard: Fix coverity issue - Use after free
 9190     
 9191     CID: 1325524
 9192     
 9193     Change-Id: Ic713285bd9e76d8e4dc1815aa471087d279008b5
 9194     updates: bz#789278
 9195     Signed-off-by: Susant Palai <spalai@redhat.com>
 9196 
 9197 commit 142b840fe14c3b4281a0eaeede918c3e121de84b
 9198 Author: Sanju Rakonde <srakonde@redhat.com>
 9199 Date:   Tue Nov 13 10:56:05 2018 +0530
 9200 
 9201     glusterd/snapshot: copy-paste typo
 9202     
 9203     Change-Id: Ice3663084b2d0a0a10d75ad68fe5fe494f928250
 9204     updates: bz#1193929
 9205     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 9206 
 9207 commit f1a826e1b38d5ecaf9470c61198c4d4362b4c29a
 9208 Author: Susant Palai <spalai@redhat.com>
 9209 Date:   Thu Nov 8 14:47:27 2018 +0530
 9210 
 9211     features/ctime: Fix Coverity issue
 9212     
 9213     CID : 1394632 Dereference after null check
 9214     
 9215     Change-Id: If0bef48b070935854e9d2988393dba07c9001cd2
 9216     updates: bz#789278
 9217     Signed-off-by: Susant Palai <spalai@redhat.com>
 9218 
 9219 commit 54a5f0a07817098134219aea9414b029013927f3
 9220 Author: Prashanth Pai <ppai@redhat.com>
 9221 Date:   Sat Oct 27 16:32:05 2018 +0530
 9222 
 9223     glusterfsd: Make each multiplexed brick sign in
 9224     
 9225     NOTE: This change will be consumed by brick mux implementation of
 9226     glusterd2 only. No corresponsing change in glusterd1 has been made.
 9227     
 9228     When a multiplexed brick process is shutting down, it sends sign out
 9229     requests to glusterd for all bricks that it contains. However, sign in
 9230     request is only sent for a single brick. Consequently, glusterd has to
 9231     use some tricky means to repopulate pmap registry with information of
 9232     multiplexed bricks during glusterd restart.
 9233     
 9234     This change makes each multiplexed brick send a sign in request to
 9235     glusterd2 which ensures that glusterd2 can easily repopulate pmap
 9236     registry with port information.
 9237     
 9238     As a bonus, sign in request will now also contain PID of the brick
 9239     sending the request so that glusterd2 can rely on this instead of
 9240     having to read/manage brick pidfiles.
 9241     
 9242     Change-Id: I409501515bd9a28ee7a960faca080e97cabe5858
 9243     updates: bz#1193929
 9244     Signed-off-by: Prashanth Pai <ppai@redhat.com>
 9245 
 9246 commit 28b4096fe484f545ae578dcef040a69acf6205cd
 9247 Author: Kinglong Mee <kinglongmee@gmail.com>
 9248 Date:   Sat Sep 29 11:32:17 2018 +0800
 9249 
 9250     md-cache: request ACLs related xattrs when mode change
 9251     
 9252     If glusterfs client changes mode, ACLs related xattrs may changed too.
 9253     
 9254     Change-Id: Ifa5bff1f77ab7b176e54da4607ea9c1e66fc5588
 9255     Updates: bz#1634220
 9256     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
 9257 
 9258 commit 9ce088e947d0867ded1bd969d9b22624a59f178b
 9259 Author: Atin Mukherjee <amukherj@redhat.com>
 9260 Date:   Fri Nov 9 12:44:20 2018 +0530
 9261 
 9262     glusterd: don't call svcs_reconfigure for all volumes during op-version bump up
 9263     
 9264     With having large number of volumes in a configuration having
 9265     svcs_reconfigure () called for every volumes makes cluster.op-version bump up to
 9266     time out. Instead call svcs_reconfigure () only once.
 9267     
 9268     Change-Id: Ic6a133d77113c992a4dbeaf7f5663b7ffcbb0ae9
 9269     Fixes: bz#1648237
 9270     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 9271 
 9272 commit 96ae7dd2262a3ac72aea14c69f7404a8f8435a5c
 9273 Author: Sunny Kumar <sunkumar@redhat.com>
 9274 Date:   Thu Nov 8 14:14:04 2018 +0530
 9275 
 9276     quiesce : fix coverity issue
 9277     
 9278     This patch fixes 1388996 : Dereference null return value
 9279     
 9280     updates: bz#789278
 9281     
 9282     Change-Id: I9351ae43736efd2f9abe4e1888dba89b6b3e1fe3
 9283     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 9284 
 9285 commit f68f9106087a3dc4e6da88a09285ac723096d7e9
 9286 Author: Vijay Bellur <vbellur@redhat.com>
 9287 Date:   Wed Nov 7 06:31:19 2018 -0800
 9288 
 9289     features/changelog: Avoid a potential null dereference
 9290     
 9291     Addresses CID 1396292
 9292     
 9293     Change-Id: I9141502a12fb3e18c04d07c79da87a5ebb2cfc23
 9294     updates: bz#789278
 9295     Signed-off-by: Vijay Bellur <vbellur@redhat.com>
 9296 
 9297 commit bcf1e8b07491b48c5372924dbbbad5b8391c6d81
 9298 Author: Mohit Agrawal <moagrawal@redhat.com>
 9299 Date:   Tue Nov 6 16:23:51 2018 +0530
 9300 
 9301     core: Portmap entries showing stale brick entries when bricks are down
 9302     
 9303     Problem: pmap is showing stale brick entries after down the brick
 9304              because of glusterd_brick_rpc_notify call gf_is_service_running
 9305              before call pmap_registry_remove to ensure about brick instance.
 9306     
 9307     Solutiom: 1) Change the condition in gf_is_pid_running to ensure about
 9308                  process existence, use open instead of access to achieve
 9309                  the same
 9310               2) Call search_brick_path_from_proc in __glusterd_brick_rpc_notify
 9311                  along with gf_is_service_running
 9312     
 9313     Change-Id: Ia663ac61c01fdee6c12f47c0300cdf93f19b6a19
 9314     fixes: bz#1646892
 9315     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
 9316 
 9317 commit e134ef2493e8517a6f341416c11230c2bb5bcd6c
 9318 Author: Yaniv Kaul <ykaul@redhat.com>
 9319 Date:   Thu Nov 8 07:50:48 2018 +0200
 9320 
 9321     rpc-clnt*: several code changes to reduce conn lock times
 9322     
 9323     Assorted code refactoring to reduce lock contention.
 9324     Also, took the opportunity to reorder structs more properly.
 9325     Removed dead code.
 9326     
 9327     Hopefully, no functional changes.
 9328     Compile-tested only!
 9329     
 9330     updates: bz#1193929
 9331     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 9332     
 9333     Change-Id: I5de6124ad071fd5e2c31832364d602b5f6d6fe28
 9334 
 9335 commit cac2dba48bf8029b2b0421850fcc4598e33569f6
 9336 Author: Yaniv Kaul <ykaul@redhat.com>
 9337 Date:   Sun Oct 21 03:55:04 2018 +0300
 9338 
 9339     libglusterfs multiple files: remove dead initilization
 9340     
 9341     Per newer GCC releases and clang-scan, some trivial
 9342     dead initialization (values that were set but were never
 9343     read) were removed.
 9344     
 9345     Compile-tested only!
 9346     
 9347     updates: bz#1193929
 9348     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 9349     
 9350     Change-Id: Ia9959b2ff87d2e9cb46864e68ffe7dccb984db34
 9351 
 9352 commit db28fc7a35b784a4ca6a361961081f93e968cfcb
 9353 Author: Ravishankar N <ravishankar@redhat.com>
 9354 Date:   Thu Nov 8 16:03:23 2018 +0530
 9355 
 9356     cli: avoid unnecessary strtail for geo rep config.
 9357     
 9358     Found while looking at this function for another patch.
 9359     
 9360     Compile Tested Only!
 9361     
 9362     Updates bz#1193929
 9363     Change-Id: I46a9e95bf4d6609bc122edf86418659369258abe
 9364     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
 9365 
 9366 commit cefdd02776d204744a13215029f1c3fe024283e4
 9367 Author: Kotresh HR <khiremat@redhat.com>
 9368 Date:   Fri Nov 2 09:08:42 2018 +0530
 9369 
 9370     ctime: Enable ctime feature by default
 9371     
 9372     This patch does following.
 9373     
 9374     1. Enable ctime feature by default.
 9375     
 9376     2. Earlier, to enable the ctime feature, two options
 9377        needed to be enabled
 9378          a. gluster vol set <volname> utime on
 9379          b. gluster vol set <volname> ctime on
 9380     
 9381        This is inconvenient from the usability point of
 9382        view.  Hence changed it to following single option
 9383     
 9384          a. gluster vol set <volname> ctime on
 9385     
 9386     fixes: bz#1624724
 9387     Change-Id: I04af0e5de1ea6126c58a06ba8a26e22f9f06344e
 9388     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 9389 
 9390 commit 185106a574646bdc2d4ec50756c52db61ad14d98
 9391 Author: Atin Mukherjee <amukherj@redhat.com>
 9392 Date:   Tue Nov 6 21:35:36 2018 +0530
 9393 
 9394     cli: add a warning/confirmation message in peer detach code path
 9395     
 9396     On a multi node cluster if one of the node is detached which had active
 9397     clients mounted through the same server address, this can cause all the
 9398     clients to loose any volfile changes. This is due to the lack of infra
 9399     in glusterd to let client know the list of IPs and attempt to connect to
 9400     other active nodes as failback. Such framework does exist in GD2 but not
 9401     in GD1.
 9402     
 9403     This patch ensures to take a preventive measure to have a warning
 9404     message thrown to user to ensure all such connected clients are
 9405     remounted through a different IP.
 9406     
 9407     Change-Id: I740b01868abbd75bf0a609cfaf00114d4d78aa96
 9408     Fixes: bz#1647074
 9409     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
 9410 
 9411 commit 6d4cd8ce6c0d88d331ffed97c51d3061a3900561
 9412 Author: Kinglong Mee <kinglongmee@gmail.com>
 9413 Date:   Thu Nov 8 10:21:29 2018 +0800
 9414 
 9415     gfapi: fix bad dict setting of lease-id
 9416     
 9417     lease_id is a 16 bits opaque data, copying it by gf_strdup is wrong.
 9418     
 9419     Invalid read of size 2
 9420        at 0x483FA2F: memmove (vg_replace_strmem.c:1270)
 9421        by 0xE2EF6FB: ??? (in /usr/lib64/libtirpc.so.3.0.0)
 9422        by 0xE2EE047: xdr_opaque (in /usr/lib64/libtirpc.so.3.0.0)
 9423        by 0x107A97DC: xdr_gfx_value (glusterfs4-xdr.c:207)
 9424        by 0x107A98C0: xdr_gfx_dict_pair (glusterfs4-xdr.c:321)
 9425        by 0xE2EF35E: xdr_array (in /usr/lib64/libtirpc.so.3.0.0)
 9426        by 0x107A9A89: xdr_gfx_dict (glusterfs4-xdr.c:335)
 9427        by 0x107AA97B: xdr_gfx_write_req (glusterfs4-xdr.c:897)
 9428        by 0x107A181E: xdr_serialize_generic (xdr-generic.c:25)
 9429        by 0x231044A2: client_submit_request (client.c:205)
 9430        by 0x2314D3C1: client4_0_writev (client-rpc-fops_v2.c:3863)
 9431        by 0x230FD5FA: client_writev (client.c:956)
 9432      Address 0xad659e18 is 72 bytes inside a block of size 73 alloc'd
 9433        at 0x483880B: malloc (vg_replace_malloc.c:299)
 9434        by 0x106BA7EC: __gf_malloc (mem-pool.c:136)
 9435        by 0x1064521E: gf_strndup (mem-pool.h:166)
 9436        by 0x1064521E: gf_strdup (mem-pool.h:183)
 9437        by 0x1064521E: get_fop_attr_thrd_key (glfs.c:627)
 9438        by 0x1064D8E9: glfs_pwritev@@GFAPI_3.4.0 (glfs-fops.c:1154)
 9439        by 0x10610C0C: glusterfs_write2 (handle.c:2092)
 9440        by 0x54D30C: mdcache_write2 (mdcache_file.c:647)
 9441        by 0x48A3FC: nfs4_write (nfs4_op_write.c:459)
 9442        by 0x48A44D: nfs4_op_write (nfs4_op_write.c:487)
 9443        by 0x4634F5: nfs4_Compound (nfs4_Compound.c:947)
 9444        by 0x460155: nfs_rpc_process_request (nfs_worker_thread.c:1329)
 9445        by 0x4608A3: nfs_rpc_valid_NFS (nfs_worker_thread.c:1539)
 9446        by 0x488F12F: svc_vc_decode (svc_vc.c:825)
 9447     
 9448     Updates bz#1647651
 9449     Change-Id: Ib9fff55c897bc43c15036a869888e763df133757
 9450     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
 9451 
 9452 commit bdb4ca184913c82ccf9552298f5d5b597794f2aa
 9453 Author: Sanju Rakonde <srakonde@redhat.com>
 9454 Date:   Tue Nov 6 19:44:16 2018 +0530
 9455 
 9456     glusterd: allow shared-storage to use bricks under glusterd working directory
 9457     
 9458     With commit 44e4db, we are not allowing user to create a volume
 9459     using glusterd's working directory as a brick or any sub directory
 9460     under glusterd's working directory as a brick.This has broken
 9461     shared-storage since the volume "gluster-shared-storage" is
 9462     created using the bricks under glusterd's working directory.
 9463     
 9464     With this patch, we let the "gluster-shared-storage" volume
 9465     to use bricks under glusterd's working directory.
 9466     
 9467     fixes: bz#1647029
 9468     Change-Id: Ifcbcf4576eea12cf46f199dea287b29bd3ec3bfd
 9469     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 9470 
 9471 commit 3056419608d5e1835d41612e09b56511d0f9a101
 9472 Author: ShyamsundarR <srangana@redhat.com>
 9473 Date:   Wed Nov 7 15:17:55 2018 -0500
 9474 
 9475     coverity: ignore tainted access reported in gf_free
 9476     
 9477     Earlier commit had the annotation incorrect, and also did not
 9478     wrap the sanitization in a separate function. (see commit 39a1db1)
 9479     
 9480     The issues are corrected in this patch, and also a coverity
 9481     stand alone run has been tested to ensure the annotations are
 9482     respected by coverity.
 9483     
 9484     Change-Id: I4a93b6981e2ff4bba9a29e590b17da248931c8ae
 9485     Updates: bz#789278
 9486     Signed-off-by: ShyamsundarR <srangana@redhat.com>
 9487 
 9488 commit a907e468e724c32b9833ce59806fc215c7122d63
 9489 Author: Amar Tumballi <amarts@redhat.com>
 9490 Date:   Fri Aug 10 15:57:50 2018 +0530
 9491 
 9492     bd: remove from the build
 9493     
 9494     Based on the proposal to remove few features as they are not
 9495     actively maintained [1], removed BD (block device) translator
 9496     from the build.
 9497     
 9498     [1] - https://lists.gluster.org/pipermail/gluster-users/2018-July/034400.html
 9499     
 9500     Updates: bz#1635688
 9501     Change-Id: Ia96db406c58a7aef355dde6bc33523bb2492b1a9
 9502     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 9503 
 9504 commit 8f82c1165871e43de945ba0ed3fdaaf0d68aeef3
 9505 Author: Vijay Bellur <vbellur@redhat.com>
 9506 Date:   Tue Nov 6 10:12:10 2018 -0800
 9507 
 9508     features/locks:Use pthread_mutex_unlock() instead of pthread_mutex_lock()
 9509     
 9510     Fixes CID 1396581
 9511     
 9512     Change-Id: Ic04091b5783a75d8e1e605a9c1c28b77fea048d3
 9513     updates: bz#789278
 9514     Signed-off-by: Vijay Bellur <vbellur@redhat.com>
 9515 
 9516 commit c3fcff9ccbfcec1be242fd5cf210c9995586b078
 9517 Author: Amar Tumballi <amarts@redhat.com>
 9518 Date:   Wed Oct 3 17:13:09 2018 +0530
 9519 
 9520     glupy: remove from the build
 9521     
 9522     Based on the proposal to remove few features as they are not
 9523     actively maintained [1], removing 'glupy' translator from the
 9524     build.
 9525     
 9526     [1] https://lists.gluster.org/pipermail/gluster-users/2018-July/034400.html
 9527     
 9528     This patch aims at clearing the translator from build and tests.
 9529     A followup is needed to remove the code from repository.
 9530     
 9531     Updates: bz#1642810
 9532     Change-Id: I41d0c1956330c3bbca62c540ccf9ab01bbf3a092
 9533     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 9534 
 9535 commit e78682bb7c2e40b7f818efdcd56aca459b9dbb03
 9536 Author: Amar Tumballi <amarts@redhat.com>
 9537 Date:   Fri Nov 2 10:39:58 2018 +0530
 9538 
 9539     xlators/experimental: remove from the build
 9540     
 9541     Based on the proposal to remove few features as they are not
 9542     actively maintained [1], removing all experimental translators
 9543     from the build.
 9544     
 9545     [1] https://lists.gluster.org/pipermail/gluster-users/2018-July/034400.html
 9546     
 9547     Note that as followup patch, there would be a patch to remove the code.
 9548     
 9549     Updates: bz#1635688
 9550     Change-Id: I8ebc256517feb37fc7580104e8bebe27d047f959
 9551     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 9552 
 9553 commit ee630e250fdc0081ae58c078ee5f5500561984df
 9554 Author: Hu Jianfei <hujianfei@cmss.chinamobile.com>
 9555 Date:   Tue Nov 6 06:47:08 2018 -0500
 9556 
 9557     glusterfsd: Do not process GLUSTERD_NODE_STATUS if graph is not ready
 9558     
 9559     Otherwise, gnfs will crash if we try to get nfs clients status in
 9560     following situation. Also see commit 2f9e555f.
 9561     
 9562     Reproducible Steps:
 9563     1. systemctl restart glusterd; gluster volume status rep
 9564     2. systemctl restart glusterd; gluster volume status rep nfs clients
 9565     
 9566     step 1 works ok, but step 2 will lead localhost gnfs crash with
 9567     certain probability.
 9568     
 9569     /lib64/libglusterfs.so.0(+0x270f0)[0x7effb6c7b0f0]
 9570     /lib64/libglusterfs.so.0(gf_print_trace+0x334)[0x7effb6c854a4]
 9571     /lib64/libc.so.6(+0x35270)[0x7effb52e7270]
 9572     /usr/sbin/glusterfs(glusterfs_handle_node_status+0x155)[0x7effb7196905]
 9573     /lib64/libglusterfs.so.0(+0x63f40)[0x7effb6cb7f40]
 9574     /lib64/libc.so.6(+0x46d40)[0x7effb52f8d40]
 9575     
 9576     Updates: bz#1646869
 9577     
 9578     Change-Id: Ia4cb009f821d32b2d18ba48d3467cc81a4b07747
 9579     Signed-off-by: Xie Changlong <xiechanglong@cmss.chinamobile.com>
 9580     Signed-off-by: Hu Jianfei <hujianfei@cmss.chinamobile.com>
 9581 
 9582 commit d945c44c6289eadcda805f728fcc638586658c37
 9583 Author: Pranith Kumar K <pkarampu@redhat.com>
 9584 Date:   Tue Nov 6 21:27:33 2018 +0530
 9585 
 9586     cluster/afr: s/uuid_is_null/gf_uuid_is_null
 9587     
 9588     Updates bz#1193929
 9589     Change-Id: I1b312dabffac7e101df8ce15557527fd28a2c61f
 9590     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
 9591 
 9592 commit d76611fbba18d3120ac59f8f127981d0c950962a
 9593 Author: Yaniv Kaul <ykaul@redhat.com>
 9594 Date:   Tue Nov 6 18:18:30 2018 +0200
 9595 
 9596     libglusterfs/src/iobuf.c: don't forget to unlock a mutex
 9597     
 9598     commit ed83a4ee7b73e6b04694d1ac11ed25d2983ac943 changed locking
 9599     order and forgot to unlock in a negative path (when index was -1).
 9600     Coverity caught it (thanks!) as  CID 1396581:  Program hangs  (LOCK)
 9601     
 9602     Note: I'm unlocking before logging the failure. I think it's the right
 9603     order - logging can take a while (especially if your disk is slow).
 9604     
 9605     Compile-tested only!
 9606     
 9607     updates: bz#1193929
 9608     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 9609     
 9610     Change-Id: I82ac241edf1d511bf6807cf9c46c538ab9f4acc4
 9611 
 9612 commit bab025b08e63afd28cba6a3e2c5e18474904dcd3
 9613 Author: Amar Tumballi <amarts@redhat.com>
 9614 Date:   Tue Nov 6 15:58:45 2018 +0530
 9615 
 9616     tests/interrupt.t: remove 'stripe' volume type
 9617     
 9618     Merged the patch which introduced this testcase after the
 9619     'remove stripe' patch got merged, and hence the confusion.
 9620     
 9621     Updates: bz#1193929
 9622     Change-Id: Ia08552debb111292caf14e51ea6a27334fe5c788
 9623     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 9624 
 9625 commit 9777662406319422450989db104d5a588e52104d
 9626 Author: Kinglong Mee <kinglongmee@gmail.com>
 9627 Date:   Mon Oct 15 15:41:23 2018 +0800
 9628 
 9629     md-cache: new option "cache-glusterfs-acl" for virtual glusterfs ACLs
 9630     
 9631     Change-Id: I020ab08dba48f13cf7b8908e96280f1e92e9b9db
 9632     Updates: bz#1634220
 9633     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
 9634 
 9635 commit 5f19d8231cedf72af554d6f5e9c2636b1586ec16
 9636 Author: Kinglong Mee <kinglongmee@gmail.com>
 9637 Date:   Sat Sep 29 11:54:07 2018 +0800
 9638 
 9639     md-cache: request cached xattrs at getxattr/fgetxattr
 9640     
 9641     Change-Id: I8e3ad961164815683776850e3a5fd4f510003690
 9642     Updates: bz#1634220
 9643     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
 9644 
 9645 commit 7be4f21f257f23d8e4f2fd57aefa8736cae4cdbf
 9646 Author: Kinglong Mee <kinglongmee@gmail.com>
 9647 Date:   Sat Sep 29 11:45:11 2018 +0800
 9648 
 9649     md-cache: extends xa_time when previous attributes equals cached attributes
 9650     
 9651     Some operations like read/write only update iatt and ia_time,
 9652     without any operion request xattrs from glusterfsd,
 9653     the xa_time is timeout before ia_time always.
 9654     
 9655     This patch updates xa_time when update ia_ttime.
 9656     
 9657     Change-Id: I77e3984f38c1c4dbebfde9729b8117fbacde9674
 9658     Updates: bz#1634220
 9659     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
 9660 
 9661 commit 93e9b4c167f582234e08e2608fc844bdf02fd507
 9662 Author: Kinglong Mee <kinglongmee@gmail.com>
 9663 Date:   Mon Oct 15 16:15:17 2018 +0800
 9664 
 9665     md-cache: remove xattr setting after new file created
 9666     
 9667     Fops of creating file does not request cached xattrs,
 9668     the xattr in reply is not cached xattrs.
 9669     
 9670     Change-Id: Iab2db686e92466e72cfee8ac494e851d797c10b3
 9671     Updates: bz#1634220
 9672     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
 9673 
 9674 commit 40318205bfcf75c6eee1c4c18f103260a77a7886
 9675 Author: Sanju Rakonde <srakonde@redhat.com>
 9676 Date:   Mon Nov 5 11:28:46 2018 +0530
 9677 
 9678     glusterd: initialise caps inside #ifdef HAVE_BD_XLATOR block
 9679     
 9680     Note: The problem is seen when we disable bd xlator.
 9681     
 9682     Problem: When we create a volume, volume info file is having
 9683     caps value as 15 in nodes which hosts bricks for that volume.
 9684     Remainig nodes in cluster are not having caps field. When
 9685     glusterd is restarted, peers are going into rejected state,
 9686     because of this mismacth in configuration files.
 9687     
 9688     Cause: In glusterd_op_create_volume(), we initialise caps
 9689     value as 15 in the beginning. Later, we check whether brick
 9690     belongs to the same node or not. If brick doesn't belong to
 9691     the same node, caps value will be set to 0. If brick belongs
 9692     to the same node, we will change the caps value inside
 9693     
 9694     Solution: If brick doesn't belongs to the same node,caps is
 9695     set to 0 and if brick belongs to same brick caps value is
 9696     changed inside #ifdef HAVE_BD_XLATOR block. So, to have the
 9697     consistency across the cluster, we need to initialise caps
 9698     value inside #ifdef HAVE_BD_XLATOR block, only when brick
 9699     belongs to the same node.
 9700     
 9701     fixes: bz#1645986
 9702     Change-Id: I2648f420b21d6e69e7c38b0f4736d41e0f15a7f5
 9703     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
 9704 
 9705 commit eb75b04fe15b8b7c0fadbafe9b2ed0c8ce87def8
 9706 Author: Amar Tumballi <amarts@redhat.com>
 9707 Date:   Thu Sep 20 23:19:39 2018 +0530
 9708 
 9709     doc: add a new contributor 'hints' guide
 9710     
 9711     Keeping this in glusterfs Repo for glusterfs specific improvements.
 9712     There would be a link to this page, and some more similar pages from
 9713     docs.gluster.org
 9714     
 9715     updates: bz#1193929
 9716     Change-Id: Ie98670cc32e62951f1b1880b1ae39f5cc2b45329
 9717     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 9718 
 9719 commit c2c70552188ee1b15bb748b4f2272062505c7696
 9720 Author: Susant Palai <spalai@redhat.com>
 9721 Date:   Fri Nov 2 09:23:42 2018 +0530
 9722 
 9723     lock: Do not allow meta-lock count to be more than one
 9724     
 9725     In the current scheme of glusterfs where lock migration is
 9726     experimental, (ideally) the rebalance process which is migrating
 9727     the file should request for a metalock. Hence, the metalock count
 9728     should not be more than one for an inode. In future, if there is a
 9729     need for meta-lock from other clients, this patch can be reverted.
 9730     
 9731     Since pl_metalk is called as part of setxattr operation, any client
 9732     process(non-rebalance) residing outside trusted network can exhaust
 9733     memory of the server node by issuing setxattr repetitively on the
 9734     metalock key. The current patch makes sure that more than
 9735     one metalock cannot be granted on an inode.
 9736     
 9737     Fixes CVE-2018-14660
 9738     
 9739     updates: bz#1644758
 9740     Change-Id: Ie1e697766388718804a9551bc58351808fe71069
 9741     Signed-off-by: Susant Palai <spalai@redhat.com>
 9742 
 9743 commit 4c6b063463ae48b3509ff8e66cd391f8637a86af
 9744 Author: Csaba Henk <csaba@redhat.com>
 9745 Date:   Tue Aug 21 12:44:54 2018 +0200
 9746 
 9747     fuse: diagnostic FLUSH interrupt
 9748     
 9749     We add dummy interrupt handling for the FLUSH
 9750     fuse message. It can be enabled by the
 9751     "--fuse-flush-handle-interrupt" hidden command line
 9752     option, or "-ofuse-flush-handle-interrupt=yes"
 9753     mount option.
 9754     
 9755     It serves no other than diagnostic & demonstational
 9756     purposes -- to exercise the interrupt handling framework
 9757     a bit and to give an usage example.
 9758     
 9759     Documentation is also provided that showcases interrupt
 9760     handling via FLUSH.
 9761     
 9762     Change-Id: I522f1e798501d06b74ac3592a5f73c1ab0590c60
 9763     updates: #465
 9764     Signed-off-by: Csaba Henk <csaba@redhat.com>
 9765 
 9766 commit bceb9f25671e65cb2f0987a84370055e7c36900f
 9767 Author: Csaba Henk <csaba@redhat.com>
 9768 Date:   Thu Aug 9 11:46:33 2018 +0200
 9769 
 9770     fuse: interrupt handling framework
 9771     
 9772     - add sub-framework to send timed responses to kernel
 9773     - add interrupt handler queue
 9774     - implement INTERRUPT
 9775     
 9776     fuse_interrupt looks up handlers for interrupted messages
 9777     in the queue. If found, it invokes the handler function.
 9778     Else responds with EAGAIN with a delay.
 9779     
 9780     See spec at
 9781     
 9782     https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/filesystems/fuse.txt?h=v4.17#n148
 9783     
 9784     and explanation in comments.
 9785     
 9786     Change-Id: I1a79d3679b31f36e14b4ac8f60b7f2c1ea2badfb
 9787     updates: #465
 9788     Signed-off-by: Csaba Henk <csaba@redhat.com>
 9789 
 9790 commit 258db7178663305c26aa0068d4f72159ff0bc3ba
 9791 Author: Yaniv Kaul <ykaul@redhat.com>
 9792 Date:   Sun Nov 4 16:17:27 2018 +0200
 9793 
 9794     libglusterfs/src/iobuf.c: where possible, pass the index parameter
 9795     
 9796     Don't 'calculate' again where it can be passed.
 9797     If possible, do not perform under lock.
 9798     
 9799     Also remove some NULL checks, assuming they were done by the callers.
 9800     Left a remark for each such change.
 9801     
 9802     Compile-tested only!
 9803     
 9804     updates: bz#1193929
 9805     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 9806     
 9807     Change-Id: Ia5c2851506da3388cb2d4445334c58881e2c4416
 9808 
 9809 commit ed83a4ee7b73e6b04694d1ac11ed25d2983ac943
 9810 Author: Yaniv Kaul <ykaul@redhat.com>
 9811 Date:   Sun Nov 4 13:47:25 2018 +0200
 9812 
 9813     libglusterfs/src/iobuf.c: take the pool lock once in new pool
 9814     
 9815     When creating a new pool, take the pool lock once and create
 9816     all arenas, instead of taking and releasing for each arena.
 9817     
 9818     Compile-tested only!
 9819     
 9820     updates: bz#1193929
 9821     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 9822     
 9823     Change-Id: I7daa39de960e47e66a32ecab724cf3a61ccdc01b
 9824 
 9825 commit ba52abc6931baecb73d690b289f8feb32205424f
 9826 Author: Yaniv Kaul <ykaul@redhat.com>
 9827 Date:   Sun Nov 4 11:00:11 2018 +0200
 9828 
 9829     libglusterfs/src/iobuf.c: remove some if statements
 9830     
 9831     Small code refactoring to remove some if statements
 9832     in several functions. No functional changes expected.
 9833     
 9834     Compile-tested only!
 9835     
 9836     updates: bz#1193929
 9837     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
 9838     
 9839     Change-Id: If9f8d5d53c9688fb994b6d690aea66f65fa01c55
 9840 
 9841 commit d2b745319334a1025b9e47f55928033b8d1c7c46
 9842 Author: Amar Tumballi <amarts@redhat.com>
 9843 Date:   Fri Nov 2 10:39:18 2018 +0530
 9844 
 9845     logging: create parent dir if not available
 9846     
 9847     As glusterfs logging uses different directory than /var/log
 9848     (ie, /var/log/glusterfs), there is a chance it may not be
 9849     present when starting glusterfs. Create parent dir if it
 9850     doesn't exist.
 9851     
 9852     Updates: bz#1193929
 9853     Change-Id: I8d6f7e5a608ba53258b14617f5d103d1e98b95c1
 9854     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 9855 
 9856 commit 3c6cf9a4a1b46cab2dc53c1ee0afca0fe993102e
 9857 Author: Kotresh HR <khiremat@redhat.com>
 9858 Date:   Mon Nov 5 11:46:41 2018 +0530
 9859 
 9860     geo-rep: Fix traceback with symlink metadata sync
 9861     
 9862     While syncing metadata, 'os.chmod', 'os.chown',
 9863     'os.utime' should be used without de-reference.
 9864     But python supports only 'os.chown' without
 9865     de-reference. That's mostly because Linux
 9866     doesn't support 'chmod' on symlink file itself
 9867     but it does support 'chown'.
 9868     
 9869     So while syncing metadata ops, if it's symlink
 9870     we should only sync 'chown' and not do 'chmod'
 9871     and 'utime'. It will lead to tracebacks with
 9872     errors like EROFS, EPERM, ACCESS, ENOENT.
 9873     All the three errors (EPERM, ACCESS, ENOENT)
 9874     were handled except EROFS. But the way it was
 9875     handled was not fool proof. The operation is
 9876     tried and failure was handled based on the errors.
 9877     All the errors with symlink file for 'chown',
 9878     'utime' had to be passed to safe errors list of
 9879     'errno_wrap'. This patch handles it better by
 9880     avoiding 'chmod' and 'utime' if it's symlink
 9881     file.
 9882     
 9883     fixes: bz#1646104
 9884     Change-Id: Ic354206455cdc7ab2a87d741d81f4efe1f19d77d
 9885     Signed-off-by: Kotresh HR <khiremat@redhat.com>
 9886 
 9887 commit 74e8328d3f6901d6ba38a313965fe910c8411324
 9888 Author: Amar Tumballi <amarts@redhat.com>
 9889 Date:   Thu Nov 1 07:25:25 2018 +0530
 9890 
 9891     all: fix the format string exceptions
 9892     
 9893     Currently, there are possibilities in few places, where a user-controlled
 9894     (like filename, program parameter etc) string can be passed as 'fmt' for
 9895     printf(), which can lead to segfault, if the user's string contains '%s',
 9896     '%d' in it.
 9897     
 9898     While fixing it, makes sense to make the explicit check for such issues
 9899     across the codebase, by making the format call properly.
 9900     
 9901     Fixes: CVE-2018-14661
 9902     
 9903     Fixes: bz#1644763
 9904     Change-Id: Ib547293f2d9eb618594cbff0df3b9c800e88bde4
 9905     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 9906 
 9907 commit 2effe3b0d3fa51fc627c970353de2e326bcf1ef2
 9908 Author: Amar Tumballi <amarts@redhat.com>
 9909 Date:   Thu Nov 1 07:16:32 2018 +0530
 9910 
 9911     protocol: remove the option 'verify-volfile-checksum'
 9912     
 9913     'getspec' operation is not used between 'client' and 'server' ever since
 9914     we have off-loaded volfile management to glusterd, ie, at least 7 years.
 9915     
 9916     No reason to keep the dead code! The removed option had no meaning,
 9917     as glusterd didn't provide a way to set (or unset) this option. So,
 9918     no regression should be observed from any of the existing glusterfs
 9919     deployment, supported or unsupported.
 9920     
 9921     Updates: CVE-2018-14653
 9922     
 9923     Updates: bz#1644756
 9924     Change-Id: I4a2e0f673c5bcd4644976a61dbd2d37003a428eb
 9925     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 9926 
 9927 commit 5441fb4196a94d238377c427f400fe5e28ae5d46
 9928 Author: Amar Tumballi <amarts@redhat.com>
 9929 Date:   Thu Nov 1 07:02:11 2018 +0530
 9930 
 9931     server: don't allow '/' in basename
 9932     
 9933     Server stack needs to have all the sort of validation, assuming
 9934     clients can be compromized. It is possible for a compromized
 9935     client to send basenames with paths with '/', and with that
 9936     create files without permission on server. By sanitizing the basename,
 9937     and not allowing anything other than actual directory as the parent
 9938     for any entry creation, we can mitigate the effects of clients
 9939     not able to exploit the server.
 9940     
 9941     Fixes: CVE-2018-14651
 9942     
 9943     Fixes: bz#1644755
 9944     Change-Id: I5dc0da0da2713452ff2b65ac2ddbccf1a267dc20
 9945     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 9946 
 9947 commit acb208221bfe3ac897d8eb4fbe18fa6c8aa9286e
 9948 Author: Amar Tumballi <amarts@redhat.com>
 9949 Date:   Thu Nov 1 07:21:41 2018 +0530
 9950 
 9951     io-stats: prevent taking file dump on server side
 9952     
 9953     By allowing clients taking dump in a file on brick process, we are
 9954     allowing compromised clients to create io-stats dumps on server,
 9955     which can exhaust all the available inodes.
 9956     
 9957     Fixes: CVE-2018-14659
 9958     
 9959     Fixes: bz#1644757
 9960     Change-Id: I32bfde9d4fe646d819a45e627805b928cae2e1ca
 9961     Signed-off-by: Amar Tumballi <amarts@redhat.com>
 9962 
 9963 commit 49f1b76f471f0845a2c7edf69f5629226f73ad27
 9964 Author: Sunny Kumar <sunkumar@redhat.com>
 9965 Date:   Sat Nov 3 23:09:40 2018 +0530
 9966 
 9967     glusterd : fix high sev coverity issue
 9968     
 9969     This patch fixes CID : 1174824 : RESOURCE_LEAK
 9970     
 9971     updates: bz#789278
 9972     
 9973     Change-Id: I2a4f8b508995de112fa16e1094e44ecd4b625312
 9974     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
 9975 
 9976 commit bd1a8fc74ac9322384daab94bf5736cae15ecbfe
 9977 Author: Ravishankar N <ravishankar@redhat.com>
 9978 Date:   Thu Nov 1 21:31:41 2018 +0530
 9979 
 9980     index: prevent arbitrary file creation outside entry-changes folder
 9981     
 9982     Problem:
 9983     A compromised client can set arbitrary values for the GF_XATTROP_ENTRY_IN_KEY
 9984     and GF_XATTROP_ENTRY_OUT_KEY during xattrop fop. These values are
 9985     consumed by index as a filename to be created/deleted according to the key.
 9986     Thus it is possible to create/delete random files even outside the gluster
 9987     volume boundary.
 9988     
 9989     Fix:
 9990     Index expects the filename to be a basename, i.e. it must not contain any
 9991     pathname components like "/" or "../". Enforce this.
 9992     
 9993     Fixes: CVE-2018-14654
 9994     
 9995     Fixes: bz#1644760
 9996     Change-Id: I35f2a39257b5917d17283d0a4f575b92f783f143
 9997     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
 9998 
 9999 commit 643c9d049de970d27b2bfa806c4d47ea6eabefe6
10000 Author: Raghavendra Bhat <raghavendra@redhat.com>
10001 Date:   Tue Oct 16 15:34:20 2018 -0400
10002 
10003     features/snapview-server: change gf_log instances to gf_msg
10004     
10005     Change-Id: Ib8bdf210a896423abcd7413dd4896d424ac0f561
10006     fixes: bz#1626610
10007     Signed-off-by: Raghavendra Bhat <raghavendra@redhat.com>
10008 
10009 commit 029a7e5c1908f53cc4411a8d6cbf6a4e2b207879
10010 Author: Kinglong Mee <kinglongmee@gmail.com>
10011 Date:   Thu Oct 18 17:46:26 2018 +0800
10012 
10013     dht: fix use after free in dht_rmdir_readdirp_cbk
10014     
10015     The frame is freed when linkfile exist in dht_rmdir_is_subvol_empty(),
10016     the following message use the freed local.
10017     
10018     Change-Id: I41191e8bd477f031a2444d5f15e578dc4f086e6b
10019     Updates: bz#1640489
10020     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
10021 
10022 commit aad1e56286c35237decb106434596fb7f081ee53
10023 Author: Atin Mukherjee <amukherj@redhat.com>
10024 Date:   Sat Nov 3 12:13:29 2018 +0530
10025 
10026     glusterd: coverity fixes
10027     
10028     Addresses CIDs : 1124769, 1124852, 1124864, 1134024, 1229876, 1382382
10029     
10030     Also addressed a spurious failure in
10031     tests/bugs/glusterd/df-results-post-replace-brick-operations.t to ensure
10032     post replace brick operation and before triggering 'df' from mount,
10033     client has connection to the newly replaced bricks.
10034     
10035     Change-Id: Ie5d7e02f89400a661491d7fc2a120d6f6a83a1cc
10036     Updates: bz#789278
10037     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
10038 
10039 commit 91cb12be96fb543ee9c0b47bfa8792786286aff7
10040 Author: Sunny Kumar <sunkumar@redhat.com>
10041 Date:   Tue Oct 30 20:22:41 2018 +0530
10042 
10043     posix : fix coverity issues in posix-entry-ops.c
10044     
10045     This patch fixes CID:
10046      1. 1389762 : Explicit null dereferenced
10047      2. 1390462 : Argument cannot be negative
10048      3. 1124552 : Explicit null dereferenced
10049      4. 1356522 : Argument cannot be negative
10050     
10051     updates: bz#789278
10052     Change-Id: I1262f3b4b61a6e65bb34884f46df9a24b8dd03f1
10053     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
10054 
10055 commit a665120d77072cfc8daca88d717055132a178be1
10056 Author: Sunny Kumar <sunkumar@redhat.com>
10057 Date:   Wed Sep 26 00:30:26 2018 +0530
10058 
10059     glusterd : fix high coverity issues glusterd-store.c
10060     
10061     This patch fixes CID 1224305, 1202395, 1202394, 1174824, 1174825, 1174826
10062     and 1202397.
10063     
10064     All issues are of RESOURCE_LEAK type.
10065     
10066     Change-Id: Ie9944d5bdd0bd2788afdb1b6bb329aa3c44b90d0
10067     updates: bz#789278
10068     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
10069 
10070 commit 36e2ec3c88eba7a1bcd8aa6f64e4672349ff1d0c
10071 Author: Kinglong Mee <kinglongmee@gmail.com>
10072 Date:   Thu Oct 18 19:42:48 2018 +0800
10073 
10074     md-cache: removexattr must be send to glusterfsd
10075     
10076     Change-Id: I53a583ec14bce65e8914bc496123dee3abe61f6c
10077     Updates: bz#1634220
10078     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
10079 
10080 commit c2a543ec947ac56f882a9c0a890f49c63dedeaff
10081 Author: Amar Tumballi <amarts@redhat.com>
10082 Date:   Wed Oct 17 23:03:04 2018 +0530
10083 
10084     xlator: add generic option parsing framework
10085     
10086     As an example, and also as an enhancement, added 'log-level'
10087     as a default option to every translator (glusterfs already
10088     support infrastructure to handle xl->loglevel).
10089     
10090     Corresponding infrastructure to add per xlator log-level
10091     is not present in glusterd volume-set. Plan is to get it
10092     sorted out in later patches or in GD2.
10093     
10094     * Why this is needed? - Mainly because we need to only add
10095     different log-level to some xlator to debug few things in a
10096     production system, while not changing overall log-level. This
10097     helps in better debug-ability.
10098     
10099     Updates: bz#1193929
10100     
10101     Change-Id: Ia4098ce39197cd423345b3d31fe8315481681ab8
10102     Signed-off-by: Amar Tumballi <amarts@redhat.com>
10103 
10104 commit 55a6ba56bea9ec0d3316c005300c514ea3ab0e54
10105 Author: Amar Tumballi <amarts@redhat.com>
10106 Date:   Wed Oct 3 17:00:24 2018 +0530
10107 
10108     tiering: remove the translator from build and glusterd
10109     
10110     Based on the proposal to remove few features as they are not
10111     actively maintained [1], removing tier translator from the
10112     build. Also make sure there are no regression tests involving
10113     tiering feature are present.
10114     
10115     [1] https://lists.gluster.org/pipermail/gluster-users/2018-July/034400.html
10116     
10117     Change-Id: I2c177f711f9b54b7b24e1a13525ff3132bd9a9c5
10118     updates: bz#1642807
10119     Signed-off-by: Amar Tumballi <amarts@redhat.com>
10120 
10121 commit 6e8f7bb6ab457cfee42e405243cf4db82a9a56b8
10122 Author: Sanju Rakonde <srakonde@redhat.com>
10123 Date:   Tue Oct 30 16:36:50 2018 +0530
10124 
10125     glusterd: set fsid while performing replace brick
10126     
10127     While performing the replace-brick operation, we should set
10128     fsid value to the new brick.
10129     
10130     fixes: bz#1637196
10131     
10132     Change-Id: I9e9a4962fc0c2f5dff43e4ac11767814a0c0beaf
10133     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
10134 
10135 commit 5d0c8e8ec9b68352cf53f8e430897096e2caf477
10136 Author: Varsha Rao <varao@redhat.com>
10137 Date:   Mon Oct 29 09:53:27 2018 +0530
10138 
10139     posix: Fix coverity issue
10140     
10141     This patch fixes the unchecked return value, coverity issue.
10142     CID: 1391412
10143     
10144     Change-Id: If85f4afdf8c6d37602c62fbf4d7c730e18be81e7
10145     updates: bz#789278
10146     Signed-off-by: Varsha Rao <varao@redhat.com>
10147 
10148 commit 00a5e2a5112971e4d3dca8419f24d878b4199d37
10149 Author: Kotresh HR <khiremat@redhat.com>
10150 Date:   Tue Oct 30 10:56:52 2018 +0530
10151 
10152     posix/ctime: Avoid log flood in posix_update_utime_in_mdata
10153     
10154     posix_update_utime_in_mdata() unconditionally logs an error if
10155     consistent time attributes features is not enabled. This log
10156     does not add any value, prints an incorrect errno & floods
10157     the log file. Hence nuking this log message in this patch.
10158     
10159     fixes: bz#1644129
10160     Change-Id: I9a1f9e7ada3366d2830f18d81f16a1461040092e
10161     Signed-off-by: Kotresh HR <khiremat@redhat.com>
10162 
10163 commit d3ec5f5a089edb68206b5d4a469358867340d4f7
10164 Author: Amar Tumballi <amarts@redhat.com>
10165 Date:   Thu Nov 1 07:08:29 2018 +0530
10166 
10167     glusterd-handshake: prevent a buffer overflow
10168     
10169     as key size in xdr can be anything, it can be bigger than the
10170     'NAME_MAX' allowed in the structure, which can allow for service denial
10171     attacks.
10172     
10173     Fixes: CVE-2018-14653
10174     
10175     Fixes: bz#1644756
10176     Change-Id: I2dc5e99af27ddf44c12c94b07e51adb8674cce80
10177     Signed-off-by: Amar Tumballi <amarts@redhat.com>
10178 
10179 commit 7fac81aeab5805fb2bd719d7489636633bb5e32a
10180 Author: Amar Tumballi <amarts@redhat.com>
10181 Date:   Mon Oct 29 14:16:20 2018 +0530
10182 
10183     mem-pool: change the values to 64bits
10184     
10185     total_allocs of certain type of variables can be 4billion in a
10186     single day depending on load. So, 32 bits for that is not enough.
10187     
10188     Also, size_t is good variable size for one allocation, but the
10189     sum of allocations, should be 64bits to make sure we don't
10190     overflow the variable.
10191     
10192     Updates: bz#1639599
10193     Change-Id: If3b19687f94425e913a0201ae5d73661eda51f06
10194     Signed-off-by: Amar Tumballi <amarts@redhat.com>
10195 
10196 commit 7150c51ad75ccba22045a35fc31e5037612d1ad4
10197 Author: Xavi Hernandez <xhernandez@redhat.com>
10198 Date:   Wed Oct 31 12:26:43 2018 +0100
10199 
10200     cluster/ec: prevent infinite loop in self-heal full
10201     
10202     There was a problem in commit 7f81067 that caused infinite loop when
10203     full heal was triggered.
10204     
10205     The previous commit was made to prevent self-heal to go idle after a
10206     replace brick operation. One of the changes consisted on setting a
10207     flag to force an immediate scan of the dirty directory if a heal on
10208     a directory succeeded (assuming it could have generated newer entries).
10209     
10210     However that change was causing an issue with a full self-heal, since
10211     every time an already healed directory was checked and it returned
10212     suceessfully, it was also setting the flag, forcing self-heal to start
10213     over again.
10214     
10215     This patch fixes this issue by only setting the flag if the heal is not
10216     full. It's assumed that a full self-heal will already traverse all
10217     entries automatically, so there's no need to force a new scan later.
10218     
10219     Change-Id: Id12dbfc04e622b18183e796cc6cc87ccc30a6d55
10220     fixes: bz#1636631
10221     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
10222 
10223 commit d2d3c37fa8efca74e375b8a0dc7fa720c3b84dcc
10224 Author: Harpreet Lalwani <hlalwani@redhat.com>
10225 Date:   Thu Oct 4 16:09:08 2018 +0530
10226 
10227     cluster/dht: NULL pointer dereferencing clang fix
10228     
10229     Dereferencing NUll pointers this,local and stbuf.
10230     
10231     1.Replaced this->name with "dht".
10232     2.Removed GF_VALIDATE_OR_GOTO.
10233     3.Removed the check for "stbuf" and "this".
10234     
10235     Updates: bz#1622665
10236     
10237     Change-Id: Id2fb2270d5ec37b76fa2aae1f1c8dca72dcc728a
10238     Signed-off-by: Harpreet Lalwani <hlalwani@redhat.com>
10239 
10240 commit 9be6bf3d90e3783b3ba559c93d41b933f8d53f03
10241 Author: Ashish Pandey <aspandey@redhat.com>
10242 Date:   Wed Oct 17 15:18:34 2018 +0530
10243 
10244     cluster/ec: Change log level to DEBUG for lookup combine
10245     
10246     As lookup is not a locked fop, we can not trust the
10247     data received in this to be same.
10248     
10249     Changing the log level to DEBUG in case lookup finds any
10250     difference.
10251     
10252     Change-Id: I39499c44688a2455c7c6c69a798762d045d21b39
10253     updates: bz#1640066
10254     BUG: 1640066
10255     Signed-off-by: Ashish Pandey <aspandey@redhat.com>
10256 
10257 commit fdb34014f1a16f7bf022353881e5a213538e96b2
10258 Author: Atin Mukherjee <amukherj@redhat.com>
10259 Date:   Thu Oct 25 12:37:42 2018 +0530
10260 
10261     tests: brick-mux-fd-cleanup.t should be under core directory
10262     
10263     Fixes: bz#1637934
10264     Change-Id: I5f95beab62bd2bdde3bbee94c308b0ad03e94379
10265     Signed-off-by: Atin Mukherjee <amukherj@redhat.com>
10266 
10267 commit 733139551322e49e7e5617356cf96e30780d2749
10268 Author: Amar Tumballi <amarts@redhat.com>
10269 Date:   Wed Oct 3 15:30:10 2018 +0530
10270 
10271     stripe: remove the translator from build and glusterd
10272     
10273     Based on the proposal to remove few features as they are not
10274     actively maintained [1], removing stripe translator from the
10275     build. Also make sure there are no regression tests involving
10276     stripe translator.
10277     
10278     [1] https://lists.gluster.org/pipermail/gluster-users/2018-July/034400.html
10279     
10280     Note that this patch aims at removing the translator from build, and
10281     a followup patch is needed to remove the code from repository.
10282     
10283     Updates: bz#1364707
10284     Change-Id: I235b305338f138e29e9f30cba65bc0dadbebbbd5
10285     Signed-off-by: Amar Tumballi <amarts@redhat.com>
10286 
10287 commit 19775e0445411cca9ddd9d294fd54d0b6fbe6a03
10288 Author: Kotresh HR <khiremat@redhat.com>
10289 Date:   Fri Oct 26 03:45:46 2018 -0400
10290 
10291     geo-rep: Add more intelligence to automatic error handling
10292     
10293     Geo-rep's automatic error handling does gfid conflict
10294     resolution. But if there are ENOENT errors because the
10295     parent is not synced to slave, it doesn' handle them.
10296     This patch adds the intelligence to create missing
10297     parent directories on slave. It can create the missing
10298     directories upto the depth of 10.
10299     
10300     fixes: bz#1643402
10301     Change-Id: Ic97ed1fa5899c087e404d559e04f7963ed7bb54c
10302     Signed-off-by: Kotresh HR <khiremat@redhat.com>
10303 
10304 commit 5987b3388126a3c5e77481913cbaa4142117d19a
10305 Author: Kotresh HR <khiremat@redhat.com>
10306 Date:   Mon Oct 29 18:23:17 2018 +0530
10307 
10308     geo-rep/scripts: Fix traceback in gluster-mountbroker
10309     
10310     When 'gluster-mountbroker status' was issued, it
10311     crashes in a corner case with 'str object has not
10312     attribute get'. Fixed the same.
10313     
10314     fixes: bz#1643929
10315     Signed-off-by: Kotresh HR <khiremat@redhat.com>
10316     Change-Id: Iaf1a937ed0136b3b2058230c75fa89a215d8a5eb
10317 
10318 commit 33e96100e17e9a293db6d63d9d5449d6c2d69376
10319 Author: Kotresh HR <khiremat@redhat.com>
10320 Date:   Mon Oct 29 17:55:28 2018 +0530
10321 
10322     georep: python2 to python3 compat - scheduler
10323     
10324     1. scheduler - Popen
10325     2. syncdutils - corner case on failure
10326     
10327     fixes: bz#1643932
10328     Change-Id: I65af97a244a8790e976acedc2728db6ebbf2ae10
10329     Signed-off-by: Kotresh HR <khiremat@redhat.com>
10330 
10331 commit 6cc573631df28eb357ffb006d1dbfe1bfd60aeba
10332 Author: Mohit Agrawal <moagrawal@redhat.com>
10333 Date:   Tue Oct 30 12:35:59 2018 +0530
10334 
10335     core: Use GF_ATOMIC ops to update inode->nlookup
10336     
10337     fixes: bz#1644164
10338     
10339     Change-Id: I0ac5aff565b3a30d5ff25ec5a3f20e0bda424a5d
10340     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
10341 
10342 commit bae584148761ad98cd3d5c380f8cea1ff83aa8c3
10343 Author: Kotresh HR <khiremat@redhat.com>
10344 Date:   Mon Oct 29 18:08:28 2018 +0530
10345 
10346     cliutils: python2 to python3 compat
10347     
10348     Make Popen py2 and py3 compatiable
10349     
10350     fixes: bz#1643935
10351     Change-Id: Ife34cb38024dcdc0420436e7d76fd208223f9d86
10352     Signed-off-by: Kotresh HR <khiremat@redhat.com>
10353 
10354 commit 0c835893fdce59872103253985d152f4592eea89
10355 Author: Shwetha Acharya <sacharya@redhat.com>
10356 Date:   Tue Oct 23 12:57:45 2018 +0530
10357 
10358     rpc-transport/socket: NULL pointer dereferencing clang fix
10359     
10360     Problem: ctx and res can be NULL.
10361     
10362     Solution: introduced a VALIDATE_OR_GOTO statement, hence removed
10363     the null check for ctx; added a check for res.
10364     
10365     Updates: bz#1622665
10366     
10367     Change-Id: Ifee4c73e260530ab44c0a34c5ff5568f38f92c94
10368     Signed-off-by: Shwetha Acharya <sacharya@redhat.com>
10369 
10370 commit d7fa1a85b1d5213128ec1f58d1e22af2495b9a3e
10371 Author: Harpreet Kaur Lalwani <hlalwani@redhat.com>
10372 Date:   Thu Oct 25 18:48:22 2018 +0530
10373 
10374     core: auth.ssl-allow has no option description
10375     
10376     Added a description for auth.ssl-allow
10377     
10378     Change-Id: I50cd7c738007c3d7a1b333dae62dbb5e46a7ee67
10379     fixes: bz#1643349
10380     Signed-off-by: Harpreet Kaur Lalwani <hlalwani@redhat.com>
10381 
10382 commit 0857d837d0f9350c91f57e1096683b5abf973dcb
10383 Author: Kaleb S. KEITHLEY <kkeithle@redhat.com>
10384 Date:   Fri Oct 26 09:28:59 2018 -0400
10385 
10386     build/packaging: el-X (x > 7) isms
10387     
10388     lvm2(-devel) 2.03.00 no longer has liblvm2app.so. (I expect a
10389     similar change in fedora-30 before too much longer, but for
10390     now fedora-30 still has lvm2 and lvm2-devel 2.02.181
10391     
10392     rpcgen has been removed from glibc-common and unbundled rpcgen
10393     is now required.
10394     
10395     And I guess nobody has ever built rpms with '--without bd' or we
10396     would have discovered the attempted inclusion of .../storage/bd.so
10397     in the rpm when it hadn't actually been built.
10398     
10399     Change-Id: I71e26c3d06af5d329ae89cc249a4ad88664ddf53
10400     updates: bz#1193929
10401     Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
10402 
10403 commit 0f817c7795f115fb67b0973ce0965bcd3de8d196
10404 Author: Amar Tumballi <amarts@redhat.com>
10405 Date:   Fri Oct 12 22:23:17 2018 +0530
10406 
10407     server-protocol: set the frame type to TYPE_FOP
10408     
10409     This will allow proper printing of exact 'fop' type to be logged in
10410     string, not number, during backtraces.
10411     
10412     Considering this was not done on brick processes, we have no easy
10413     way to glance and understand which fops were pending.
10414     
10415     What gets changed:
10416     
10417     After a crash, most of the core-dumps logged were of the form:
10418     ```
10419     pending frames:
10420     frame : type(0) op(18)
10421     frame : type(0) op(18)
10422     frame : type(0) op(28)
10423     ```
10424     would change to
10425     ```
10426     pending frames:
10427     frame : type(1) op(SETXATTR)
10428     frame : type(1) op(SETXATTR)
10429     frame : type(1) op(READDIR)
10430     ```
10431     
10432     updates: bz#1639599
10433     Change-Id: I0e3d2a8dee9cfde7ed0112a948f5213f546efb80
10434     Signed-off-by: Amar Tumballi <amarts@redhat.com>
10435 
10436 commit ff18121945bff394f3234e9f1a9d61ac97d4d493
10437 Author: Kotresh HR <khiremat@redhat.com>
10438 Date:   Thu Oct 25 03:23:56 2018 -0400
10439 
10440     geo-rep: Fix issue in gfid-conflict-resolution
10441     
10442     Problem:
10443     During gfid-conflict-resolution, geo-rep crashes
10444     with 'ValueError: list.remove(x): x not in list'
10445     
10446     Cause and Analysis:
10447     During gfid-conflict-resolution, the entry blob is
10448     passed back to master along with additional
10449     information to verify it's integrity. If everything
10450     looks fine, the entry creation is ignored and is
10451     deleted from the original list.  But it is crashing
10452     during removal of entry from the list saying entry
10453     not in list. The reason is that the stat information
10454     in the entry blob was modified and sent back to
10455     master if present.
10456     
10457     Fix:
10458     Send back the correct stat information for
10459     gfid-conflict-resolution.
10460     
10461     fixes: bz#1642865
10462     Change-Id: I47a6aa60b2a495465aa9314eebcb4085f0b1c4fd
10463     Signed-off-by: Kotresh HR <khiremat@redhat.com>
10464 
10465 commit 196a2258ac33b6369efbf8979d5246e203dddbf2
10466 Author: Milind Changire <mchangir@redhat.com>
10467 Date:   Thu Oct 25 13:05:13 2018 +0530
10468 
10469     transport: log socket closures more verbose
10470     
10471     Problem:
10472     Intentional and unintentional socket closures cannot be identified
10473     
10474     Solution:
10475     Log intentional socket closures with at least INFO log level
10476     
10477     Change-Id: Ic02c882b16ab2193e57f8c3e6c3a82c4fe0f6875
10478     fixes: bz#1642800
10479     Signed-off-by: Milind Changire <mchangir@redhat.com>
10480 
10481 commit c66ea8566d18230ce20b55640b25a06f6f56ec7d
10482 Author: Harpreet Lalwani <hlalwani@redhat.com>
10483 Date:   Tue Oct 23 18:23:53 2018 +0530
10484 
10485     posix: Null pointer dereferencing clang fix
10486     
10487     Added a check for "top"
10488     
10489     Updates: bz#1622665
10490     
10491     Change-Id: I354fdc7150b2f1eb452702ddb653e2d6ed609c10
10492     Signed-off-by: Harpreet Lalwani <hlalwani@redhat.com>
10493 
10494 commit bf5bfa5f2fcd1a73078c289aeac715bd82c366ed
10495 Author: Amar Tumballi <amarts@redhat.com>
10496 Date:   Thu Oct 25 19:48:37 2018 +0530
10497 
10498     statedump: fix clang null dereference error
10499     
10500     ctx->active can be null, and is checked elsewhere in the
10501     same function. In another case, where 'ctx->active' gets
10502     dereferenced, it needs to be validated before the loop
10503     is hit.
10504     
10505     Updates: bz#1622665
10506     Change-Id: I4ec917e96c0756586fc7a74c76848bb9589a0293
10507     Signed-off-by: Amar Tumballi <amarts@redhat.com>
10508 
10509 commit ace454cf407753625acc2d4d090cb529bd13b183
10510 Author: root <root@rhs-srv-17.storage-dev.lab.eng.bos.redhat.com>
10511 Date:   Thu Oct 25 05:47:23 2018 -0400
10512 
10513     afr/lease: Read child nodes from lease structure
10514     
10515     For lease operation, we allocate and store child nodes
10516     data in lease structure. Use the same in afr_lease_cbk()
10517     while checking for the quorum.
10518     
10519     Change-Id: If1fdd5a0798888afd39ad3df57d96487baf9d1e6
10520     updates: #350
10521     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
10522 
10523 commit 0e7929ef0272a95e5d24a23f15de3a0bb88a094c
10524 Author: Milind Changire <mchangir@redhat.com>
10525 Date:   Thu Oct 25 14:03:07 2018 +0530
10526 
10527     glusterd: raise default transport.listen-backlog
10528     
10529     Problem:
10530     data center setups with large number of bricks with replication
10531     causes a flood of connections from bricks and self-heal daemons
10532     to glusterd causing connections to be dropped due to insufficient
10533     listener socket backlog queue length
10534     
10535     Solution:
10536     raise default value of transport.listen-backlog to 1024
10537     
10538     Change-Id: I879e4161a88f1e30875046dff232499a8e2e6c51
10539     fixes: bz#1642850
10540     Signed-off-by: Milind Changire <mchangir@redhat.com>
10541 
10542 commit 053b1309dc8fbc05fcde5223e734da9f694cf5cc
10543 Author: Ravishankar N <ravishankar@redhat.com>
10544 Date:   Sun Sep 23 16:59:58 2018 +0530
10545 
10546     afr: thin-arbiter 2 domain locking and in-memory state
10547     
10548     2 domain locking + xattrop for write-txn failures:
10549     --------------------------------------------------
10550     - A post-op wound on TA takes AFR_TA_DOM_NOTIFY range lock and
10551     AFR_TA_DOM_MODIFY full lock, does xattrop on TA and releases
10552     AFR_TA_DOM_MODIFY lock and stores in-memory which brick is bad.
10553     
10554     - All further write txn failures are handled based on this in-memory
10555     value without querying the TA.
10556     
10557     - When shd heals the files, it does so by requesting full lock on
10558     AFR_TA_DOM_NOTIFY domain. Client uses this as a cue (via upcall),
10559     releases AFR_TA_DOM_NOTIFY range lock and invalidates its in-memory
10560     notion of which brick is bad. The next write txn failure is wound on TA
10561     to again update the in-memory state.
10562     
10563     - Any incomplete write txns before the AFR_TA_DOM_NOTIFY upcall release
10564     request is got is completed before the lock is released.
10565     
10566     - Any write txns got after the release request are maintained in a ta_waitq.
10567     
10568     - After the release is complete, the ta_waitq elements are spliced to a
10569     separate queue which is then processed one by one.
10570     
10571     - For fops that come in parallel when the in-memory bad brick is still
10572     unknown, only one is wound to TA on wire. The other ones are maintained
10573     in a ta_onwireq which is then processed after we get the response from
10574     TA.
10575     
10576     Change-Id: I32c7b61a61776663601ab0040e2f0767eca1fd64
10577     updates: bz#1579788
10578     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
10579     Signed-off-by: Ashish Pandey <aspandey@redhat.com>
10580 
10581 commit aae1c402b74fd02ed2f6473b896f108d82aef8e3
10582 Author: Sanju Rakonde <srakonde@redhat.com>
10583 Date:   Wed Oct 3 23:58:37 2018 +0530
10584 
10585     glusterd: ensure volinfo->caps is set to correct value.
10586     
10587     With the commit febf5ed4848, during the volume create op,
10588     we are setting volinfo->caps to 0, only if any of the bricks
10589     belong to the same node and brickinfo->vg[0] is null.
10590     Previously, we used to set volinfo->caps to 0, when
10591     either brick doesn't belong to the same node or brickinfo->vg[0]
10592     is null.
10593     
10594     With this patch, we set volinfo->caps to 0, when either brick
10595     doesn't belong to the same node or brickinfo->vg[0] is null.
10596     (as we do earlier without commit febf5ed4848).
10597     
10598     fixes: bz#1635820
10599     Change-Id: I00a97415786b775fb088ac45566ad52b402f1a49
10600     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
10601 
10602 commit c5d285b173f253be19458a6ba4470671978ab698
10603 Author: Sunny Kumar <sunkumar@redhat.com>
10604 Date:   Wed Oct 24 15:23:34 2018 +0530
10605 
10606     posix : fix coverity issues in posix-inode-fd-ops.c
10607     
10608     This patch fixes CID: 1356526 and 1382369 : Argument cannot be negative
10609     
10610     Change-Id: I1aab5be2d217479db9f67a26b62854a0b38c1747
10611     updates: bz#789278
10612     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
10613 
10614 commit 0ca6773eaf5aeb507ebc72d2c2f61902eeff414c
10615 Author: Sanju Rakonde <srakonde@redhat.com>
10616 Date:   Mon Oct 8 19:33:58 2018 +0530
10617 
10618     tests: correction in tests/bugs/glusterd/optimized-basic-testcases-in-cluster.t
10619     
10620     Patch https://review.gluster.org/#/c/glusterfs/+/19135/ has
10621     optimised glusterd test cases by clubbing the similar test
10622     cases into a single test case.
10623     
10624     https://review.gluster.org/#/c/glusterfs/+/19135/15/tests/bugs/glusterd/bug-1293414-import-brickinfo-uuid.t
10625     test case has been deleted and added as a part of
10626     tests/bugs/glusterd/optimized-basic-testcases-in-cluster.t
10627     
10628     In the original test case, we create a volume with two bricks,
10629     each on a separate node(N1 & N2). From another node in cluster(N3),
10630     we try to detach a node which is hosting bricks. It fails.
10631     
10632     In the new test, we created volume with single brick on N1.
10633     and from another node in cluster, we tried to detach N1. we
10634     expect peer detach to fail, but peer detach was success as
10635     the node is hosting all the bricks of volume.
10636     
10637     Now, changing the new test case to cover the original test case scenario.
10638     
10639     Please refer https://bugzilla.redhat.com/show_bug.cgi?id=1642597#c1 to
10640     understand why the new test case is not failing in centos-regression.
10641     
10642     fixes: bz#1642597
10643     
10644     Change-Id: Ifda12b5677143095f263fbb97a6808573f513234
10645     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
10646 
10647 commit 06bad119b8c773a34cd2942d665112fbf7799788
10648 Author: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
10649 Date:   Tue Oct 9 11:34:08 2018 +0530
10650 
10651     features/namespace: NULL pointer deferencing clang fix
10652     
10653     Removed VALIDATE_OR_GOTO check on "this"
10654     
10655     Updates: bz#1622665
10656     
10657     Change-Id: Ie0d74525901ebf9daa1a5e788a035db6dc5d8c06
10658     Signed-off-by: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
10659 
10660 commit 8d2a684ba102c5b2f558ac9bee819500da94421e
10661 Author: Sunny Kumar <sunkumar@redhat.com>
10662 Date:   Wed Oct 24 18:09:09 2018 +0530
10663 
10664     geo-rep : fix high sev coverity isuue
10665     
10666     This patch fixes CID: 1382374: USE_AFTER_FREE.
10667     
10668     Change-Id: If408f52ee291312fb83095126ebd6bb79ae95e26
10669     updates: bz#789278
10670     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
10671 
10672 commit ee1982b083c06ddaebfc4b6da8a0827f3b7c24a9
10673 Author: Sunny Kumar <sunkumar@redhat.com>
10674 Date:   Tue Oct 16 14:06:10 2018 +0530
10675 
10676     shard : fix coverity issue in shard.c
10677     
10678     This patch fixes CID:
10679     1394664 : CHECKED_RETURN
10680     1356534 : Macro compares unsigned to 0 (NO_EFFECT)
10681     1356532 : Macro compares unsigned to 0 (NO_EFFECT)
10682     
10683     updates: bz#789278
10684     
10685     Change-Id: I04d64fd8c007627611710dc56109b76eeb59333a
10686     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
10687 
10688 commit e15a5a5cc67fa3323722353bb4ccca0ea41aa594
10689 Author: Sunil Kumar Acharya <sheggodu@redhat.com>
10690 Date:   Wed Oct 24 18:11:13 2018 +0530
10691 
10692     cluster/ec : Prevent volume create without redundant brick
10693     
10694     Problem:
10695     EC volumes can be created without any redundant brick.
10696     
10697     Solution:
10698     Updated the conditional check to avoid volume create without
10699     redundant brick.
10700     
10701     fixes: bz#1642448
10702     Change-Id: I0cb334b1b9378d67fcb8abf793dbe312c3179c0b
10703     Signed-off-by: Sunil Kumar Acharya <sheggodu@redhat.com>
10704 
10705 commit 87613d265a1a394d785daeed569b384cd74c6574
10706 Author: Han Han <hhan@redhat.com>
10707 Date:   Mon Oct 15 09:53:06 2018 +0800
10708 
10709     mount.glusterfs: A more explicit check to avoid identical mounts
10710     
10711     Change check condition from
10712     "[[:space:]+]${mount_point}[[:space:]+]fuse" to
10713     "[[:space:]+]${mount_point}[[:space:]+]fuse.glusterfs". Fix false
10714     postive check result for mount points of other FUSEes, such as "fuse.sshfs".
10715     
10716     Change-Id: I13898b50a651a8f5ecc3a94d01b3b5de37ec4cbc
10717     fixes: bz#1640026
10718     Signed-off-by: Han Han <hhan@redhat.com>
10719 
10720 commit cf5b13896d65b6916634976a3a5f61ddeefbc19c
10721 Author: Soumya Koduri <skoduri@redhat.com>
10722 Date:   Mon Oct 22 21:16:53 2018 +0530
10723 
10724     leases:Mark the fop conflicting if lease_id not set
10725     
10726     Glusterfs leases expects lease_id to be set and sent
10727     for each fop to determine conflict resolution with the
10728     existing lease.
10729     Incase if not set (most likely if there is an older
10730     client in a mixed cluster), it makes sense to consider
10731     it as conflicitng fop and recall the lease.
10732     
10733     Also fixed the return status check for __remove_lease(),
10734     wherein non-negative value is considered as success case.
10735     
10736     Change-Id: I5bcfba4f7c71a5af7cdedeb03436d0b818e85783
10737     updates: #350
10738     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
10739 
10740 commit 63a8d72736aec13ae90eb1a425ffd2078e5236ad
10741 Author: Arjun <arjsharm@redhat.com>
10742 Date:   Mon Oct 22 13:08:53 2018 +0530
10743 
10744     src/glusterd-snapshot-utils.c: dereferencing the snap_vol before freeing it
10745     
10746     The patch fixes CID: 1325520
10747     
10748     Change-Id: Ic7d3fac6adabe96d1d44f13b57d6dc67da0476d1
10749     updates: bz#789278
10750     Signed-off-by: Arjun <arjsharm@redhat.com>
10751 
10752 commit c34e4161f3cb6539ec83a9020f3d27eb4759a975
10753 Author: Mohit Agrawal <moagrawal@redhat.com>
10754 Date:   Thu Oct 18 14:06:04 2018 +0530
10755 
10756     glusterfs: During reconfigure set log-level per xlator level
10757     
10758     Problem: In brick_mux environment, while a user has enabled brick-log-level
10759              for anyone volume, it automatically enables for other volumes
10760              also those are attached with same brick.
10761     
10762     Solution: A log-level option is automatically enabled for other volumes
10763               because log-level saved in glusterfsd_ctx and ctx is common for
10764               volumes those are attached with same brick. To resolve it
10765               set log level for all children xlator's at the time of the graph
10766               reconfigure at io-stat xlator.
10767     
10768     Change-Id: Id9a6efa05d286e0bea2d47f49292d084e7bb2fcf
10769     fixes: bz#1640495
10770     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
10771 
10772 commit 1be6703b1005bf572cea70f2254d7b5a8ed02351
10773 Author: Sanju Rakonde <srakonde@redhat.com>
10774 Date:   Sun Oct 7 17:44:19 2018 +0530
10775 
10776     glusterd: set integer instead of string
10777     
10778     dict_get_str_boolean expects a integer, so we need
10779     to set all the boolean variables as integers to
10780     avoid log messages like below:
10781     
10782     [2018-09-10 03:55:19.236387] I [dict.c:2838:dict_get_str_boolean] (-->/usr/local/lib/libgfrpc.so.0(rpc_clnt_reconnect+0xc2) [0x7ff7a83d0452] -->/usr/local/lib/glusterfs/4.2dev/rpc-transport/socket.so(+0x65b0) [0x7ff7a06cf5b0] -->/usr/local/lib/libglusterfs.so.0(dict_get_str_boolean+0xcf) [0x7ff7a85fc58f] ) 0-dict: key transport.socket.ignore-enoent, integer type asked, has string type [Invalid argument]
10783     
10784     This patch addresses all such instances in glusterd.
10785     
10786     Change-Id: I7e1979fcf381363943f4d09b94c3901c403727da
10787     updates: bz#1193929
10788     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
10789 
10790 commit 68299b244372b1668c1708bff15a239649226dee
10791 Author: Kotresh HR <khiremat@redhat.com>
10792 Date:   Sun Oct 14 19:54:48 2018 +0530
10793 
10794     cli: Fix heap-buffer-overflow issue reported by ASAN
10795     
10796     GF_MALLOC was being used to allocate memory which is
10797     not initialized. strcat is used on it which could
10798     result in buffer overflow if it contains garbage before
10799     '\0'. So changed it to GF_CALLOC.
10800     
10801     Traceback:
10802     
10803     ==23427==ERROR: AddressSanitizer: heap-buffer-overflow ...
10804     WRITE of size 5 at 0x6080000083fe thread T3
10805      #0 0x7fb60966991c in __interceptor_strcat ...
10806      #1 0x48adc0 in config_parse ...
10807      #2 0x48cde8 in cli_cmd_gsync_set_parse ...
10808     ...
10809     
10810     Updates: bz#1633930
10811     Change-Id: I3710f011d8139984b1898265d84d150c9bdc962b
10812     Signed-off-by: Kotresh HR <khiremat@redhat.com>
10813 
10814 commit f73b4476b15f9d6d3dc3c8e20c9742aacd857f9f
10815 Author: Ashish Pandey <aspandey@redhat.com>
10816 Date:   Thu Oct 18 17:15:58 2018 +0530
10817 
10818     cluster/afr : Check for UP bricks before starting heal
10819     
10820     Problem:
10821     Currently for replica volume, even if only one brick is UP
10822     SHD will keep crawling index entries even if it can not
10823     heal anything.
10824     
10825     In thin-arbiter volume which is also a replica 2 volume,
10826     this causes inode lock contention which in turn sends
10827     upcall to all the clients to release notify locks, even
10828     if it can not do anything for healing.
10829     
10830     This will slow down the client performance and kills the
10831     purpose of keeping in memory information about bad brick.
10832     
10833     Solution: Before starting heal or even crawling, check if
10834     sufficient number of children are UP and available to check
10835     and heal entries.
10836     
10837     Change-Id: I011c9da3b37cae275f791affd56b8f1c1ac9255d
10838     updates: bz#1640581
10839     Signed-off-by: Ashish Pandey <aspandey@redhat.com>
10840 
10841 commit bd4d8b182662e08cccc57efa1616651df448b445
10842 Author: Sanju Rakonde <srakonde@redhat.com>
10843 Date:   Tue Oct 23 11:50:37 2018 +0530
10844 
10845     glusterd: improve logging for stage_deleted flag
10846     
10847     Change-Id: I5f0667a47ddd24cb00949c875c19f3d1dbd8d603
10848     fixes: bz#1605077
10849     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
10850 
10851 commit 874ce6ef6e33f1493c888760714503ac992b708d
10852 Author: Harpreet Lalwani <hlalwani@redhat.com>
10853 Date:   Mon Oct 8 15:58:17 2018 +0530
10854 
10855     rpc/rpc-lib: Uninitialized argument value of a function
10856     
10857     trav->saved_at.tv_sec is not initialized.
10858     
10859     Calling "list_empty" function before initializing "trav".
10860     
10861     Updates: bz#1622665
10862     
10863     Change-Id: Ib5c2703a07a9c56ccd115001aca500f7a23c4a2e
10864     Signed-off-by: Harpreet Lalwani <hlalwani@redhat.com>
10865 
10866 commit 4634bb05cc82526e5c55e60746ae5d167f28bea0
10867 Author: Kinglong Mee <kinglongmee@gmail.com>
10868 Date:   Sat Sep 29 11:02:58 2018 +0800
10869 
10870     md-cache: request cached xattrs at stat/fstat
10871     
10872     Ganesha always operate file by filehandle, and translates to
10873     glusterfs's stat/fstat many time.
10874     
10875     Change-Id: Idd0dc33c31131331ac948754c8b7f898777c31d3
10876     Updates: bz#1634220
10877     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
10878 
10879 commit 3dea105556130abd4da0fd3f8f2c523ac52398d1
10880 Author: Ravishankar N <ravishankar@redhat.com>
10881 Date:   Sun Oct 21 17:32:52 2018 +0530
10882 
10883     tests: check for shd up status in bug-1637802-arbiter-stale-data-heal-lock.t
10884     
10885     Problem:
10886     https://review.gluster.org/#/c/glusterfs/+/21427/ seems to be failing
10887     this .t spuriously. On checking one of the failure logs, I see:
10888     
10889     22:05:44 Launching heal operation to perform index self heal on volume patchy has been unsuccessful:
10890     22:05:44 Self-heal daemon is not running. Check self-heal daemon log file.
10891     22:05:44 not ok 20 , LINENUM:38
10892     
10893     In glusterd log:
10894     [2018-10-18 22:05:44.298832] E [MSGID: 106301] [glusterd-syncop.c:1352:gd_stage_op_phase] 0-management: Staging of operation 'Volume Heal' failed on localhost : Self-heal daemon is not running. Check self-heal daemon log file
10895     
10896     But the tests which preceed this check whether via a statedump if the shd is
10897     conected to the bricks, and they have succeeded and even started
10898     healing. From glustershd.log:
10899     
10900     [2018-10-18 22:05:40.975268] I [MSGID: 108026] [afr-self-heal-common.c:1732:afr_log_selfheal] 0-patchy-replicate-0: Completed data selfheal on 3b83d2dd-4cf2-4ea3-a33e-4275be40f440. sources=[0] 1  sinks=2
10901     
10902     So the only reason I can see launching heal via cli failing is a race where
10903     shd has been spawned but glusterd has not yet updated in-memory that it is up,
10904     and hence failing the CLI.
10905     
10906     Fix:
10907     Check for shd up status before launching heal via CLI
10908     
10909     Change-Id: Ic88abf14ad3d51c89cb438db601fae4df179e8f4
10910     fixes: bz#1641344
10911     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
10912 
10913 commit 9eab065769d4b4fd41821232746fb8f1235bead4
10914 Author: Kinglong Mee <kinglongmee@gmail.com>
10915 Date:   Sat Sep 29 11:58:42 2018 +0800
10916 
10917     posix: fill glusterfs.posix.* acl xattrs at dict
10918     
10919     Change-Id: I0730a037f96c4386c72ecf2f61c71ec17ffbc1b0
10920     Updates: bz#1634220
10921     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
10922 
10923 commit 826e03db0903abab852bda37d6d77f3dd0f83cc6
10924 Author: Kinglong Mee <kinglongmee@gmail.com>
10925 Date:   Thu Oct 18 19:35:40 2018 +0800
10926 
10927     md-cache: fix dict leak of cached xattr
10928     
10929     Change-Id: I52f8e13e68528ba9679537ffdddf58ec08f9fd0c
10930     Updates: bz#1634220
10931     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
10932 
10933 commit 92c22abb440ba8f8025441b16f3811b05927a16d
10934 Author: Bhumika Goyal <bgoyal@redhat.com>
10935 Date:   Thu Oct 18 17:30:09 2018 +0530
10936 
10937     xlators: some high severity coverity fixes
10938     
10939     Fixes: 124759 1288787
10940     
10941     Change-Id: Ib8999242fc3ea5f4ea80246659899d2d4f06c506
10942     updates: bz#789278
10943     Signed-off-by: Bhumika Goyal <bgoyal@redhat.com>
10944 
10945 commit ac9976f0c52306f4f2d9b11dcf6a830d1ec2e445
10946 Author: Varsha Rao <varao@redhat.com>
10947 Date:   Thu Oct 18 12:03:37 2018 +0530
10948 
10949     performance/write-behind: Fix NULL dereference issue
10950     
10951     This patches fixes the following coverity issues:
10952     CID: 1396101, 1396102 - Dereference null return value.
10953     
10954     Change-Id: I7ec783a61c06a1378863e974ff6e0baae418aec2
10955     updates: bz#789278
10956     Signed-off-by: Varsha Rao <varao@redhat.com>
10957 
10958 commit e1a9c23b83b8d46bf44a7a9952da0c61c8a46c79
10959 Author: Arjun Sharma <arjsharm@redhat.com>
10960 Date:   Mon Oct 15 17:37:36 2018 +0530
10961 
10962     protocol/server: added check for positve value in server-handshake.c
10963     
10964     This patch fixes CID 1124651
10965     
10966     Change-Id: I6f33954f08cfdd7cb4236f9a81ec7980f81d19e7
10967     updates: bz#789278
10968     Signed-off-by: Arjun <arjsharm@redhat.com>
10969 
10970 commit c5f5ce2a9b1c085209cae21a7e1df5f60bc1a7da
10971 Author: Bhumika Goyal <bgoyal@redhat.com>
10972 Date:   Thu Oct 18 14:15:40 2018 +0530
10973 
10974     rdma: coverity fixes
10975     
10976     Fixes CID: 1382442 1382415 1382379 1382355
10977     
10978     Change-Id: Ia712e37cb5a6db452d3178386394f87f83b85d38
10979     updates: bz#789278
10980     Signed-off-by: Bhumika Goyal <bgoyal@redhat.com>
10981 
10982 commit 59629f1da9dca670d5dcc6425f7f89b3e96b46bf
10983 Author: Raghavendra Gowdappa <rgowdapp@redhat.com>
10984 Date:   Thu Oct 18 18:25:46 2018 +0530
10985 
10986     mount/fuse: return ESTALE instead of ENOENT on all inode based operations
10987     
10988     This patch is continuation of commit
10989     fb4b914ce84bc83a5f418719c5ba7c25689a9251. This patch extends that
10990     logic to all inode based operations and not just open(dir).
10991     
10992     <snip>
10993     
10994     mount/fuse: never fail open(dir) with ENOENT
10995     
10996     open(dir) being an operation on inode should never fail with
10997     ENOENT. If gfid is not present, the appropriate error is ESTALE. This
10998     will enable kernel to retry open after a revalidate lookup.
10999     
11000     </snip>
11001     
11002     Change-Id: I6313f520827e9af725485631cb6a9d9718243bc4
11003     Signed-off-by: Raghavendra G <rgowdapp@redhat.com>
11004     Fixes: bz#1627620
11005 
11006 commit 0819a9af02cc76b5549c822d5c088e2c740a60d7
11007 Author: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
11008 Date:   Tue Sep 25 16:58:24 2018 +0530
11009 
11010     cluster/ec: NULL pointer deferencing clang fix
11011     
11012     Removing VALIDATE_OR_GOTO check on "this"
11013     
11014     Updates: bz#1622665
11015     
11016     Change-Id: Ic7cffbb697da814f835d0ad46e25256da6afb406
11017     Signed-off-by: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
11018 
11019 commit 15c99765e0597b835d92560fc926067313848c88
11020 Author: Krutika Dhananjay <kdhananj@redhat.com>
11021 Date:   Wed Oct 17 14:26:14 2018 +0530
11022 
11023     storage/posix: Do not fail entry creation fops if gfid handle already exists
11024     
11025     PROBLEM:
11026     tests/bugs/shard/bug-1251824.t fails occasionally with EIO due to gfid
11027     mismatch across replicas on the same shard when dd is executed.
11028     
11029     CAUSE:
11030     Turns out this is due to a race between posix_mknod() and posix_lookup().
11031     
11032     posix mknod does 3 operations, among other things:
11033     1. creation of the entry itself under its parent directory
11034     2. setting the gfid xattr on the file, and
11035     3. creating the gfid link under .glusterfs.
11036     
11037     Consider a case where the thread doing posix_mknod() (initiated by shard)
11038     has executed steps 1 and 2 and is on its way to executing 3. And a
11039     parallel LOOKUP from another thread on noting that loc->inode->gfid is NULL,
11040     tries to perform gfid_heal where it attempts to create the gfid link
11041     under .glusterfs and succeeds.  As a result, posix_gfid_set() through
11042     MKNOD (step 3) fails with EEXIST.
11043     
11044     In the older code, MKNOD under such conditions was NOT being treated
11045     as a failure. But commit e37ee6d changes this behavior by failing MKNOD,
11046     causing the entry creation to be undone in posix_mknod() (it's another
11047     matter that the stale gfid handle gets left behind if lookup has gone
11048     ahead and gfid-healed it).
11049     All of this happens on only one replica while on the other MKNOD succeeds.
11050     
11051     Now if a parallel write causes shard translator to send another MKNOD
11052     of the same shard (shortly after AFR releases entrylk from the first
11053     MKNOD), the file is created on the other replica too, although with a
11054     new gfid (since "gfid-req" that is passed now is a new UUID. This leads
11055     to a gfid-mismatch across the replicas.
11056     
11057     FIX:
11058     The solution is to not fail MKNOD (or any other entry fop for that matter
11059     that does posix_gfid_set()) if the .glusterfs link creation fails with EEXIST.
11060     
11061     Change-Id: I84a5e54d214b6c47ed85671a880bb1c767a29f4d
11062     fixes: bz#1638453
11063     Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
11064 
11065 commit 273c895747d073d43a1e8617218d4bfd2cf13f18
11066 Author: Mohit Agrawal <moagrawal@redhat.com>
11067 Date:   Wed Oct 17 13:08:59 2018 +0530
11068 
11069     ctr: fix coverity issue in changetimerecorder.c
11070     
11071     This patch fixes CID:
11072     1396179: Read from pointer after free
11073     1396178: Use after free
11074     
11075     Change-Id: I47a2e4aa257e0c4dbdf2e1fd2e0748902764463f
11076     fixes: bz#789278
11077     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
11078 
11079 commit 145e180517054626d07892219fdee689b703c218
11080 Author: Sunny Kumar <sunkumar@redhat.com>
11081 Date:   Wed Oct 17 15:40:04 2018 +0530
11082 
11083     shard : fix newly introduced coverity
11084     
11085     This patch fixes CID: 1396177: NULL dereference.
11086     
11087     updates: bz#789278
11088     
11089     Change-Id: Ic5d302a5e32d375acf8adc412763ab94e6dabc3d
11090     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
11091 
11092 commit 219cd649fdbd7bfd6c2268a0a4f66bcc15918e31
11093 Author: N Balachandran <nbalacha@redhat.com>
11094 Date:   Wed Oct 17 18:48:19 2018 +0530
11095 
11096     debug/io-stats: io stats filenames contain garbage
11097     
11098     As dict_unserialize does not null terminate the value,
11099     using snprintf adds garbage characters to the buffer
11100     used to create the filename.
11101     The code also used this->name in the filename which
11102     will be the same for all bricks for a volume. The
11103     files were thus overwritten if a node contained
11104     multiple bricks for a volume. The code now uses
11105     the conf->unique instead if available.
11106     
11107     Change-Id: I2c72534b32634b87961d3b3f7d53c5f2ca2c068c
11108     fixes: bz#1640165
11109     Signed-off-by: N Balachandran <nbalacha@redhat.com>
11110 
11111 commit 6257276d9de3f15643f159b2ec627a67c84fc23d
11112 Author: Raghavendra Gowdappa <rgowdapp@redhat.com>
11113 Date:   Fri Oct 12 10:31:04 2018 +0530
11114 
11115     api: fill out attribute information if not valid
11116     
11117     translators like readdir-ahead selectively retain entry information of
11118     iatt (gfid and type) when rest of the iatt is invalidated (for write
11119     invalidating ia_size, (m)(c)times etc). Fuse-bridge uses this
11120     information and sends only entry information in readdirplus
11121     response. However such option doesn't exist in gfapi. This patch
11122     modifies gfapi to populate the stat by forcing an extra lookup.
11123     
11124     Thanks to Shyamsundar Ranganathan <srangana@redhat.com> and Prashanth
11125     Pai <ppai@redhat.com> for tests.
11126     
11127     Change-Id: Ieb5f8fc76359c327627b7d8420aaf20810e53000
11128     Fixes: bz#1630804
11129     Signed-off-by: Raghavendra Gowdappa <rgowdapp@redhat.com>
11130     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
11131 
11132 commit 24dbcfb6ebaab021e2db4f63bd66f3b06192bc89
11133 Author: Kinglong Mee <kinglongmee@gmail.com>
11134 Date:   Sat Sep 29 12:10:46 2018 +0800
11135 
11136     posix: return more xattrs at getxattr/fgetxattr when client request
11137     
11138     Change-Id: I37ac6186b3631979d2503d1b185a61b8094dbd0d
11139     Updates: bz#1634220
11140     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
11141 
11142 commit 573253d250972dad60ec28cd101f9facd82a0fe2
11143 Author: Sunny Kumar <sunkumar@redhat.com>
11144 Date:   Tue Oct 16 16:45:34 2018 +0530
11145 
11146     nfs : fix coverity issue in nfs3.c
11147     
11148     This patch fixes CID 1274073.
11149     
11150     updates: bz#789278
11151     
11152     Change-Id: I34146bfdfe19bae4592062e710a89ab07b2c5c07
11153     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
11154 
11155 commit a9c232319f28376f88ac624ac132413ec408b784
11156 Author: Sunny Kumar <sunkumar@redhat.com>
11157 Date:   Tue Oct 16 14:48:00 2018 +0530
11158 
11159     trash : fix high sev coverity issue in trash.c
11160     
11161     This patch fixes CID 1288790: RESOURCE_LEAK.
11162     
11163     updates: bz#789278
11164     
11165     Change-Id: I34bb410f1d3027e2d4c21044e87e319360344e04
11166     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
11167 
11168 commit 0402a13914084219db3a6f6867117b8757112b24
11169 Author: Amar Tumballi <amarts@redhat.com>
11170 Date:   Mon Oct 8 19:22:53 2018 +0530
11171 
11172     glusterfsd: fix the asan leak message
11173     
11174     Fixes below trace of ASan:
11175     
11176     Direct leak of 130 byte(s) in 1 object(s) allocated from:
11177         #0 0x7fa794bb5850 in malloc (/lib64/libasan.so.4+0xde850)
11178         #1 0x7fa7944e5de9 in __gf_malloc ../../../libglusterfs/src/mem-pool.c:136
11179         #2 0x40b85c in gf_strndup ../../../libglusterfs/src/mem-pool.h:166
11180         #3 0x40b85c in gf_strdup ../../../libglusterfs/src/mem-pool.h:183
11181         #4 0x40b85c in parse_opts ../../../glusterfsd/src/glusterfsd.c:1049
11182         #5 0x7fa792a98720 in argp_parse (/lib64/libc.so.6+0x101720)
11183         #6 0x40d89f in parse_cmdline ../../../glusterfsd/src/glusterfsd.c:2041
11184         #7 0x406d07 in main ../../../glusterfsd/src/glusterfsd.c:2625
11185     
11186     
11187     updates: bz#1633930
11188     Change-Id: I394b3fc24b7a994c1b03635cb5e973e7290491d3
11189     Signed-off-by: Amar Tumballi <amarts@redhat.com>
11190 
11191 commit 46689e34b920147cb7222d166e7b85ef8f105b60
11192 Author: Yaniv Kaul <ykaul@redhat.com>
11193 Date:   Sun Oct 14 02:15:40 2018 +0300
11194 
11195     servers-helpers.c: reduce clang warnings on dead initialization.
11196     
11197     Assign a value to a parameter on its definition.
11198     Removes tens of clang warnings.
11199     
11200     Compile-tested only!
11201     
11202     updates: bz#1193929
11203     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
11204     
11205     Change-Id: I828bacb4033111af6162772a554cc5c6b2820169
11206 
11207 commit 39a1db1402bea36cb5727a5041440f10bf4660e9
11208 Author: ShyamsundarR <srangana@redhat.com>
11209 Date:   Mon Oct 15 20:45:18 2018 -0400
11210 
11211     coverity: ignore tainted access reported in gf_free
11212     
11213     Coverity reports tainted pointer access in _gf_free if the pointer passed in
11214     was used by any IO related function by the caller. The taint within gf_free
11215     is a false positive, as the tainted region is from the passed in pointer
11216     till its allocated lenght, and not for contents before the pointer (i.e
11217     the GF_MEM_HEADER_SIZE bytes before the passed in pointer), as that is
11218     exclusively handled by the gf_alloc family of functions.
11219     
11220     CID: 1228602, 1292646, 1292647, 1292648, 1292649, 1383192, 1383195, 1389691
11221     
11222     Should additionally fix,
11223     CID: 1292650, 1292651, 1357874, 1382373, 1382404, 1382407
11224     
11225     Change-Id: I48c5a4028e7b0224c432bbc30f8c29408c2a466b
11226     Updates: bz#789278
11227     Signed-off-by: ShyamsundarR <srangana@redhat.com>
11228 
11229 commit f179d09326c519abb1868de79598719b93219544
11230 Author: ShyamsundarR <srangana@redhat.com>
11231 Date:   Mon Oct 15 20:50:26 2018 -0400
11232 
11233     glusterfsd: Fix coverity issues around unused values
11234     
11235     This patch fixes,
11236     CID: 1274064, 1274232
11237     
11238     The fix is to not add into the return dict the throughput
11239     and time values on error computing the same. The pattern
11240     applied is the same as when an error occurs during adding
11241     either the throughput or the time value to the dict.
11242     
11243     Change-Id: I33e21e75efbc691f18b818934ef3bf70dd075097
11244     Updates: bz#789278
11245     Signed-off-by: ShyamsundarR <srangana@redhat.com>
11246 
11247 commit f50625e7b08814e8e1d06a733e9b3516e9cea5e2
11248 Author: Kinglong Mee <mijinlong@open-fs.com>
11249 Date:   Tue Oct 9 15:57:31 2018 +0800
11250 
11251     libgfapi: Send path with "." for the root when loc.parent is set
11252     
11253     fixes: bz#1582516
11254     Change-Id: Ia9649d7c3c0930dfec656d364cf6e9a98c774dd2
11255     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
11256 
11257 commit a303cd1acc3c9ff475fe5ece643de4cbea1c1a51
11258 Author: Soumya Koduri <skoduri@redhat.com>
11259 Date:   Wed Oct 10 21:37:07 2018 +0530
11260 
11261     gfapi: Bug fixes in leases processing code-path
11262     
11263     This patch fixes below issues in gfapi lease code-path
11264     * 'glfs_setfsleasid' should allow NULL input to be
11265        able to reset leaseid
11266     * Applications should be allowed to (un)register for
11267       upcall notifications of type GLFS_EVENT_LEASE_RECALL
11268     * APIs added to read contents of GLFS_EVENT_LEASE_RECALL
11269       argument which is of type "struct glfs_upcall_lease"
11270     
11271     Change-Id: I3320ddf235cc82fad561e13b9457ebd64db6c76b
11272     updates: #350
11273     Signed-off-by: Soumya Koduri <skoduri@redhat.com>
11274 
11275 commit 593bbb28d95d1ebf11aa6f4d1f256529ed2dba88
11276 Author: Milind Changire <mchangir@redhat.com>
11277 Date:   Sat Oct 13 10:15:42 2018 +0530
11278 
11279     libglusterfs: fix sys_socket coverity issue
11280     
11281     CID 1396081:  Control flow issues  (UNREACHABLE)
11282     
11283     Change-Id: Ifad303853224cb9abc91c1083bb1529f4c13b1d3
11284     updates: bz#789278
11285     Signed-off-by: Milind Changire <mchangir@redhat.com>
11286 
11287 commit 98f68cf115a30a101d3be2252ecbe1391720ed88
11288 Author: Yaniv Kaul <ykaul@redhat.com>
11289 Date:   Sat Oct 13 00:56:42 2018 +0300
11290 
11291     Multiple xlators: perform gettimeofday() not under lock
11292     
11293     While it may slightly reduce accuracy, I think it's better to
11294     acquire the time outside a lock and then memcpy the value while
11295     under lock.
11296     
11297     Compile-tested only!
11298     
11299     updates: bz#1193929
11300     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
11301     
11302     Change-Id: Ic8fb94a56c4fa2d3b13e59767e13646fb39342ba
11303 
11304 commit fd70a7d790710da01a8ddd56785a28ab54e07550
11305 Author: Sunny Kumar <sunkumar@redhat.com>
11306 Date:   Wed Oct 10 01:25:41 2018 +0530
11307 
11308     mount : fix high sev coverity issues in mount3.c
11309     
11310     This patch fixes CID 1395067, 1388767 and 1395068.
11311     
11312     updates: bz#789278
11313     
11314     Change-Id: Ie92252281bf559dd29fab462e121445ff4d3b865
11315     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
11316 
11317 commit 386f1d7926e4497fc2a905367ade2e3f6972eba7
11318 Author: Raghavendra Gowdappa <rgowdapp@redhat.com>
11319 Date:   Thu Oct 11 16:22:28 2018 +0530
11320 
11321     cluster/dht: fixes to unlinking invalid linkto file
11322     
11323     If unlinking of an invalid linkto file failed in lookup-everywhere
11324     codepath, lookup was failed with EIO. The rational as per the comment
11325     was,
11326     
11327     <snip>
11328     
11329     /* When dht_lookup_everywhere is performed, one cached
11330       *and one hashed file was found and hashed file does
11331       *not point to the above mentioned cached node. So it
11332       *was considered as stale and an unlink was performed.
11333       *But unlink fails. So may be rebalance is in progress.
11334       *now ideally we have two data-files. One obtained during
11335       *lookup_everywhere and one where unlink-failed. So
11336       *at this point in time we cannot decide which one to
11337       *choose because there are chances of first cached
11338       *file is truncated after rebalance and if it is chosen
11339       *as cached node, application will fail. So return EIO.
11340     */
11341     
11342     </snip>
11343     
11344     However, this reasoning is only valid when
11345     * op_errno is EBUSY, indicating rebalance is in progress
11346     * op_errno is ENOTCONN as wecannot determine what was the status of
11347       file on brick.
11348     
11349     Hence this patch doesn't fail lookup unless unlink fails with an
11350     either EBUSY or ENOTCONN
11351     
11352     Change-Id: Ife55f3d97fe557f3db05beae0c2d786df31e8e55
11353     Fixes: bz#1635145
11354     Signed-off-by: Raghavendra Gowdappa <rgowdapp@redhat.com>
11355 
11356 commit 7152ace0b3586289be068f09e2c20cf0a8d2d166
11357 Author: Kaleb S. KEITHLEY <kkeithle@redhat.com>
11358 Date:   Mon Oct 15 08:26:32 2018 -0400
11359 
11360     core: libuuid-devel breakage
11361     
11362     The #include "uuid.h" left over from using .../contrib/uuid is debatably
11363     incorrect now that we use the "system header" file /usr/include/uuid/uuid.h
11364     from libuuid-devel.
11365     
11366     Unfortunately this is complicated by things like FreeBSD having its own
11367     /usr/include/uuid.h, and the e2fsprogs-libuuid uuid.h in installed - as
11368     most third-party packages in FreeBSD are - in /usr/local as
11369     /usr/local/include/uuid/uuid.h
11370     
11371     With a system header file it should at least be #include <uuid.h>, and
11372     even better as #include <uuid/uuid.h>, much like the way <sys/types.h>
11373     and <net/if.h> are included. Using #include <uuid/uuid.h> guarantees
11374     not getting the /usr/include/uuid.h on FreeBSD, but clang/cc knows to
11375     find "system" header files like this in /usr/local/include; with or
11376     without the -I/... from uuid.pc. Also using #include "uuid.h" leaves
11377     the compiler free to find a uuid.h from any -I option it might be passed.
11378     (Fortunately we don't have any at this time.)
11379     
11380     As we now require libuuid-devel or e2fsprogs-libuuid and configure will
11381     exit with an error if the uuid.pc file doesn't exist, the HAVE_LIBUUID
11382     (including the #elif FreeBSD) tests in compat-uuid.h are redundant. We
11383     are guaranteed to have it, so testing for it is a bit silly IMO. It may
11384     also break building third party configure scripts if they omit defining
11385     it. (Just how hard do we want to make things for third party developers?)
11386     
11387     Change-Id: I7317f63c806281a5d27de7d3b2208d86965545e1
11388     updates: bz#1193929
11389     Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
11390 
11391 commit e627977617dd765f6b58a70882c6acda6c6aab6e
11392 Author: Krutika Dhananjay <kdhananj@redhat.com>
11393 Date:   Fri Oct 5 11:32:21 2018 +0530
11394 
11395     features/shard: Hold a ref on base inode when adding a shard to lru list
11396     
11397     In __shard_update_shards_inode_list(), previously shard translator
11398     was not holding a ref on the base inode whenever a shard was added to
11399     the lru list. But if the base shard is forgotten and destroyed either
11400     by fuse due to memory pressure or due to the file being deleted at some
11401     point by a different client with this client still containing stale
11402     shards in its lru list, the client would crash at the time of locking
11403     lru_base_inode->lock owing to illegal memory access.
11404     
11405     So now the base shard is ref'd into the inode ctx of every shard that
11406     is added to lru list until it gets lru'd out.
11407     
11408     The patch also handles the case where none of the shards associated
11409     with a file that is about to be deleted are part of the LRU list and
11410     where an unlink at the beginning of the operation destroys the base
11411     inode (because there are no refkeepers) and hence all of the shards
11412     that are about to be deleted will be resolved without the existence
11413     of a base shard in-memory. This, if not handled properly, could lead
11414     to a crash.
11415     
11416     Change-Id: Ic15ca41444dd04684a9458bd4a526b1d3e160499
11417     updates: bz#1605056
11418     Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
11419 
11420 commit 76cc1ea613e038ced4bc6ae26233cb0681b63be5
11421 Author: Pranith Kumar K <pkarampu@redhat.com>
11422 Date:   Fri Sep 28 13:03:38 2018 +0530
11423 
11424     libglusterfs/dict: Add sizeof()-1 variants of dict functions
11425     
11426     One needs to be very careful about giving same key for the key and
11427     SLEN(key) arguments in dict_xxxn() functions. Writing macros that
11428     would take care of passing the SLEN(key) would help reduce this
11429     burden on the developer and reviewer.
11430     
11431     updates: bz#1193929
11432     Change-Id: I312c479b919826570b47ae2c219c53e2f9b2ddef
11433     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
11434 
11435 commit c962e2cbd73e78f31e690f7b1f8456616006c543
11436 Author: Kotresh HR <khiremat@redhat.com>
11437 Date:   Fri Oct 12 14:25:00 2018 +0530
11438 
11439     glusterd/geo-rep: Fix memory corruption
11440     
11441     Problem and Analysis:
11442     The length of canonical format of uuid is 36 but
11443     'GF_UUID_BUF_SIZE 50' was being used everywhere.
11444     glusterd/geo-rep code was earlier using strncpy,
11445     but recently changes to memcpy with the drive
11446     to avoid strncpys. This leads to memory corruption
11447     and glusterd is crashing without a core with geo-rep
11448     creation with ASAN build.
11449     
11450     Fix:
11451     'GF_UUID_BUF_SIZE 37' (+ 1 for NULL byte)
11452     And change geo-rep to use UUID_CANONICAL_FORM_LEN
11453     instead
11454     
11455     Updates: bz#1633930
11456     Change-Id: Ibd347d542b92e64a96ce06780cda643557233bc7
11457     Signed-off-by: Kotresh HR <khiremat@redhat.com>
11458 
11459 commit ac074e03437faf6f2f0897e6d9e7249ac0599b64
11460 Author: Kotresh HR <khiremat@redhat.com>
11461 Date:   Thu Oct 11 23:39:13 2018 +0530
11462 
11463     cli: Fix memory leaks reported by ASAN
11464     
11465     This patch addresses memory leaks other than
11466     'gf_cli_rsp' response structure.
11467     
11468     Updates: bz#1633930
11469     Change-Id: Idc5940dca623e33bc01004a9324bc435fc60b006
11470     Signed-off-by: Kotresh HR <khiremat@redhat.com>
11471 
11472 commit f6789462610ab5bae029cb114fa27453a54c8f9c
11473 Author: Sunny Kumar <sunkumar@redhat.com>
11474 Date:   Thu Oct 11 12:20:10 2018 +0530
11475 
11476     libglusterfs : fix newly introduced coverity defect
11477     
11478     CID: 1396060
11479     updates: bz#789278
11480     
11481     Change-Id: Ia25aa9a4ca7505e747aa92bb3ae81415da7d19d1
11482     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
11483 
11484 commit 7bf95631b52bd05b06122180f8bd4aa62c70b1a9
11485 Author: Mohit Agrawal <moagrawal@redhat.com>
11486 Date:   Wed Oct 10 10:31:18 2018 +0530
11487 
11488     core: glusterfsd keeping fd open in index xlator
11489     
11490     Problem: At the time of processing GF_EVENT_PARENT_DOWN
11491              at brick xlator, it forwards the event to next xlator
11492              only while xlator ensures no stub is in progress.
11493              At io-thread xlator it decreases stub_cnt before the process
11494              a stub and notify EVENT to next xlator
11495     
11496     Solution: Introduce a new counter to save stub_cnt and decrease
11497               the counter after process the stub completely at io-thread
11498               xlator.
11499               To avoid brick crash at the time of call xlator_mem_cleanup
11500               move only brick xlator if detach brick name has found in
11501               the graph
11502     
11503     Note: Thanks to pranith for sharing a simple reproducer to
11504           reproduce the same
11505     
11506     fixes bz#1637934
11507     Change-Id: I1a694a001f7a5417e8771e3adf92c518969b6baa
11508     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
11509 
11510 commit 777412c5e8a1e8613061fef31bd8a60d4cd54b6e
11511 Author: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
11512 Date:   Thu Oct 11 04:00:08 2018 +0530
11513 
11514     libglusterfs: fix log message in options.c
11515     
11516     This patch fixes https://github.com/gluster/glusterfs/issues/519
11517     
11518     Credits: "Fabian Wannenmacher <@wanneut>"
11519     
11520     Updates: bz#1193929
11521     
11522     Change-Id: If8d60c3379093a868ad6ba8c2ad86a4b99d35f2c
11523     Signed-off-by: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
11524 
11525 commit 09baa5d7fb91d1f50976807f1da0f7bbf177fa00
11526 Author: Ashish Pandey <aspandey@redhat.com>
11527 Date:   Thu Oct 11 12:12:38 2018 +0530
11528 
11529     features/locks: Fix Coverity issues
11530     
11531     CID:
11532     1395812 Explicit null dereferenced
11533     1356542 Dereference null return value
11534     
11535     https://scan6.coverity.com/reports.htm#v42607/p10714/fileInstanceId=86261835&defectInstanceId=26407100&mergedDefectId=1395812
11536     https://scan6.coverity.com/reports.htm#v42607/p10714/fileInstanceId=86261835&defectInstanceId=26407215&mergedDefectId=1356542
11537     
11538     Change-Id: I2c20972a8080fa7a70b88eab0688b9cf734bbf24
11539     updates: bz#789278
11540     Signed-off-by: Ashish Pandey <aspandey@redhat.com>
11541 
11542 commit b2e592a4a9beb0ef3f8986e3ff3a630981bcad1f
11543 Author: Sunny Kumar <sunkumar@redhat.com>
11544 Date:   Thu Oct 11 17:36:43 2018 +0530
11545 
11546     snapshot : fix high sev coverity on snapview-server.c
11547     
11548     This patch fixes CID 1325525 (double free).
11549     
11550     updates: bz#789278
11551     
11552     Change-Id: I26a5f428dde83dd7708815f06830decf4068b94c
11553     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
11554 
11555 commit 67624335f5d2ca9c8b0c7d1630e7186cb5cdd6d6
11556 Author: Iraj Jamali <ijamali@redhat.com>
11557 Date:   Tue Oct 9 12:07:11 2018 +0530
11558 
11559     performance/nl-cache: clang fix
11560     
11561     Argument with 'nonnull' attribute passed null.
11562     
11563     Adding a check to avoid the issue.
11564     
11565     Updates: bz#1622665
11566     
11567     Change-Id: I1d3a166e154a51da59bebb93a49f5174e593c98e
11568     Signed-off-by: Iraj Jamali <ijamali@redhat.com>
11569 
11570 commit 16704e575cfece60ed3d4ad413aaefabcae0474b
11571 Author: Kotresh HR <khiremat@redhat.com>
11572 Date:   Thu Oct 11 12:51:03 2018 +0530
11573 
11574     cli: Fix memory leaks reported by ASAN
11575     
11576     'gf_cli_rsp' structure has 'op_errstr' and 'dict.dict_val'
11577     which could get allocated by xdr and should be freed. This
11578     patch takes care of all instances of the same.
11579     
11580     Updates: bz#1633930
11581     Change-Id: I2a5d129ffe85cfca743c89edb45b658f3ce688cb
11582     Signed-off-by: Kotresh HR <khiremat@redhat.com>
11583 
11584 commit 33eefcec0ad2df3d6aac0ac225b64c61d42e56ef
11585 Author: Iraj Jamali <ijamali@redhat.com>
11586 Date:   Wed Oct 10 12:29:21 2018 +0530
11587 
11588     mgmt/glusterd: clang fix
11589     
11590     Argument with 'nonnull' attribute passed null.
11591     
11592     Added checks to avoid the issues.
11593     
11594     Updates: bz#1622665
11595     
11596     Change-Id: I0dba1185cee5baba3c124d687560a06fe182381e
11597     Signed-off-by: Iraj Jamali <ijamali@redhat.com>
11598 
11599 commit 522dcab94ae9938c072cf50062b507cedafdc011
11600 Author: Shwetha Acharya <sacharya@redhat.com>
11601 Date:   Mon Oct 1 12:39:48 2018 +0530
11602 
11603     mgmt/glusterd: NULL pointer dereferencing clang fix
11604     
11605     Problem: dereferencing of this->name; volinfo and xl
11606     can be null.
11607     
11608     Solution: Replaced this->name with apropriate names in few places,
11609     added a null check to avoid dereferencing of volinfo,
11610     and introduced a goto out statement, such that null pointer value is
11611     not passed to the function volgen_xlator_link when xl becomes NULL.
11612     
11613     Updates: bz#1622665
11614     
11615     Change-Id: I77616bd23f58328cb6dbe681914a028991d49abb
11616     Signed-off-by: Shwetha Acharya <sacharya@redhat.com>
11617 
11618 commit 62faf7d37bd8b6be6657b1e3b61f92eac5b84653
11619 Author: Krishnan Parthasarathi <kparthas@redhat.com>
11620 Date:   Thu Oct 11 15:16:41 2018 +0530
11621 
11622     socket: use accept4/paccept for nonblocking socket
11623     
11624     This reduces the no. of syscalls on Linux systems from 2, accept(2) and
11625     fcntl(2) for setting O_NONBLOCK, to a single accept4(2).  On NetBSD, we
11626     have paccept(2) that does the same, if we leave signal masking aside.
11627     
11628     Added sys_accept which accepts an extra flags argument than accept(2).
11629     This would opportunistically use accept4/paccept as available.  It would
11630     fallback to accept(2) and fcntl(2) otherwise.
11631     
11632     While at this, the patch sets FD_CLOEXEC flag on the accepted socket fd.
11633     
11634     BUG: 1236272
11635     Change-Id: I41e43fd3e36d6dabb07e578a1cea7f45b7b4e37f
11636     fixes: bz#1236272
11637     Signed-off-by: Krishnan Parthasarathi <kparthas@redhat.com>
11638 
11639 commit 807ec72d740a4548c250cc660c89fc59d2f191d6
11640 Author: Shwetha Acharya <sacharya@redhat.com>
11641 Date:   Thu Oct 11 11:27:44 2018 +0530
11642 
11643     performance/write-behind: NULL pointer passed to a nonnull parameter
11644     
11645     Problem: wb_directory_inode->lock can be null.
11646     
11647     Solution: added a condition, if(!wb_directory_inode->lock.spinlock)
11648     to address the issue (checked one of the attributes of union lock
11649     to ensure that union is not null).
11650     
11651     Updates: bz#1622665
11652     Change-Id: I0749ee16aa2c23f51d4b4c7b0979d494bcd4d90e
11653     Signed-off-by: Shwetha Acharya <sacharya@redhat.com>
11654 
11655 commit 23e96fd93c021d4647b940a47df2250fe9159a3b
11656 Author: Krishnan Parthasarathi <kparthas@redhat.com>
11657 Date:   Tue Oct 9 15:17:57 2018 +0530
11658 
11659     socket: set FD_CLOEXEC on all sockets
11660     
11661     For more information, see http://udrepper.livejournal.com/20407.html
11662     
11663     BUG: 1236272
11664     Change-Id: I25a645c10bdbe733a81d53cb714eb036251f8129
11665     fixes: bz#1236272
11666     Signed-off-by: Krishnan Parthasarathi <kparthas@redhat.com>
11667 
11668 commit 4511435fd353b98551be17d02e1d91e8896164ed
11669 Author: Amar Tumballi <amarts@redhat.com>
11670 Date:   Mon Sep 24 10:31:23 2018 +0530
11671 
11672     README: add a section for giving hints on testing
11673     
11674     Change-Id: I1529494504c38172f56759c0f06231864e32df24
11675     updates: bz#1193929
11676     Signed-off-by: Amar Tumballi <amarts@redhat.com>
11677 
11678 commit 46b970f64a797aa67b9cdb3704e24b8392398191
11679 Author: Ashish Pandey <aspandey@redhat.com>
11680 Date:   Wed Oct 10 13:46:22 2018 +0530
11681 
11682     cluster/dht : Fix coverity issue
11683     
11684     To check if the gfid is null or not
11685     we should use function gf_uuid_is_null
11686     
11687     CID: 1382364
11688     https://scan6.coverity.com/reports.htm#v42607/p10714/fileInstanceId=86243257&defectInstanceId=26374360&mergedDefectId=1382364
11689     
11690     Change-Id: I81944b823c9ee6e6dcc9695f64f7e5966e0d7030
11691     updates: bz#789278
11692     Signed-off-by: Ashish Pandey <aspandey@redhat.com>
11693 
11694 commit 27d3d481bd66c30aaa9e30040aadee7325e9995e
11695 Author: Kinglong Mee <mijinlong@open-fs.com>
11696 Date:   Wed Sep 19 03:35:38 2018 -0400
11697 
11698     gfapi: fix crash of using uninitialized fs->ctx
11699     
11700     0  0x00007fb3db3a2ee4 in pub_glfs_fini (fs=0x7f8977d63f00) at glfs.c:1236
11701     1  0x00007fb3db3a2065 in pub_glfs_new (volname=0x7f80de4d4d40 "openfs1")
11702         at glfs.c:784
11703     2  0x00007fb3db5cf089 in glusterfs_get_fs (params=...,
11704         up_ops=up_ops@entry=0x7fb3ca643130)
11705         at /usr/src/debug/nfs-ganesha/src/FSAL/FSAL_GLUSTER/export.c:889
11706     3  0x00007fb3db5cf99a in glusterfs_create_export (
11707         fsal_hdl=0x7fb3db7e2490 <GlusterFS+112>, parse_node=0x7fb3ca6387d0,
11708         err_type=<optimized out>, up_ops=0x7fb3ca643130)
11709         at /usr/src/debug/nfs-ganesha/src/FSAL/FSAL_GLUSTER/export.c:1011
11710     4  0x00007fb3e11c485f in mdcache_fsal_create_export (
11711         sub_fsal=0x7fb3db7e2490 <GlusterFS+112>,
11712         parse_node=parse_node@entry=0x7fb3ca6387d0,
11713         err_type=err_type@entry=0x7fb3c0bef140, super_up_ops=<optimized out>)
11714         at /usr/src/debug/nfs-ganesha/src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_main.c:281
11715     
11716     (gdb) p errno
11717     $1 = 12
11718     
11719     Change-Id: I3dd5b84b52962ceb0b5d4f9b4f475bf4aa724292
11720     updates: bz#1626313
11721     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
11722 
11723 commit 196b32423af9a5088056fe10ea22d01494670931
11724 Author: Ravishankar N <ravishankar@redhat.com>
11725 Date:   Wed Oct 10 12:18:55 2018 +0530
11726 
11727     afr: prevent winding inodelks twice for arbiter volumes
11728     
11729     Problem:
11730     In an arbiter volume, if there is a pending data heal of a file only on
11731     arbiter brick, self-heal takes inodelks twice due to a code-bug but unlocks
11732     it only once, leaving behind a stale lock on the brick. This causes
11733     the next write to the file to hang.
11734     
11735     Fix:
11736     Fix the code-bug to take lock only once. This bug was introduced master
11737     with commit eb472d82a083883335bc494b87ea175ac43471ff
11738     
11739     Thanks to  Pranith Kumar K <pkarampu@redhat.com> for finding the RCA.
11740     
11741     fixes: bz#1637802
11742     Change-Id: I15ad969e10a6a3c4bd255e2948b6be6dcddc61e1
11743     Signed-off-by: Ravishankar N <ravishankar@redhat.com>
11744 
11745 commit 4da0d93f8703c7247fece9d9fb471742e6fd7c33
11746 Author: Iraj Jamali <ijamali@redhat.com>
11747 Date:   Thu Oct 4 14:22:23 2018 +0530
11748 
11749     libglusterfs: NULL pointer dereferencing clang fix
11750     
11751     Avoided NULL pointer dereferencing by doing GF_VALIDATE_OR_GOTO for rvec
11752     
11753     Updates: bz#1622665
11754     
11755     Change-Id: I650e0203796dd705d79060f9506fc6c559b30f56
11756     Signed-off-by: Iraj Jamali <ijamali@redhat.com>
11757 
11758 commit 6472b43cfdb7454f1c1f1faf57ff13643d62fad7
11759 Author: Sunny Kumar <sunkumar@redhat.com>
11760 Date:   Tue Oct 9 19:40:31 2018 +0530
11761 
11762     locks : fix coverity issue
11763     
11764     This patch fixes CID 1356544 and 1356539.
11765     Both are of type NULL_RETURNS.
11766     
11767     Change-Id: I2ef7c3ff9929c4d85b79fff00e835ebee3ff3ce0
11768     updates: bz#789278
11769     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
11770 
11771 commit 0f2113cb0c3f9dff028fb45a62ec2d1d82b4cb66
11772 Author: Kinglong Mee <mijinlong@open-fs.com>
11773 Date:   Tue Sep 25 03:40:44 2018 -0400
11774 
11775     socket: clear return value if error is going to be handled in event thread
11776     
11777     Change-Id: Ibce94f282b0aafaa1ca60ab927a469b70595e81f
11778     updates: bz#1626313
11779     Signed-off-by: Zhang Huan <zhanghuan@open-fs.com>
11780 
11781 commit 2d96ce8faa277809c0c94aca54320483889f577d
11782 Author: Xavi Hernandez <xhernandez@redhat.com>
11783 Date:   Tue Sep 25 13:22:47 2018 +0200
11784 
11785     all: fix warnings on non 64-bits architectures
11786     
11787     When compiling in other architectures there appear many warnings. Some
11788     of them are actual problems that prevent gluster to work correctly on
11789     those architectures.
11790     
11791     Change-Id: Icdc7107a2bc2da662903c51910beddb84bdf03c0
11792     fixes: bz#1632717
11793     Signed-off-by: Xavi Hernandez <xhernandez@redhat.com>
11794 
11795 commit 0cda00f08d3d620be89830bad9d0e252648388e9
11796 Author: Kinglong Mee <mijinlong@open-fs.com>
11797 Date:   Tue Sep 25 03:42:47 2018 -0400
11798 
11799     logging: fix file handle leak when calls glfs_set_logging more times
11800     
11801     Closes the log file and reopens it to prevent leakage of file handles.
11802     
11803     Change-Id: Idfaa479961bb0088004d0d5558bdb0eb32cff632
11804     updates: bz#1626313
11805     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
11806 
11807 commit 21c6b3e5ab47b615f0b18a27ce74285490f43a7a
11808 Author: Yaniv Kaul <ykaul@redhat.com>
11809 Date:   Sun Oct 7 20:39:22 2018 +0300
11810 
11811     libglusterfs/src/logging.c: reduce the use of strings
11812     
11813     I did not see a good reason to copy the temp strings str1 and str2
11814     into msg string, and just used str1 (sprintf'ed str2 into it first).
11815     Hope it makes logging somewhat faster, but I also hope there's more
11816     room for improvement for faster logging.
11817     
11818     Renamed str1 to logline and str2 to msg for better readability.
11819     
11820     Also, remove dead assignment in _gf_msg() (clang complained).
11821     
11822     Compile-tested only!
11823     
11824     updates: bz#1193929
11825     Signed-off-by: Yaniv Kaul <ykaul@redhat.com>
11826     
11827     Change-Id: I19457d705c0b043937d96a4db35d087bb8e9b35a
11828 
11829 commit eb5382f9475900ec95cfd52278f46553dbde18a6
11830 Author: Raghavendra Bhat <raghavendra@redhat.com>
11831 Date:   Wed Sep 5 15:30:25 2018 -0400
11832 
11833     features/snapview-client: replace gf_log with gf_msg
11834     
11835     Change-Id: I87f01d86f50eb2fca21febb0ea3e77fbd152eb93
11836     updates: bz#1626610
11837     Signed-off-by: Raghavendra Bhat <raghavendra@redhat.com>
11838 
11839 commit 07072898bec59189e1cec991fb179d04ac485a7a
11840 Author: Susant Palai <spalai@redhat.com>
11841 Date:   Thu Oct 4 19:17:56 2018 +0530
11842 
11843     cloudsync: coverity fix
11844     
11845     CID: 1394649 1394657
11846     Issue: Explicit null dereferenced
11847     
11848     Change-Id: Ic1040ffa5548e1ecd49cfdc9a8716be445cbdf0f
11849     Updates: bz#789278
11850     Signed-off-by: Susant Palai <spalai@redhat.com>
11851 
11852 commit 3fa73bfdb5183cb8077d43c3c219c3fd9e9a1b65
11853 Author: Amar Tumballi <amarts@redhat.com>
11854 Date:   Mon Oct 8 13:21:38 2018 +0530
11855 
11856     cli: memory leak issues reported by asan
11857     
11858     With this fix, a run on 'rpc-coverage.t' passes properly.
11859     This should help to get started with other fixes soon!
11860     
11861     Change-Id: I257ae4e28b9974998a451d3b490cc18c02650ba2
11862     updates: bz#1633930
11863     Signed-off-by: Amar Tumballi <amarts@redhat.com>
11864 
11865 commit 8d4c5e022bba1b99786ce13f407c27024beccc23
11866 Author: Sunny Kumar <sunkumar@redhat.com>
11867 Date:   Tue Oct 9 12:43:32 2018 +0530
11868 
11869     cliutils :  python2 to python3 compat
11870     
11871     This patch fixes import issue in cliutils.
11872     
11873     Provided solution is to use relative import.
11874     
11875     Change-Id: I14c9a0b528ef52e7c91f6b17b569c68c2ced8912
11876     updates: #411
11877     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
11878 
11879 commit 73bb13e7bc45f5f5ce73302312f2094de1fee9a3
11880 Author: Pranith Kumar K <pkarampu@redhat.com>
11881 Date:   Fri Sep 28 11:10:46 2018 +0530
11882 
11883     extras: Script to collect system-stats
11884     
11885     For debugging performance issues we found that this script is very
11886     useful.  Script collects the stats of vmstat/iostat/top/sar to get
11887     metrics about memory/disk/cpu/network respectively at the configured
11888     interval. It is very important to collect all these metrics at the
11889     same time so that they can be correlated easily, so made this into a
11890     script
11891     
11892     fixes bz#1633926
11893     Change-Id: Iea52e55179b21c505953722c8898293fe92cb8de
11894     Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
11895 
11896 commit 667026f506d71bc5e5e740477bdc546f08c413ee
11897 Author: Kinglong Mee <mijinlong@open-fs.com>
11898 Date:   Wed Sep 26 05:39:47 2018 -0400
11899 
11900     syncop: check syncenv status before pthread_cond_timedwait() to avoid 600s timeout
11901     
11902     If a syncenv_task starts after syncenv_destroy, the syncenv_task enters
11903     a 600s timeout cond timedwait, and syncenv_destroy must waits it timeout.
11904     
11905     Change-Id: I972a2b231e50cbebd3c71707800e58033e40c29d
11906     updates: bz#1626313
11907     Signed-off-by: Kinglong Mee <mijinlong@open-fs.com>
11908 
11909 commit 3108fb24e72ab3f60ef0aa9cf3ffd8a3a33ce424
11910 Author: Milind Changire <mchangir@redhat.com>
11911 Date:   Mon Oct 8 21:35:04 2018 +0530
11912 
11913     rpc: coverity fixes
11914     
11915     CID: [1] 1394646 Unchecked return value from library
11916     CID: [2] 1394633 Unused value
11917     CID:     1382443 Sleeping while holding a lock [This is intentional]
11918     
11919     [1] https://scan6.coverity.com/reports.htm#v40014/p10714/fileInstanceId=86159112&defectInstanceId=26360786&mergedDefectId=1394646
11920     [2] https://scan6.coverity.com/reports.htm#v40014/p10714/fileInstanceId=86159365&defectInstanceId=26360919&mergedDefectId=1394633
11921     
11922     Change-Id: I03086f7a9672c9f50a2bc44cdbce0006c887357b
11923     updates: bz#789278
11924     Signed-off-by: Milind Changire <mchangir@redhat.com>
11925 
11926 commit b5f75e337c19d4fed85d4dcf15cf47f02fea5f6a
11927 Author: Kotresh HR <khiremat@redhat.com>
11928 Date:   Sat Oct 6 09:20:24 2018 +0530
11929 
11930     events: python2 to python3 compat
11931     
11932     1. Fix imports
11933     2. Use universal_newlines flag in Popen
11934     3. encode msg used in 'sendto'
11935     
11936     Updates: #411
11937     Change-Id: Ieacdc2ba86953ff3a2e9d9b9a97157e8e0e36836
11938     Signed-off-by: Kotresh HR <khiremat@redhat.com>
11939 
11940 commit fb6e8d0d0ca21b16d331fa69da9b9dadf6c5c35d
11941 Author: Kotresh HR <khiremat@redhat.com>
11942 Date:   Wed Oct 3 00:45:09 2018 -0400
11943 
11944     georep: python2 to python3 compat - syscalls
11945     
11946     1. ctypes/syscalls
11947         A) arguments is expected to be encoded
11948         B) Raw conversion of return value from bytearray into string
11949     2. struct pack/unpack - Raw converstion of string to bytearray
11950     3. basestring -> str
11951     
11952     Updates: #411
11953     Change-Id: I80f939adcdec0ed0022c87c0b76d057ad5559e5a
11954     Signed-off-by: Kotresh HR <khiremat@redhat.com>
11955 
11956 commit 860a990811c5364bc2de04ca07096cde312ff209
11957 Author: Kaleb S. KEITHLEY <kkeithle@redhat.com>
11958 Date:   Fri Oct 5 13:28:03 2018 -0400
11959 
11960     packaging: remove RHEL5-isms from glusterfs.spec(.in)
11961     
11962     CentOS5 too
11963     
11964     It's been a couple of years since we stopped doing anything with
11965     RHEL/CentOS 5
11966     
11967     Change-Id: I83e78fa84b93fa5baddaf3fab92736d692a9bbca
11968     updates: bz#1193929
11969     Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
11970 
11971 commit 5bc4594dabc08fd4de1940c044946e33037f2ac7
11972 Author: Mohit Agrawal <moagrawal@redhat.com>
11973 Date:   Tue Oct 2 08:54:28 2018 +0530
11974 
11975     core: glusterfsd keeping fd open in index xlator
11976     
11977     Problem: Current resource cleanup sequence is not
11978              perfect while brick mux is enabled
11979     
11980     Solution: 1) Destroying xprt after cleanup all fd associated
11981                  with a client
11982               2) Before call fini for brick xlators ensure no stub
11983                  should be running on a brick
11984     
11985     Change-Id: I86195785e428f57d3ef0da3e4061021fafacd435
11986     fixes: bz#1631357
11987     Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
11988 
11989 commit 31b6308c646a84c5064d2fb31dc45363a71b131a
11990 Author: Sanju Rakonde <srakonde@redhat.com>
11991 Date:   Sun Oct 7 14:22:06 2018 +0530
11992 
11993     cli: Resource leak coverity fix
11994     
11995     This patch fixes CID 1175017.
11996     
11997     Change-Id: I4968c35489aeb5bfa0461b2edf2a0d73b7f03c14
11998     updates: bz#789278
11999     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
12000 
12001 commit 82b7f8d77974bd2133705cce0d9188756dab3563
12002 Author: Sunny Kumar <sunkumar@redhat.com>
12003 Date:   Fri Oct 5 01:38:15 2018 +0530
12004 
12005     changetimerecorder : fix coverity issue
12006     
12007     This patch fixes CID : 1124725
12008     Issue : Resource leak
12009     
12010     updates: bz#789278
12011     
12012     Change-Id: I2afe65875fa393fd2d2f90b6f7cf7f6782dabf89
12013     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
12014 
12015 commit 1d392e2970fb5b1d2f8cf2904e7b7e5d32a21882
12016 Author: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
12017 Date:   Mon Oct 1 17:02:09 2018 +0530
12018 
12019     features/bit-rot: NULL pointer deferencing clang fix
12020     
12021     Problem: local could be NULL
12022     
12023     Added condition checks to address this issue
12024     
12025     Updates: bz#1622665
12026     
12027     Change-Id: I7be7dacc5386a77441385240b43f22d85074b69d
12028     Signed-off-by: Sheetal Pamecha <sheetal.pamecha08@gmail.com>
12029 
12030 commit 6a6709489525e2c438a3ec1974771247bc2e07d4
12031 Author: Sanju Rakonde <srakonde@redhat.com>
12032 Date:   Sun Oct 7 15:47:13 2018 +0530
12033 
12034     tests: add get-state command to test
12035     
12036     When geo-replication session is running, run
12037     "gluster get-state" command to test.
12038     
12039     https://review.gluster.org/#/c/glusterfs/+/20461/
12040     patch fixes glusterd crash, when we run get-state
12041     command with geo-rep session configured.
12042     Adding the test now.
12043     
12044     Fixes: bz#1598345
12045     Change-Id: I56283fba2c782f83669923ddfa4af3400255fed6
12046     Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
12047 
12048 commit 76bd93c7b889deafd4d5e1e9387714a6c1918ac7
12049 Author: Amar Tumballi <amarts@redhat.com>
12050 Date:   Mon Sep 17 17:17:54 2018 +0530
12051 
12052     xlators/experimental: move template files to '.c.in' type
12053     
12054     This is critical because we shouldn't be applying the automated
12055     coding standard (clang-format) tool on these files.
12056     
12057     This patchset is done by below steps:
12058     
12059     * clang-format -i ${filename}
12060     
12061     This creates syntax errors. Fix them using below two commands:
12062     * sed -i -e 's/ @/@/g' ${filename}
12063     * sed -i -e 's/,@/, @/g' ${filename}
12064     
12065     With this, these files are having minimum changes requried to
12066     compile, and is as close to the coding standard as possible.
12067     
12068     * git rename ${filename} ${filename}.in
12069     
12070     Updates: bz#1564149
12071     Change-Id: Icf90f7f81d6fa4400be4826e094fdff8e64508d0
12072     Signed-off-by: Amar Tumballi <amarts@redhat.com>
12073 
12074 commit c1f04098227c17bbebe286871c75524c80eb8b3a
12075 Author: Sunny Kumar <sunkumar@redhat.com>
12076 Date:   Thu Oct 4 19:20:30 2018 +0530
12077 
12078     cli : coverity fix in cli-rl.c
12079     
12080     This patch fixes CID 1395248.
12081     Issue : Resource leak
12082     
12083     updates: bz#789278
12084     
12085     Change-Id: I2fd4e36ac2c2a034e56883436abfc5199b095026
12086     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
12087 
12088 commit 07cb6a486502fa0f7ea141e7600ec67015383546
12089 Author: Susant Palai <spalai@redhat.com>
12090 Date:   Wed Oct 3 20:40:12 2018 +0530
12091 
12092     dht: coverity fixes
12093     
12094     CID: 1356541 Issue: Dereference null return value
12095     CID: 1382411 Issue: Dereference after null check
12096     CID: 1391409 Issue: Unchecked return value
12097     
12098     Change-Id: Id3d4feb4e88df424003cc8e8a1540e77bbe030e3
12099     Updates: bz#789278
12100     Signed-off-by: Susant Palai <spalai@redhat.com>
12101 
12102 commit f87d1a1e3374596bc5ee9dad2aee8d12db657da5
12103 Author: Sunny Kumar <sunkumar@redhat.com>
12104 Date:   Fri Oct 5 01:14:34 2018 +0530
12105 
12106     libglusterfs : fix coverity issue in stack.c
12107     
12108     This patch fixes CID : 1395323.
12109     Issue : Uninitialized scalar variable (UNINIT)
12110     
12111     updates: bz#789278
12112     
12113     Change-Id: Id9567ca2ff9b5a36b9014afa70cc5795fe67161d
12114     Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
12115 
12116 commit 3be7116d39ff767a24e5206de584a3c5f3afe8ef
12117 Author: Harpreet Lalwani <hlalwani@redhat.com>
12118 Date:   Mon Sep 24 14:53:18 2018 +0530
12119 
12120     features/compress: NULL pointer dereferencing clang fix
12121     
12122     Added a Label "err" to avoid NULL pointer dereferencing
12123     
12124     Updates: bz#1622665
12125     
12126     Change-Id: I7ec02a9cbbc482c2cf77f66e5692e86cd251cd53
12127     Signed-off-by: Harpreet Lalwani <hlalwani@redhat.com>
12128 
12129 commit 2066466dadf658dcf7226267ada50faaa103b7f3
12130 Author: Susant Palai <spalai@redhat.com>
12131 Date:   Thu Oct 4 16:40:08 2018 +0530
12132 
12133     cloudsync: coverity fix
12134     
12135     CID: 1394631 1394634 1394643  1394645 1394652 1394655  1394661 1394666
12136          1394669 1394670 1394671
12137     
12138     Issue:  Argument cannot be negative
12139     
12140     Change-Id: Id4a9b1adcc271374971e788f161d91e8c9ac442f
12141     Updates: bz#789278
12142     Signed-off-by: Susant Palai <spalai@redhat.com>
12143 
12144 commit a6128d64ec4c25eba002941ae68a9e9a72805704
12145 Author: Susant Palai <spalai@redhat.com>
12146 Date:   Wed Oct 3 21:09:15 2018 +0530
12147 
12148     libglusterfs: coverity fix
12149     
12150     CID: 1395829 Issue: Uninitialized pointer read
12151     
12152     Change-Id: I2e03d7b2a2f28f4a46408402ae03beba0f4c8308
12153     Updates: bz#789278
12154     Signed-off-by: Susant Palai <spalai@redhat.com>
12155 
12156 commit 4f7729748ee7d79e41dec9682a4fbbb2378ed5ac
12157 Author: Kaleb S. KEITHLEY <kkeithle@redhat.com>
12158 Date:   Mon Oct 1 14:09:03 2018 -0400
12159 
12160     dht: volume_options 'options' collision with nfs-ganesha's 'options'
12161     
12162     When dht was converted to xlator_api, the variable 'options' was not
12163     changed to dht_options, the same as was done to all the other xlators
12164     that were converted to xlator_api.
12165     
12166     Thus the reference to 'options' in dht.c is not resolved until runtime,
12167     and the RTlinker's search path starts with symbols in the executable,
12168     i.e. ganesha.nfsd's 'options'. (Which is obviously not the right one.)
12169     
12170     The unused extern references to 'options' (now dht_options) in nufa.c
12171     and switch.c is curious.
12172     
12173     Change-Id: Idf4a5d5fbd39aadfa5a4b529bceea65a3cbdf8f3
12174     updates: bz#1193929
12175     Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
12176 
12177 commit dbafe63ea5602db3ad65a3e4fba15b6ee97776ce
12178 Author: Xavi Hernandez <xhernandez@redhat.com>
12179 Date:   Thu Oct 4 10:31:45 2018 +0200
12180 
12181     Reduce execution time of bug-1559004-EMLINK-handling.t
12182     
12183     This patch reduces the execution time of bug-1559004-EMLINK-handling.t
12184     from ~14 minutes to ~90 seconds. To do so, it creates some fake