Sophie

Sophie

distrib > Fedora > 13 > i386 > media > os > by-pkgid > 8471bd520ded073b5cb4876bff0c70ca > files > 146

glusterfs-common-2.0.9-2.fc13.i686.rpm

commit 7e1ba386dd51aebe3fb05b5d7b3d9ff42e3fb77a
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Sun Dec 6 04:46:24 2009 +0000

    performance/stat-prefetch: fix memory leak.
    
    - rbt_hash_remove only removes entry from the hash table. It does not free
        the data.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 438 (Memory leak)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=438

commit f57ef39dbd46389dc9763bf291b08a0ba762b707
Author: Harshavardhana Ranganath <harsha@gluster.com>
Date:   Fri Dec 4 20:48:09 2009 +0000

    Fix critical argument validation bug found during initial testing.
    
    Signed-off-by: Harshavardhana <harsha@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 437 (Fix critical argument validation check on Fedora11 systems)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=437

commit 2449ed76ee63375846e62656e98cb88cdfce51ed
Author: Harshavardhana Ranganath <harsha@gluster.com>
Date:   Fri Dec 4 20:48:02 2009 +0000

    glusterfs-volgen honours now build level prefix
    
    Signed-off-by: Harshavardhana <harsha@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 437 (Fix critical argument validation check on Fedora11 systems)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=437

commit 9f37cca2ced2628f480fbdcf2071ca4b16b3549e
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Fri Dec 4 20:02:28 2009 +0000

    fuse-bridge: fix memory leak during error handling.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 438 (Memory leak)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=438

commit 84f474a00f68c4ac685fca970b1fe814a8c6e032
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Fri Dec 4 15:29:51 2009 +0000

    performance/stat-prefetch: don't check whether previous lookups have been failed in sp_process_inode_ctx.
    
    We need this patch for following reasons:
       1. The inode used in the successful lookup call may not be the one passed to
          fops operating on path. This may happen, if revalidate of inode is failed,
          but the lookup itself succeeds (in case of reavalidate failures, fuse
          sends a fresh lookup using new inode) and since inode_link, if there is an
          inode already associated with a path retains it.
       2. Only fops that "wait" in stat-prefetch on a lookup which is already in
          progress, need to check for the result of the lookup they are waiting on,
          before resuming and sp_process_inode_ctx is _not_ used in such contexts.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 428 (looks like stat cache not upto date..)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=428

commit 42c6d322bbb9ffa24e1f5ed8a909ee1258cfe0df
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Fri Dec 4 11:33:18 2009 +0000

    performance/stat-prefetch: add "caller" arguement to sp_process_inode_ctx.
    
    - since sp_process_inode_ctx is called by many fops, if the context is not
        set "caller" argument can be logged in log msgs to identify caller.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 257 (Backport stat-prefetch to 2.0)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=257

commit 61823259dcbcbd41e62cbb70a996b7f19c0b8de9
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Fri Dec 4 11:33:05 2009 +0000

    performance/stat-prefetch: refactor sp_lookup_cbk to use sp_update_inode_ctx.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 257 (Backport stat-prefetch to 2.0)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=257

commit 58768ac88263ad73d593a319f50c2089719f76bd
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Fri Dec 4 11:32:53 2009 +0000

    performance/stat-prefetch: dont check for inode context in fops like create, mkdir.
    
    - context will not be set as a fresh inode is passed in each of these calls.
        instead create a new context.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 257 (Backport stat-prefetch to 2.0)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=257

commit 496ff502e2b00b37051c1319885ff495475196fc
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Dec 2 12:19:07 2009 +0000

    performance/stat-prefetch: get inode context from local->loc.inode instead of inode passed as arguement in sp_lookup_cbk.
    
    - @inode in sp_lookup_cbk may be NULL in case of failure of lookup.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 426 (stat on mount point hangs.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=426

commit 85b587f07c754bd2399fb227c6ea79509502d38c
Author: Vijay Bellur <vijay@gluster.com>
Date:   Wed Dec 2 06:08:56 2009 +0000

    Add support in rbthash to make use of user provided mempool.
    
    Signed-off-by: Vijay Bellur <vijay@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 221 (stat prefetch implementation)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=221

commit 3f8320c34ad07ec93956ac0211fb2ef658893747
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Dec 2 01:53:01 2009 +0000

    performance/stat-prefetch: make lookup to wait for the completion of another lookup on same path if one is in progress.
    
    - If current lookup (2) does not wait for completion of the lookup (1) which
        is in progress, there can be a race condition where (2) completes ahead of
        (1) and resuming all the waiting operations in the queue. When (1) returns,
        the original operation (eg., stat, chmod etc) might've already unwound and
        hence the frame would've been destroyed.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 257 (Backport stat-prefetch to 2.0)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=257

commit b37c742f579191a96737c519f6de1ff54a3076d7
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Dec 2 01:52:15 2009 +0000

    performance/stat-prefetch: fix errors in handling memory allocation failures in sp_inode_ctx_process.
    
    - the variables that are used for making decisions are assigned before
        memory allocations and these variables were not reset to
        correct values in case of memory allocation failures.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 257 (Backport stat-prefetch to 2.0)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=257

commit 570e5b5a378f8c94c9b96f806ce8ae2c0fa11b22
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Dec 2 01:05:52 2009 +0000

    performance/stat-prefetch: fix access to inode table.
    
    - Access the inode table from one of fd->inode->table, inode->table or
        parent->table instead of from root xlators itable.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 369 (Samba does not work with booster.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=369

commit 8de5abce794b1d0e50f7ef77d6fdd63b2c788c42
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Dec 2 00:13:04 2009 +0000

    performance/io-cache: don't use stat got in read_cbk if it is zero-filled.
    
    - translators like io-cache, read-ahead return a zero-filled stbuf in
        readv_cbk and usage of zero filled stat for cache validation is not
        correct.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 376 (server-side io-cache is preventing client-side io-cache from working)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=376

commit 38e228b87af308f54c7b5cfe73cce08a14213afb
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Tue Dec 1 14:19:55 2009 +0000

    extras/benchmarking: port glfs-bm.c to master.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 422 (port glfs-bm to latest code-base)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=422

commit e75c2667db1c5a4f35f18406130b87325537edf3
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Tue Dec 1 14:18:16 2009 +0000

    libglusterfsclient/read: break reads bigger than the iobuffer size into smaller ones.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 334 (glusterfs_read/readv should break large-reads into 128Kb block sizes)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=334

commit 21abd303c84f7d36aeee90ecefb2a09091c706b5
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Tue Dec 1 14:18:00 2009 +0000

    libglusterfsclient/readv: break reads bigger than the iobuffer size into smaller ones.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 334 (glusterfs_read/readv should break large-reads into 128Kb block sizes)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=334

commit 6b2ad4a77fe8022b66cde091c3ebfb828dcf93da
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Tue Dec 1 18:05:15 2009 +0000

    stat-prefetch: fix unsafe reference to @local in sp_lookup_cbk.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 242 (If any of the writes fail, write-behind should not wait till the fd is closed for reporting errors)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=242

commit a60647a995357c8e573d05e15e17c68c6e3e38bb
Author: Harshavardhana Ranganath <harsha@gluster.com>
Date:   Mon Nov 30 01:18:38 2009 +0000

    Booster configuration fixed for per transport type and honours conf-dir option.
    
    Signed-off-by: Harshavardhana <harsha@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 421 (Make booster configuration honour conf-dir and transport type)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=421

commit 5cc6fb5759d359eb8d2011e5ec065bdffc1f8cc2
Author: Harshavardhana Ranganath <harsha@gluster.com>
Date:   Thu Nov 26 15:49:31 2009 +0000

    Excluding static libraries
    
    Signed-off-by: Harshavardhana <harsha@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 413 (rpmbuild fails with unpackaged files)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=413

commit 453f382606440cf1e80a38b178b90e6c6004cd39
Author: Harshavardhana Ranganath <harsha@gluster.com>
Date:   Thu Nov 26 15:42:03 2009 +0000

    Removed deprecated export_dir typo in volgen.
    
    Signed-off-by: Harshavardhana <harsha@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 412 (Remove deprecated export_dir in print string)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=412

commit 09be9b2593f5b4f1fcfdb2429ab65e4522bc620c
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Sat Nov 28 11:01:20 2009 +0000

    performance/quick-read: add options to doc/translator-options.txt.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 238 (Backport quick-read to 2.0 release)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=238

commit 2d6dc07c934ee3b65f320d54714939fd98e84008
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Sat Nov 28 10:53:40 2009 +0000

    performance/quick-read: change the maximum value of max-file-size to 1000KB from 1MB.
    
    - protocol restricts the maximum buffer size that can be received over network
        to 1MB. Since the buffer holding reply of lookup should also contain the
        lookup header and other key/value pairs of xattr_reply dict, the maximum
        file size that can be fetched through dictionary cannot be equal to 1MB.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 419 (Issues with writing files of size >= 1MB)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=419

commit ad5e0dc127a85027d5d2f8a26e746f4fdcf5e9f4
Author: Harshavardhana Ranganath <harsha@gluster.com>
Date:   Thu Nov 26 12:10:05 2009 +0000

    Volgen rewritten using option parser and added proper support for booster.
    
    Signed-off-by: Harshavardhana <harsha@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 411 (Rewrite volgen using option parser and extend cifs/nfs support)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=411

commit 378b34f62f52d8cf1e4ee3bd5e034363c77c6acc
Author: Harshavardhana Ranganath <harsha@gluster.com>
Date:   Wed Nov 25 14:33:55 2009 +0000

    Volgen supporting multidisks and booster configuration for nfs and cifs
    
    Signed-off-by: Harshavardhana <harsha@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 396 (Volgen multiple export directory support)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=396

commit c05707b41a325ec6a0cd4f24a6068a1efdf18d6a
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Nov 25 13:53:23 2009 +0000

    performance/stat-prefetch: Add refcounting to cache objects
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 405 (Segmentation fault in stat-prefetch.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=405

commit d01ba463de631fb38f96b2aa02907f0ac40db4eb
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Nov 25 13:53:11 2009 +0000

    performance/stat-prefetch: remove lock member in sp_fd_ctx_t.
    
    - since the lifetime of fd context can be no longer than the fd, we can use
        lock in fd.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 405 (Segmentation fault in stat-prefetch.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=405

commit 71eae4bd2f5384bd79c4e0bb6ac679841a8dc042
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Nov 25 13:52:56 2009 +0000

    performance/stat-prefetch: don't free the cache in readdir if the offset is not the expected one.
    
    - cache creation is expensive operation. Also, cache will be freed in
        releasedir. Hence, just remove all entries from cache without freeing
        the cache. However this is not entirely true, since sp_cache_remove_entry
        frees the old table and reinitializes a new table if all entries are being
        removed. When rbtree based hash table provides an interface to remove all
        the entries, sp_cache_remove_entry should be modified not to destroy the
        table.
    
      - this patch also fixes a race condition wherein the cache being used in
        lookup getting freed in readdir if the offset is not equal to expected
        offset.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 405 (Segmentation fault in stat-prefetch.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=405

commit fc9a8a76001b5d304d4589eb28ee903972dffcbb
Author: Vikas Gorur <vikas@gluster.com>
Date:   Fri Nov 20 07:51:36 2009 +0000

    storage/posix: Fix condition typo.
    
    Do comparison instead of assignment in if-condition
    in posix_link.
    
    Signed-off-by: Vikas Gorur <vikas@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 254 (storage/posix has to do inode number transformation wherever it unwinds with a stat structure)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=254

commit 5a131d66a26baa247ed9fc9acc7f4dc1ea6c1027
Author: Paul Rawson <plrca2@gmail.com>
Date:   Tue Nov 17 00:13:24 2009 +0000

    Fix Redhat init file so that it knows the correct binary location
    
    Signed-off-by: Paul Rawson <plrca2@gmail.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 388 (Redhat initfile fix)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=388

commit 957bcfd1242c15925272cb5e3bb0650bb29f7c89
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Nov 18 15:06:50 2009 +0000

    transport/ib-verbs: fix race-condition resulting in freeing of transport while it was still being used.
    
    - while handling a failed work completion status, the transport is
        disconnected. But further down in the code, the transport is still
        used. There can be a possibility that transport might've been freed
        by the time control reaches this point. More detailed description of
        events leading to this situation can be found at
        http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=381
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 381 (glusterfs crash in ib-verbs)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=381

commit 877522adb8a30de0023464cba0e597104e93cccc
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Fri Nov 13 16:04:47 2009 +0000

    transport/ib-verbs: synchronize ib_verbs_recv_completion_proc with ib_verbs_receive so that the former doesn't overwrite the pointer from which latter reads.
    
    - There can be a condition wherein,
        1. the thread executing ib_verbs_recv_completion_proc (thr 1) stores the
           buffer pointer and notifies the upper translators about a POLLIN event.
        2. the thread waiting for events on socket (thr 2) calls transport_receive,
           but in ib_verbs_receive it has not still read the data.
        3. thr 1 receives work completion event for another work request and
           overwrites the buffer pointer.
        4. thr 2 reads from the new pointer there by missing the data stored in
           buffer pointed by pointer which got overwritten.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 382 (Data can be lost before it is read in ib_verbs_receive.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=382

commit f88cd26064d7aa306720d4e4d48af9086d97fb13
Author: Amar Tumballi <amar@gluster.com>
Date:   Sun Nov 15 21:27:19 2009 +0000

    segfault fix in posix
    
    fd_ctx_get() was getting passed with wrong argument (type punned), and
    hence was getting segfaulted on 32bit systems.
    
    Signed-off-by: Amar Tumballi <amar@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 383 (glusterfs server crash on 2.0.8)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=383

commit 0b8b78145b31c12fa4e44e75453531c8a278bc48
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Nov 18 00:47:05 2009 +0000

    performance/stat-prefetch: don't cache dentries corresponding to directory.
    
    - distribute picks up the inode number from hashed subvolume. But readdir
        is done from different subvolumes based on the offset. Hence there is a
        possibility of inode number and device number for directories being
        inconsistent between two stat calls.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 371 (rm -rf fails on stat-prefetch.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=371

commit 1f17e87d6ed3a5cbe3f000c923a6280f5713fc0d
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Nov 18 00:46:51 2009 +0000

    performance/stat-prefetch: don't use pre-allocated dirent structure in sp_get_cache_entry.
    
    - since we don't know the size of dentry before calling sp_get_cache_entry,
        we must dynamically allocate the dentry in sp_cache_get_entry and copy the
        contents from cache.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 371 (rm -rf fails on stat-prefetch.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=371

commit 489bba93525f85725e85bdeb94e02ebd7be69772
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Nov 18 00:46:39 2009 +0000

    cluster/distribute: copy the stat structure while copying dentries in readdir_cbk.
    
    - only the transformed inode number was being copied, leaving other fields of
        stat 0.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 371 (rm -rf fails on stat-prefetch.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=371

commit e1230265306aa39ddeac4c1323087169358c5c6d
Author: Anand V. Avati <avati@dev.gluster.com>
Date:   Mon Nov 16 09:25:36 2009 -0800

    Revert "libglusterfs/src/gf-dirent.c: In gf_dirent_nb structure d_name should be char array of size 1."
    
    This reverts commit 1a53a5a4bf069e28ed6cbf6bba2b3ed14d20eb86.

commit b1573bcff0c63743cf6a2273b95508efa5714cc5
Author: Pavan Sondur <pavan@gluster.com>
Date:   Thu Nov 12 02:22:00 2009 +0000

    mount/fuse: Prevent a hang on the mount point if no server is up when the client is started.
    
    Signed-off-by: Pavan Vilas Sondur <pavan@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 373 (Spawn fuse thread after a parent_up and wait and block until child_up)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=373

commit c65e5463f22bb2ef8120ac89db19f3d6c11fe62f
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Mon Nov 9 18:42:54 2009 +0000

    performance/stat-prefetch: allocate and init local only if cache-miss happens in lookup.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 19cc1fa99cb0f02fd81b430eb7cce0a55b08d6e5
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Nov 11 14:27:21 2009 +0000

    performance/quick-read: set return value to zero after successful init.
    
    Signed-off-by: Raghavendra G <raghavendra@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 374 (quick read fails to initialize if no options are given)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=374

commit 1a53a5a4bf069e28ed6cbf6bba2b3ed14d20eb86
Author: vinayak hegde <vinayak@gluster.com>
Date:   Thu Nov 5 06:31:51 2009 +0000

    libglusterfs/src/gf-dirent.c: In gf_dirent_nb structure d_name should be char array of size 1.
    
    Signed-off-by: Vinayak Hegde <vinayak@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 360 (All fop fails when stat-prefetch is loaded on afr.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=360

commit de6be8f7f5eed270aa6fa904b1da15c9bc0b6e3b
Author: vinayak hegde <vinayak@gluster.com>
Date:   Thu Nov 5 06:29:58 2009 +0000

    performance/stat-prefetch: In sp_readdir_cbk op_ret is not handled correctly.
    
    Signed-off-by: Vinayak Hegde <vinayak@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 360 (All fop fails when stat-prefetch is loaded on afr.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=360

commit fcd9175ee73b9fe4fddf4348a3f9dbc395e14a01
Author: vinayak hegde <vinayak@gluster.com>
Date:   Wed Nov 4 23:48:06 2009 +0000

    performance/stat-prefetch: In lookup_cbk do not set error no to EINVAL, when inode_ctx_get returns -1.
    
    Signed-off-by: Vinayak Hegde <vinayak@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 360 (All fop fails when stat-prefetch is loaded on afr.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=360

commit 3624eb02435d6c0b6035aa4a00baf53fd2604253
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Wed Nov 4 00:16:45 2009 +0000

    libglusterfsclient: Dont alloc root inode context
    
    ....because the lookup on root inode done a few lines before this
    call already allocates an inode context. This one just over-writes
    that context, results in invalidation of the cached iattrs.
    
    Signed-off-by: Shehjar Tikoo <shehjart@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 354 (Stale file handle on unfs3 booster)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=354

commit fb50e361504a1daf39944e685dbd7f357f5f74f0
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Wed Nov 4 00:16:44 2009 +0000

    libglusterfsclient: Prevent root inode number clobbering
    
    Signed-off-by: Shehjar Tikoo <shehjart@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 354 (Stale file handle on unfs3 booster)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=354

commit 027f3de77d56e0eeeaf42d629b7cff73af0d6920
Author: Pavan Sondur <pavan@gluster.com>
Date:   Tue Nov 3 05:52:53 2009 +0000

    Include glusterfs-volgen in the rpm build.
    
    Signed-off-by: Pavan Vilas Sondur <pavan@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 343 (GlusterFS volume generator - 'volgen')
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=343

commit 190cbd78add970655dbfe93182961745d16240e4
Author: Corentin Chary <corentin.chary@gmail.com>
Date:   Tue Oct 27 12:59:54 2009 +0000

    transport/name.c: refine the address resolution logic when listen-host is not specified.
    
    - when listen-host is not specified and there are are no interfaces having
        adresses belonging to the address-family specified, listen at 0.0.0.0/::0.
    
      - this patch is necessary since with AI_ADDRCONFIG, getaddrinfo fails if there
        are no active interfaces for the address family specified and when
        listen-host is specified we still want the functionality provided with
        usage of AI_ADDRCONFIG.
    Signed-off-by: Corentin Chary <corentin.chary@gmail.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 339 (glusterfsd fails to start when there are no active interfaces having address in the address family configured.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=339

commit 05ba65c143ff35cf9a2bbd022711877efb8c67d4
Author: Anand V. Avati <avati@dev.gluster.com>
Date:   Tue Nov 3 04:41:09 2009 -0800

    use @initdir@ for installing init scripts

commit 28d10d5dfdca4015827679dcc9a18d0e75624287
Author: Anand Avati <avati@gluster.com>
Date:   Mon Nov 2 00:21:51 2009 +0000

    call-stub: fix leak of fxattrop dictionary
    
    Signed-off-by: Anand V. Avati <avati@blackhole.gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 315 (generation number support)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=315

commit 4ff046a1e1747cf93c650bd9c630547cdeaa3793
Author: Vijay Bellur <vijay@gluster.com>
Date:   Fri Oct 30 12:32:07 2009 +0000

    features/locks: Do not try to set values in dictionary when lookup has failed
    
    lock-count was being set without checking for op_ret from lookup. This would
    cause a lot of Critical messages in the log as dict would be NULL in case
    of a lookup failure.
    
    Also, did some minor re-factoring.
    
    Signed-off-by: Vijay Bellur <vijay@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 306 (Enhance locks to aid debugging)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=306

commit e4548d105538182ee3e2be72d9ceb11df18610fd
Author: Vikas Gorur <vikas@gluster.com>
Date:   Fri Oct 30 05:58:01 2009 +0000

    cluster/afr: Don't try to self-heal if there are locks held
    
    If the inodelk_count or entrylk_count is positive on a
    file/directory, don't try to do self-heal on it.
    
    Signed-off-by: Vikas Gorur <vikas@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 326 ([2.0.8rc9] Spurious self-heal)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=326

commit f01aa2aa7487cdb3198fb7749d2fbf25d41ad1e6
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Fri Oct 30 03:40:11 2009 +0000

    booster: Must check errno for error number not return value
    
    Signed-off-by: Shehjar Tikoo <shehjart@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 346 (booster returns success on failed getxattr and lgetxattr)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=346

commit c618b7bc59ad46e8b9d1eed0383184336382aec7
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Fri Oct 30 03:40:09 2009 +0000

    booster, libglusterfsclient: Support samba specific relative paths
    
    Signed-off-by: Shehjar Tikoo <shehjart@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 158 (libglusterfsclient: Applications are restricted to using absolute paths)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=158

commit 7e77e4c026f48137b2320ad07e9834a7b0cddc45
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Fri Oct 30 03:40:10 2009 +0000

    core: Check for NULL to avoid segfault
    
    A segfault as a result of this was observed during tests.
    
    Signed-off-by: Shehjar Tikoo <shehjart@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 348 (touch on booster segfaults)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=348

commit d45e6b9a17a2a40a06d6cffbac97e6568223f143
Author: Pavan Sondur <pavan@gluster.com>
Date:   Thu Oct 29 09:31:42 2009 +0000

    Implement lookup in posix locks to return lock counts in a dict value.
    
    Signed-off-by: Pavan Vilas Sondur <pavan@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 306 (Enhance locks to aid debugging)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=306

commit b9e3c902bf6eed825ebd6323a5905d64a3153269
Author: Vikas Gorur <vikas@gluster.com>
Date:   Thu Oct 29 07:44:24 2009 +0000

    storage/posix: Serialize do_xattrop.
    
    Hold a lock on the inode for the getxattr/add-array/setxattr
    section since multiple threads can enter into it causing
    wrong values to be written and triggering spurious replicate
    self-heal later.
    
    Signed-off-by: Vikas Gorur <vikas@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 326 ([2.0.8rc9] Spurious self-heal)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=326

commit f1f80d5f037800fd8c653c6985fe0874c1d7bca6
Author: Vikas Gorur <vikas@gluster.com>
Date:   Thu Oct 29 07:43:57 2009 +0000

    storage/posix: Refactor xattrop
    
    Move common code into do_xattrop.
    
    Signed-off-by: Vikas Gorur <vikas@gluster.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 326 ([2.0.8rc9] Spurious self-heal)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=326

commit d3a1b1e45d83d66eeb4fbd630dfe716b263b437c
Author: Harshavardhana Ranganath <harsha@gluster.com>
Date:   Thu Oct 29 00:50:03 2009 +0000

    change open flag to O_RDWR as ftruncate fails for a read only fd
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 112 (parallel deletion of files mounted by different clients on the same back-end hangs and/or does not completely delete)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=112

commit 70cc55ba0a28192c4e0d5d669e119f5dee9a01f0
Author: Anand V. Avati <avati@dev.gluster.com>
Date:   Wed Oct 28 07:15:55 2009 -0700

    Add -s (signoff) to format-patch.sh

commit 5ba4fcb1dab921b50a9f743edfa2da6256ddec75
Author: Harshavardhana Ranganath <harsha@gluster.com>
Date:   Mon Oct 26 19:54:14 2009 +0000

    Don't stop an already running glusterfsd upon upgrade or install.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 338 (rpm post uninstall kills glusterfsd process)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=338

commit 544333a14af7a0ff9595072b86716474d6e48632
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Fri Oct 23 13:03:04 2009 +0000

    booster: seperate out the implementations of readdir and readdir64.
    
    - readdir and readdir64 should not call same procedure booster_readdir
        in their implementation, since the layout of dirent structures returned by
        libc implementations of readdir and readdir64 is different (readdir returns
        struct dirent *, where as readdir64 returns struct dirent64 *).
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 333 (ls on paths not on virtual mounts report wrong directory contents)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=333

commit ef9a28bb2dd57f06c8c4ff75615aba894f2d0bf7
Author: Vikas Gorur <vikas@gluster.com>
Date:   Fri Oct 23 06:45:23 2009 +0000

    cluster/afr: Prevent spurious entry self-heal.
    
    If the initial lookup shows that 'pending' is positive, then
    self-heal will hold a lock and do a lookup again. This lookup
    might show that 'pending' is zero everywhere. However, entry
    self-heal used to consider this as a case of 'no sources' and
    try to merge the directories. This patch checks for that case
    and does not do the merge.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 326 ([2.0.8rc9] Spurious self-heal)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=326

commit 4c31c11509fa490d1746ed614042b04abccc0415
Author: vinayak hegde <vinayak@gluster.com>
Date:   Tue Oct 20 23:58:44 2009 +0000

    glusterfsd.c: Unnecessary writing of strerror of errorno on pipe
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 4 (mount --bind fails if run immediately after mounting GlusterFS)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=4

commit 121a781c1dd2d46f01bc6e9e30e1efc6b676a07a
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Oct 20 01:36:35 2009 +0000

    cluster/afr: Attempt to set fd ctx in create only if the call has succeeded.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 325 (crash in afr_fd_ctx_set)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=325

commit fbaea55d731ea9891c1c6ae08dea6b7765e7ad11
Author: Anand Avati <avati@gluster.com>
Date:   Sat Oct 17 00:58:01 2009 +0000

    locks: trace support for inodelk
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 306 (Enhance locks to aid debugging)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=306

commit 0fa1305ed3e3943b22d9a3340a4464daf7742ab3
Author: Anand Avati <avati@gluster.com>
Date:   Fri Oct 16 23:56:55 2009 +0000

    locks: trace support for entrylk
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 306 (Enhance locks to aid debugging)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=306

commit 04de4b6063617d4ad31b31fb0d24fe2242deb7f0
Author: Anand Avati <avati@gluster.com>
Date:   Fri Oct 16 16:21:09 2009 +0000

    locks: trace support
    
    'option trace on' will trace all locks and unlocks in the logfile
    under NORMAL log mode
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 306 (Enhance locks to aid debugging)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=306

commit c8f39bea04c6021243d1ab2bcea450a0f067aabc
Author: Anand Avati <avati@gluster.com>
Date:   Thu Oct 15 19:36:47 2009 +0000

    locks: keep ref on the inode while locks are held
    
    keeping refs on the inode while there are held locks prevents the
    inode from getting pruned away
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 112 (parallel deletion of files mounted by different clients on the same back-end hangs and/or does not completely delete)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=112

commit d3722f7546bdcfeed7cf3c2745c1bfafa7fa79a4
Author: Vikas Gorur <vikas@gluster.com>
Date:   Fri Oct 16 06:27:36 2009 +0000

    cluster/afr: Unlock only those paths which have been locked during rename.
    
    For ENTRY_RENAME_TRANSACTIONs, keep track separately whether the
    lower_path and the higher_path have been locked, and unlock only
    those which have been.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 112 (parallel deletion of files mounted by different clients on the same back-end hangs and/or does not completely delete)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=112

commit 4e2e497479a37ea659163ec8a84b8876b61ee1f3
Author: Vikas Gorur <vikas@gluster.com>
Date:   Fri Oct 16 03:10:08 2009 +0000

    cluster/afr: Hold lock on all names under "victim" in rmdir
    
    When an rmdir is being done, hold a lock on all names under it, so
    that new entries cannot be created while the rmdir is in progress.
    
    Without this lock, rmdir and create operations under the
    victim directory race with each other leading to
    inconsistencies among the subvolumes.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 112 (parallel deletion of files mounted by different clients on the same back-end hangs and/or does not completely delete)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=112

commit bd6a6bc71dfaad3f74aa974f0c26ee4adc4dc05e
Author: Pavan Sondur <pavan@gluster.com>
Date:   Fri Oct 16 01:56:06 2009 +0000

    Changes in posix unlink and rmdir to prevent inode num re-use immediately.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 112 (parallel deletion of files mounted by different clients on the same back-end hangs and/or does not completely delete)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=112

commit 6b3cf8045866726b09576e4d3f0a417257716373
Author: Anand Avati <avati@gluster.com>
Date:   Thu Oct 15 11:37:23 2009 +0000

    shuffle hash layouts on directories
    
    allow for hash layouts to be written differently for different
    directories to give a better spread for same filenames across
    directories
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 324 (distribute does not spread files of the same name among all servers)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=324

commit a159ebc5c0277797db7937c8489b26e1975dd265
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Thu Oct 15 01:57:58 2009 +0000

    performance/io-cache: remove caching in lookup.
    
    - caching file contents in io-cache during lookup is obsolete since quick-read
        does the same work.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 314 (Hang in quick-read)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=314

commit d9d268b7983d06cfb6d2b6bea5aca0f4bd60dee7
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Thu Oct 15 08:40:53 2009 +0000

    performance/quick-read: frame->local need not be set in qr_open_cbk.
    
    - local is used only by certain operations and hence it need not be set by
        all the operations invoking open.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 323 (fd leak with quick-read loaded in translator tree)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=323

commit db3155c3c8a96bb964408f22d833d3997a64570b
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 14 21:15:52 2009 +0000

    performance/quick-read: flush should proceed with winding if fd-context is not found.
    
    - if the fd-context is not set, quick-read has no role to play other than
        just passing down the call to underlying translators.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 317 (Data corruption with write-behind loaded in translator tree.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=317

commit 52521b87a32d841d5d4c9492c0916d658dc99907
Author: Anand Avati <avati@gluster.com>
Date:   Tue Oct 13 07:32:27 2009 +0000

    afr transaction: fix op_ret check during locking
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 112 (parallel deletion of files mounted by different clients on the same back-end hangs and/or does not completely delete)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=112

commit f512ee469bd690f65e388f565b69e2395e43a4aa
Author: Anand Avati <avati@gluster.com>
Date:   Tue Oct 13 06:42:50 2009 +0000

    prevent spurious unlocks from afr selfheal
    
    afr selfheal now remembers all the nodes on which locks were successfully
    held and sends unlocks only to those nodes
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 112 (parallel deletion of files mounted by different clients on the same back-end hangs and/or does not completely delete)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=112

commit 92a5fd621db0949637bb37e698709271e13610df
Author: Anand Avati <avati@gluster.com>
Date:   Tue Oct 13 06:27:22 2009 +0000

    afr transaction prevent spurious unlocks
    
    mark a subvol with held lock only if op_ret == 0
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 112 (parallel deletion of files mounted by different clients on the same back-end hangs and/or does not completely delete)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=112

commit fd441bca2a68ca93765f7a270cab1b7ffdf90799
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon Oct 12 07:01:41 2009 +0000

    cluster/afr: Hold second lock after first lock has been granted for rename transactions.
    
    Hold the lock on the {higher_path} only after the lock on the
    {lower_path} has been granted successfully.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 112 (parallel deletion of files mounted by different clients on the same back-end hangs and/or does not completely delete)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=112

commit 42e8f30a7c8e6fa7755aa058a2ef73542c7e8f0e
Author: Anand Avati <avati@gluster.com>
Date:   Mon Oct 12 11:21:22 2009 +0000

    replicate: fix missing frame in entry-self-heal
    
    when files on all backend nodes are missing, the logic in afr_sh_entry_erase_pending
    is broken and results in missing lookup frame. this causes processes to enter into
    uninterruptible sleep state.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 311 (missing frame (lookup) when entry-selfheal finds missing files in all backend nodes)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=311

commit 358b284535dc7e98d9817c8f63d7659098f5e427
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Fri Oct 9 12:43:36 2009 +0000

    performance/quick-read: change the default option values in quick-read.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 238 (Backport quick-read to 2.0 release)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=238

commit da5cf2d0209eadda7b6350205206e19253882edd
Author: Anand Avati <avati@dev.gluster.com>
Date:   Fri Oct 9 10:02:41 2009 +0000

    fail revalidate properly
    
    fail revalidate calls if inoode number has changed for the basename at the server side. This is a temporary workaround for most of the cases till inode-gen is merged
    
    Avati
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 112 (parallel deletion of files mounted by different clients on the same back-end hangs and/or does not completely delete)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=112

commit b0f456cdd55ebfa0498db75157b544ad88904d03
Author: Anand Avati <avati@dev.gluster.com>
Date:   Fri Oct 9 08:00:22 2009 +0000

    Add INIT_LIST_HEAD which was left out in the previous commit
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 297 (Posix locks cannot handle a single unlock over multiple held locks)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=297

commit f4d6b3ba3d94fb4cd7e9f9f19aaf3b11a10213a7
Author: Corentin Chary <corentin.chary@gmail.com>
Date:   Fri Oct 9 06:24:49 2009 +0000

    features/locks: Fix insert_and_merge
    
    Init the list structure, because it will be used later,
    and subtract_lock does not do it.
    
    Also remove the special handling for unlocks, which was
    probably introduced as a workaround for this bug.
    
    Signed-off-by: Corentin Chary <corentin.chary@gmail.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 297 (Posix locks cannot handle a single unlock over multiple held locks)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=297

commit 726ec6f9819bd29bc6e7a75c06a800fa6e6ac10f
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:34 2009 +0000

    performance/stat-prefetch: checking for cache and creation if not present is made atomic.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit f23a2c6d3daea2b1afffe5ead931efe9d1164a7d
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:33 2009 +0000

    performance/stat-prefetch: lookup the path in xattrop if it is not already looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 2375d4ad16f2bce4c49ed67d2e1273ffce928f9a
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:30 2009 +0000

    performance/stat-prefetch: implement sp_entrylk.
    
    - sp_entrylk has to send lookup on the path if it is not already looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 09d70bbbfa1cba9be7e6cd22efe1fe5fa1da68b6
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:29 2009 +0000

    performance/stat-prefetch: implement sp_inodelk.
    
    - sp_inodelk has to send lookup on the path if it is not already looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 39f147cca50a3b700c2f069c36964fe5811a3e1a
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:28 2009 +0000

    performance/stat-prefetch: do lookup on path in removexattr if it is not already looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit cc36c4ae0c4aef08b04f3b320a72a6abd2bd276d
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:26 2009 +0000

    performance/stat-prefetch: implement sp_getxattr.
    
    - sp_getxattr needs to send a lookup on the path if it is not already looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit cf4ced9d6329b410dfb864c70365134718524ec7
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:23 2009 +0000

    performance/stat-prefetch: lookup path in setxattr if it is not already looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit dc5c9ca1f00ecb14f0bcc7a64287b8ca738618dc
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:21 2009 +0000

    performance/stat-prefetch: lookup path in opendir if it is not already looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 9a422418df906c5157ebc1a2a0610aea4d06d2a9
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:20 2009 +0000

    performance/stat-prefetch: lookup path in create if it is not already looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit f9142a9831e0b7d1da66d83b09f07c06e0f5e714
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:18 2009 +0000

    performance/stat-prefetch: remove stat corresponding to oldloc->path from cache in sp_link.
    
    - ctime of oldloc->path will be changed on completion of link fop.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 575cb7ed94cb08ecc8bd3556355231c6ac3f343b
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:17 2009 +0000

    performance/stat-prefetch: lookup oldloc->path in link if it has not already been looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 920196c5420434f5b8a31466dcfb14b6f7196c50
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:15 2009 +0000

    performance/stat-prefetch: lookup oldpath and newpath in rename if they've not already been looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit d75a0e46ff31f1895ab669c7d859e7e8c5b46344
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:14 2009 +0000

    performance/stat-prefetch: do lookup of path in symlink if it is not already looked-up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit e67f66cda27f9b6ce59a049226de4c715914158d
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:12 2009 +0000

    performance/stat-prefetch: do lookup in rmdir if the path has not already been looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 311283be7f3255c3d9081875980ac8a8edd17a8d
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:09 2009 +0000

    performance/stat-prefetch: lookup the path in mkdir if it is not already looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 2c8afec5a9cc34331771d40fb143b8def268df0f
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:11 2009 +0000

    performance/stat-prefetch: do lookup in unlink if the path has not already been looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 98cdc4ca1212b901adc592e7873e90e77e6ef127
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:07 2009 +0000

    performance/stat-prefetch: do lookup in readlink if the path is not already looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 4199ac7e9417abe8a38a6333f0f0395ecef1e6d2
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:08 2009 +0000

    performance/stat-prefetch: do lookup in mknod if the path is not already looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 1120b0bcf6357509c5ef9413b5fdd351d0602d9e
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:05 2009 +0000

    performance/stat-prefetch: implement sp_access.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 2b2651db6fa5f3c644b9ab64874e37ffb966dd92
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:02 2009 +0000

    performance/stat-prefetch: do lookup in utimens if the path is not already looked up
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 697bbe4e15b6c080ea1874748807ab2b39ec8ffd
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:09:00 2009 +0000

    performance/stat-prefetch: do lookup in truncate if the path is not already looked-up
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit edbb6c1af44e4f9fc131e527064732ecf66ced93
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:08:59 2009 +0000

    performance/stat-prefetch: lookup the path in chown if it is not already looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit a4e67d3c524cb6b721192defe62e751243c563b0
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:08:57 2009 +0000

    performance/stat-prefetch: lookup the path in chmod if it is not already looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit f0fe79f513c6d41ef1077f291059946f07b7ed1b
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:08:56 2009 +0000

    performance/stat-prefetch: lookup the path in stat if the it is not already looked-up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit eaf82a3c0aff20a268766746739dc6f95df1eb77
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:08:55 2009 +0000

    performance/stat-prefetch: do lookup on the path in checksum if it is not already looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 40fe4be5277e2563411cbbcd94ad57753071c813
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:08:54 2009 +0000

    performance/stat-prefetch: lookup the path in open if it is not already looked up.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 614763a256f06bd5aab9ad88654f67454df79d36
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:08:53 2009 +0000

    performance/stat-prefetch: implement procedure sp_process_inode_ctx.
    
    - this procedure processes inode_ctx to make decisions like whether the
        current procedure can continue (i.e., inode is already looked up),
        or the procedure has to initiate/wait for lookup on the path. It also
        sets up the frame->local and adds the stub corresponding to current fop
        if needed.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 42d58aad9175e2eb086cf8113d65f53ee8aabbee
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:08:51 2009 +0000

    performance/stat-prefetch: use op_errno instead of errno to store error code.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 64bba90418fd037708f38c4a4e0b73c89a11ea5f
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:08:46 2009 +0000

    performance/stat-prefetch: Add support code to implement lookup-behind.
    
    - change sp_lookup and sp_lookup_cbk to support sending lookups when needed.
        lookups might need to be sent in fops like open, chmod, chown etc which
        operate on a path, since the actual lookup sent to stat-prefetch by its
        parent xlators is not propagated down the xlator tree if the path is
        cached.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit c4cba07caf188cae38ae4e3008526ea79e924abb
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 10:08:17 2009 +0000

    performance/stat-prefetch: remove lookup-behind in sp_lookup.
    
    - lookup-behind should be done on-demand basis, in fops like open
        instead of in sp_lookup itself. This would reduce network traffic
        between client and server related to lookup, if the only use of
        lookup was to fetch stat structure.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit a4b02e16a315862de378761b5f340ec346bd5e6d
Author: Amar Tumballi <amar@gluster.com>
Date:   Wed Oct 7 16:55:34 2009 +0000

    added few missing options in translator's option array
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit e31b712714920c8133269b416a0c9efd5c6ec44e
Author: Vijay Bellur <vijay@gluster.com>
Date:   Mon Oct 5 13:16:32 2009 +0000

    Changed occurrences of Z Research to Gluster.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit c77583a4ae5ecf716edb4b7c7834fc804ba36dad
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 03:46:12 2009 +0000

    performance/stat-prefetch: Add accounting of cache hits and misses.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit a9151c7c398f755abca20ec1055909f4ab4f3e0f
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 03:44:00 2009 +0000

    performance/stat-prefetch: optimizations to sp_lookup.
    
    - if stat cache cannot be found for a path in its parent inode and the path
        is a directory, we can get the cache from the inode corresponding to path
        and look for "." in that cache.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit fee63b09862e228eb95f5354c533d237e3a462b7
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 03:43:12 2009 +0000

    performance/stat-prefetch: change behaviour of sp_lookup when xattr_req is not NULL.
    
    - if the xattr_req is empty (fuse just creates an empty dictionary and
        sends along lookup) we can still use the cache prefetched during readdir,
        since we need not fill the reply dictionary.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit 02e934c0aeedf44c3213829e593f10ccaf4e6bba
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 03:42:45 2009 +0000

    performance/stat-prefetch: change the cache to use rbtree based hashtable instead of list for caching dentries.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit e2b1e7bb775b2f2f95357550bac786961ec9848a
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Oct 7 03:39:45 2009 +0000

    performance/stat-prefetch: fix memory leaks
    
    - sp_cache_get_inode uses fd_lookup which internally increases the refcount of
        fd by 1. This needs to be unrefed once we get the cache.
      - for directories, stat is stored in the inode context in sp_lookup_cbk.
        but, while doing so, no check was being done for the presence of context
        in inode, resulting in leak of memory equal to sizeof (struct stat) when
        multiple lookups happened on the directory. stat was needed to serve the
        postparent member during lookup. postparent stat is needed only in releases
        having NFS related changes and hence removing code present to get
        postparent.
      - path constructed in sp_readdir was not freed.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 257 (Backport stat-prefetch to 2.0)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=257

commit 65c68a0e9ae3d504bde99a81744c1b1103480430
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Mon Oct 5 07:55:59 2009 +0000

    core: Add rbtree based hashtable
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 145 (NFSv3 related additions to 2.1 task list)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=145

commit 94afc3ed4ce54bf6680572ba462e9c9cc599e8fd
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Mon Oct 5 07:55:58 2009 +0000

    mem-pool: Include stdlib for calloc()
    
    Doing so removes build warnings about calloc and free
    for files that use mem-pool but do not by themselves
    include stdlib.h, for eg., rbthash.c
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 145 (NFSv3 related additions to 2.1 task list)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=145

commit 86338b253e095f54997d43349959cbabe1612691
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Sep 30 14:51:28 2009 +0000

    mem-pool: add mem_pool_destroy.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 284 (performance actually decreases for 'ls -l' on a directory containing large number of files with stat-prefetch loaded)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=284

commit c1fd29003e68268cf81a72b83865f473a21d0d2f
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Oct 6 06:45:30 2009 +0000

    storage/posix: Process "glusterfs.content" key in lookup only for regular files.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 301 (lookup should ignore ISDIR error when trying to get content)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=301

commit b4c87b3314f20188f6cd2998cdd7c9e9ca015850
Author: vinayak hegde <vinayak@gluster.com>
Date:   Mon Oct 5 05:39:05 2009 +0000

    glusterfsd.c:Pipe is used during daemonization as ipc.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 117 (Wrong command line does not throw error)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=117

commit ac344e1cf5fb80f0c237f74508f5087741e94ee9
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon Oct 5 04:02:10 2009 +0000

    cluster/afr: Initialize local->first_up_child in AFR_LOCAL_INIT.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 285 ("first up child" can change during a transaction)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=285

commit 7ba890140fccdf58daa0b8dd1fa5586ebcd48a43
Author: Harshavardhana Ranganath <harsha@gluster.com>
Date:   Wed Sep 30 05:34:19 2009 +0000

    volgen script failed initial tests due to wrong fd definition
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 288 (volgen script failed initial tests due to wrong fd definition)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=288

commit 359c46118b756e1a5191ec6e902709258aad903b
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon Sep 28 20:58:57 2009 +0000

    cluster/afr: dir-write: Fix inode number handling.
    
    create, mkdir, symlink, mknod: Prefer to return itransform'd inode number
    from the first_up_child. If not, fall back on any other child that returned
    succcess.
    
    link, rename: Return the same inode number that
    was passed as part of loc_t.
    
    Also adds a new member to afr_local_t, local->first_up_child
    which is initialized at the start of the transaction. This
    fixes the race where a subvolume might go down during the transaction
    and thus have the first_up_child change.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 285 ("first up child" can change during a transaction)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=285

commit f09558e2bf5b39284c6a2b750d791d38854ffcfc
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Fri Sep 25 02:52:00 2009 +0000

    libglusterfsclient: don't destroy the iobuf pool during fini.
    
    - some of the iobufs in pool will be cached by io-cache and hence refcount
        will not be zero. Hence the assertion of ref being zero in
        __iobuf_arena_destroy fails. Commenting out iobuf_pool_destroy during fini, till
        we introduce proper cleanup in all translators, thereby allowing io-cache
        to release the buffers it has held.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 283 (booster aborts complaining the refcount of iobuf is not zero during glusterfs_umount_all.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=283

commit 5464ab94634e949ff4fdcba74f13ed7302fbd322
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Fri Sep 25 02:48:00 2009 +0000

    libglusterfsclient: traverse the vmplist during fini only if any entries are mounted.
    
    - the vmplist.list is inited only during mounting of first entry. Hence doing
        a list traversal when no vmpentries are present, results in a segfault.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 282 (segfault of applications using booster observed when the application does not mount any vmps.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=282

commit 47802bd0fdb65424a4466cb2d67118e98a5337a8
Author: Amar Tumballi <amar@gluster.com>
Date:   Fri Sep 25 00:56:58 2009 +0000

    glusterfs volume generator
    
    http://gluster.com/community/documentation/index.php/Glusterfs-volgen_Reference_Page
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 1ed903641a297aaa16d212243eb17c8899d7969b
Author: Anand Avati <avati@gluster.com>
Date:   Thu Sep 24 08:31:10 2009 +0000

    write-behind: check for NULL file pointer in flush callback
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 260 (ls on booster VMP results in error: "File descriptor in bad state")
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=260

commit bad9a77c646bc286feecba4d62e036504993175d
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Thu Sep 24 06:04:19 2009 +0000

    performance/write-behind: Add NULL checks for file pointer.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 260 (ls on booster VMP results in error: "File descriptor in bad state")
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=260

commit c730a5a5d937829b9c9b75286fe687feae5ef6f1
Author: Vikas Gorur <vikas@gluster.com>
Date:   Thu Sep 24 04:29:10 2009 +0000

    glusterfsd/main: Do a sem_post only if running in daemon mode.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 4 (mount --bind fails if run immediately after mounting GlusterFS)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=4

commit 4ab8f717e23dda136f35c30ab103762afef6ff7a
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Sep 24 00:57:40 2009 +0000

    booster: Cleanup booster_cleanup and register for atexit
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 279 (File written with booster results in self-heal after dd exits)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=279

commit 56d00a6e589525d4e88c86d800ef0b9665564e80
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Sep 24 00:57:39 2009 +0000

    libglusterfsclient: Support TRACE loglevel
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 210 (libglusterfsclient: Enhance logging)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=210

commit 84ad18a00cf0ddd5723eb2d43a0c046a4ed66059
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Sep 24 00:57:38 2009 +0000

    libglusterfsclient: Wait for all call pools to be destroyed
    
    This ensures that the process using libglusterfsclient does
    not exit before all the fops and calls have been replied to.
    It helps to ensure that the backends are in a sane state when
    the program exits.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 279 (File written with booster results in self-heal after dd exits)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=279

commit d2a961b3d6792864d6852590c7dba93dc28906fa
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Sep 24 00:57:37 2009 +0000

    libglusterfsclient: Clean up fini and umount code paths
    
    This patch cleans up the umount and fini paths in preparation
    to support waiting for unwind of all pending call frames.
    
    Two misc fixes are:
    1. Fix to avoid deadlock in _libgf_umount by
    using _libgf_vmp_search_entry instead of
    libgf_vmp_search_exact_entry since the latter tries to take a
    lock already help by _libgf_umount.
    
    2. Avoid a crash in _libgf_umount by deleting the vmp
    entry from the list before it gets freed.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 279 (File written with booster results in self-heal after dd exits)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=279

commit 788d174c36c29e3fcc638f2064c43f60f5521dd1
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Sep 24 00:57:36 2009 +0000

    iobuf, logging: Expose existing functions as required
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 279 (File written with booster results in self-heal after dd exits)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=279

commit b003921b33de2d72ee39eaa4b6c0a161261c9db3
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Sep 24 00:57:35 2009 +0000

    libglusterfsclient: Reduce logging aggressiveness to TRACE
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 210 (libglusterfsclient: Enhance logging)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=210

commit 7981f79e24e052ffe1ea758db3ba5217b74f20ce
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Sep 24 00:57:34 2009 +0000

    booster: Reduce logging aggressiveness to TRACE
    
    Internal users feel the amount of logging brought in
    due to a previous logging enhancement patch is a bit too
    aggressive for DEBUG, so this changes it to TRACE.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 210 (libglusterfsclient: Enhance logging)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=210

commit 7f2da3aab0f32daca97176c3bfed76c70497f9b2
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Sep 24 00:59:50 2009 +0000

    libglusterfsclient: Re-validate root inode on every path resolution
    
    If the root inode's is outdated, send a revalidate on it.
    A revalidate on root inode also reduces the window in which an
    op will fail over distribute because the layout of the root
    directory did not  get constructed when we sent the lookup on
    root in glusterfs_init. That can happen when not all children of a
    distribute volume were up at the time of glusterfs_init.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 256 (revalidates should be sent on '/' in libglusterfsclient.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=256

commit 13b4437770fadf3089e37bdedd0fe689e79c87f9
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Thu Sep 24 00:57:39 2009 +0000

    performance/write-behind: Add a NULL check for request->stub before checking request->stub->fop.
    
    - for non-write wind requests, the request structure outlives the stub.
        The call stub is destroyed when stack is wound but request is destroyed
        only when the reply has come.
        (for writes, both stub and request are destroyed when refcount becomes 0,
         which happens only when the write operation is stack unwound and a reply
         for the write operation has come from underlying translators, for non-write
         unwind requests the request is first destroyed before resuming the stub).
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 280 (simple stripe, with write-behind set up, when dbench is run client crashes.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=280

commit a484a0c47ef6468c1615aa78795880e71347f709
Author: Csaba Henk <csaba@gluster.com>
Date:   Wed Sep 23 10:34:38 2009 +0000

    fuse: emit a flush from release if we didn't get an adjacent FLUSH message from the kernel
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 223 (flush not sent)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=223

commit 270a473ddaa076af5b3c8c455c7642932dabb479
Author: vinayak hegde <vinayak@gluster.com>
Date:   Wed Sep 23 07:12:33 2009 +0000

    Changes for custom daemon function.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 4 (mount --bind fails if run immediately after mounting GlusterFS)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=4

commit 56f1b4ed39201355553f9ac4f49c16809d8351e5
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Tue Sep 22 23:50:33 2009 +0000

    performance/write-behind: store currently aggregated data size in wb_file
    
    - this helps us to not traverse the request list whenever we need currently
        aggregated data in the queue
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 276 (write behind needs to be optimized.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276

commit f72e01fb1d98c7df99b42ae1cbabec0fb0ecfcbd
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Tue Sep 22 23:50:17 2009 +0000

    performance/write-behind: store the current window size in wb_file.
    
    - this would increase the performance since we don't have to traverse the
        request list every time we need the current window size.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 276 (write behind needs to be optimized.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276

commit 8b76f7c394e99f35463fc508984c6c532ddf4a8f
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Tue Sep 22 23:49:55 2009 +0000

    performance/write-behind: reduce usage of iov_length.
    
    - request structure now holds a member write_size which is initialised at the
        time of request creation and used later.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 276 (write behind needs to be optimized.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276

commit 248c6f76d5bee281d7f78e135591d8c3ab964b6b
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Tue Sep 22 00:20:26 2009 +0000

    booster: implement F_DUPFD command in fcntl.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 277 (running dd on booster returns EINVAL)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=277

commit fb34f7fd81d3260d548ee0f6b5d656fdb1ec61f1
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Mon Sep 21 09:52:03 2009 +0000

    performance/write-behind: add option "enable-trickling-writes".
    
    - With this option enabled, writes are stack-wound even though not enough
        data is aggregated, provided there are no write-requests which are
        stack-wound but reply is yet to come. The reason behind this option
        is to make use of the network, which is relatively free (with no writes
        or replies in transit). However, with non-standard block-sizes of writes
        the performance can actually degrade. Hence making this configurable.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 276 (write behind needs to be optimized.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276

commit f86858c3be2ad5b4f9031625e3678528d9f4c6c1
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Mon Sep 21 09:51:49 2009 +0000

    performance/write-behind: reduce traversal of request list during wb_mark_winds.
    
    - move all the decision making code to __wb_can_wind.
      - don't continue traversing the request list, once we know any of the
        following conditions are true:
        * requests other than write are present in queue.
        * writes are happening at non-contiguous offsets.
        * there are no write requests, which are wound to server but not yet
          received the reply.
        * enough data is aggregated for writing.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 276 (write behind needs to be optimized.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276

commit 6d6e22cf3cdb4f2f1f21863ab19f9b36750bba04
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Mon Sep 21 09:51:21 2009 +0000

    performance/write-behind: reduce list-traversal during wb_mark_unwinds
    
    - don't traverse entire request list to get the window-size, instead break when current
        window size becomes greater than configured limit.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 276 (write behind needs to be optimized.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276

commit 4749db6e47ad0fa624e49c5ed3766c77335f68c7
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Mon Sep 21 09:51:35 2009 +0000

    performance/write-behind: remove redundant traversal of write-requests in the wind list in wb_sync.
    
    - no need of getting the total_count of number of requests in the list.
        Even if there is a single request, we need to sync it.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 276 (write behind needs to be optimized.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276

commit 0b1d043755d183c0ab1009de5a722364da0564bc
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Mon Sep 21 09:51:05 2009 +0000

    performance/write-behind: Aggregate adjacent contiguous write-buffers into single iobuf.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 276 (write behind needs to be optimized.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276

commit 3c5d05b42708e77e161eda4018b42484f36b1436
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Mon Sep 21 09:50:48 2009 +0000

    performance/write-behind: fine-tune logic of wb_mark_winds
    
    - remove wb_mark_wind_aggregegate_size_aware, since wb_mark_wind_all does
        the same work (with check for whether current aggregated data size is
        greater than the configured limit before calling it). Moreover,
        wb_mark_wind_aggregate_size_aware called __wb_get_aggregate_size
        redundantly, thereby reducing the performance, since for small
        sized large number of writes, traversing the list of requests takes
        significant amount of time.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 276 (write behind needs to be optimized.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276

commit 02f0b705e87f9cf50e7384520b49a54fc95e7b1e
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Mon Sep 21 05:31:42 2009 +0000

    libglusterfsclient: Fix build warnings
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 275 (libglusterfsclient: Generic build failure bug for libglusterfsclient and booster)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=275

commit 197b949d28bff35a10a10d5d2743fcdfd13ec2c2
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Mon Sep 21 05:31:28 2009 +0000

    booster: Fix build warnings
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 275 (libglusterfsclient: Generic build failure bug for libglusterfsclient and booster)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=275

commit a959abb342eba3a48be08fdeed1d3d90aa77dfce
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Fri Sep 18 05:59:29 2009 +0000

    performance/quick-read: refine logic of qr_readv.
    
    - An extra vector was being allocated when the number of bytes being read
        from cache were equal to the iobuf size.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 274 (Memory corruption in Apache running on booster)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=274

commit 28ca9acc22cab064a7df83897036ff333101f2ea
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Fri Sep 18 05:58:30 2009 +0000

    performance/quick-read: optimizations to lookup
    
    - qr_lookup not to send request for file-content if the cache is already
        present during revalidates.
      - flush the cache in qr_lookup_cbk if the cache is not in sync with the file.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 273 (Code review and optimize quick-read)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=273

commit 540d14f4e54ac72e2c474aa377a91d1abdbaaab6
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Fri Sep 18 05:58:15 2009 +0000

    performance/quick-read: make a comment more explicit.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 273 (Code review and optimize quick-read)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=273

commit fa953347e8f22baf4bf7e8042eeba0d949842a20
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Fri Sep 18 05:58:23 2009 +0000

    performance/quick-read: checking for qr_file in inode-context and creating if not present should be atomic.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 273 (Code review and optimize quick-read)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=273

commit b361b3aa5853626f918846894b8e43bff0d89252
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Fri Sep 18 05:58:08 2009 +0000

    performance/quick-read: refine the logic in qr_lookup.
    
    - a new size has to be set in xattr_req only
        if (quick-read is configured with a maximum file size limit
            && ((xattr_req does not have a request key for getting content)
                 || (the size requested in xattr_req is not equal to configured
                     size in quick-read)))
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 273 (Code review and optimize quick-read)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=273

commit 80f5d11c731eb286f55b21b35015943e2bbb1f8b
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Thu Sep 17 15:07:11 2009 +0000

    protocol/client: access glusterfs context from the ctx member of xlator object
    
    - A global context pointer cannot be used with libglusterfsclient, since
        there can be many contexts in a single process.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 271 (applications using booster protocol/client crash in client_setvolume_cbk.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=271

commit c179755dd1068e480e3d371dd9fafa94faee90aa
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Sep 16 23:58:36 2009 +0000

    performance/write-behind: check for the presence of context only in fds not opened on directories.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 260 (ls on booster VMP results in error: "File descriptor in bad state")
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=260

commit 00b242e1e35b2af7ccbade982e0dae7611cc019e
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Sep 16 12:34:19 2009 +0000

    client-protocol: fix race-condition encountered while accessing fdctx
    
    - In protocol/client, fdctx is accessed by two sets of procedures,
      protocol_client_mark_fd_bad falls in one set whereas the other set consists of
      all fops which receive fd as an argument. The way these fdctxs are got is
      different in these two sets. While in the former set, fdctx is accessed
      through conf->saved_fds, which is a list of fdctxs of fds representing
      opened/created files. In the latter set, fdctxs are got directly from fd
      through fd_ctx_get(). Now there can be race conditions between two threads
      executing one procedure from these two sets. As an example let us consider
      following scenario:
    
      A flush operation is timed out and polling thread executing
      protocol_client_mark_fd_bad, fuse thread executing client_release. This can
      happen because, immediately a reply for flush is written to fuse, a release on
      the same fd can be sent to glusterfs and the polling thread still might be
      doing cleanup. Consider following set of events:
    
      1. fuse thread does fd_ctx_get (fd).
      2. polling thread gets the same fdctx but through conf->saved_fds.
      3. Now both threads go ahead and does list_del (fdctx) and eventually free
         fdctx.
    
      In other situations the same set events might occur and the threads
      executing fops other than flush in the second set might be accessing a
      fdctx freed in protocol_client_mark_fd_bad.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 127 (race-condition in accessing fdctx in protocol/client)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=127

commit 953d7146f117f19ff6c92fafaffdc79e4a14d76e
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Fri Sep 11 07:54:22 2009 +0000

    performance/quick-read: access glusterfs_ctx from xlator instead of using glusterfs_get_ctx
    
    - since glusterfs_get_ctx gets the global context pointer, there can be
        problems in a multithreaded application running on libglusterfsclient
        doing multiple glusterfs_inits. Hence use context specific to the
        current xlator tree stored in each xlator object.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 240 (segmentation fault in qr_readv)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=240

commit 8ad41d36bfc683424133407ff26559654c7ba316
Author: Anand Avati <avati@gluster.com>
Date:   Wed Sep 16 05:43:01 2009 +0000

    io-cache: fix table->max_pri to 1 as the lowest priority
    
    patch http://patches.gluster.com/patch/1319/ breaks when no priority
    is mentioned in the config. the patch makes ioc_get_priority() return
    1 as the value when no priority is given, but ioc_get_priority_list()
    was still returning 0 as the max_pri (maximum priority) which would
    result in lru list heads not getting initialized
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 261 (support for disabling caching of certain files)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=261

commit ca586f1b9f9f2848eeb8bb6a22f20851f8a117d6
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Tue Sep 15 08:03:46 2009 +0000

    booster: use __REDIRECT macro to prevent creat being renamed to creat64.
    
    - nm on libglusterfs-booster.so shows only creat64 defined but not creat. This
       behavior is observed due to following reasons.
    
       1. Booster is compiled with _FILE_OFFSET_BITS=64.
       2. fcntl.h when included with _FILE_OFFSET_BITS=64 defined, renames all
       occurences of creat to creat64 in the source code from the point of
       #include <fcntl.h>.
    
       fcntl.h should be included since booster.c uses many of the macros defined in
       that header and glusterfs (booster in turn) has to be compiled with
       _FILE_OFFSET_BITS=64 since glusterfs uses datatypes (off_t, stat etc) whose
       sizes vary depending on whether this macro is defined or not. Basically, this
       macro should be defined to provide portability across 32 and 64 bit
       architectures.
    
       The correct fix is to make glusterfs to use datatypes big enough to hold 64 bit
       variants as well as 32 bit variants (like int64_t replacing off_t) and not to
       define _FILE_OFFSET_BITS=64 at all.
    
       As a temporary work around,
       1. we can implement creat functionality in a function with different name, say
       booster_false_creat
       2. rename this function to creat using __REDIRECT macro. since this renaming
       happens after renaming of creat to creat64 (from the first __REDIRECT macro
       in fcntl.h), we will end up with creat symbol being defined in
       libglusterfs-booster.so
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 264 (creat is not resolved properly to the symbol defined in booster)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=264

commit 2cd45bcd9f252616c735284516c1f3ac07de00d9
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Tue Sep 15 08:03:59 2009 +0000

    libglusterfsclient: NULL terminate the vmp entry during vmp_entry_init.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 263 (files are not resolved to glusterfs when vmp is not terminated with a '/'.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=263

commit ce725f84d7d4d40ace9dd7ce5bcc89bdd77ce41d
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Tue Sep 15 08:04:15 2009 +0000

    booster: use appropriate conversion specifier during logging in close.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 262 (crash in booster close due to invalid conversion specifier during logging.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=262

commit 0141bbb5c7b154affb1210d4f92e9ffab14596c7
Author: Stephan von Krawczynski <skraw@ithnet.com>
Date:   Mon Sep 14 05:59:55 2009 +0000

    2.0.6 patch for io-cache pattern-matched non-caching
    
    Hello all,
    
    here is a small feature patch. Its intention is to give the user more control
    over the files performance/io-cache really caches. If the user knows exactly
    which files should be cached and which shouldn't there is currently no way to
    tell glusterfs _not_ to cache certain pattern. This patch allows you to
    disable caching by setting the priority of a pattern to "0". If you do not
    give any priority option it works just like before and caches everything.
    Honestly I am not totally sure that disabling caching works the way we did it,
    please comment.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 261 (support for disabling caching of certain files)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=261

commit ef8ea2672c14ae19b0ae421cf53a701f89f4f192
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Thu Sep 10 04:36:19 2009 +0000

    storage/posix: transform inode number in stat structure
    
    - when export directory is configured to span across multiple mountpoints,
        the inode number has to be transformed in order to make it unique.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 254 (storage/posix has to do inode number transformation wherever it unwinds with a stat structure)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=254

commit bcca4200218b45b547135a2e84a955062bc40089
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Tue Sep 15 01:05:20 2009 +0000

    extras: Add LD_PRELOAD test tool
    
    This tool allows us to check the sanity of the LD_PRELOAD
    mechanism so that we can be sure that an application's syscalls
    will be redirected into booster when that library is LD_PRELOADed.
    
    In case of failed syscalls, this tool should be run first
    to see if the calls are redirected as required.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 251 (Improve booster debugging through ld-preload testing tool)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=251

commit 973b964e68df39ec5c2e8a4699be84644c76864b
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Tue Sep 15 00:32:23 2009 +0000

    transport/ib-verbs: initialize fini member of new-transports created during accepting client connections.
    
    - This bug used to cause a memory leak of 2 * sizeof(ib_verbs_private_t) for each new client connection.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 259 (Memory leak on server side when there are large number of disconnections from clients)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=259

commit 80969eaf4e2ef58c051d6679fb678172b26022bb
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Mon Sep 14 13:25:25 2009 +0000

    backporting quick read to 2.0
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 238 (Backport quick-read to 2.0 release)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=238

commit 62d30db76e118cb244c35b6acc15005474d77750
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Thu Sep 10 07:41:14 2009 +0000

    backport stat-prefetch from 2.1
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 257 (Backport stat-prefetch to 2.0)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=257

commit dd149ca8e7757e6e935c6481be8fd4fee9d13790
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Thu Sep 10 07:21:33 2009 +0000

    libglusterfsclient: Wait for time ample enough for all the children of distribute to initialize before sending lookup on '/'.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 255 (libglusterfsclient should wait till all the children of distribute are initialized before sending first lookup on '/')
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=255

commit cf403ff73213bec7ce4781336e89a5bcfd9a167c
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Sep 9 12:18:55 2009 +0000

    protocol/server: server_stub_resume should check for failure of lookup when oldloc.parent is NULL.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 215 (crash on ib-verbs in 2.0.6-rc4)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=215

commit 23f2810c5e750ac7ccf82622740205b7615c852b
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Wed Sep 9 00:46:32 2009 +0000

    booster: Fix fd_t leak in pread64
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 174 (booster: fd_ts, they are a leakin)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=174

commit 2f44214fc6fd07c434ff6ca48f2c61d2ad9c3939
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Wed Sep 9 00:46:31 2009 +0000

    libglusterfsclient: Fix incorrect NULL check for fd
    
    We should check fdctx instead.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 253 (Global bug for libglusterfsclient NULL checks and CALLOC handling fixes)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=253

commit 3c029faaf40b53ef3be94d9ad9a927e9a5b4d72c
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Wed Sep 9 00:46:30 2009 +0000

    libglusterfsclient: Handle CALLOC failure in libgf_client_lookup
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 253 (Global bug for libglusterfsclient NULL checks and CALLOC handling fixes)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=253

commit 6858391d8909abeb2d396e806df49f6cd3253c20
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Wed Sep 9 00:46:29 2009 +0000

    libglusterfsclient: Handle CALLOC failure in libgf_init_vmpentry
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 253 (Global bug for libglusterfsclient NULL checks and CALLOC handling fixes)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=253

commit baa85e6b797dd3f3b70772a712599cc3ab8597b5
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Wed Sep 9 00:46:28 2009 +0000

    libglusterfsclient: Add inode_ctx NULL check during iattr cache validation
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 253 (Global bug for libglusterfsclient NULL checks and CALLOC handling fixes)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=253

commit 3c6cc99f3ab51b05d57bfe2b68f459a5c4b7cb20
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Tue Sep 8 23:40:36 2009 +0000

    libglusterfsclient: Enhance logging
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 210 (libglusterfsclient: Enhance logging)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=210

commit 6601576e141a78e22a8469e80c434ce05576379f
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Tue Sep 8 23:40:25 2009 +0000

    booster: Enhance booster logging
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 210 (libglusterfsclient: Enhance logging)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=210

commit 1ad5952aaf29585d5349cc636261306ab7701619
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Sep 8 05:07:02 2009 +0000

    cluster/afr: Check op_ret in afr_getxattr_cbk before accessing dict
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 250 (Crash in replicate getxattr)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=250

commit 06a885f70154720da0bcb77199312500998ba29b
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Thu Sep 3 04:42:05 2009 +0000

    performance/write-behind: hold locks when accessing members of wb_file.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 243 (Hold locks when accessing members of wb_file_t.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=243

commit 0281283ee0e27b26c2f30f0434a23a4269e147cf
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Sep 2 04:53:42 2009 +0000

    performance/write-behind: communicate back the errors in writes to servers in the next immediate writes from application.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 242 (If any of the writes fail, write-behind should not wait till the fd is closed for reporting errors)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=242

commit 2b334a49ae0e8b26c49fe2545a6a17c59e11cd7b
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Tue Sep 1 05:45:03 2009 +0000

    libglusterfsclient: handle intermediate path components which are symlinks properly in glusterfs_glh_realpath.
    
    - while building the realpath, if the intermediate path happens to be a
        symbolic link, the content of link was being appended at dirname (path),
        instead of appending to intermediate path.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 237 (If any of the path component other than the last one, happens to be a symbolic link glusterfs_glh_realpath does not construct correct path.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=237

commit c0c54cd9feeff6093c78027fade26379838e9899
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Tue Sep 1 00:32:40 2009 +0000

    libglusterfsclient: handle paths terminating with '/' properly in libgf_trim_to_prev_dir.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 236 (Stack overflow due to infinite recursion in glusterfs_glh_realpath)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=236

commit 7b3cad9869118386afd8b5f13ab2cff5d6190b7b
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Tue Sep 1 00:25:05 2009 +0000

    libglusterfsclient: handle failures in glusterfs_glh_realpath
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 235 (Handle failures in glusterfs_glh_realpath appropriately)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=235

commit 1d47c41f048194cd754d97391b5c490446fe6fa2
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Tue Sep 1 00:24:49 2009 +0000

    libglusterfsclient: check for memory allocation failure in glusterfs_glh_realpath.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 235 (Handle failures in glusterfs_glh_realpath appropriately)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=235

commit 83a245fda0739a5ed4253fe2c701ca58061f5324
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Tue Sep 1 03:54:21 2009 +0000

    libglusterfsclient: handle symlinks properly in glusterfs_glh_opendir.
    
    - exclude symbolic links from set of filetypes to which ENOTDIR is returned,
        since a symbolic link can point to a directory.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 234 (Apache-2.2 on booster returns HTTP_FORBIDDEN for a directory which is present)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=234

commit 302d310c82cf55ca178c13a9947eaea9c543a2ea
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Mon Aug 31 23:59:24 2009 +0000

    libglusterfsclient: fix to the way symbolic links are handled in glusterfs_glh_realpath.
    
    - don't assume the content returned by readlink while constructing realpath
        of a symbolic link to contain vmp as part of the path. This is necessary in
        case of symbolic links which contain relative paths as targets.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 233 (Crash in Apache running on booster when a client tries to access a symbolic link)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=233

commit f87b1481699bcfab8fd7b8768a9afa4cba85ad33
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon Sep 7 03:19:17 2009 +0000

    storage/posix: Handle setgid bit on directories correctly
    
    If a directory has the setgid bit set, then any entry
    created under it must have group ownership same as
    the directory.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 241 (Gluster not honouring SETGID flag)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=241

commit 97afc25cc7580df67fd65f41b086e33a45787887
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Mon Aug 31 22:37:40 2009 +0000

    ib-verbs: handle failure of ibv_create_qp gracefully.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 217 (crash in ib_verbs_create_qp)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=217

commit 2e96535c05a114fbefeb3c51cd29217176d61c65
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Fri Aug 28 00:14:47 2009 +0000

    libglusterfsclient: Compare compcount with path not maxentry
    
    When searching for an exact entry we need to compare the
    component counts in the candidate VMP and the count in the
    path being searched. This is opposite to the current
    situation where we compare the component count in VMP
    and the component count in maxentry, which will always
    be same.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 209 (VMP parsing through fstab has issues)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=209

commit 21d3084bc6b0ce572fc4136446d45c8ac0f647f8
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Fri Aug 28 00:14:38 2009 +0000

    libglusterfsclient: Enhance VMP searching logic
    
    Another attempt to enhance searching for VMP entries.
    There was a problem of returning the longest prefix match
    from all the VMPs without checking whether the number of
    matched components were same as the number of components
    in the candidate VMP.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 209 (VMP parsing through fstab has issues)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=209

commit 19de82a5caf0c6ec3ca09cb5b9a5f186fa9e78ee
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Fri Aug 28 00:14:28 2009 +0000

    booster: Support backward compatible options
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 209 (VMP parsing through fstab has issues)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=209

commit d01487e9b8bc056adf611201a6a3b8f48c7af7f8
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Aug 26 05:32:09 2009 +0000

    libglusterfsclient: return -1 with errno set to ENOSYS for apis which are not implemented.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 229 (For apis which are not implemented return correct values with errno set appropriately)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=229

commit 246abbe2f95d2492a8b57c8210fbdc3511d7a4f4
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Wed Aug 26 05:07:34 2009 +0000

    libglusterfsclient: don't use pointer returned from basename to free allocated memory.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 228 (Segmentation fault in glusterfs_getxattr)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=228

commit 33b93a6e9ac82b92d0bca8275ed385740ceca5ec
Author: Amar Tumballi <amar@gluster.com>
Date:   Mon Aug 17 19:01:50 2009 +0000

    changed booster fstab to parse the arguments same as mount.glusterfs
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 209 (VMP parsing through fstab has issues)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=209

commit 6e90ebabd5f32233a1c01ee6edd2a2b88bcd38fd
Author: Amar Tumballi <amar@gluster.com>
Date:   Thu Aug 20 18:36:04 2009 +0000

    protocol/client: 'connecting' event is properly notified.
    
    when there are no servers available to client, and transport init is
    not successful, send 'connecting' event once to parent so it doesn't
    hand in there.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 224 (Client hangs if none of the servers are up)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=224

commit 0187de2869f03614f99e61adf9c88f3e0bfb307d
Author: Krishna Srinivas <krishna@gluster.com>
Date:   Sun Aug 16 14:34:08 2009 +0000

    in server_rename if we do_path_lookup on the newloc and parent directory is not found, the server crashes.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 86f2f049902315b6ae833b54731699a801f9374b
Author: Anand V. Avati <avati@dev.gluster.com>
Date:   Mon Aug 17 15:00:01 2009 -0700

    Add BRANCH:release-2.0 tag. Master patches come without a BRANCH: tag

commit 9906bd585419a77259f192edb2fbf0fb8e04cf7f
Author: Csaba Henk <csaba@gluster.com>
Date:   Mon Aug 17 03:55:02 2009 +0000

    fuse: don't say "Success" when mount fails
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 219 (Error message incorrect when fuse_mount() fails)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=219

commit 63218f025ee679babcf0ed916f9e43fc58d91aee
Author: Amar Tumballi <amar@gluster.com>
Date:   Tue Aug 4 19:41:13 2009 +0000

    added log message when server fails to send the reply frame
    
    As of now, if a frame submit fails on server, there are no logs,
    and clients will have missing frames (which leads to 'hangs').
    Supporting situation like this very tricky without proper log
    messages. As a step to make our log message lean and meaningful,
    this log is important.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 190 (missing frames due to larger reply message size.. (ib-verbs))
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=190

commit 33c5ddbdac409dcb31fee4f26608b27ed1237949
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Sat Aug 8 12:17:04 2009 +0000

    filter: use O_ACCMODE for checking file access modes.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 196 (write-behind window size getting set to 0.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=196

commit b28a47cea459658ae6a2c8a4126614ec04170a16
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Sat Aug 8 12:16:25 2009 +0000

    read-ahead: use O_ACCMODE for checking file access modes.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 196 (write-behind window size getting set to 0.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=196

commit eb25bfe02562b229600a1c23149868432992cf2f
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Sat Aug 8 12:11:15 2009 +0000

    write-behind: use O_ACCMODE while checking for O_RDONLY in flags.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 196 (write-behind window size getting set to 0.)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=196

commit c2caeffbc6e1a3b9cb43237ecac105008561e8d6
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Aug 13 02:56:18 2009 +0000

    libglusterfsclient: Sync access to VMP list on new entry addition
    
    Some weeks back, I'd separated the big lock into vmplock and mountlock.
    See commit 304e4274ca9b0339539581c5413e3339078c1182 in mainline.
    
    At that time, we did not have a solution to the problem
    of when to init the vmplist in a thread-safe manner, since
    there was no lock to protect the vmplock specifically, and that
    when libgf_vmp_map_ghandle was called inside glusterfs_mount
    so the "lock" was already being held.
    
    Now that we have separate mount and vmp locks, the
    accesses can be synced correctly.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 211 (libglusterfsclient: Race condition against vmplist in libgf_vmp_map_ghandle)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=211

commit b27a4334b5926266ea2a87116010a6b510f1f029
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Aug 13 02:56:17 2009 +0000

    libglusterfsclient: Enhance VMP search logging
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 210 (libglusterfsclient: Enhance logging)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=210

commit 467d87898ae1cb34ba8f35819097fe8a76aa36c7
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Aug 13 02:56:16 2009 +0000

    libglusterfsclient: Use components for VMP searches
    
    Till now, we've been doing a character by character comparison
    between a given path and the VMP, to search for the glusterfs
    handle for the given path.
    
    This does not work for all cases and has been a known bug.
    This commit changes the byte-by-byte comparison into a more
    accurate component based comparison to fix search
    failures.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 209 (VMP parsing through fstab has issues)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=209

commit c09dfc5f604271ecda9acf596b011dc639db2ddf
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Aug 11 04:59:29 2009 +0000

    features/locks: Fix reverse logic in posix_lock_to_flock
    
    if the lock's end point is LLONG_MAX, the corresponding
    struct flock's len must be 0.
    
    Previous code had LLONG_MAX and 0 reversed.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit eed9ed130dd0168a669bd3df03fc0b68a989165d
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Aug 11 01:43:33 2009 +0000

    mount/fuse: Don't log setlk returning EAGAIN as a GF_LOG_ERROR.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 516b21c238394bd55b6ac770abec53cc5a1c9c4f
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Aug 11 01:42:14 2009 +0000

    features/locks: Set the right log level in a few places.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 028e584b205faf7f136c8846913335c04e174074
Author: Harshavardhana Ranganath <harsha@gluster.com>
Date:   Mon Aug 10 02:17:43 2009 +0000

    glusterfs log prints "TLA Revision" tag, remove it and reflect git instead
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 8dfdde57b38576270dd54f610b80f1288a16f09b
Author: Vikas Gorur <vikas@gluster.com>
Date:   Thu Aug 6 07:37:17 2009 +0000

    Filter changelog xattrs in replicate
    
    The AFR changelog xattrs, "trusted.afr.*" are now
    filtered and prevented from being visible on the
    mountpoint.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 9 (replicate's pending xattr's should not be visible on the mountpoint)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=9

commit 2be295d30acd61a919796227fef71f2757f88440
Author: Anand Avati <avati@dev.gluster.com>
Date:   Thu Aug 6 21:51:33 2009 +0000

    protocol/client: fixed registration of saved_fds
    
    In client_open_cbk, client_opendir_cbk the list_add_tail macros were invoked with wrong
    ordered arguments, causing the existing registered fd list to get unlinked from the
    saved_fds list. The effects of this is far fetched - when transport disconnects, open
    fds are no more marked bad as they are not reachable from the saved_fds list. After
    reconnection, resumed access on this fd causes reference to invalid fds on the server.
    It could appear in the form of 'unresolved fd' error, readdir happening on a file fd,
    files reading from other files, etc.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 192 (sefault in posix-readdir)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=192
    
    BUG: 126 (Immediate segfault when used for rootfs)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=126
    
    BUG: 173 ([ glusterfs 2.0.6rc1 ] - "server SEG fault")
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=173
    
    BUG: 194 (Apache+Booster results in inconsistent download size using wget)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=194

commit f6ea2b29707d700596f73f3de8b7e09e824327d1
Author: Anand V. Avati <avati@dev.gluster.com>
Date:   Thu Aug 6 00:57:44 2009 -0700

    Removed BRANCH: tag

commit bd56475921ef36effb162161b4d6423d7ac8e3f0
Author: Amar Tumballi <amar@gluster.com>
Date:   Tue Aug 4 18:34:15 2009 +0000

    server-lookup: added path info from header to log message
    
    in the previous commit, the path info was removed to prevent the
    segfault, which instead could have been provided from request
    header directly. More specific information is required for debugging,
    and hence adding the path log.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 189 (segfault in server-lookup)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=189

commit 925534952d05f828113ec45ff5c60294b76ef190
Author: Anand Avati <avati@dev.gluster.com>
Date:   Tue Aug 4 18:15:22 2009 +0000

    dht_stat_merge - use the highest uid when ambiguous
    
    When directories on different subvolumes have different ownerships, use the highest uid/gid till self-heal resolves the inconsistency
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 191 (random Permission denied errors)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=191

commit b834320d168feb54cf62bb1c0ae5af6f2704385e
Author: Amar Tumballi <amar@gluster.com>
Date:   Tue Aug 4 18:14:30 2009 +0000

    add check for making sure 'fd' belongs to directory in posix-readdir
    
    The root cause of this error is not found yet. But this check will
    make sure that there is no crash when the situation happens.
    Segfault can happen when a readdir() call comes over file's fd.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 192 (sefault in posix-readdir)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=192

commit a313fd6657cb4a5310399edebe1f0c666e6a8d00
Author: Amar Tumballi <amar@gluster.com>
Date:   Tue Aug 4 17:00:17 2009 +0000

    adding an option to mount.glusterfs for server failover while fetching volume files.
    
    Thanks to Cory Meyer <cory.meyer@gmail.com>
    
    With this option, 'single point of failure', in case of volfile server can be
    avoided.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 185 (Request to support secondary volfile-server option in mount.glusterfs)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=185

commit fce2911e29e68bc3bf6fed2a68761877eda2156c
Author: Amar Tumballi <amar@gluster.com>
Date:   Tue Aug 4 14:50:07 2009 +0000

    increased ib-verbs buffer size
    
    Noticed that in few cases, where ib-verbs doesn't handle a bigger
    sized buffer to be sent across, which happens without problem in
    tcp. Caused frame losses in the case where server's reply msg was
    bigger, hence the msg got dropped at the server end. With this patch
    ib-verbs buffer size is fixed to 512KB. (4 x page-size)
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 190 (missing frames due to larger reply message size.. (ib-verbs))
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=190

commit 736624b3b930ecf0848bb3631af53df9d0b66f65
Author: Amar Tumballi <amar@gluster.com>
Date:   Tue Aug 4 14:40:27 2009 +0000

    logging related bug fix in server_lookup()
    
    When 'dict_unserialize' failed, the log message was trying to
    print 'state->loc.path' and 'state->ino', which gets filled in
    later stages in flow. Caused segmentation fault when there was
    a failure.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 189 (segfault in server-lookup)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=189

commit 3641846fa58210617c28f56b9713652f1a6dd798
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Aug 4 04:40:04 2009 +0000

    cluster/afr: inode-read: Check stat buf for NULL before attempting to set inode number.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 184 ([ glusterfs 2.0.6rc2 ] - Client Segfault while running fs-perf-test)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=184

commit 48b027c82322ef8c34c16e3da03a3375de3fe699
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Fri Jul 31 12:37:40 2009 +0000

    libglusterfsclient: Bind fd on fd creation code paths
    
    When an fd_t is fd_create'd, we need to call fd_bind on it to
    ensure that any fd_lookup on the inode gets us this fd. We're not
    doing this so translators like write-behind were not able to order
    path-based requests at all resulting in some fops like stat, which
    could be issued after a writev, overtaking a previous writev which
    is still being written-behind.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 179 (fileop reports miscompares on read tests)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=179

commit cc58f457acfc452d8076b273c9bdab6cf0f9bb29
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Fri Jul 31 04:15:13 2009 +0000

    libglusterfsclient: Invalidate iattr cache on reads
    
    Earlier we have invalidated the iattr cache on writes. Now
    we need to do so for reads also, so that we are not updating
    the iattr cache with 0-filled stat received from io-cache.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 180 (fileop fails at chmod with stale file handle error over unfs3)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=180

commit 5e3ca250dd50f5723bc6a2034c0d637f6cfd941d
Author: Raghavendra G <raghavendra@gluster.com>
Date:   Thu Jul 30 07:41:06 2009 +0000

    afr: fix afr_utimens to wait for success of utimens on atleast priv->wait_count children.
    
    - need_unwind was initialised to 1 in afr_utimens_wind_cbk causing replicate
        to unwind just after first reply, irrespective of whether it was a success
        or failure.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 71 (dns failure causing "Transport endpoint is not connected")
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=71

commit 65c03aa578340e78bd828f1f1aae991ef0cdc448
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Jul 30 12:04:54 2009 +0000

    replicate: Return ino from first subvolume on inode creation fops
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 177 (replicate: On file/dir creation, replicate returns inode from random subvolumes)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=177

commit c8765d4d807cc9e63c8d96a568fc05002fa7cbd3
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Jul 30 12:04:26 2009 +0000

    libglusterfsclient: Use iobufs for storing application write data
    
    Till now we've been creating an iovec, storing references in it
    to the application data and simply passing it on to the translator
    tree. This means that the buffer being passed to the translators is
    not at all associated with the memory ref'd by the iobref argument
    to write fop. This is a problem when write-behind is a translator in
    the tree since it assumes that the memory in the iovecs passed to
    write fops is already refcounted by the iobref and so it simply copies
    the address of the application data. The problem is that the application
    can continue using this buffer, free it or over-write it destroying the
    data that write-behind may write at a later time.
    
    The solution involves copying the application's write buffer into
    an iobuf which will be referred to by the iobref.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 178 (libglusterfsclient: Data corruption on using write-behind in translator tree)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=178

commit bf93ef3c5d352f68d718e48ab2b5037b8b369413
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Wed Jul 29 08:03:24 2009 +0000

    booster: Fix fd leak due to incorrect NULL check
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 174 (booster: fd_ts, they are a leakin)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=174

commit e097c572b82a9c24b33d9eb00b87204ba44d6267
Author: Amar Tumballi <amar@gluster.com>
Date:   Mon Jul 27 16:49:14 2009 +0000

    server-protocol: fix in server-loc-fill()
    
    to continue with 'hashed' inode, even if inode_path() on the inode
    fails. This will is needed for few lock operations, to unlock the
    lock held on inode. (ie, it fixes 'rm -rf *' hang issue, seen from
    multiple clients).
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 112 (parallel deletion of files mounted by different clients on the same back-end hangs and/or does not completely delete)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=112

commit c6fcc71d720b1cd550a8f1386020567786acf3b2
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Tue Jul 28 04:51:15 2009 +0000

    libglusterfsclient: Fix solaris build error
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 115 (./configure adds libglusterfsclient when it shouldn't)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=115

commit 666243d4b665e4e7db08c39fd62d12cabde9f428
Author: Vikas Gorur <vikas@gluster.com>
Date:   Thu Jul 23 11:25:01 2009 +0000

    cluster/afr: Use user-supplied struct flock to STACK_WIND
    
    afr_lk_cbk:
     Use the original struct flock supplied by the
     user to do further STACK_WIND's, and not the flock returned
     by the previous STACK_WIND.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 159 (Client hangs when coherent byte range locks is attempted in replicate setup)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=159

commit 4929a0f2fb31570906a4eb795b6c7655d107d3a9
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Fri Jul 24 06:25:53 2009 +0000

    protocol/server: add checks for updatation of loc->parent in entrylk() or inodelk().
    
    entrylk() and inodelk() should try to update loc->parent only if parent is not-NULL.
    because it is not an error to have loc->parent == NULL for entrylk() and inodelk()
    operations.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 162 (Replication segfaults with many nodes)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=162

commit 698a573bfb167d8d6c51d07089995d861dd7fbd3
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Fri Jul 24 09:30:54 2009 +0000

    libglusterfsclient: Workaround for local memory corruption
    
    There seems to a reproduceable corruption specifically of
    the libglusterfs_client_local_t that is allocated for
    the read call. Therefore, the subsequent access to fd inside
    local leads to a segfault. This is a temporary fix.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 164 (libglusterfsclient: Segfault due to memory corruption of frame local in libgf_client_read)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=164

commit 53438fa2826ea6a5ea9fd9751d797c2875c2dca5
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon Jul 27 09:31:45 2009 +0000

    cluster/afr: Return same inode number in stat buf for readv_cbk
    
    Remember the inode number that had been returned in lookup_cbk
    and set the stat buf->ino to the same.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 166 (libglusterfsclient: Cached stat buf inode is different from ino in inode_t)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=166

commit 5a41851e86177e82a8d4ae1457972d5011466eef
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon Jul 27 04:29:26 2009 +0000

    cluster/afr: Set inode number in unwind_buf in the inode-write calls.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 166 (libglusterfsclient: Cached stat buf inode is different from ino in inode_t)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=166

commit 87071f027c47ac04b482527a2be58480b4fd5973
Author: Vikas Gorur <vikas@gluster.com>
Date:   Wed Jul 15 09:36:36 2009 +0000

    Return stat from read subvolume in dir-write ops.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 138 (create family calls do not return stat buf from read child)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=138

commit c045d4264bb83fb5e5384379aa3a824fe3038dc8
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Jul 14 08:05:14 2009 +0000

    Return stat info from read-child in all the inode-write ops
    
    Also modifies the inode-write ops to wait for the call
    to read-child to return (whether success or failure)
    before unwinding.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 125 (stat information not returned from the same subvolume always)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=125

commit 683fda4bf09c66f2ec7a47a8e4a5f08461031352
Author: Anand V. Avati <avati@dev.gluster.com>
Date:   Thu Jul 23 15:38:32 2009 -0700

    enable libglusterfsclient build by default

commit bea6b86ef6defba89274ef85667c56cb52c17d7b
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Jul 23 16:19:26 2009 +0000

    libglusterfsclient: Avoid overwrite of inode found through ino number
    
    In libgf_client_loc_fill, there is a possibility that all
    the ino, par and name are specified as non-NULL,non-zero args.
    
    So if an inode is located in the itable using the ino and the
    subsequent search for the inode using the par-ino and the file
    name does not result in an inode being found, the current
    code over-writes the inode that was found through the ino. The
    correct behaviour is to stop further searches if inode
    was already found using ino.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 161 (unfs3 crashes on link system call by fileop)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=161

commit c2733b13aaa6d38eb165e770a936f8bfc19bc685
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Jul 23 16:18:43 2009 +0000

    libglusterfsclient: Fill new loc with target's ino on link
    
    In the loc_t of the link being created, we must fill in the inode
    of the old/target loc since this is a link operation. The
    inode_link to the new parent is called in libgf_client_link.
    
    This fixes a crash while running fileop over a fully-loaded
    dist-repl vol file.
    Ref: Bugzilla 161
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 161 (unfs3 crashes on link system call by fileop)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=161

commit 2add5760c412d85f56a1ca2fc61ca743d1ee2a74
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Mon Jul 20 01:25:36 2009 +0000

    libglusterfsclient: Fake a fsid for every VMP
    
    This is needed to work around the replicate behaviour of
    possibly returning device number for the same file from
    
    different subvolumes.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 148 (replicate: Returns st_dev from different subvols resulting in ESTALE thru unfs3booster)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=148

commit 7b90b90780d3bb5a1b4a1c060fac1d2c4eb2a8dc
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Sun Jul 19 03:25:45 2009 +0000

    libglusterfsclient: Move DHT root-lookup workaround to init
    
    The workaround for the DHT requirement for a lookup on /
    needs to be done only once when the xlator graph is inited.
    Doing it on every path's lookup results in a major performance
    penalty when using distribute subvolumes upwards of 16, as reported
    by Avati.
    
    Ref: bug 152
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 152 (libglusterfsclient: DHT workaround is a major performance bottleneck)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=152

commit 20a142f76834668b9e1674010ba5af0b4b441474
Author: Amar Tumballi <amar@gluster.com>
Date:   Fri Jul 17 18:38:32 2009 +0000

    added timestamp to crash dump log.
    
    also did some minor enhancements in formating
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 151 (crash dump log should be in 'logviewer' friendly format)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=151

commit f4513b4de104f1c6f40f7bbe0a4bd698340db805
Author: Anand Avati <avati@gluster.com>
Date:   Fri Jul 17 15:34:14 2009 +0000

    Do not failover readdir in replicate
    
    Backport of http://patches.gluster.com/patch/561/ to release-2.0
    
    Also, the failover version of afr_readdir_cbk is buggy and
    crashes when it is called after a failover inevitably
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 150 (AFR readdir should not failover to other subvolume)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=150

commit 215b62f1db24bc7ff55d224046e343401d78c38b
Author: Amar Tumballi <amar@gluster.com>
Date:   Fri Jul 17 14:13:37 2009 +0000

    server: don't check for 'loc->parent' in entrylk and inodelk calls
    
    the lock operation on entry or inode is going to happen on only one
    inode, and it doesn't need dentry (with info on parent) for the
    lock operation to complete. Hence, in server_{inode,entry}lk() calls
    after server_loc_fill, we -should not- be checking for parent inode.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 112 (parallel deletion of files mounted by different clients on the same back-end hangs and/or does not completely delete)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=112

commit f5f018e66eaba3bf8cd8896c179692f055b2b309
Author: Amar Tumballi <amar@gluster.com>
Date:   Fri Jul 17 14:13:14 2009 +0000

    removed mod_glusterfs from the build
    
    future plan is to have httpd use booster and libglusterfsclient
    instead.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 031eb508731b1727ef0fcb5c2d525adadf5ef2b1
Author: Amar Tumballi <amar@gluster.com>
Date:   Fri Jul 17 14:12:50 2009 +0000

    change mount.glusterfs.in to work with non-bash shells too.
    
    removed 'fuction ' prefix to function definitions which was very
    much /bin/bash specific.
    
    Thanks to Brent A. Nelson <brent@phys.ufl.edu> for the patch.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 139 (tiny glitch in mount.glusterfs in 2.0.4)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=139

commit f45ea4244288a2397b72c272184c9113ee0c1f08
Author: Amar Tumballi <amar@gluster.com>
Date:   Fri Jul 17 14:12:24 2009 +0000

    break inode_path if the length of the path crosses PATH_MAX
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 134 (infinite loop in inode_path ())
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=134

commit dbccda35cdcad06208e2fc7554287b539e0060a6
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Fri Jul 17 08:47:32 2009 +0000

    libglusterfsclient: Invalidate not update iattr cache on writev
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 149 (libglusterfsclient interacts incorrectly with write-behind on writev)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=149

commit fe134d4b0b675f13f3c2aa1152a1380be7192ced
Author: Harshavardhana <harsha@zresearch.com>
Date:   Tue Jun 16 10:34:44 2009 +0000

    Remove the trailing "/" which fails build with new version of automake
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit e40e361126d7843f1141c1568c39a10f8510cf42
Author: Erick Tryzelaar <idadesub@users.sourceforge.net>
Date:   Fri Jul 10 17:23:28 2009 +0000

    Add a random initial offset to the afr round robin index
    
    This patch helps to distribute load across an afr cluster
    when you have clients with the same access patterns, such
    as in benchmarking or map-reduce. By randomly offsetting
    the initial read_child_rr, clients should distribute reads
    over the afr nodes on average.
    
    A better solution could be to randomly shuffle the children
    instead of chosing a different initial offset. This should
    average the reads better across the nodes, but I'm not
    sure if there are any other consequences to doing this.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit f1313842a25d8d162db36ba8afb2a34b224f41ca
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Tue Jul 14 09:41:54 2009 +0000

    fuse-bridge: Export user.glusterfs-booster-mount xattr
    
    This needs to be exported in order to have the booster
    Mount Point Bypass technique work through libglusterfsclient.
    Booster uses the mount point to register with libglusterfsclient as
    a VMP. Subsequently, all file operations on the mounted GlusterFS
    mount point get redirected to libglusterfsclient.
    
    This fixes bug 136.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
    
    BUG: 136 (booster does not redirect ops on GlusterFS mount point into libglusterfsclient)
    URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=136

commit 55f476455c66dc1e21bbbe88a29c9ae304a81002
Author: Harshavardhana Ranganath <harsha@gluster.com>
Date:   Thu Jul 9 00:50:10 2009 +0000

    Fixes for MacOSX and Solaris build
    
    Fixes for Solaris and MacOSX build errors.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit b23c9fcc8a16b8c4a4b1814ff5035a18f03da0f4
Author: Vikas Gorur <vikas@gluster.com>
Date:   Thu Jul 9 10:02:27 2009 +0000

    Return inode number always from the first up subvolume in AFR.
    
    Also fixes a bug in the "KLUDGE" part. It was setting lookup_buf
    when it should have been setting local->cont.lookup.buf
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 9ada0a5b97851c3b4d220a3b236728b7a26f0196
Author: Anand V. Avati <avati@dev.gluster.com>
Date:   Wed Jul 8 23:54:48 2009 -0700

    Added format-patch.sh. This script is to be used as a replacement of "git format-patch" with similar arguments for submitting patches to the GlusterFS project

commit bc1202a114e24d69a4bb94d9b83f62bb896a1086
Author: Csaba Henk <csaba@gluster.com>
Date:   Wed Jul 8 06:55:09 2009 +0000

    detabify fuse-bridge.c (and other whitespace fixes)
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit c392a1e90c6504967da7dc3f4fce5c1009e0034f
Author: Anand Avati <avati@gluster.com>
Date:   Tue Jul 7 20:42:42 2009 +0000

    protocol/server: use translated flags in protocol/server open and create fops
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit cc89e50e19eedf324393798edc0f2aab9442a06e
Author: Anand Avati <avati@gluster.com>
Date:   Tue Jul 7 20:42:21 2009 +0000

    protocol/client: use translated flags in protocol/client open and create fops
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 567c0cc97198fbfd525834744b653e958cf140de
Author: Anand Avati <avati@gluster.com>
Date:   Tue Jul 7 20:41:59 2009 +0000

    protocol: add functions gf_flags_from_flags and gf_flags_to_flags
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit e54d471444274879a65efaea19f0b69fb0e78b5e
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Tue Jun 30 01:14:44 2009 +0000

    write-behind: set default window-size to 1MB.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 73c32c9ab17ee104d319882227f4a01849e544b9
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Tue Jul 7 07:58:05 2009 +0000

    use fuse_reply_iov() in fuse_readv_cbk
    
    changes come in two places.
    
    configure.ac - define HAVE_FUSE_REPLY_IOV if fuse_reply_iov is
                   available in libfuse.
    
    mount/fuse - use fuse_reply_iov() in place of fuse_reply_vec(), if
                 HAVE_FUSE_REPLY_IOV is defined.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 428d17946b5bb5946996f045811fdc2393378737
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Jul 2 06:20:21 2009 +0000

    libglusterfsclient: Update attr cache on read/write
    
    We werent updating the attr AKA stat cache on read and write
    on files so every stat on the file before the timeout was returning
    stale attr from the cache. Yuck!
    
    This fixes it. Turns out there is a good aspect of unfs3's notoriety
    when it comes to doing stat()s for every operation.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit b470684cbf9d77c9a63ef9406b5545f844f904ff
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon Jul 6 05:59:47 2009 +0000

    Set timestamps properly when creating missing entries.
    
    In AFR self-heal set timestamp of a freshly created missing entry
    to that of the source entry.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 65524f58b29f0b813549412ba6422711a505f5d8
Author: Csaba Henk <csaba@gluster.com>
Date:   Thu Jul 2 11:03:57 2009 +0000

    booster: automake 1.11 compatibility fix
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit cf87dfa3f44172635b9d071c83cd2fcd2479c668
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Jul 2 00:52:28 2009 +0000

    libglusterfsclient: Use O_ACCMODE for access mode checks
    
    Ref: http://www.gnu.org/s/libc/manual/html_node/Access-Modes.html
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 13fd1ec05715b97f91b91f3954bd9f87e86ae33d
Author: Vikas Gorur <vikas@gluster.com>
Date:   Thu Jul 2 07:08:47 2009 +0000

    Print volume file after printing other details.
    
    This makes the log format compatible with earlier
    versions. Fixes bug #105.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 1a79ea17f77a99471205e8ddb10a94dce80eb7b2
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Thu Jul 2 01:55:29 2009 +0000

    performance/write-behind - bug fix in open() and create().
    
    open() & create() calls should reset frame->local to NULL.
    
    bz# 104
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit e0db4ff890b591a58332994e37ce6db2bf430213
Author: Harshavardhana <harsha@zresearch.com>
Date:   Wed Jul 1 04:13:09 2009 +0000

    rpm spec file updates (removed mod_glusterfs and respective dependencies)
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 08fea74073fd671c784b1ebe137df8722cd72a3b
Author: Harshavardhana <harsha@zresearch.com>
Date:   Wed Jul 1 04:13:29 2009 +0000

    fuse 2.8 support for xlator/fuse
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 545d3d6b48f68251bf0912473bd3de5c0e593883
Author: Harshavardhana <harsha@zresearch.com>
Date:   Wed Jul 1 04:13:23 2009 +0000

    fuse 2.8 version check at configure level
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 02246561759d9897e3bb04118df0f0e4a0028229
Author: Csaba Henk <csaba@gluster.com>
Date:   Tue Jun 23 04:25:22 2009 +0000

    Fix typos in my previous commit 6010e2a4e
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit b3b5598e02fc931854afbcb7a3b660ffe45e5934
Author: Csaba Henk <csaba@gluster.com>
Date:   Mon Jun 22 00:56:13 2009 +0000

    fuse: instead of having a fixed option list, assemble it using "fuse_opt_add_arg"
    
    This makes it easier to adjust the option list, and also reduces redundancy.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit f6f1b35de108e089dbd7fbadf3632bc9dff992f5
Author: Amar Tumballi <amar@gluster.com>
Date:   Tue Jun 30 17:48:59 2009 +0000

    build warning fixes
    
    integer typecast warnings fixed
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 095caa8feb992459781c992c843f34c98c5bd607
Author: Amar Tumballi <amar@gluster.com>
Date:   Tue Jun 30 17:34:44 2009 +0000

    enhancement in write-behind
    
    Write calls should not be pushed to background only when the
    mandatory locking is enabled, in all other cases (eg: O_SYNC,
    O_DIRECT etc), we should not be 'caching' any data, but the
    calls can be pushed to the background
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit fccb91cba86a8219191d7f241f4c6a722d512b4e
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Tue Jun 30 00:15:34 2009 +0000

    client_xattrop: use dict_allocate_and_serialize during serializing xattr
    
    - though the previous commit fixes bug #29, this patch fixes bugs
        arising in similar situations where xattrop is initiated by
        xlators other than afr.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit a0e8c18dbb8e905ebecffd75096c9469fa922165
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Tue Jun 30 00:43:56 2009 +0000

    cluster/afr - use different dictionaries for sending xattrop requests to each of the subvolume
    
    - This patch fixes bug #29.
      - Using separate copies of dictionaries also eliminates a potential bug in a
        setup consisting of afr with a posix and client, each having io-threads on
        top as children. Since posix_xattrop after performing required operations
        on the xattr array passed in dictionary, sets the result at the same key
        and in the same dictionary passed as input argument,
        there can be race conditions where in the results of the operation on
        posix-child can be sent to the other child as input argument for xattrop,
        which ofcourse is wrong.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit e513b78e658c1b3052bf28e8a72199df8ad04cae
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Mon Jun 29 09:38:29 2009 +0000

    booster: Fix build problems with various libtool versions
    
    We've been facing a problem on some test systems where the
    booster.so is built by libtool as an executable rather than
    a dynamically loadable library.
    
    This problem is probably caused by it seeing a _init function in
    the source. This is the name of the libc initiliazation
    function so it could be the source of the problem.
    
    In any case, ld-preloadable libraries must not have a function
    called _init, instead they need to have __attribute ((constructor))
    as the attribute for any and all functions the library wants
    executed before the program's main(). Our earlier approach was
    inherently problematic.
    This commit also cleans up the booster Makefile for better
    build behaviour. Credit: Harsha.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit e4a4d04a691a27c1e52e8e0f78458fb4ebf00912
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Fri Jun 26 13:05:00 2009 +0000

    libglusterfsclient: Fix glusterfs_mount-vmp search deadlock
    
    It is possible that the only translator in the libglusterfsclient
    tree is the posix. In that case, inside gluster_init, the graph
    init routines will need to call lstat on the posix subdirectory.
    
    Since even the glusterfs stack is running over booster, those
    calls will also first require vmp searching. BUT, the vmp lock
    is the same as the mount lock that was already taken when we entered
    glusterfs_mount, so a deadlock occurs.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit a36094277df22295f49726c0fcc9a3cdeb1134db
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Jun 25 14:31:30 2009 +0000

    booster: Another attempt to fix 32 and 64 bit interoperability
    
    With this patch, we might have finally arrived at a solution
    to the problem of function definition conflicts between
    our functions and those of libc while over-riding the libc versions.
    
    This commit defines functions which do not conflict with libc,
    then it uses libc's own macro to redirect/rename these functions
    to the actual sys call names in the binary.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit daa5e0e570b89050b0e70256fa239d4e2adc869b
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Jun 25 14:31:29 2009 +0000

    libglusterfs-fd: Simplify gf_roundup_power_of_two
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit d93b62a943f8181928f13175a273bcd9f1e0118f
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Jun 25 14:31:28 2009 +0000

    booster: Remove gf_fd_unused_get2
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 666e5c127a20ec1f3ef08610db588ac6ecf6e5f3
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Jun 25 14:31:27 2009 +0000

    booster: Add new booster-specific fd-table
    
    The reason we need a booster specific fd-table is because
    the libglusterfs fd-table has come to a point where it is
    optimized for libglusterfs-style of fd allocations.
    This conflicts with the way booster requires fds to be allocated
    so this commit brings in a re-based version of a booster-specific
    fd-table written by Raghu.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit b1a034b648bdf16b365dae75c3dad914994b7fe6
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Jun 18 05:33:27 2009 +0000

    libglusterfs: Prevent gf_fd_put'ing of unallocated fd
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 86d2a44bf85e8b29546a56207b0b0ed39f18a3c0
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Jun 18 05:33:20 2009 +0000

    libglusterfs: Chain newly allocated fdentries.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit e6cb66be802b7e3099a000418a0b3a292bcf00a4
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu Jun 18 05:33:13 2009 +0000

    libglusterfs: Change GF_FDENTRY_ALLOCATED constant
    
    This change is being brought in so that we can
    
    differentiate between fdentry_ts when debugging using
    gdb.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit c1f2287c58e7101104756ac0ab416d989cc6b754
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Mon Jun 15 13:05:52 2009 +0000

    client: Replace saved_fds dict with list
    
    Thhie change removes a huge inefficiency in file open
    path where every open resulted in dictionary operations
    in order to let the client maintain a list of fd_t's being
    used over a particular client context.
    
    Resolves: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=16
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit abfd8436df46ca46de9766d17445e2a0cc1da590
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Mon Jun 15 13:05:39 2009 +0000

    libglusterfs: Turn fd-table O(1)
    
    This commit reduces CPU usage of gf_fd_unused_get drastically by
    making it O(1) instead of O(n).
    
    Related to: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=16
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 5b857d1bab2cc4b2874894a86684e1d50b257423
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Mon Jun 15 00:02:57 2009 +0000

    booster: fix build error in fcntl implementation.
    
    - F_DUPFD_CLOEXEC is defined only in linux kernel versions >= 2.6.24
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 745138508b9688b573e8f13eb9c15cb3301948df
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Jun 10 07:02:27 2009 +0000

    booster: fix memory corruption in booster_cleanup
    
    - calling glusterfs_umount_all leads to memory corruption.
        hence commenting out for timebeing.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 804714c01420102e08882e138d9d7071e17ad355
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Jun 10 07:02:15 2009 +0000

    libglusterfsclient: reset the vmplist and vmpentries to 0 in glusterfs_reset
    
    - Generally glusterfs_reset is called after fork in child to empty out
        vmplist.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 693c6f47e59b14e61c2a870555755021bafdefee
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Jun 10 07:01:59 2009 +0000

    booster: implement fcntl.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 84a3008991235a14291706e5dbdaa2e5767b8f32
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Jun 10 07:01:45 2009 +0000

    libglusterfsclient: implement glusterfs_fcntl.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit f8cacccf10dc3f52c4d2e73d7408394eed8664e3
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Thu Jun 11 04:59:00 2009 +0000

    booster: implement readdir_r and readdir64_r.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 56ac05f7e74ed9dc1ce6748687109cc8723fe113
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Jun 10 07:01:16 2009 +0000

    libglusterfsclient: implement glusterfs_readdir_r
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 344319ab62daccac38592df30417d706836afb74
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Jun 10 07:00:59 2009 +0000

    libglusterfsclient: update offset in glusterfs_read_async_cbk only if offset stored in fd_ctx is used.
    
    - this helps in implementing sendfile(2). manpage says that
        "If offset is  not  NULL,  then sendfile()  does  not modify the current
         file offset of in_fd"
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 67f30aed943b13956e3a0e78f4a1f74fa05bc1fd
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Jun 10 07:00:44 2009 +0000

    booster: call glusterfs_umount_all during cleanup
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 21d072e17825a6e83346d4bd3692faa3a801d71b
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Jun 10 07:00:26 2009 +0000

    booster: implement sendfile.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit a11ae3d6766f14af0f797979de689be95987cb4a
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Thu Jun 11 04:58:30 2009 +0000

    libglusterfsclient: implement glusterfs_sendfile.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 0e1f6449edc3f2e3f72546be527b8f7ad9f65669
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Jun 10 06:59:50 2009 +0000

    libglusterfsclient: add glusterfs_umount_all.
    
    - unmounts all the entries in the vmplist.
      - this api helps booster to cleanup all the mounts in a single call.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 66ebd6dda5b9b33bc3d74ee26080d31344135fba
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Jun 10 06:59:34 2009 +0000

    libglusterfsclient: make glusterfs_umount thread safe
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 8e0f1ff466a5ce94730829f2005e8a4d7112f44d
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Jun 10 06:59:14 2009 +0000

    libglusterfsclient: make glusterfs_mount thread safe.
    
    - this patch also checks for the presence of vmp before adding
        an vmpentry.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit f088978081923b64cea5f465f4de43072a32e1fc
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Jun 10 06:55:32 2009 +0000

    booster: remove mount table which maps a path to glusterfs handler.
    
    - if there are any glusterfs mounts(real, not virtual) which are not specified
        through booster-fstab those mounts are also added to the virtual mountpoint
        list of libglusterfsclient. This also removes the mount table in booster and
        all the mounts whether they are real or virtual are handled by
        libglusterfsclient.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit de622fb24f1295f19d7023cf903e84f663d89637
Author: Erick Tryzelaar <idadesub@users.sourceforge.net>
Date:   Fri Jun 26 13:36:00 2009 +0000

    Fix some trivial typos.
    
    I noticed that there were some minor spelling mistakes/typos in some
    of the source files. This patch fixes the ones I've found.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 72e83f9b52b5ed4bbeed1cc1163dc8392ccf6b05
Author: Amar Tumballi <amar@gluster.com>
Date:   Thu Jun 25 16:11:44 2009 +0000

    version check between client/server made more specific to protocol only.
    
    This patch is a step towards giving compatibility between the versions of
    GlusterFS. Now onwards, the protocol-version won't depend on release
    versions. In general, multiple glusterfs versions can have common
    protocol-version.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit a095efce3eac62cc1673722a819df7349ebf6db5
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Wed Jun 24 18:31:10 2009 +0000

    dht_readdir_cbk: use stat attributes in the READDIRPLUS dirents to
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 3b3c92b906a87a8e7250de2e0ed540b951a46578
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Wed Jun 24 18:31:09 2009 +0000

    rename dht_first_up_child to dht_first_up_subvol
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit d3d6e3c8d6bab41a98b54c5cbc4f57e5b53e8c26
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Wed Jun 24 18:31:08 2009 +0000

    set 'lookup unhashed' mode to be on by default
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit ebc544b4d5be33e85810c06ce3a8b97a5aa026c1
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Wed Jun 24 18:31:07 2009 +0000

    posix_readdir: fill stat structure into dir entry
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 597c06064239a6053c58477316cefd06d921eec2
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Wed Jun 24 18:31:06 2009 +0000

    gf-dirent: add support for stat attribute in dir entry (to work like
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 795f087e0c25a3bb4c661b7d37583a06da1737cc
Author: Amar Tumballi <amar@gluster.com>
Date:   Wed Jun 24 13:31:11 2009 +0000

    mount script to take arguments like nfs
    
    Ref: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=37
    
    earlier instead of path, it used to take port number, which is an
    option (-o server-port=<port>), now.
    
    new syntax is
    
     bash# mount -t glusterfs <hostname>:<path/key> [mountpoint]
    
    [This patch is backward compatible with earlier syntax]
    
     bash# mount -t glusterfs <hostname>:<port> [mountpoint]
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 7a797746b9276493a0891da63124092ddc98f01b
Author: Vijay Bellur <vijay@gluster.com>
Date:   Wed Jun 24 12:54:51 2009 +0000

    Added a new option transport.socket.nodelay.
    
    Release 2.0 compatible patch for optionally setting NODELAY.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 992130efe4d74dd0b69b8e899c620e5dd4786856
Author: Amar Tumballi <amar@gluster.com>
Date:   Tue Jun 23 13:41:26 2009 +0000

    server-protocol: interpret the 'op' value properly when a packet is received.
    
    Ref: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=35
    
    The check done earlier was not handling the case when a 'op' is == MAX_VALUE (which
    is not defined), and used to skip to the next array (like gf_mops[MAX] == gf_cbks[0])
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit bad7fdb8e15e65f31c764f4feb0e094c11428ca4
Author: Amar Tumballi <amar@gluster.com>
Date:   Tue Jun 23 10:13:04 2009 +0000

    check if the 'key' is the volume file name itself.
    
    With this patch, one can fetch any volumefile which is not pre-defined in
    volume file with 'option' in server protocol volume, instead clients can
    fetch the volume files based on the key name itself [From the confdir only]
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 791961668269516cd0b613ec2407c655d6f40779
Author: Amar Tumballi <amar@gluster.com>
Date:   Mon Jun 22 19:26:06 2009 +0000

    mount.glusterfs.in correctness in case of duplicate mount
    
    mount.<fstype> script/program should return success in case when it finds
    duplicate mounts. It was returning failure earlier. Someversions of
    automount programs had issues with this behavior.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit c699050f7634e782c776242eb95e5754fce29e55
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Mon Jun 22 07:53:03 2009 +0000

    glusterfsd - build proper mount/fuse structure.
    
    while appending mount/fuse to a translator tree, make sure
    that <xlator_t-of-fuse>->next points to the first xlator in
    the list of xlators and not the subvolume of mount/fuse.
    
    NOTE: tree traversal should always happen through <xlator_t>->children
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit d1a544fe60e0b72194635db927032e309c79c255
Author: Amar Tumballi <amar@gluster.com>
Date:   Thu Jun 18 16:14:02 2009 +0000

    local->loc should be filled in dht-mknod()
    
    local->loc should be properly filled while creating a linkfile. otherwise
    this causes the segfault in underlying client-protocol layer.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit d3da0151cb636b82a0ef1644b80c7f72ec6ccf0c
Author: Amar Tumballi <amar@gluster.com>
Date:   Wed Jun 17 20:56:52 2009 +0000

    change the log level of disk full message in dht-diskusage
    
    the current msg is getting printed in warning level. Instead changed
    it to debug, as the msg specific each node being full is already getting
    printed in higher priority, hence this msg looks excessive.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 4e757c20a425d954513fc7931a84208d0fd6cfbe
Author: Vijay Bellur <vijay@gluster.com>
Date:   Wed Jun 17 11:52:13 2009 +0000

    Removed the swap being done for __noswap functions.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 7ce46fa0fc4fc3e4039ae91c97b2a8eb1975ea2e
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Fri Jun 12 05:11:53 2009 +0000

    libglusterfsclient: Call inode_lookup to prevent pruning
    
    This bug shows up while using unfs3 with replicate. The absence
    of an inode_lookup on a looked-up/created inode results in it
    getting pruned from the inode table. Consequently, a subsequent
    lookup for the inode results in a different inode number being
    returned by replicate. This breaks unfs3 because it tries to remember
    the inode numbers returned by two different stat-family calls.
    
    Resolves: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=11
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 100a64f457a901bffe6d2d6d3b258fa193cb8517
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Thu Jun 4 06:14:31 2009 +0000

    read-ahead: return with error code EBADF for fops on fds without file set in their context.
    
    - since a successful open/create will _always_ set a pointer to ra_file_t in
         context of fd, this fix makes sense.
       - an example of operations on bad fd can be afr sending read on the child
         which was down during open.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit bf76a04af4862554d6163c43a863afb59a39aafe
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Thu Jun 4 06:13:58 2009 +0000

    read-ahead: unwind with a return value of -1 and error code of ENOMEM on memory allocation for ra_file in open/create
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 5219af500d6c4c39b95b09329de9426f97156d65
Author: Amar Tumballi <amar@gluster.com>
Date:   Fri May 29 16:08:04 2009 +0000

    removed unused option 'page-size' in io-cache
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 358c918c92d70d2eddae54447a7afe9907afbab5
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon Jun 8 07:18:18 2009 +0000

    Print PID after daemonizing glusterfs.
    
    PID used to be printed before glusterfs became a daemon,
    which is incorrect since becoming a daemon involves
    forking and thus the PID changes.
    
    Fixes bug #8.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 62e3a461d8e1909ab435ddbc4cb0c96bc0339860
Author: Anand V. Avati <avati@dev.gluster.com>
Date:   Tue Jun 9 06:18:26 2009 -0700

    configure.ac: print summary to stdout

commit 60341b82ba484ab96f476fb782aa431b0c9b5f97
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Jun 3 00:38:26 2009 +0000

    server-helpers: cleanup connection only if there are no active transports.
    
    - thanks to Ioannis Aslanidis <iaslanidis@flumotion.com> for reporting.
      - breakup the server_connection_cleanup into smaller procedures.
      - do following operations in a single atomic operation.
          1. conn->active_transports--
          2. collecting pointer to lock table and all fds if there are no active transports
        this will avoid any race conditions.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit c8c33da4e4b20f4dc717bdcac7a6fa10f8cb323a
Author: Vikas Gorur <vikas@gluster.com>
Date:   Wed Jun 3 02:17:19 2009 +0000

    Fix crash in afr data self heal. Bugzilla ID: 3
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit c6d33dfbdc9db147fa6028d8c3daa8e79b0b4276
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Wed Jun 3 01:05:42 2009 +0000

    libglusterfsclient: Avoid dirent copies in readdir cbk
    
    We can avoid memory allocation, de-allocation and
    data copies by just using the entries passed to us from
    a lower layer and by de-linking the entries from the original
    list.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 6a0ab0b2edca89da524b7dcf29994033f98c8552
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Wed Jun 3 01:05:34 2009 +0000

    libglusterfs: Add empty and NULL dirents list checks
    
    These checks are needed in case a higher layer intends to
    delink the dirent list and passes a NULL pointer to
    fop_readdir_cbk_stub for the entries parameter.
    
    Consequently, the gf_dirent_free must guard against an empty list
    because the stub that is passed to it mgiht have an empty
    dirent list.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 4fa1211b0fa015b49e662b26327c306f42299bbb
Author: Amar Tumballi <amar@gluster.com>
Date:   Mon Jun 1 17:58:41 2009 +0000

    ib-verbs error log enhancement
    
    Earlier it was thought that only not having 'opensm' running will cause
    handshake errors in ib-verbs.
    
    Recently understood that even having a wrong 'ib-verbs.port' option can
    also cause the same behavior, and it took more than 5-6 e-mail iterations
    with the user and lot of brain cycle in support team to understand the
    problem. Made the log message more descriptive, so user can be find the
    cause, or can send us email without wasting time.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 458783bc7a21cd52dd4d3af7fe3059c76b6c0d3d
Author: Anand Avati <avati@gluster.com>
Date:   Fri May 29 13:52:07 2009 +0000

    io-cache: prevent frames from getting woken up while page is getting validated
    
    1. A page will be put on the inode waitq if the 'freshness' has to be verified with an fstat()
    
    2. while the fstat is in transit, other calls (like lookup) can update ioc_inode->tv, resetting the freshness (page still on inode waitq)
    
    3. Another read request on the same page, after the updated freshness, will wake up the page frames neglecting the fact that the page is also waiting on the inode (waiting for the fstat completion)
    
    4. once the page's frames are woken, the page becomes elegible for purging and can get destroyed for various reasons, leaving a destroyed page pointer in the inode's waitq
    
    5. fstat returns and hits the destroyed page pointer causing a crash
    
    The fix is to all together disable cache hits when any page of the same inode is under validation. The otherwise cache hit will now be subjected to the ongoing validation by getting queued to the inode waitq.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 7c9b551398a660f31358feab366e5ce665a8f372
Author: Amar Tumballi <amar@gluster.com>
Date:   Fri May 29 16:09:05 2009 +0000

    unify getdents count reduced to 512 (from 1024)
    
    Thanks to Krishna <krishna (at) gluster.com> for pointing this out.
    
    When a unify self-heal of large directory (directory with lot of entries)
    is done, the getdents_cbk used to fail because of new limit of buffer size
    (128KB). Noticed that earlier it used to streach upto 4MB, hence the value
    1024 worked fine. By reducing it to 512, noticed, we can fit in well within
    128KB limit, and hence unify self-heal goes through.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 9ccb6f74410a20eaa831ecc9e4601fcb724e63d5
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu May 28 04:43:05 2009 +0000

    libglusterfsclient: Increase readdir block size
    
    This improves the potential for pre-fetching a larger
    number of dirents. Consider that, with 255 chars as the max
    name length for each dirent, in the worst case scenario, where
    we actually have files with such large names, we're not getting
    more than 4 entries with the current block size of 1024.
    
    Generally also, increasing the size to 4k provides us
    with a higher chance that directories with low to medium
    number of dirents will be pre-fetched in a single readdir fop.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 1a0cf7dc85967387fe2c458914409b888fc86235
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu May 28 04:42:58 2009 +0000

    libglusterfsclient: Add dirent pre-fetching and caching
    
    The fop interface is such that we're able to extract more than
    1 dirent in a readdir fop. This commit now enables libglusterfsclient
    to read multiple entries on a glusterfs_readdir call. Once these
    have been pre-fetched, they're cached till either glusterfs_closedir
    ,glusterfs_rewinddir or glusterfs_seekdir are called.
    The current implementation is beneficial for sequential directory
    reading and probably indifferent to applications that do a lot of seekdir
    and rewinddir after opening the directory. This is because
    both these calls result in dirent cache invalidation.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 9c7f9475f48ea2ea5ca2e275ba6554acd24f817c
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu May 28 04:42:51 2009 +0000

    booster: attr_timeout: Read timeout from booster fstab
    
    In order to expose the timeout values for stat and inode
    caching, this commit introduces a new fstab option "attr_timeout"
    that defines the number of seconds for which a looked up inode
    or a stat()'ed structure is valid in the cache.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 57dc67ce5583ebaaa8c96900b6f279752b896e31
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Wed Jun 3 01:31:37 2009 +0000

    libglusterfsclient: Simplify inode and stat caching
    
    There is a mechanism for caching the inode numbers got from a lookup
    and a struct stat got from a stat or fstat but I wasnt sure if it worked.
    This commit simplifies cache updates and checks and the accompanying
    tests have made sure that the cache does work.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit b896ec15fb123b77025394d53f019f7fa12bad3e
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Thu May 28 04:42:37 2009 +0000

    libglusterfsclient: Allocate right sized structure
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 86a428263aaf15b8b98f29a9d959fef3de6caa6b
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Sun May 24 23:05:26 2009 +0000

    booster: Clean-up handling of log/fstab env variables
    
    Handle two cases when deciding log/fstab file:
    1. It turns out that that strdup or strlen doesnt actually
    check for NULL before trying to do its thing with the string
    so it seg-faults on seeing a NULL char pointer.
    
    2. getenv can return an empty string if the
    env var was exported as:
    $ export GLUSTEFS_BOOSTER_LOG=
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 66ba0e8e885f21adf0259ac61629efb8df747d37
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Sun May 24 23:05:18 2009 +0000

    booster: Eliminate gluster context creation race
    
    When multiple threads try to create a glusterfs context using the
    glusterfs_init function, those threads end up using the global
    vairables in the vol file parser in an non-synchronized manner,
    resulting in a seg-fault.
    
    There is now a big lock around searches and additions from the mount
    table in do_open. This lock granularity could be reduced.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit eac0ca0e1f1d536c812ee7bdfeedc3833964491a
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Sun May 24 23:05:11 2009 +0000

    booster: Clear up env var usage
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit fa66ba98c38df70892cdcaffdca430dbfa472831
Author: Amar Tumballi <amar@gluster.com>
Date:   Thu May 28 20:12:05 2009 +0000

    bug fix in dht-diskusage when statvfs->f_blocks is 0
    
    This can happen when 'option export-statfs-size off' is given in
    posix volume. Caused divide by 0 error.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 9c0ee1e20c857a580181d52cfbdce44d3c61b404
Author: Harshavardhana <harsha@zresearch.com>
Date:   Thu May 28 02:46:45 2009 +0000

    Remove absolute path for init scripts.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 154e7127259412a43862ef48422979ec5ba1d01e
Author: Pavan Sondur <pavan@gluster.com>
Date:   Wed May 27 10:39:38 2009 +0000

    Fix mismatch in size of used buffer to prevent an infinite loop
    
    A mismatch in the size of the used buffer, between reading and then further writing caused an infinite loop and big files(1Mb, 10Mb etc) could not be downloaded through the lighttpd web service using mod_glusterfs. This is because the big file which is broken up into chunks, has a read and a subsequent write.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 01b9e590559ea810fb271e91127b3de7fc26816a
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue May 26 05:02:27 2009 +0000

    Do itransform in AFR readdir.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit c1c18df3936b01ec4ea8b48b936c4087648f4b3b
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue May 26 05:01:35 2009 +0000

    Always do itransform of the inode number from the first up child.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 9a2e319114d70d076b2f219a56397e5793dc3bdf
Author: Anand Avati <avati@gluster.com>
Date:   Tue May 26 04:31:28 2009 +0000

    add booster_fstab.h in noinst_HEADERS to fix build breakage after 'make dist'
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit f6bcb43d4adca26337f9a933e61eac8d6815cc7e
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Tue May 26 03:40:27 2009 +0000

    ib-verbs: Set receive and send window size
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 78ed845bc98ced0b2edd14875f5a7ef755802984
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Tue May 26 03:40:16 2009 +0000

    socket: Set receive and send window size
    
    This is experimental. We're hoping this improve performance on
    high speed links like 10GigE.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 71406e395f5cd4da495060d5604fe7db2d4018d1
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon May 25 05:02:25 2009 +0000

    Preserve atime/mtime during data self heal.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit eee87a35383a7b2aebea0c12c418404b93a342ec
Author: Anand Avati <avati@gluster.com>
Date:   Fri May 22 03:33:41 2009 +0000

    fix crash in __socket_reset. Previously iobuf_p was an allocated pointer, but since introduction of IObuf it is no more. Now iobuf has to be unref'ed instead.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 4d4cfc6e45a34e53f236cd2dccf66407ddc57796
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Wed May 20 22:50:10 2009 +0000

    booster: Move fstab parsing into booster from libglusterfs
    
    This is another attempt at fixing build problems on Solaris.
    I am told that booster build is disabled on Solaris and I know
    that it is disabled on Mac OS X also. Getting it to work
    on both these systems is now on my TODO list, mainly
    because on both these systems, we can have a glusterfs client
    running without requiring FUSE.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 7f001813bc04ede65b05d588f16e0a6c68a94cfe
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon May 18 08:19:10 2009 +0000

    Change errno to EAGAIN in readv/writev
    
    When mandatory locks are enabled and a read/write
    would block due to a lock and if the fd is opened
    with O_NONBLOCK, return EAGAIN (previously EWOULDBLOCK).
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit a9d0be4f1b78d9c03e9379fc5cea0ead6114c1d0
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Tue May 19 04:34:11 2009 +0000

    mem-pool: Restructure mem-pool behaviour
    
    This commit changes mem-pool behaviour to return a directly usable
    address by performing the required adjustment on the address
    being returned.
    
    This is different from the previous behaviour where we're trying to fit
    into the requested size, the list_head*2 also. This is not efficient
    enough in terms of space but hopefully works better than not having any
    mem-pool at all. Besides, I am not comfortable with mem-pool meta-data
    and caller-useable memory area being the same because of the potential for
    mem-pool's data structure corruption.
    
    PS:
    Please do read the comments in the code for more info during review.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 25dc191c51efb97ec970b137edfe4557302b7357
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Tue May 19 04:33:58 2009 +0000

    mem-pool: Fix #define spelling
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3aea8a66a457349e19bde40eb33510edd0597cff
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Tue May 19 04:33:48 2009 +0000

    mem-pool: Remove hard coded value for pad boundary
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit acf28ed1ef3565ca1321fe9647d9b065a24fa46a
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Tue May 19 04:33:37 2009 +0000

    mem-pool: Fix memory leak in mem-pool init phase
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d71a5601fb2cf661d973a08a4cef9a15a9ec2363
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Tue May 19 17:57:02 2009 +0530

    booster: Fall back to remaining real_* functors
    
    It is possible that some of the real_* functors for stat
    family of syscalls are NULL. I've seen this on libc. In that
    case, this commit attempts to use any available function that
    performs an equivalent operation.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 87b938d02b51a0b4c864fc5deba1a1f177a05a4c
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Tue May 19 17:56:54 2009 +0530

    booster: Dont de-init fd tables on VMP-init failure
    
    In case the init procedure for VMP fails, we want to
    continue using booster through the old approach, which means
    leaving the fd-table intact.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 9189418db9e50fa20c31ac5c7c5b6aaa16a9fa1e
Author: Shehjar Tikoo <shehjart@gluster.com>
Date:   Tue May 19 17:56:47 2009 +0530

    booster: Do not read info for non-glusterfs mount points
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit c5b90f75951faddf55c61f2fe57f1c26070a63b6
Author: Harshavardhana Ranganath <harsha@dev.gluster.com>
Date:   Tue May 19 06:39:42 2009 -0700

    Appropriate changes to statvfs struct for Solaris host.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 35fc174ea3a37546d7c90be8fa6076b8f9416d73
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon May 11 18:24:43 2009 +0530

    libglusterfsclient: Comply with EEXIST rule on rename
    
    During a rename, if the new file exists, the old name needs to
    over-write the new name. We're returning EEXIST, which is wrong
    behaviour.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 95ce0a87f5fbb139f7002360d63a005bfb9c097d
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon May 11 18:24:34 2009 +0530

    libglusterfsclient: __do_path_resolve: Fix pathname resolution bug
    
    In __do_path_resolve, we need to use the new_loc.path as the input
    for resolution rather than the resolved variable, simply because we're
    not interested in resolving the names that have been resolved, as
    pointed out by the variable name 'resolved'. Instead, we need to resolve
    new_loc, which stores the next component in the path to
    be looked up.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit fe06790a3637c30dc8d5e0be7367f27ee24c36bd
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon May 11 18:24:21 2009 +0530

    libglusterfsclient: Wipe loc->ino in libgf_client_loc_wipe
    
    Not cleaning up the ino member of a loc_t results in SIGABRT
    in __inode_link because in some cases, the loc->ino is
    different from loc->inode->ino. This happens especially in code
    blocks which re-use a loc_t structure for pointing at different
    inodes/files. For eg, if a loc_t has been assigned an inode and
    an ino, and followed by a libgf_client_loc_wipe, then re-use of this
    loc in say libgf_client_lookup results the SIGABRT because
    libgf_client_lookup calls inode_link with the same loc_t. However,
    this loc_t has just been assigned a new inode pointer but the ino
    member still contains a previous inode's inode number. This difference
    in inode numbers results in an assertion failure, so the SIGABRT.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 1279d7398c63bdad448cf0418579f6df1d9f6f34
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon May 11 18:24:08 2009 +0530

    booster: Add telldir API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e3e7f850eda010ab8c84417e57a4fbace4073022
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon May 11 18:23:58 2009 +0530

    booster: Add seekdir API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 358f5ba40866545ce240ed8fda77c4d2e57a4262
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon May 11 18:23:38 2009 +0530

    booster: Add rewinddir API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e420eb2206aa773eb32f1a7146cba4d6da5d9d03
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon May 11 18:23:24 2009 +0530

    libglusterfsclient: Refine readdir entry parsing logic
    
    Here I am only refining the entry parsing code in order
    to clarify the exit conditions from the loop. There were
    a few workloads where this loop went infinite.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e1ae573f73d69fe1a244ed1493793961dd4cf811
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon May 11 18:23:14 2009 +0530

    libglusterfsclient: Add telldir API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 35bf3f058473b61605fd28cd9cbee7726adedf9d
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon May 11 18:22:57 2009 +0530

    libglusterfsclient: Add seekdir API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit dddcf498610ebd332992e9600dd728cc87e6355d
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon May 11 18:22:42 2009 +0530

    libglusterfsclient: Add rewinddir API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit aeda0a31977e8da295b913e6a306ff01ccf0ce0a
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon May 11 18:22:29 2009 +0530

    libglusterfsclient: Revert and re-do readdir conformance
    
    This commit basically reverts the previous readdir conformance
    patch I sent a few days back. That commit had a completely retarded
    and broken way of maintaining per-directory dirent.
    
    It was broken for two reasons:
    1. Creating a wrapper structure around the directory's fd_t
    only for storing a struct dirent is not clean enough. This commit
    takes a better approach by storing the dirent in fd_t context.
    This dirent is valid only if the fd_t refers to a directory.
    
    2. That commit was made and tested under the assumption (..stupidity
    is a better word..) that only opendir call is used for opening a
    directory. That is not correct. Directories are also opened using the
    open syscall. The point is, glusterfs_open returns an fd_t and so did
    glusterfs_opendir. The previous patch actually changed opendir to
    return a new wrapper structure. That is fine, if we go by the POSIX
    definition of open and opendir because, they're both supposed to
    return different types, an int and a DIR*. However, in
    libglusterfsclient, all other code assumes that directory handles
    corresponding to DIR* and file descriptors corresponding to int types
    are the same type, resulting in use of the same locking and fd context
    addition/extraction code. So a directory opened using opendir returned
    a wrapper structure which went down into the libglusterfsclient stack
    where some function called a lock on the handle assuming it was an
    fd_t, since it is not and dereferencing of the supposed fd->inode->lock
    results in a seg fault.
    
    Obviously, this didnt show up till unfs3 used open() to open a
    directory and not opendir.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4f1a87a245b960f1cd1fb4fe40b4254ac3793213
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon May 11 18:22:19 2009 +0530

    booster: Supplement fstab option parsing
    
    Previous fstab option parsing logic was completely
    retarded and did not handle all cases. This fixes the situation
    so we now work without any problems.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit a5301c874f978570187c3543b0c3a4ceba143c25
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Mon May 18 17:24:16 2009 +0530

    workaround for not including sys/cdefs.h -- including sys/cdefs.h breaks build on solaris and other platforms

commit 0346e3e889d854f6f96d9f9b162a8d65ddb35f52
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon May 18 03:02:54 2009 -0700

    Bug fix in pl_readv/writev to handle the mandatory lock case properly.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 49523c834f075007352d07bf09463af9499b59f5
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Fri May 15 03:56:22 2009 -0700

    client-protocol: Fix memory corruption in client_lookup
    
    - memory corruption was due to new members being added between allocation
        of buffer for serializing xattr_req dictionary and dict_serialize of
        xattr_req.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 254f770af6ae6ff207fc567b6576a31469c84f67
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Fri May 15 03:55:50 2009 -0700

    dict.c: make dict_serialized_length and dict_serialize to hold locks.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 9669c70c901474dc21ef08e49478b5f5dead8f64
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Fri May 15 03:55:20 2009 -0700

    dict.c: Add dict_allocate_and_serialize
    
    - this procedure atomically allocates a buffer and serializes dict into it.
      - this procedure helps avoid memory corruptions due to race conditions where
        in new members are added into dict between allocating a buffer for
        serializing and actually serializing buffer into it.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit dec2674685da30d6cef157748bcf52454ec97208
Author: Csaba Henk <csaba@gluster.com>
Date:   Sat May 16 04:28:40 2009 +0200

    make getxattr fail with ERANGE if reply is bigger than what was requested
    
    Edited by avati: make the function signature of fuse_xattr_reply_buf() use 'const char *value' instead of 'char *value'
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b4651c4b8c7ebbcee7bfc7ef50afebf7e25d5744
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Thu May 14 00:21:02 2009 -0700

    apache/2.2/mod_glusterfs: port to use new glusterfs_readdir interface.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 43a568d732962c8e095d3072f672451bcbe95f47
Author: Amar Tumballi <amar@del.gluster.com>
Date:   Wed May 13 12:46:29 2009 -0700

    avoid duplicate mounts while using mount.glusterfs
    
    This change is needed as the format of how the /etc/mtab entry of glusterfs
    mount looks is now changed.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ce653eadc2d13e9f4d3748d217ef7614539a2f34
Author: Harshavardhana <harsha@zresearch.com>
Date:   Fri May 15 02:39:15 2009 -0700

    modified init scripts to honour @prefix@
    
    fixes http://savannah.nongnu.org/bugs/?26581
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 11cae446e0c115bbfa5ee3e6b18ef0e2c45b84fe
Author: Vikas Gorur <vikas@gluster.com>
Date:   Thu May 14 02:12:20 2009 -0700

    Edited log message for --volfile-check
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 19a1ce89421b7f066168059e972c906b8c194e54
Author: Amar Tumballi <amar@del.gluster.com>
Date:   Wed May 13 01:26:24 2009 -0700

    minor log enhancement in 'ib-verbs' transport.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 92a84f8c0f0925f85ad40db1212ff5ef0c1fc809
Author: Amar Tumballi <amar@del.gluster.com>
Date:   Mon May 11 13:19:49 2009 -0700

    replace BIG_FUSE_CHANNEL_SIZE with 'this->ctx->page_size'
    
    Send the struct stat's  'blksize' variable same as GlusterFS's page-size,
    instead of BIG_FUSE_CHANNEL_SIZE.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4f7552c23bc4d0691062bd6a90fa76aa53bdf97c
Author: Amar Tumballi <amar@del.gluster.com>
Date:   Fri May 8 01:33:02 2009 -0700

    default log file different per mount (or if server, per volumefile)
    
    This feature is required becuase when more than one glusterfs process
    is started with default log file, all logs will be going to same file,
    which after a while gets more confusing.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f4fbc7200c32c50501df7a84b4ddeb4eeb0f5525
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon May 11 11:25:40 2009 +0530

    posix: Fix build warning on incorrect type
    
    This fixes a build warning due to use of incorrect
    type for size_t, for Core 2 Duo.
    
    Extra fix from avati: change %ld to GF_PRI_SIZET
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 5c1d9108c1529a1155963cb1911f8870a674ab5b
Author: Amar Tumballi <amar@del.gluster.com>
Date:   Thu May 7 17:21:21 2009 -0700

    stripe init 'block-size' pattern parsing bug fixed.
    
    ref: http://savannah.nongnu.org/bugs/?26416
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 20e8fc7a61fd22af1657cffa674c287ad29a7699
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Thu May 7 04:16:28 2009 -0700

    scheduler-nufa: fix initialization of refresh-interval
    
    - refresh-interval was being reported as not provided in the options
        even when configured.
      - fixes bug reported in rt #1007
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 124f02ed49615e8337d249a2c56e95a5298a856b
Author: Vikas Gorur <vikas@gluster.com>
Date:   Thu May 7 05:05:03 2009 -0700

    Set op_errno properly in afr_flush.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b3f7efe247ad114b6071ba6a2d6816f783d4aa15
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Fri May 8 15:45:24 2009 +0530

    booster: Add fstab parsing support
    
    This commit changes the booster.conf format from a
    simple custom format to that of the /etc/fstab.c
    
    See booster_mount(..) for the mount options supported/required
    for LD_PRELOADing booster. I'll write a small help doc soon.
    
    This commit also brings in fstab parsing code into libglusterfs
    because Darwin libc only supports reading the hardcoded /etc/fstab.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 5f4c102297bae265a7c9a16a86ee032ffbd44830
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Fri May 8 15:45:09 2009 +0530

    booster: Standardize conf file and env variable
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit adb56cb5e0f0d718764b25f1b37397be720f8750
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Thu May 7 15:02:09 2009 +0530

    backend-xattr-sanitize.sh: script added to extras/
    
    Run the script as:
    
    sh$ ./backend-xattr-sanitize.sh /data/export0
    
    and it will remove all the known stale xattrs on the backend files and dirs

commit babc4dfb08504e41a35cf06e8c297a19c87ac397
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Thu May 7 13:28:21 2009 +0530

    valid_host_name(): accept string lengths upto 75 chars (the limit accepted by glibc resolver)

commit fd2e7d9ebb94ccf5faf5c9d9891978e09fce0b05
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed May 6 05:40:15 2009 -0700

    symlink-cache: fix return value of readlink
    
    - sc_readlink wrongly returned strlen (link) + 1 when link was present in
        cache.
      - this fixes rt #828. Since fuse_readlink_cbk does link[op_ret] = '\0', there
        was a memory corruption.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 542d9ed6c1758df85fc0e252952cfb80669f4a70
Author: Amar Tumballi <amar@gluster.com>
Date:   Wed May 6 08:59:21 2009 -0700

    fix in mount.glusterfs for proper direct io mode option.
    
    fixes the bug which causes GlusterFS not to have valid 'direct-io'
    option through mount command or /etc/fstab entries.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 92a84a43e057ce2448c235d3bf66a0b694338d65
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Thu May 7 11:59:23 2009 +0530

    protocol/client: indentation fixes

commit 2ff188571e94831b389f5677e06b94d11eb5fc62
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Thu May 7 11:06:34 2009 +0530

    protocol/client: removed conf->child

commit f9f5519b66a25651eb03de577f68d481abdd4c40
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Thu May 7 01:24:41 2009 +0530

    transport shortcut b/w client and server
    
    This patch makes the server pass back the transport pointer of the client. If the UUID matches, the client makes the local transport 'shortcut' with the remote transport (pointer received from server)
    
    The shortcut simulates a socket queue. Instead of serialized messages going over the network and getting queued in the tcp socket queue, the messages get queued in a transport specific queue picked by a polling thread.

commit 12eb832e255a1abb90434ab3e0d1e1632ae7ce03
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Wed May 6 14:40:45 2009 +0530

    fix log message from transport-timeout to frame-timeout

commit cba961e9f4ff3452f5e8e6152c632a258b737576
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed May 6 12:23:54 2009 +0530

    libglusterfsclient: Improve readdir conformance on re-entrancy
    
    readdir is supposed to be non-re-entrant only with respect to the
    given dir stream, not the whole process.
    
    What that means is the static struct dirent that we maintain in
    libglusterfsclient should be per-directory handle and not
    process-wide.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f82651ef4ff5a9e94fa9c0d1f9cf091345440b56
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed May 6 12:23:14 2009 +0530

    libglusterfsclient: Fix large directory reading bug
    
    As of now, we use 1024 bytes as the buffer for reading directory
    entries. If a directory as many files, then its possible that it does
    not fit into this buffer, thereby requiring more than one call to
    readdir. Now suppose the last bunch of directories fit more or less
    exactly int the 1024 byte buffer. If this happens, the offset
    extracted by the current logic(in libgf_client_readdir) never gets
    updated beyond the first entry in this last block, because the last
    block's first entry always remains same. This explanation is
    convoluted, I know, but I too found out the hard way.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8d1b62393b58ff3ac5b157e0adea15578c949bbf
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 20:45:48 2009 +0530

    booster: Use CONFDIR as booster.conf default location
    
    This commit changes the default location of the booster.conf
    file from /etc/booster.conf to a directory defined
    during the build process.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit faef6fded892c310a3debdce273a382286a4ec19
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 20:45:26 2009 +0530

    booster: Change booster conf env var name
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f6862d75d1ca50b12372d5f9c3e651d6f74c5900
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Wed May 6 11:43:33 2009 +0530

    afr self-heal: update file size of the returning stat buf with source file's size

commit 3f3dea5f23e2b49ac8ad14bf8dd34dfadf6a72f5
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Tue May 5 20:04:50 2009 +0530

    log level fixes in read-ahead

commit 9cb93f58be9d032bec12ca04275e84904bf22c0b
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Tue May 5 20:03:36 2009 +0530

    log level fix in storage/posix

commit f62628af61f5ef72c6af2b807c1bba71f291a366
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Tue May 5 19:19:30 2009 +0530

    io-cache logging level fixes

commit e9800f8915257f8e3fc94dea8257e20a5561dfd7
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:04:57 2009 +0530

    libglusterfsclient: Add 0-byte size/count guards
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit fe94d6e4992d7b7f2bcee73dfd2b0af76e1f2611
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:04:50 2009 +0530

    booster: Add lchown API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8a3495e7d4b2273746d9e38aefbae583131951ca
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:04:43 2009 +0530

    booster: Add remove API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit bddbe5f7a4437fc4c295b7830fa2916011ab799a
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:04:37 2009 +0530

    booster: Add getxattr,lgetxattr API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ad8e8fa72f287da034027bf26fc1fbfb1437d47e
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:04:29 2009 +0530

    booster: Add readdir64 API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit c803febb9b013e384bcccf37a2c68dc90deea444
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:04:23 2009 +0530

    booster: Add statvfs API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit fe6a39da3cd7370e9a7d9f7908e06cbdce64ce6a
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:04:15 2009 +0530

    booster: Add statfs API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4de7dc7151d307021177107fcf8dd636b306bb59
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:04:08 2009 +0530

    booster: Add lstat API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 13a58f94a781d91ab3d7854996df66c9802d972b
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:04:00 2009 +0530

    booster: Add fstat API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 938191c57f0ef3a657a764033f70df6595dc736c
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:03:52 2009 +0530

    booster: Add stat API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit cec18ef672700dea563a8c899170ece4730257e5
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:03:42 2009 +0530

    booster: Add closedir API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit abeec15e1da0c40bee134253035af88739e09960
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:03:32 2009 +0530

    booster: Add readdir API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 792cd732264d751895e8469e7c5f3cb172574180
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:03:24 2009 +0530

    booster: Add opendir API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit fc602c0c17064dfbd81d3d85141b55a40c45d8d9
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:03:16 2009 +0530

    booster: Add realpath API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e749da85ec67dfa62af5702d199b8f1bcc53d1d7
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:03:09 2009 +0530

    booster: Add readlink API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 1504e1d50c7efcf20fe55fc7db526bb1d364244a
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:03:02 2009 +0530

    booster: Add symlink API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 48e30d6715574c34bc760798e1657b5900129c25
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:02:55 2009 +0530

    booster: Add unlink API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 62b29b0db6f7d417a3281c3937bd5af20e1bf201
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:02:48 2009 +0530

    booster: Add mkfifo API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 7d87f8f5ce56278f56427196b5e2c5e4c0be02ad
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:02:38 2009 +0530

    booster: Add mknod API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4311e7f01dc244baa1a1b8fc50f74a823dbd38c4
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:02:31 2009 +0530

    booster: Add utime API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 48ee90ab87cf0c01fee0188728d70d67c6724b97
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:02:24 2009 +0530

    booster: Add utimes API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit acac22c87374310544b3a4bb301e9bfa3ea26001
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:02:17 2009 +0530

    booster: Add rename API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 11cdc6e5282d4c7d906da3e20b50df78ddba2efd
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:02:10 2009 +0530

    booster: Add link API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 9b012b098915c8bdbdcb8a4c38fb353fa39e82d4
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:02:02 2009 +0530

    booster: Add ftruncate API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e4e97f2bdaf6d98c5a133491efdffebb64fae4d6
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:01:54 2009 +0530

    booster: Add fsync API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e6f4a6879a6f9bb11e6774182b211b57f1a827fa
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:01:47 2009 +0530

    booster: Add fchown API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8fa2a984c315418b940c481ea7729c00ed0b033a
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:01:40 2009 +0530

    booster: Add fchmod API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ad4f864c448a3bbcec67d3fb3c44e07993cd70e7
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:01:32 2009 +0530

    booster: Add chown API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 13610ba31d3b5a60c4d03343438f696725558e65
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:01:24 2009 +0530

    booster: Add chmod API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 76aa5e491dc3577bf8471cb649fee7b3d0a3dc9d
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:01:16 2009 +0530

    booster: Add rmdir API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 93c3a887695fc4fa7a65d6556398cffcf22d099e
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:01:09 2009 +0530

    booster: Add mkdir API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 358d3e7f99ecdc48c044f11f9f6011805d061ec4
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:01:02 2009 +0530

    booster: Add log message
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 83ae751616ce18d3010664f13ac8b8ecf8dd313d
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:00:56 2009 +0530

    booster: Clean-up pwrite64
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 00b1e268fb0d3696820bd2e849c42deebe80a3cd
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:00:49 2009 +0530

    booster: Clean-up pwrite
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6696009a6662cc77458246ffc3dccc22f8d6c185
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:00:41 2009 +0530

    booster: Clean-up lseek64
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 513a2d15c16a9b5c96ceb321bed08d34d659e12b
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:00:34 2009 +0530

    booster: Clean-up lseek
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 24b360d865dbf344f8369e656d282739f07c18e8
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:00:27 2009 +0530

    booster: Clean-up write
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8cacf5455bc97e84f62605df60a6ae5f66b61a1c
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:00:20 2009 +0530

    booster: Clean-up writev
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 0c86f9686f2c91ef8838972ad038ba0c587cd09d
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:00:12 2009 +0530

    booster: Clean-up pread64
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 2763f86eea23898501c5299f58edc37e2c1262e5
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 16:00:04 2009 +0530

    booster: Clean-up pread
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit a35a80b79702d3a81a9d62fc200ae61c6ec67b74
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:59:55 2009 +0530

    booster: Clean-up readv
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 61201d40bc22f1299bc49202433664664ec23ce6
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:59:47 2009 +0530

    booster: Clean up read
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f0bef18b788c8beadc4131c5a6534761857c7f46
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:59:40 2009 +0530

    booster: Support VMP-based creat
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d470dd599c8dbf609411e52e587ea5c171214b21
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:59:32 2009 +0530

    booster: Add VMP-based open support
    
    In brief, when an open is called the VMP-based open is called first.
    If that fails, the fallback is the Mount-Point Bypass(MBP) technique
    which uses entended attributes to determine if the given
    path is a gluster mount. If it is, it goes ahead to create a
    glusterfsclient handle. All subsequent calls to this real mount point
    get redirected to the glusterfsclient handle. The other fallback is
    the actual open syscall on the local file system itself. This happens
    when the absence of an extended attribute tells us that the path is
    not even a glusterfs mount point.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3364e5eb2d5f5110e86924112dfe3f10597c9c9f
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:59:25 2009 +0530

    booster: Remove fcntl.h from include path
    
    We define the O_CREAT, etc. flags so that we can remove fcntl.h from the
    include path. fcntl.h has certain defines and other lines of
    code that redirect application's open and open64 calls to the
    syscalls defined by libc.
    
    For us, thats not a Good Thing (TM).
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 313713a254e193623807d019f4c0e17e637ed316
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:59:18 2009 +0530

    booster: Integrate VMP-based mounting
    
    This commit brings into booster the use of VMP based operations
    which will allow users of booster to specifiy a VMP and use it
    for transparently operating on a glusterfs client context.
    
    Since applications are oblivious to booster's presence, because it is
    LD_PRELOAD'ed, we need to specify the VMPs and the corresponding
    options like volfile, logfile, loglevel, through a conf file.
    
    By default, this conf file is the /etc/booster.conf. This can be
    over-ridden through the GLFS_BOOSTER_CONF environment variable
    for the application.
    
    The format of the conf file is very simple for now. Each VMP is
    described on a single line with space separated fields.
    
    Format: <Virtual Mount Point> <volfile-path> <log-file> <log-level>
    
    <log-level> takes the string representation of the usual glusterfs
    log levels.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 42d5355a6221ea473372c891544e4cc7b265bbe9
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:59:11 2009 +0530

    libglusterfsclient: A Fix deadlock in ftruncate
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 7eb61fb44986fc834a19d9f38754f1be54d07e09
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:59:03 2009 +0530

    libglusterfsclient: Conform'ify glusterfs_readdir
    
    This commit does two things:
    1. Changes glusterfs_readdir prototype to conform to the POSIX
    readdir().
    2. Uses a 1024-byte value instead of sizeof(struct dirent) for the
    @size for libgf_client_readdir. This allows even larger names to fit
    into a single readdir request to the server.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b48df70c58f52878d58f3e1a0adc870688cdfcdc
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:58:56 2009 +0530

    libglusterfsclient: Add VMP-based lchown
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit dec408299ea7a2cb9aa9aa3ea3a3c72ee79169de
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:58:48 2009 +0530

    libglusterfsclient: Add remove API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4353ba5cdf0dab29e30997ce5b67055c8f1e1cba
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:58:38 2009 +0530

    libglusterfsclient: Add lightweight path resolution
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e57175c0177ecc8b9ff80d3ce6c5f9a3f8248214
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:58:30 2009 +0530

    libglusterfsclient: Add lgetxattr API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d18d2550484f3d930557fed038a6bf9ffa23de48
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:58:23 2009 +0530

    libglusterfsclient: Add setxattr,lsetxattr API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 84d5566fab6daaffe3ad5da76d87a9c9e20e7170
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:58:16 2009 +0530

    libglusterfsclient: Make stat resolve all symlinks
    
    We want to resolve even nested symlinks when calling stat,
    therefore, we need to depend on realpath-like functionality
    and not just a readlink.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit a0cd85c307f3576291829beb825323d43aeca7f8
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:58:09 2009 +0530

    libglusterfsclient: Fix realpath operation
    
    This commit does two things:
    1. Ensures we go on to traverse nested symlinks by calling realpath
    recursively on the symlink.
    
    2. Makes glusterfs_realpath, a VMP-based operation, return a resolved
    /real path that actually has the VMP pre-fixed to the resolved path.
    If this is not done, we'll be returning a path that is valid only
    within the glusterfs context, i.e. the path will point to a real
    file/dir only if a glusterfs handle identifies which glusterfs context
    the file is in.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d1e74d7faa8670d6a7bf47ab9105af03d7dcf9a6
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:58:03 2009 +0530

    libglusterfsclient: Dont lookup oldpath on symlink
    
    The target of the symlink does not have to be interpreted in
    any way. It should be sent across as it is.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 5cfa7a3a5ee9199399137e217597b1b97f7a4e38
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:57:56 2009 +0530

    libglusterfsclient: Improve path matching heuristic
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b46296282155281768407c93f878ba3823118463
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:57:49 2009 +0530

    libglusterfsclient: Guard against un-inited VMP searches
    
    On my system, an selinux module gets inited before
    booster even though the FS calls from the selinux module
    get routed through our LD_PRELOAD'ed wrappers. In this
    scenario, the VMP list is un-inited, resulting in a seg-fault
    if it is dereferenced. The list_empty check does not help
    because the pointers in the list have non-NULL values.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4ecd27aed126b20012abe1449bc49b4c646cb9d0
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:57:42 2009 +0530

    libglusterfsclient: Add comments to API
    
    Some of the functions have also been moved within
    the header to reflect the order in which users will
    read through and try to understand how to use the lib.
    
    For eg. the init, mount and umount functions have been moved to
    the beginning to clarify how to start by init and de-initing.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 90f854f470b354bc36d46397d39a065cbe89e27d
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:57:34 2009 +0530

    libglusterfsclient: Expose a few remaining APIs
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b12fde2b06c4701970201aaebc7f45a8b964812c
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue May 5 15:57:27 2009 +0530

    libglusterfsclient: Add VMP-based rename
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6fdf8f4c7d5cced776c925052eb8a81c332a3573
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon May 4 10:59:18 2009 -0700

    Do not lock entire file for metadata operations.
    
    Metadata operations now lock only a single byte at offset
    (LLONG_MAX - 1) instead of the whole file, to avoid contention
    with writev().
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 1a5bcf508b22c1f9f5bd2f555e290f6725035cd2
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon May 4 10:50:48 2009 -0700

    Made afr_flush a 'quick-unwind' transaction.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 9aea45a0e1338a10558c4f3f434d172c4bc8c209
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Sat May 2 14:37:04 2009 +0530

    io-threads: Clarify thread count range
    
    This patch cleans up io-threads behaviour regarding the
    range values that can be specified for min-threads
    and max-threads. THe major change is that the min threads
    have been reduced to 2 to signify that io-threads needs minimum
    two threads for its operation, while keeping the default number of
    threads at 16. The idea is to decouple the default thread count
    from the minimum thread count.
    
    Note to Avati:
    This applies over Raghu's indentation and logging take-3 patch.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 80c30634da16f7b333d07eeff9839b70d577e39f
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Mon May 4 10:33:11 2009 -0700

    io-cache: indentation and logging fixes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 5d417f0f8853e4f17caf25255f98c559f3670434
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Thu Apr 30 07:09:42 2009 -0700

    io-threads: indentation and logging fixes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit bed4717a1b41e3e9af47ff1673e28925ba351f92
Author: Vikas Gorur <vikas@gluster.com>
Date:   Thu Apr 30 10:42:14 2009 -0700

    Cleaned up log messages in storage/posix.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f9d689ef3dd7040e09f704d24696b268ac1bdff6
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Apr 29 05:23:17 2009 -0700

    write-behind: indentation and logging fixes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 60d91b69768bd97cd83adc6edb4e1f7d6c13b6ba
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Apr 29 04:21:59 2009 -0700

    read-ahead: indentation and logging fixes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 946436dc17f7df47608b9a64aa11b77d7caf309d
Author: Harshavardhana <harsha@zresearch.com>
Date:   Fri Apr 24 05:47:39 2009 -0700

    Fix a conditional during dependency check
    
    Conditional was wrong and dependency check would fail.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ce6fa580af849b03c4641baf77bf07c590be934a
Author: Amar Tumballi <amar@gluster.com>
Date:   Wed Apr 29 08:51:41 2009 -0700

    bug fix in server protocol segfault when the volume file key is NULL
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 78aa2ee7d2f646a41f19858db9c48a8afc82e83f
Author: Vikas Gorur <vikas@gluster.com>
Date:   Wed Apr 29 03:23:55 2009 -0700

    Cleaned up log messages in features/locks.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d22b495e0c4c180de63082add3e3e3168f1a0e1f
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Wed Apr 29 02:16:51 2009 +0530

    cluster/unify - unify_forget() should not try to access inode->ctx, if inode->st_mode is not set.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 2de8717247d3dc1dcda4e3e8b3c260887c3e5891
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Sun Apr 26 22:51:18 2009 -0700

    mod_glusterfs/apache/2.2: fix segmentation fault
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3e3fa81c3465bc329d448aac78de8e556d9d513f
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Sun Apr 26 21:36:33 2009 -0700

    memory leak fix in auth/login.c
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f827d1536635c53dbee27ade459f1e207c1115e8
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Tue Apr 28 19:29:50 2009 +0530

    protocol/server indentation fixes

commit 604f38b8df4ac8427f55bc708bb72d8700924122
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Tue Apr 28 16:02:22 2009 +0530

    protocol/server log level fixes

commit 7bbbc9c8786d079055138ac4f8ea98b576c73ce0
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Tue Apr 28 15:11:21 2009 +0530

    protocol client log cleanup

commit 7ce91b4e860b7c077c64e54f49943b2f77972967
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Tue Apr 28 15:11:05 2009 +0530

    fuse-bridge log cleanup

commit d2ed893e3a526506ef302281d6bc936e6219063d
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Tue Apr 28 15:10:38 2009 +0530

    socket transport logging cleanup

commit 702affac485649f9509b1d6912e1a7737dbb23ca
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Tue Apr 28 15:10:16 2009 +0530

    dht logging cleanup

commit a76ce13ce29249f4622fcfef39bcd087c1cd050a
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Tue Apr 28 15:09:57 2009 +0530

    afr logging cleanup

commit 34f9a0b30043cf7836601cb620b4bcc4239357ac
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Tue Apr 28 15:09:22 2009 +0530

    libglusterfs log cleanup

commit 29f111a22fe574eaa6938bf0bd3516796abe597d
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Tue Apr 21 19:39:24 2009 +0530

    log message cleanup in distribute
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 53f4af3aad6601ded97b5ef19d2383fe8efa7984
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Tue Apr 21 21:36:27 2009 +0530

    log message supressing in DNS resolution
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3699c3b966dec936bbbe9ec610d48feb41e0880a
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Tue Apr 21 21:34:38 2009 +0530

    cleanup of logs in socket and ib-verbs transports
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 9c540ee5bf8a620db3855814db7b0f0f71644aac
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Apr 21 02:34:08 2009 -0700

    Cleaned up log messages in replicate.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 04532fe34c582f551ec7d81b3fa6168f3a4a4d21
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Apr 21 02:34:07 2009 -0700

    Cleaned up log messages in client-protocol.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f99f41b67e500a38015b61781b59224a8395dd98
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Apr 21 02:34:06 2009 -0700

    Cleaned up log messages in mount/fuse.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8825c34d14e76914f7357c773c86b89ff03592cc
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Apr 21 02:34:05 2009 -0700

    Cleaned up log messages in xlator.c
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit add02343dd4d9a095552a703f8fa732455b0ff8d
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Apr 21 02:34:04 2009 -0700

    Cleaned up log messages in spec.y
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 0651c3a12c30f21067111498e9710864698c028b
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Apr 21 02:34:03 2009 -0700

    Cleaned up log messages in inode.c
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit c3e4bb1bc8c7aac727a236f101c5d9f36a536c5a
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Apr 21 02:34:02 2009 -0700

    Changed logging format to remove line number & function name from NORMAL and higher levels.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b52a5a408b82496a295c1065f2286c6755a04689
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Apr 21 02:34:01 2009 -0700

    Introduce new log level GF_LOG_TRACE.
    
    TRACE is the most verbose log level, meant to have a
    full trace of operation.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 174872b3644d36f6d0f8a34d9c06092abc126e4f
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Apr 21 02:18:38 2009 -0700

    Remove log level TRACE and the macro GF_TRACE.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e0c284c6e7c98b3a2fbd5c60d59b928d6e7af88a
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Fri Apr 24 15:28:40 2009 +0530

    iobuf: Define MAP_ANONYMOUS
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 7b2e459db65edd302aa12476bc73b3b7a17b1410
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Fri Apr 24 15:18:15 2009 +0530

    rename transport-timeout to frame-timeout, and set default to 30mins

commit d892c56c1d0b1de466ee4cf4071ab7b722808c00
Author: Vikas Gorur <vikas@gluster.com>
Date:   Fri Apr 24 00:57:42 2009 -0700

    Revised README
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 689347f278e5acfda95a24f7804a1450043311f3
Author: Vikas Gorur <vikas@gluster.com>
Date:   Thu Apr 23 06:53:02 2009 -0700

    Do not fail lookup() in case of split-brain.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 99351618cd15da15ee875f143154ea7f8e28eaf4
Author: krishna <krishna@gluster.com>
Date:   Wed Apr 22 23:43:58 2009 -0700

    "option unhashed-sticky-bit on/off"
    
    "option unhashed-sticky-bit on/off" will configure distribute to set or not
    the S_ISVTX bit in the stat.st_mode of the actual file in case it is
    pointed to by the link file. This can be enabled during migration.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b6f634f602559cfe0c4609f16c9f33a32243b578
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Thu Apr 23 11:20:17 2009 +0530

    fix build warning in locks translator

commit d886ceb9cbf45434ea0218f0098862daafb26ecb
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Thu Apr 23 11:09:37 2009 +0530

    minor build fix - set EXTRA_DIST to point to MacOSX/Portfile instead of Portfile

commit b0acbf09c21ff898ad3315811974e49cc80e6f2b
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Thu Apr 23 04:05:00 2009 +0530

    fix bdb_db_get() to return exactly read bytes and to copy the read data to given buffer only when needed.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e5686c440f3c03fbb24759342e5badf102579634
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Apr 22 07:33:59 2009 -0700

    mod_glusterfs/lighttpd/1.4: port to use virtual mountpoints.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 5f0bf570069770ee5c98fea728f0231f93eaab5c
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Apr 22 07:34:10 2009 -0700

    mod_glusterfs/lighttpd/1.4: ensure each line is no more than 80 characters
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 7a77bad6d583ee9266e6e3f566bf19d579177e3e
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Apr 22 07:32:30 2009 -0700

    mod_glusterfs: port apache/1.3/mod_glusterfs to use virtual mount points
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e26b63ccfc3aa0b29afb7235b863b7b4a7c8ae95
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Apr 22 07:32:42 2009 -0700

    apache/1.3/mod_glusterfs: ensure each line is of maximum 80 characters.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3c68984b6f8dbb772a858fcf829d6c6f81503912
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Apr 22 07:32:53 2009 -0700

    libglusterfsclient: implement glusterfs_umount
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b817670c609dda2a1038fb94bd5a7dc6fa522518
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Apr 22 07:33:03 2009 -0700

    mod_glusterfs: port apache/2.2/mod_glusterfs to use virtual mount points
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 725a1fcb1e84507c28f009d0f83692e0b57e474b
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Apr 22 07:33:15 2009 -0700

    mod_glusterfs: coding guidelines related changes
    
    - make sure code fits into 80 character lines.
      - proper indentation of declarations.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit c8e9a96e2c3801701e7f218f1b12fef16071b088
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Thu Apr 23 10:20:06 2009 +0530

    replicate dir self-heal - when creating a missing dir/file, set pending xattrs on source subvolume for that dir/file

commit bb592b1a8465fa078d0cd5f445f08280b78a93e4
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Thu Apr 23 02:18:52 2009 +0530

    fix in afr directory self-heal (partial healing)
    
    impunge loop was 'continued' on a different subvolume in certain cases, resulting in healing of partial files

commit 86fff0e75b445dee3cda6b788699930eb649334e
Author: Harshavardhana <harsha@zresearch.com>
Date:   Tue Apr 21 02:24:22 2009 -0700

    Add MacOSX based packaging file into repo
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 38a6a5b1a12eff04f26ded17ce4585a6ebdc7986
Author: Vikas Gorur <vikas@gluster.com>
Date:   Wed Apr 22 04:31:36 2009 -0700

    Bug fix in releasing inode locks when transport gets disconnected.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit df6d9e16817d952c17700d44ab478e6d6af704a0
Author: Vikas Gorur <vikas@gluster.com>
Date:   Wed Apr 22 01:02:09 2009 -0700

    Release all pending locks in pl_forget().
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 7eb63e30f22f7a9d785f6620be22d2b3aab77ada
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Wed Apr 22 12:55:47 2009 +0530

    iobuf_pool->arenas_cnt should be incremented in iobuf_arena_alloc, and not iobuf_pool_add_arena (to avoid counting of unpruned arenas)
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4877476fa1a591c51f4b3ee76082766f38a33b23
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Wed Apr 22 04:01:06 2009 +0530

    0-byte write guard
    
    guard server_writev from 0-byte writes from client where iobuf will be NULL. This is possible only via libglusterfsclient (not fuse)
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit bc1dff620cc185c3e08853b9b7fb4c5a04c48ebe
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Wed Apr 22 03:59:30 2009 +0530

    handle iobuf NULL return case in fuse-bridge, by waiting 10 seconds and trying again
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit cf508025fe506a507fe16ed52df74dc7e0ca7c64
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Wed Apr 22 03:44:01 2009 +0530

    fd leak fix
    
    steps:
      - server_finodelk uses req->volume pointer into state->volume
      - finodelk is queued by locks translator
      - c call returns from server_pollin and hdr is FREE'd
      - now state->volname is pointing to FREE'ed region (junk)
      - server_finodelk_cbk calls gf_add_locker
      - gf_add_locker remembers lock with junked path along with fd_ref
      - gf_del_locker from new server_finodelk cannot string match with junked volume thus
        lock is not deleted, hence fd_ref remains as a leak
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8d2e5d8062361df451be7c6f748a23884f1cf315
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Wed Apr 22 02:21:46 2009 +0530

    afr_lookup_cbk - self-heal getting missed
    
    compare for mismatching sizes and attributes before overwriting local->stbuf for read-child subvolume. This causes files with differing sizes on backed not to get self-healed if xattrs were missing.
    
    Also add the ESTALE check for compulsorily failing revalidates in case of 2nd unwind and beyond
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 07f1524165f864e09033b7f78e921c5375d4e2d6
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 21 04:50:33 2009 -0700

    posix: Ensure EINVAL return on NULL args
    
    Initing op_errno to EINVAL ensures that this is the value
    that gets returned on STACK_UNWIND, in case any of the VALIDATE macros
    result in exit from "out" due to a NULL argument. If this is not done
    , we get op_ret as -1 with errno set to 0 in the application's
    syscall.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 27e1c9fbd3fb6eda4f7d64ff04dad9d306c237e7
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 21 04:50:20 2009 -0700

    call-stub: Check for NULL in the correct variable
    
    It looks like the argument fd was meant to be checked here instead
    of the fd in the call stub. This fixes a NULL fd bug that results in
    an EINVAL on opendir.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 31643eb227a5dfba11d23068e9626bf9546283bd
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 21 04:50:08 2009 -0700

    io-threads: Add fxattrop fop
    
    -- added some indentation fixes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e246a3131676197aff0430429db1e7d7cc00be65
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 21 04:49:55 2009 -0700

    io-threads: Add xattrop fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit a9b4360d889097e8ea25497eb669daebcaf1e381
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 21 04:49:45 2009 -0700

    io-threads: Add readdir fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d1eb9b13d2e50485e69301ade12afe5ea8636af8
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 21 04:49:24 2009 -0700

    io-threads: Add removexattr fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 609c5aff6faa21cf3aaefa6b7a2a31a91590d726
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 21 04:49:10 2009 -0700

    io-threads: Add fsetxattr fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit a77340b94147a078918536a5297746803c846809
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 21 04:48:56 2009 -0700

    io-threads: Add fgetxattr fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d7753849cc66c3aef66dc1270920389d3c42e7ce
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 21 04:48:45 2009 -0700

    io-threads: Add getxattr fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6b426bc53e2e6106e32568f09354d4e4ce382f11
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 21 04:48:33 2009 -0700

    io-threads: Add setxattr fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 1cb8064b2a653f06062c226dc12d524d8f1a2da2
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 21 04:48:21 2009 -0700

    io-threads: Add statfs fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d769066ddcb7b3fab456a57704b184d0617b8d52
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 21 04:48:08 2009 -0700

    io-threads: Add fsyncdir fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 282a39c19ee15f8908eb28f0b2d6983b665d57a7
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 21 04:47:56 2009 -0700

    io-threads: Add opendir fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit cdbeb01abbfc26345df98e5a98a0e5ed513b7cf8
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 21 04:47:42 2009 -0700

    io-threads: Add link fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6bff99a8f92befa78ddea62519a05f945db5cdfa
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:36:44 2009 -0700

    libglusterfsclient: Add VMP-based realpath
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit cf22fd1d0430705e226d61ff8d9492925ce95d46
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:36:21 2009 -0700

    libglusterfsclient: Add VMP-based readlink
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit a9febb4bd30f41681755a0ee925ae3de6f0fa292
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:36:05 2009 -0700

    libglusterfsclient: Add VMP-based symlink
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit cb95018adab1377c862dca32f58825b336adafd0
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:35:50 2009 -0700

    libglusterfsclient: Add VMP-based unlink
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6f91c9dc86be9c10467ccb5bc3edde2c5d767b9f
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:35:32 2009 -0700

    libglusterfsclient: Add VMP-based mkfifo
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit bcc9a67fc22147f54a27a81ee35f4c081a0e6b73
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:35:17 2009 -0700

    libglusterfsclient: Add VMP-based mknod
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit a7205e78bfb962d9e5ff11db2a0b394e6db03256
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:34:58 2009 -0700

    libglusterfsclient: Add VMP-based utime
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e707afad9f6282bc425f8b0262ea5a6db018ec92
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:34:41 2009 -0700

    libglusterfsclient: Add VMP-based utimes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b4259400090a28a5dbe27922ad8bc309db2a7c4a
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:34:20 2009 -0700

    libglusterfsclient: Add VMP-based statvfs
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6cb3159ef38428572b81160e91e7c685ed44acb0
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:34:02 2009 -0700

    libglusterfsclient: Add VMP-based statfs
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit de2192ea754883ea6ae643f63c44c2cbeb20f981
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:33:43 2009 -0700

    libglusterfsclient: Add VMP-based link
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 12d9b4cccd559776f125440a232ff5b944ab3442
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:33:26 2009 -0700

    libglusterfsclient: Add VMP-based opendir
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e2ba80403c3e73220a2b48b813df1561a9081e09
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:33:06 2009 -0700

    libglusterfsclient: Add VMP-based chown
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 74a46284e17045db302e5bcde0052ea6c7b4c038
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:32:46 2009 -0700

    libglusterfsclient: Add VMP-based chmod
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 721783da4f9705331356328b8082873aec1ced0e
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:32:29 2009 -0700

    libglusterfsclient: Add VMP-based rmdir
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 07da4292a8678a415acfec130c40febc9a63b6b4
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:32:06 2009 -0700

    libglusterfsclient: Add VMP-based mkdir
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit dc53183708d6d9ff998487427312000f30dcb7ee
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:31:49 2009 -0700

    libglusterfsclient: Add VMP-based lstat
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 84eb262529ea5389df2296d182ecd5e0582602a7
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:31:31 2009 -0700

    libglusterfsclient: Add VMP-based stat
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit aa1e2fd37ab93b194308f94edd8ab0a342c7830e
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:31:09 2009 -0700

    libglusterfsclient: Fix stat cache bug
    
    The way stat cache gets updated was not consistent across
    all syscalls. Consequently, I was running into a bug that
    returned a 0 st_ino. The fix actually resides in the hunk
    that changes the lines in libgf_client_lookup but similar
    changes were also required in other users of stat cache.
    
    This commit fixes the bug and also cleans up the way stat
    cache is updated.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f29383ef35d210f2a72883cb6157e915200f7c7c
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:30:51 2009 -0700

    libglusterfsclient: Add VMP-based setxattr
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4074769dd2435ab3521ab39eb2775c3e80fc32b4
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:30:36 2009 -0700

    libglusterfsclient: Add VMP-based creat
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d875df0c5c095488db29a202eac74d10d540aa3b
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:30:15 2009 -0700

    libglusterfsclient: Add VMP-based open
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit bb2ca0ec0da700f600d1fa30d111c2aa42804f70
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:29:57 2009 -0700

    libglusterfsclient: Add VMP-based getxattr
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6cd656152901ba19ef52f762d000e329e3f7dbc6
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:29:40 2009 -0700

    libglusterfsclient: Add VMP-based get
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 86a1c646eeea353643bd6bd5eb040cf584b407c1
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:29:21 2009 -0700

    libglusterfsclient: Add virtual mount point support
    
    One part of the glusterfsclient library requires users
    to use a handle to address a particular glusterfs context.
    This can become cumbersome for applications that need to use multiple
    such context. For such applications, we make it easy by letting them
    define virtual mount points(VMPs), which are just paths that identify
    a particular glusterfs context. This is done through a new
    glusterfs_mount(..) interface.
    
    Subsequenly, any path based operations, that pre-pend a VMP before
    the files and directories inside the glusterfsd export, get internally
    routed to the correct glusterfs context. This helps users do away
    with the need to maintain their own path-to-glusterfs_handle_t
    mapping.
    
    The old handle-based interface still exists for whoever wishes to use
    it.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 7c7fd9039b0d0ba17190677f864c5a22d46ab4d6
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:29:00 2009 -0700

    libglusterfsclient: Must return size from readv
    
    The line being removed made libgf_client_readv return
    a 0 on successfull return when the return should really
    be the size of data read.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 7bc1747de75d7a65059fbcb191c3776210de1491
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 20 12:28:40 2009 -0700

    libglusterfsclient: Expose glusterfs_realpath
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 82394d484803e02e28441bc0b988efaaff60dd94
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon Apr 20 03:54:04 2009 -0700

    Check return value of afr_sh_select_source.
    
    If select_source returns -1, abort self-heal.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit fbefbfee743a01b5ad9977ad24de372258aeb65c
Author: Harshavardhana <harsha@zresearch.com>
Date:   Mon Apr 20 04:59:54 2009 -0700

    change errno EINVAL to ENOENT in case of all fuse_* calls for fuse_reply_err ()
    
    Seen "rm -rf" returns EINVAL in case fuse_loc_fill fails when there is a race condition which can happen when multiple "rm -rf" are done on a same directory listing from multiple terminals.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 2f5ee29248f4eafcd1c2f5cc31432d22739349d0
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon Apr 20 03:38:15 2009 -0700

    Minor fix in afr_sh_build_pending_matrix.
    
    Remove incorrect check for xattr[i] being NULL.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit aa085b10678c01693d0f7222bd4054bb8e8836cc
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Mon Apr 20 13:15:12 2009 +0530

    inode.c - NULL check for the extra __inode_search performed, when presented inode is not hashed.
    
    This bug fixes #967

commit 8660bb2bef59c00df194087ed75ba81f34555a73
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Mon Apr 20 12:00:50 2009 +0530

    afr-transaction: handle double flushes
    
    __if_fd_pre_op_done - reset fd_ctx->pre_op_done to 0 so that double flushes do not result in two xattrop() calls

commit 3b8f7ed4c080dc45da02dc751478863007199c26
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Mon Apr 20 08:08:26 2009 +0530

    client_protocol_reconnect - do not send notify of CHILD_DOWN event if errno from transport_connect() was EINPROGRES
    
    This bug was racing between a CHILD_UP from poll thread resulting from the event_register() of the new socket called in fuse thread. CHILD_UP would sometimes overtake the CHILD_DOWN for EINPROGRESS. So replicate would receive CHILD_DOWN as the latest event. This resulted in self-heal not happening etc.

commit 42617775a2821dc74300b89dd14a08b068575b2b
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 18 13:27:21 2009 +0530

    keep ctx->page_size fixed at 128KB but only add the margin for iobufs which are created

commit fb5cc405ae45b4e573d6acbe3383349a278f2bdf
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 18 11:19:34 2009 +0530

    enhancement to migrate-unify-to-distribute.sh

commit 093141a74962f11654c44fe2292605f9cf65e709
Author: Amar Tumballi <amar@gluster.com>
Date:   Fri Apr 17 16:07:00 2009 -0700

    added migration script from unify based setup to distribute based setup
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 9a4a2e2286cb372ca462f6f25f78de686ea3e4ce
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 18 02:49:03 2009 +0530

    pruning buffer margin - do not destroy if no other non-filled arenas are in the pool

commit 307528ef9a33a4d294b3ea49bbf5f0b16b27aa0f
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 18 01:09:31 2009 +0530

    disconnect transport peer if system is out of memory while allocating iobuf

commit 50b2291e3b046ea6b8fdfcb7e206c772eae64f0e
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Fri Apr 17 23:35:43 2009 +0530

    iobuf - account with iobref_size() instead of iov_length (vector)

commit 1d6dfe94fb970b51d96653da6c3361533d697fc3
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Fri Apr 17 23:12:37 2009 +0530

    added 2 APIs iobuf_size and iobref_size to return the system memory usage by an iobuf, and by all iobufs in an iobref respectively

commit 7867577b346c7f003be67ad202f4085cf35fdf7c
Author: Vikas Gorur <vikas@gluster.com>
Date:   Fri Apr 17 06:15:16 2009 -0700

    Destroy old ping timer before setting new one.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 7b1beca0a3b60a8b9347a3122d77aea081ccb773
Author: Vikas Gorur <vikas@gluster.com>
Date:   Fri Apr 17 05:42:23 2009 -0700

    Fix two memory leaks in afr self heal code.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 98a872df828aa2786c7bf595d430ef64351f4192
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Fri Apr 17 17:52:07 2009 +0530

    add 4KB margin in iobuf to accommodate fuse header

commit 0b20c24a399eb03fdc431ea2761e1334e0032651
Author: Vikas Gorur <vikas@gluster.com>
Date:   Fri Apr 17 04:23:58 2009 -0700

    Fixed parameter to finodelk in STACK_WIND in dht
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4e3eae6561b38b53bef2d20177ab62602db45c14
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Fri Apr 17 02:33:01 2009 -0700

    libglusterfsclient: Fix typecast to fix build warning
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4a632ea96be3012c583165865bbde392f99a327b
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Fri Apr 17 14:19:18 2009 +0530

    protocol/client - set remote inode number in inode context for root inode also, during lookup_cbk().
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6bd53940d198e55780cbc7d8678da6d67df80265
Author: Harshavardhana <harsha@zresearch.com>
Date:   Fri Apr 17 01:08:00 2009 -0700

    Renamed abs_top_srcdir to top_srcdir for older versions of autotool
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4e68cf7c4d912556e25eb1226669d7b438ff8a3f
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:59:02 2009 -0700

    libglusterfsclient: Remove unused variables
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 27d73ca503b2e508c682fca2848f8ae38390a146
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:58:50 2009 -0700

    libglusterfsclient: Add realpath API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4ada36f9bd6e008dfea65d708d785907b993b946
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:58:39 2009 -0700

    libglusterfsclient: Add lstat API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 7cd3cc24c8f3178382074c8a3a319df17b85769d
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:58:26 2009 -0700

    libglusterfsclient: Add readlink API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit a6f0446541e917979a697edd06dd28634bf3ec6d
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:58:13 2009 -0700

    libglusterfsclient: Add symlink API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 7aff8936f9c86677ee205e1cf9cb41f4ea9edecd
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:58:00 2009 -0700

    libglusterfsclient: Add unlink API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 42528875cdaee764070e54b8fcd5e91ba8733e98
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:57:40 2009 -0700

    libglusterfsclient: Add mkfifo API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 933c3eee81f843db1fb8a2eda491d49cfc04efea
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:57:24 2009 -0700

    libglusterfsclient: Add mknod API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 169976dfafeb714f3c94b9a2f635f36759334b9c
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:57:13 2009 -0700

    libglusterfsclient: Add utime API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit c9017ae0de2531342125eaf2a6aca3b9a251b16e
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:57:01 2009 -0700

    libglusterfsclient: Add utimes API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 366bd140f3f0fbc6b343aab067713c398ae601af
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:56:51 2009 -0700

    libglusterfsclient: Add rename API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 5feab82f0c228410d94f3dfa53025f85d6eac8b1
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:56:40 2009 -0700

    libglusterfsclient: Add statvfs API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ff2bacf3466ddd4473ae3774e1f822981f4d8198
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:56:29 2009 -0700

    libglusterfsclient: Add statfs API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f199ebf5d0c4d90abbc5d0dafd67561f39f398b8
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:56:08 2009 -0700

    libglusterfsclient: Add link API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e18b8031ab4c7ce763e1e7d57bf5c98a1cbe7167
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:55:55 2009 -0700

    libglusterfsclient: Add ftruncate API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 9193494d20a8555a90126b9d23e848b0b8ca196e
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:55:40 2009 -0700

    linglusterfsclient: Add fsync API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 912f1a8492c8c20743c8d7f0a75aeb31f2483932
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:55:26 2009 -0700

    libglusterfsclient: Add fchown API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 67561c965210f299b8a7e4ea1be0a702095b19f6
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:55:12 2009 -0700

    libglusterfsclient: Add fchmod API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 01a48790c4a0c9805eb55bfe1c60860ee91f48a1
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:54:58 2009 -0700

    libglusterfsclient: Add closedir API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit eb4d5f0074ab6430973188906a8083d26e24e790
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:54:42 2009 -0700

    libglusterfsclient: Add opendir API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f6ebe58492095a5d7ceb5762cb35defca945ab45
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:54:27 2009 -0700

    libglusterfsclient: Add chown API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e7d7a19d5733dfcea87467c5f96e1aaa812d5df8
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:54:14 2009 -0700

    libglusterfsclient: Add chmod API
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f887fd6f7c6a5b740ebbf220706ebc44a938d67e
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:54:00 2009 -0700

    libglusterfsclient: Abstract away inode attr cache updates
    
    This commit creates a separate function that allows users of
    the inode attribute cache to update the cache when required.
    Major users are lookup, stat and fstat functions.
    
    The function libgf_update_iattr_cache(..) allows updating the lookup
    and stat caches separately using flags.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4c98eaf4c464e7e2f1c6ce66414fd7864f5c8bfa
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:53:51 2009 -0700

    libglusterfsclient: Replace dict based inode ctx with array based one
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit c71110fb153adfd4628718f634348b7a5712bf32
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:53:39 2009 -0700

    libglusterfsclient: Fix fd_ctx leak on release cbks
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit adb677be13e6b755c3eeb685759d2522f6c466a7
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:53:24 2009 -0700

    libglusterfsclient: Replace dict-based fd ctx with array-based one
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 00968db3069e7b145f108d53a62d1899c9c1f3f9
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:53:12 2009 -0700

    libglusterfsclient: Generalize [RW] checks on dirs
    
    This patch moves the read-write permission check on directory
    inode into libgf_client_opendir, so that when I am next adding support
    for the opendir syscall, I dont have to perform similar checks again,
    outside this function.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 1873d0bdb53af0311e8ad344116c0923448a6ff5
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:52:54 2009 -0700

    libglusterfsclient: Check for directory on O_CREAT
    
    If we have received an O_CREAT for a name where that basename is a
    directory, and if we have successfully looked up the inode for this directory,
    then we can check for S_ISDIR in libglusterfsclient and prevent sending a message
    to the server through libgf_client_creat. See also the comment inline.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 79215d4f2487e6db87e5fd637f0262037c1d230b
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:52:43 2009 -0700

    libglusterfsclient: Create and use LIBGF_REPLY_NOTIFY macro
    
    All reply notifications can now be abstracted away through
    this macro and all cbk functions should now call this.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ba4833355a1ee77f828b538a357e07c46f36b037
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:52:27 2009 -0700

    libglusterfsclient: Fix segfault on non-NULL loc->name
    
    The gf_log message actually assumes that loc->name will have a valid
    non-NULL name in it, whereas if the loc_t being passed to it was
    actually created on a function stack, i.e. a local function variable
    and was then passed down the code path to do_path_resolve without ever
    initing it or zeroing the structure, its possible that the name member
    has a non-NULL but corrupted address. This leads to a segfault.
    Whereas, we know loc->path will always have the full path.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit c1b3deff1186c581cb8d9893a3a0de6bf00d3adc
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:52:04 2009 -0700

    libglusterfsclient: Use macros for argument checks
    
    Having those if {} blocks to check for argument
    validity hurts the eye so this patch replaces those checks
    with macros. One macro already exists in libglusterfs. The second
    macro is introduced by this commit for libglusterfsclient-specific
    check for paths.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b3e3fc79d4e7008a27d935decefcca51ba89dc17
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 16 23:51:45 2009 -0700

    libglusterfsclient: Rename XLATOR_NAME define
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 41011cdb4c9f76a1805f0b908d1d7f77cef545b2
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Fri Apr 17 00:32:17 2009 +0530

    protocol/client - NULL check for loc->inode added in statfs(), before trying to retrieve remote inode number from loc->inode's context.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4c4021bea2d9f484321066518e10d2b139af2a3a
Author: Harshavardhana <harsha@zresearch.com>
Date:   Thu Apr 16 06:15:48 2009 -0700

    RPM spec file updates for RHEL,CentOS,Fedora,SLES and OpenSUSE for upcoming 2.0.0 stable release
    
    * Updates to ahere to RPM standards hugely driven by Fedora dist-f11.
    * RPM spec file portable across RHEL, Fedora, CentOS, SLES, OpenSUSE.
    * RPM spec build options made compact and removed unnecessary.
    * %changelog old entries removed as they were giving many warnings
      during rpmlint.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 7ae141bb054494c86cfb60b377ab989c30938f66
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Thu Apr 16 17:32:05 2009 +0530

    add NULL check in iobuf_arena_destroy

commit 6bc3f3c19b9e720ade3702ce409a8a99cc13f1dc
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Thu Apr 16 03:41:54 2009 -0700

    logging enhances to commit d77279ef04ca75ab9715864274567d1ce0ce66a6
    
    - logging made more relevent.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8a00ad080cbea0d01470c5f724d7d8ff54b0e254
Author: Vikas Gorur <vikas@gluster.com>
Date:   Wed Apr 15 06:02:22 2009 -0700

    Use original pid when calling the FOP in afr transaction.
    
    Save the original pid while locking and restore it
    after the FOP is done. This ensures posix-locks can
    release locks (fcntl) properly.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 34f8f0b3e1f992cf59da2c2d410471e440e6ed92
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Apr 15 03:11:21 2009 -0700

    write-behind aggregate-size related changes
    
    This patch brings in following changes:
       1. make aggregate-size as non-configurable and make it to be equal to
          maximum iobuf size.
       2. best effort to write data in chunks of length as close to aggregate-size
          as possible but not greater than aggregate-size, since aggregate-size is
          made equal to Maximum size of iobuf.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ffb863c3a8cbfb2105ac23ce5fc5be1df372458c
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Apr 15 03:12:17 2009 -0700

    write-behind: adhere to coding guidelines.
    
    - make sure lines are not greater than 80 characters in length
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e77eb62f253bc2288b1b4ff582f99ebf16a28c47
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Thu Apr 16 14:38:02 2009 +0530

    cluster/distribute bug fix - try to create linkfile in dht_lookup_everywhere_cbk(), only if hashed subvolume can be determined, else error out with ENOENT.
    
    -- with local fixes (avati)
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d1703344735d9c4df89b84310deaf1b9703f8c49
Author: Harshavardhana <harsha@zresearch.com>
Date:   Wed Apr 15 01:00:01 2009 -0700

    Fixed the build problems observed
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e6c22c0587bbd9cb84969f5673db043c32e485ef
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Tue Apr 14 15:28:34 2009 +0530

    eliminate this_ino_get(), this_ino_set(). handle inode_ctx_{get,set}() at the fop level itself.
    
    they used to log ambiguously
    and was of no use. logging is now more precise and will help in debugging,
    in case of errors.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f7902b7072015c9c20f47e999af85c923f202d33
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Apr 14 08:15:50 2009 -0700

    Changed xattr format of afr changelog to support adding and removing of subvolumes while keeping existing data.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d77279ef04ca75ab9715864274567d1ce0ce66a6
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Tue Apr 14 02:53:09 2009 -0700

    server-helpers: Add check for NULL connection arguement being passed in helpers.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3baa437e9980e7dac9893d6c11ccc1623a5faee2
Author: Anand V. Avati <avati@gluster.com>
Date:   Tue Apr 14 15:09:37 2009 +0530

    remove unused variable @ret in ib_verbs_options_init
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 54c40bbfb48e2f7469149d6724e2ac77bce0690a
Author: Anand V. Avati <avati@gluster.com>
Date:   Tue Apr 14 14:51:26 2009 +0530

    use MAP_FAILED macro to free mem_base in arena_destroy
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 1ce5acccf5186e70424826d4f22cee3a29ac114e
Author: Anand V. Avati <avati@gluster.com>
Date:   Tue Apr 14 14:51:16 2009 +0530

    FREE arena->iobufs in iobuf_arena_destory
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8b32e03f87599bd3d87ec99c5718d40ff10831ff
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Tue Apr 14 14:20:04 2009 +0530

    cluster/unify link() should be sent to only one subvolume.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 7a4bc3fbb352396b27489b0e97327d0fc82b85d5
Author: Amar Tumballi <amar@gluster.com>
Date:   Tue Apr 14 00:41:43 2009 -0700

    minor bug fix in posix_create() when 'o-direct enable' option is given.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 33e81bc94986929caab14a05231b25787a25a41b
Author: Amar Tumballi <amar@gluster.com>
Date:   Mon Apr 13 23:40:22 2009 -0700

    bug fixes in dht-disk-usage feature.
    
    fixes bugs seen with dht's disk usage.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d8bc2834d056a23f55bd86a5fd704bd81e35836d
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon Apr 13 07:23:59 2009 -0700

    Send statbuf from the same subvolume, even across revalidates.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8e0d48cbb23cf056277ebc609d47b5184b95fa87
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Mon Apr 13 18:42:36 2009 +0530

    use ctx->page_size in all translators and transports instead of having their own configurations
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 451620e0ec88f717e7046ebb27fe1f29d73796d9
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Mon Apr 13 17:50:21 2009 +0530

    introduce page_size in glusterfs_ctx_t to be used by all translators set it to 128KB in main()
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3093ff0b125c520fdac3db627af708f495c9a47e
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Mon Apr 13 15:41:01 2009 +0530

    client_readv_cbk - when op_ret is 0, iobuf comes NULL from transport, handles this case
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit a0bb8a02cd334aeda02e6146ea541a7dae4223d5
Author: Anand V. Avati <avati@gluster.com>
Date:   Mon Apr 13 14:03:43 2009 +0530

    bug fix in iobuf_select_arena - call __iobuf_pool_add_arena (unlocked version)
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3fb7252c5ec7edd8c9234d4fcc369fd10707a613
Author: Anand V. Avati <avati@gluster.com>
Date:   Mon Apr 13 14:03:35 2009 +0530

    bug fix - arena destruction now calls munmap and not FREE
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit dc9cdbdc1c03c231ba405e540fac7d6483159bb2
Author: Anand V. Avati <avati@gluster.com>
Date:   Mon Apr 13 14:03:28 2009 +0530

    add purge list support to make iobuf_pool_purge() in expensive, and actually call it in iobuf_put :-)
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b9a210a419ff28f2d75b10a680520fd6cc37ac5a
Author: Anand V. Avati <avati@gluster.com>
Date:   Mon Apr 13 14:03:21 2009 +0530

    bug fix in iobuf_select_arena - never created a new arena
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 688db6452befde5d7cd2b35f86b770b4c19c53fc
Author: Anand V. Avati <avati@gluster.com>
Date:   Mon Apr 13 14:03:13 2009 +0530

    add @filled list in iobuf_pool to keep away filled list from getting searched in iobuf_select_arena
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4f0d487c96b84123289d3c48fd84188efe136293
Author: Anand V. Avati <avati@gluster.com>
Date:   Mon Apr 13 14:03:02 2009 +0530

    change arena size to 8MB
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 00dff3bddc375e88e710a751f47843f9da77a70c
Author: Anand V. Avati <avati@gluster.com>
Date:   Mon Apr 13 14:02:57 2009 +0530

    use MAP_FAILED macro to check for mmap failure instead of (void *) -1
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 014cdf385642947d0592102b2c7338a8ad1c2d4e
Author: Anand V. Avati <avati@gluster.com>
Date:   Mon Apr 13 14:02:47 2009 +0530

    fixed sizeof parameter in CALLOC of a new arena
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 5dd850ae840ddb402ca4aaae19c668094947507e
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Mon Apr 13 11:21:20 2009 +0530

    switch scheduler to validate the subvolume specified for a pattern, against the given subvolumes of cluster/unify.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ec06475f22db2a3683167c5ffbe236c8e4aaf0ab
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Mon Apr 13 04:47:39 2009 +0530

    changes to database read interface, to make use of a given buffer instead of allocating internally.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 945f438d393297cf72a3157532625b6b02e87268
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Mon Apr 13 02:09:25 2009 +0530

    log formatting fixes. use GF_PRI_SIZET for size_t.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3f1e93c29856ec1e75327525899d1f0d6a81c0a3
Author: Amar Tumballi <amar@gluster.com>
Date:   Sun Apr 12 04:16:09 2009 -0700

    minor initialization bug fix in quota's build_loc
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ecead44b5c8d1215e7c398ca1132a4b0b11a44bb
Author: Amar Tumballi <amar@gluster.com>
Date:   Sun Apr 12 04:12:00 2009 -0700

    in dht, initialize the free available space properly, so the first few creates are not confused.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e00bdb4a323b60ced500df59071d2a940b976ae9
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 8 02:28:16 2009 -0700

    Coding Style: Add a few points
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4a62b5af1c9add4a74ea38ab9008bf129e2b4110
Author: Amar Tumballi <amar@gluster.com>
Date:   Fri Apr 10 00:34:34 2009 -0700

    feature to disable volumefile's checksum
    
    in server volume define, "option verify-volfile-checksum no" to disable
    the checksum feature.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit be9909606428d78ec23ea02900640c68ca2a40d2
Author: Anand V. Avati <avati@gluster.com>
Date:   Fri Apr 10 09:22:18 2009 +0530

    reset errno to 0 before calling first fuse_lowlevel_new() to reliably detect for unsupported params
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit fa9eb588fbe758cbc1ebe727d2455f1dcd0b065f
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Fri Apr 10 07:09:49 2009 -0700

    io-threads: Remove unnecessary call to pthread_attr_setstacksize
    
    We do not need to explicitly set the stack size to its default
    value.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4f81149489ae80b20ac28d1fdbe48ee56d0a181b
Author: Anand V. Avati <avati@gluster.com>
Date:   Sat Apr 11 00:54:29 2009 +0530

    prefix ULL to large constants (to fix bdb build warning)
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 45c4fb76dfd0756ebd86bf431f5b5761068901b5
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 23:32:24 2009 +0530

    updated glusterfsd to create iobuf pool at initialization
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6d94a368e061afeeac6fb57c5910c71f60791dc3
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 23:22:26 2009 +0530

    updated libglusterfsclient with IOBUF/IOBREFs
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 77714c065d99767f5a3820bc1c62b22522681821
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 23:09:15 2009 +0530

    updated transport/ib-verbs to use IOBUF/IOBREFs
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 07e8f887547c1b9fd71a3ca45b2c1ac974c939ad
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 23:00:59 2009 +0530

    updated transport/socket to use IOBUF/IOBREFs
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 19cac9a1b3d7d4f5720049c4fb2b5e08b27d27e8
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 22:04:44 2009 +0530

    updated mount/fuse with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 1650945f2379cc33eab1b21c033d42152fa2592f
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 21:53:57 2009 +0530

    updated encryption/rot-13 with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 5617f5e3a3840b59263ede767c53f80088593c66
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 21:52:08 2009 +0530

    update features/quota with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 91e3976e99523908541932c02b2c4e9df28a9510
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 21:48:35 2009 +0530

    updated features/filter with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 5d80832d2dc0127b8f380afd7d49ff7b27ac79ec
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 21:46:54 2009 +0530

    updated features/locks with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d7b12cdc8d2bcbf89530e00710da308bd757e35d
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 21:43:51 2009 +0530

    updated debug/error-gen with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit aed3aaef43589633f2a43d48435ef234582f37e0
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 21:42:45 2009 +0530

    updated debug/trace with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d720afb836ecd22c13859356261e85334422f119
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 21:40:19 2009 +0530

    updated performance/io-cache with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit be1d7c1e3b61477a82152a07a11993061e89b894
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 21:23:00 2009 +0530

    updated performance/io-threads with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 795fb95f42697796008e34790e0768929d478a3a
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 19:00:45 2009 +0530

    update performance/read-ahead with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit c29b1710529fb52724ba37e09ca0f10cd7fcffa8
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 18:51:39 2009 +0530

    update performance/write-behind with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e062dd5c2f76106593829ebbb86003de966f00f2
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 18:43:35 2009 +0530

    update protocol/server with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ad86fba6e22b10b06aa44426c2ab3591c54ed0a7
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 18:15:11 2009 +0530

    updated protocol/client with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 2e743ddc4a89f8a4d0c9ff0f16a6faf0218e453f
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 18:14:10 2009 +0530

    updated transport interface functions to accommodate IOBUF/IOBREF
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 0e9cda6d77a63723014bb2c040d8215fd7180a10
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 02:33:49 2009 +0530

    update storage/bdb with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6e641226df9a90a4d88c859d4bc1c27fdacc2037
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 02:17:25 2009 +0530

    update storage/posix with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit fa5847401431f62013f1ef66363b5a0c1b29a0c5
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 02:02:52 2009 +0530

    update cluster/map with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 645c60e308de5290b9059eae557a320bd6a294d9
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 01:59:56 2009 +0530

    update cluster/ha with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 89cacef43e843c7563ed5d4ebb6ec16a3b81df3e
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 01:57:14 2009 +0530

    update cluster/dht with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f33f0669efd89216a528bab3694ac4645a7f523b
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 01:52:08 2009 +0530

    update cluster/afr with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e0e6acd6fbdcbd294c89e61cbe108fc1b96a62a8
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 01:39:34 2009 +0530

    update cluster/stripe with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f551e72584b3525d5a55c6fb4456d7b9ca5cb5f3
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 01:25:26 2009 +0530

    update cluster/unify with new readv writev prototypes
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit c723c0dae5fd2887b714a08bcaeadb663e4de44b
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 01:21:57 2009 +0530

    do away with frame->root->{req,rsp}_refs members
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4554d82bbe2ecec6c79b6a791522358c8855408d
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 01:12:10 2009 +0530

    update prototype of writev and readv_cbk to use IOBREF in parameter (step towards elmination of frame->root->{req,rsp}_refs
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3524572538e5abe839fa29fe94da8f7591cedce8
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Apr 11 00:09:08 2009 +0530

    IOBREF support for holding iobuf refs along with fops (replacement for frame->root->{req,rsp}_refs
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e953968683d988c8fc3020ede2cb8e5229a548a6
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Fri Apr 10 23:11:33 2009 +0530

    use 128Kbyte as the channel transfer size in fuse-bridge
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 124fb0c752530322e6311dde668422afef6b2afe
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Fri Apr 3 15:17:04 2009 +0530

    IOBUF support (to be used by transports and fuse)
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit a31e26f8df26b1229e9fbca60ff8bf462b234241
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Fri Apr 10 04:22:37 2009 -0700

    io-threads: Reduce default min and max threads
    
    Going by the memory usage for each threads, it is prudent to
    have lower number of threads by default and let users who understand
    the memory consequences increase the thread count for themselves.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e1977a4e75637109889b581201e44e24506398c8
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Fri Apr 10 04:21:53 2009 -0700

    io-threads: Use non-default thread stack size
    
    The default stack size on Linux is around 8 MiB for each
    thread. This is clearly too high for our purpose. This commit reduces
    the stack size down to 1 MiB.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit bf7b4623821c8ffe8070297949e18dc6e3757e9c
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Thu Apr 9 07:59:21 2009 -0700

    posix_unlink: make unlinking in background configurable through volume spec file
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit fb034ba3036fadc7cf35edc5cae7481149a67ca0
Author: Vikas Gorur <vikas@gluster.com>
Date:   Thu Apr 9 03:54:51 2009 -0700

    Compulsorily do self heal if file sizes differ.
    
    If file sizes differ, then compulsorily do self-heal. If no 'wise'
    sources are found, then pick a 'fool' with the biggest file size.
    If even 'fools' aren't found, pick the 'innocent' source with the
    biggest file size.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit bfbcde78924fc5847b31ae56fe8d14ea52b60dfd
Author: Vikas Gorur <vikas@gluster.com>
Date:   Thu Apr 9 03:53:59 2009 -0700

    Handle files which have no pending xattrs at all.
    
    If a pending xattr key is non-existent on a file (call such
    files 'ignorant'), make all other non-ignorant subvolumes point
    towards the ignorant one.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ec35b79f746d8a9451d7a3b9894025fdad7382f4
Author: Vikas Gorur <vikas@gluster.com>
Date:   Thu Apr 9 03:53:26 2009 -0700

    Erase xattr during self-heal based on original dict.
    
    Decrement xattr during self-heal based on the original dict instead
    of pending_matrix, as the pending_matrix might have been
    altered later.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 445b57bf7207107a9ef078697b7d03bb9349747a
Author: Csaba Henk <csaba@zresearch.com>
Date:   Tue Apr 7 02:14:20 2009 +0200

    niftify mount(8) output for glusterfs mounts
    
    Originally, mount(8) shows a glusterfs mount like this:
    
    glusterfs on <mp> type fuse
    
    With this patch, mount(8) will show a glusterfs mount like this:
    
    <volfile> on <mp> type fuse.glusterfs
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8123c907015e6ad6e2975ba77eadd4db32e08628
Author: Harshavardhana <harsha@zresearch.com>
Date:   Tue Apr 7 00:43:23 2009 -0700

    Commit package making files for FreeBSD and Solaris platform.
    
    Commit for package making related files for FreeBSD and Solaris. These files
    are supposed to be in repository to not loose track and update them as needed.
    I will update them soon for upcoming release where we support Solaris on
    ib fabric also.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b976536e616e6dd23dd4a3981d150b168f9d2bef
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 7 05:43:31 2009 -0700

    libglusterfsclient: Complete support for rmdir fop
    
    glusterfs_rmdir code path wasnt implemented completely. Here is an
    attempt to complete it.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ca32040f350a7b8ad2e24ee68b417d6bec266038
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 7 05:42:14 2009 -0700

    libglusterfsclient: Create new directory inode
    
    Make sure we give an allocated inode in the loc so that the underlying
    callbacks are able to fill it with the relevant information about the
    directory being created.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 364af2266e9cd9d1f4d88763e61a5b28d1336414
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 7 05:41:50 2009 -0700

    libglusterfsclient: Return ENOENT on missing ancestor component
    
    If any of the path's components, except the basename, are missing
    from the dentry cache and the corresponding lookup from the server
    also fails, return an ENOENT.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 353f30ad17c9ace576df47abedf71054d8eb434e
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 7 05:40:12 2009 -0700

    libglusterfsclient: Return EEXIST on lookup success in glusterfs_mkdir
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 957ae7ba2ba7b8276dab963b7af7dbf16eeb5888
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 7 05:36:57 2009 -0700

    libglusterfsclient: Perform explicit create
    
    We must create the file based on the O_CREATE in the flags
    instead of depending on the return status of the lookup.
    This works because we've already handled O_EXCL earlier and
    also handled a missing file(ENOENT)
    in case this was actually an open and not create.
    Adapted from Raghu's original patch.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d4ab91b1f254a21cac538fdffa7ff37db10ae83c
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 7 05:35:32 2009 -0700

    libglusterfsclient: Handle O_CREAT on lookup failure
    
    On lookup failure, if O_CREAT is required, then we must:
    
    1. explicitly lookup the parent directory.
    2. create a new inode for the new file being opened.
    
    This special case is required for file creation because:
    1. We cannot depend on the previous lookup to have reliably looked up
    the parent inode.
    
    2. inode for the new file does not exist in the itable.
    
    Patch adapted from Raghu's original fix.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e8282fd242ba4061a40b992ebe4549b4dd23fa11
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 7 05:34:56 2009 -0700

    libglusterfsclient: Dont depend on ENOENT
    
    Dont depend on the dentry and explicit lookup function, i.e.
    libgf_client_path_lookup(..), to return ENOENT on not
    finding a dentry. Just use op_ret = -1 as a lookup failure
    status.
    Patch adapted from Raghu's original fix.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ccbb9c7df1d887bc835a04e0f76799770ba3e2b8
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 7 05:34:24 2009 -0700

    libglusterfsclient: Remove spurious strcmp
    
    This strcmp existed because of assumptions that do
    not hold true since the change in libglusterfsclient
    internals recently.
    
    This is another step in fixing the seg-fault on glusterfs_create.
    Patch adapted from Raghu's original fix to the problem.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 2524bf2e9cb89627833b1120eac0f78b279c1751
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 7 05:33:56 2009 -0700

    libglusterfsclient: Resolve path on empty caches
    
    The earlier case was that the explicit lookups to the server
    were being sent only when the parent inode was NULL. This situation
    breaks when the parent inode is available in the i- or d-cache
    but the child dirent is not. In such a case, no explicit lookups
    were being sent to get the missing child dirent.
    
    Now, explicit path lookup happens even if the inode for parent or basename
    is not found in the caches.
    
    This also fixes a seg-fault occuring during glusterfs_open, in my test
    case, but one that could occur almost anywhere lookup code is used.
    Patch adapted from Raghu's original patch.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 47f03734685076fce51eaacb706796d2213bdbf1
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Apr 7 05:32:47 2009 -0700

    libglusterfsclient: Fix segfault in glusterfs_open
    
    libgf_client_loc_fill gets passed a name=NULL argument.
    So when this function returns the filled loc argument, this loc
    is actually missing the inode structure that was to be filled.
    
    The segfault actually occurs a few lines later when
    we try to access fd->flags but fd returned by fd_create is NULL
    because we'd passed a NULL inode to it, i.e. the loc->inode.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 07fcdfebf25c30811a9313ac3d9a0fdbbceaad6c
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Wed Apr 8 04:24:22 2009 +0530

    introduction of secondary index database in storage/bdb
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit abf35ff6c7a2cc94d9e1e738fb76f711bd2abc16
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Wed Apr 8 04:24:00 2009 +0530

    link() & rename() on storage/bdb will always return EXDEV.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8fea700263bd356e6ecacd3dabc9a9c00043a804
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Wed Apr 8 04:23:30 2009 +0530

    storage/bdb untabify, code alignment to limit to 80 characters per line.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 34ae34826cce3233402bf36cd6f0174be06a83dc
Author: Amar Tumballi <amar@gluster.com>
Date:   Tue Apr 7 17:38:07 2009 -0700

    map translator cleanup.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4e90ca853b774f64c6adde73a62ed2649bda5eab
Author: Vikas Gorur <vikas@gluster.com>
Date:   Wed Apr 8 02:30:18 2009 -0700

    Fix minor bug in afr_open_cbk.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 225e86b37492e5004eb51498b46471d74f30841d
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Fri Apr 3 02:06:52 2009 -0700

    io-threads: Refactor un-ordered worker exit path
    
    This is being done for the same reason as the
    previous refactoring for ordered threads.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit fe1cedc1a960493337676885881018e4687c12a2
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Fri Apr 3 02:06:25 2009 -0700

    io-threads: Refactor ordered worker exit path
    
    This patch re-factors the exit path of an ordered worker
    on a time-out. Earlier we're checking for exit permission
    in such a way that required us to release and acquire
    the worker lock a second time in the worker loop opening
    a window wherein a new request could've been appended to the
    request queue.
    
    This patch makes the decision to exit while still holding on to the
    worker lock.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3acd56bec5afef9db673ae8d7dbe52bc7943b298
Author: Csaba Henk <csaba@zresearch.com>
Date:   Mon Apr 6 21:25:12 2009 +0200

    add .gitignore
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 5634986f594fe75d0cd2e69cadf002a2c701f366
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Apr 7 06:55:43 2009 -0700

    Fix in changelog logic.
    
    If a writev fails, remember it by marking it in the fd context.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d46684117a02359886e096d1bcc9f590b54144a6
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Apr 7 06:55:15 2009 -0700

    Consider a subvolume dead if an fop fails on it
    
    Transaction fops earlier called afr_transaction_child_died only
    if an fop failed due to ENOTCONN or EBADFD. Now they consider a child
    dead regardless of the reason for failure. This handles cases such
    as ENOSPC.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d71e72248096d12ce2a8ca7ccb36ef97ae486583
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Apr 7 03:27:24 2009 -0700

    Add lock-less versions of fd_ctx_*
    
    Added __fd_ctx_get
          __fd_ctx_set
          __fd_ctx_del which do not hold any lock.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 27996c714f7fd6a7686f2d4a3552efbc1e54c2c7
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Mon Apr 6 10:27:45 2009 -0700

    Enabling booster after port to work with changed libglusterfsclient interface.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 2d59bde99600ecb15b7ebba9cd0283925c9f20f4
Author: Amar Tumballi <amar@gluster.com>
Date:   Mon Apr 6 10:56:52 2009 -0700

    fix to fd leak in posix_create() in case of some failures.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit c7962678224374fa295d4063c2f5387c7280536e
Author: Amar Tumballi <amar@gluster.com>
Date:   Thu Apr 2 19:45:04 2009 -0700

    nufa to take care of free disk-space while creating files.
    
    nufa gets awareness about the available free-disk-space in subvolumes.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 258fec70ba2cc588f500f3e3bc16c99af212b4c9
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon Apr 6 05:21:29 2009 -0700

    Fix in return value of afr_sh_mark_sources
    
    afr_sh_mark_sources now returns:
      -1   if two wise subvols conflict (split-brain)
       0   if all subvols are innocent (no self-heal needed)
      >0   if sources found
    
    Also, changes to callers of afr_sh_mark_sources to handle return
    value properly.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6b18487d2811b4fb004d0f4c5c98a101a93b35ed
Author: Csaba Henk <csaba@zresearch.com>
Date:   Mon Apr 6 14:03:21 2009 +0200

    bitrot-13 fix
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 7a543c3b45139adce1189785200ad23b2ec867d2
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon Apr 6 04:00:59 2009 -0700

    Fix an incorrect type-cast in libglusterfsclient.c
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 258da6cd992c279469f2288f8a3cd41be69d43c2
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 6 00:37:54 2009 -0700

    io-threads: Cleaner stub destruction
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 45dab1eefd85e38570c2c3ccfac0061245f70e74
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Apr 6 00:25:51 2009 -0700

    io-threads: Sanity check worker thread idx
    
    This patch adds sanity check for the ordered worker thread index
    returned from the inode's context. If the index is corrupted we
    STACK_UNWIND with ECANCELED.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit fed1aa318dcf939326b955a8fcc2da2b1535acb9
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Fri Apr 3 22:13:53 2009 +0530

    disabling booster

commit 8a5005ecf06f23f1607c0ff4111a21c00bd74205
Author: Amar Tumballi <amar@gluster.com>
Date:   Fri Apr 3 08:27:44 2009 -0700

    distribute to take care of available disk space while creating new dirs, and files.
    
    distribute gets awareness about disk-space while creating the files
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f235826215205ac626abb0ad475e7a89f7003da5
Author: Rommer <rommer@active.by>
Date:   Wed Mar 18 14:32:50 2009 +0200

    fix broken transport-type unix
    
    fix broken transport-type "unix"
    however unix transport not working with defined transport.socket.bind-path
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 7a52d4ba1f1f8b68ecd79b4d5409f3b930b4efd4
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Mon Mar 30 07:25:32 2009 -0700

    libglusterfsclient - reimplement glusterfs_fgetxattr and glusterfs_fsetxattr
    
    - glusterfs_fgetxattr and glusterfs_fsetxattr earlier used lookup and setxattr
        fops for implementation. Change it to use fgetxattr and fsetxattr fops
        instead.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 475a5909f3f80a1fc91630ea22bec228bfdc676b
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Mon Mar 30 07:20:35 2009 -0700

    libglusterfsclient - fix bug in __do_path_resolve
    
    - add argument lookup_basename to __do_path_resolve which indicates whether to
        lookup basename(path). This is necessary for apis like glusterfs_get, which
        dont want basename(path) to be looked up by libgf_client_lookup_path.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 65bd768543c4de3d2ffd8d17efbd79e1e03666a4
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Mon Mar 30 06:33:06 2009 -0700

    libglusterfsclient - move lookup timeout related code to libgf_client_path_lookup
    
    - this simplifies the resolution of path to inode, the apis which receive
         path as argument just need to call libgf_client_path_lookup for
         path->inode translation.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ab534d54e4e2e1eb921c7a3c98d44137471c7ac5
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Mon Mar 30 04:21:59 2009 -0700

    libglusterfsclient - fix indentation
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e60d2194840b78034db1ad5c8b385a691ab3ddb6
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Mon Mar 30 03:57:20 2009 -0700

    libglusterfsclient - change implementation of glusterfs_get
    
    - remove redundent lookups happening in glusterfs_get.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8b8448799cc43f20f5812bf5629c8670f76f78d3
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Mar 25 23:22:55 2009 -0700

    mod_glusterfs/lighttpd/1.4 port and memory leak fixes
    
    - port owing to changes in interface of libglusterfsclient.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 38be3fda5ce27352c45475fc4de442806cbddd36
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Mar 25 23:22:28 2009 -0700

    mod_glusterfs/apache/1.3 port
    
    - port owing to changes in interface of libglusterfsclient.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e600abcb96979f80a0a20074347e8efc6cae880d
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Mar 25 23:22:03 2009 -0700

    mod_glusterfs/apache/2.2 port
    
    - port owing to changes in interface of libglusterfsclient.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit cf6f21928dbe3489de5dfdc3513f3be5f5ef529d
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Mar 25 06:52:05 2009 -0700

    libglusterfsclient code changes
    
    - add dentry support to libglusterfsclient.
      - changes related to using array, to store context in inode instead of
        dictionary.
      - code changes related to cleanup of libglusterfsclient interface.
      - added glusterfs_mkdir and glusterfs_rmdir
      - other changes in libglusterfsclient to make it work with code changes
        in other parts of glusterfs.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6eb419f1ca68f536a700e63c1521e428560a0d9d
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Fri Apr 3 06:30:54 2009 -0700

    server-protocol - reimplement connection cleanup to happen in 2 phases
    
    - first phase, which happens when POLLERR is received on transport,
         releases all locks, flushes all open fds.
       - second phase, which happens when both the transports of connection destroyed,
         destroys the containers like lock table, fd table along with the connection.
       - the first phase, clears up any references to transport held by translators
         like posix-locks(in the form of blocked locks) paving way for the second phase.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d3d7245970189629937f6330a6d946f5fbb454af
Author: Vikas Gorur <vikas@gluster.com>
Date:   Fri Apr 3 05:34:10 2009 -0700

    Made afr inode context a 64-bit packed value instead of a structure.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 75c70231fe7e13a68239dac889568d243a79a75e
Author: Vikas Gorur <vikas@gluster.com>
Date:   Thu Apr 2 08:31:23 2009 -0700

    Load balance read operations among subvolumes in afr
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 1e7c9fa93716844e60d41811b8b79f8605a5044c
Author: Vikas Gorur <vikas@gluster.com>
Date:   Thu Apr 2 08:30:32 2009 -0700

    Defined afr_inode_ctx_t structure.
    
    Notification of a split-brain situation, which was earlier signalled
    by the mere presence of inode context is now signalled by
    the 'split_brain' member in the structure.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 9f2ef60274dae8b302d691ba8d266cd76dcd7c4b
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 14:01:05 2009 -0700

    io-threads: Support autoscaling volfile options
    
    This commit finally makes the autoscaling feature visible to the user.
    Know that we're now using two separate thread-pools, one for data
    requests, called ordered thread-pool in io-threads, and the other
    for meta-data requests, called un-ordered thread-pool.
    We do not expose this information to the user to keep io-threads
    simple. Consequently, when the user specifies a min-threads and
    max-threads value, the number of threads assigned to each pool
    is equal, i.e. both pools start with their min threads set to half of
    the option "min-threads" and both scale up their threads at most up to
    half of option "max-threads".
    
    Volfile options will be added to the wiki and user-guide.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b1bbd77f16a13f8109d1e2e1b4ed869db1e86645
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 14:00:36 2009 -0700

    io-threads: Cleanup request queueing,thread firing
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ae53812b2ccfd7842fa6430081465ed90f18814b
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 14:00:06 2009 -0700

    io-threads: Allow scaling to be switched off
    
    The default is also to provide no scaling. For both, ordered and
    unordered request pools, when scaling is off, we maintain atleast the
    minimum number of threads specified in the volfile.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b64fa35870b54b8d9e62afd71c92e35b1f7a4cfd
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 13:59:43 2009 -0700

    io-threads: Add ordered threadpool state and code
    
    Now we have the remaining fops going through the ordered
    thread-pool.
    
    To route a request through ordered thread, we use
    iot_schedule_ordered(..) and the worker thread for
    ordered requests is iot_worker_ordered(..)
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ee79908d3b577c061b497e35481b8d1523502077
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 13:59:24 2009 -0700

    io-threads: Add un-ordered thread-pool.
    
    This commit adds everything needed to:
    
    a. Get un-ordered request going through the un-ordered
    thread-pool. This happens through, the
    iot_schedule_unordered(..). The unordered thread-pool
    consists of thread running the iot_worker_unordered(..)
    function.
    
    b. Make threads in the un-ordered thread pool start-up
    and exit depending on the thread state.
    
    Note that at this point the requests that need
    ordering are still going through iot_schedule(..).
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e27f7f344e12d0885a48fcca8dfce36440f5e9e8
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 13:58:49 2009 -0700

    io-threads: Classify requests for threadpool type
    
    New io-threads will serve requests through two separate
    threadpools.
    
    One thread pool for requests that must be ordered
    on a file that is open. so that the server can process the requests
    in the order they were entered in the requests queue, and not in the order
    the io-thread is able to send a request, which in turn is determined
    by how the thread gets scheduled. This can also be called the
    data-intensive ops thread pool.
    
    Second thread-pool for requests that dont care about ordering, i.e.
    requests like lookup, open, create, mkdir, etc.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 42df79e2ad14053f38a12f30b29b81dd897921c9
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 13:58:30 2009 -0700

    io-threads: Wire in support for rename fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 369476e93e4ab99234602a5bbe2070d734b45567
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 13:58:11 2009 -0700

    io-threads: Wire in support for symlink fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6afeb9dd1bb9f329b5b0508d49c2e5142c6fc8cc
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 13:57:51 2009 -0700

    io-threads: Wire in support for rmdir fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 21363da2935615b5574cce597c95a8a7b0503766
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 13:57:34 2009 -0700

    io-threads: Wire in support for mkdir fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit cbf8858a230b91174dc6134e4729a047db6ff914
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 13:57:18 2009 -0700

    io-threads: Wire in support for mknod fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ef73c3de6097c6114b5492d5972c257b849e10b7
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 13:56:50 2009 -0700

    io-threads: Wire in support for readlink fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d767455020f9730793230a14cd9e795194c5257f
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 13:56:27 2009 -0700

    io-threads: Wire in support for access fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit eab231f3596aa4b6ad2b9b8f3d1a4cc97bda76bc
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 13:56:04 2009 -0700

    io-threads: Wire in support for fchown fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3ca0a7859f6f8f7ebc6ac32b6f17035f2115d2a0
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 13:55:44 2009 -0700

    io-threads: Wire in support for chown
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d56683ccfa1b53c42717ff36490066cff25fd7d0
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 13:55:19 2009 -0700

    io-threads: Wire in support for fchmod fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f05ca55ef77fb2004b0f573aa267c92405166d9c
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 13:54:52 2009 -0700

    io-threads: Wire in support for chmod fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit dffa5a92c70732e790b6c789e2aacb7f8c5c34cc
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Wed Apr 1 13:54:33 2009 -0700

    io-threads: Wire in support for lookup fop
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b91e83aa0d3891b4cd725b6044131096405dfba8
Author: Anand V. Avati <avati@gluster.com>
Date:   Thu Apr 2 16:37:37 2009 +0530

    wb_flush - keep reference on fd for process_frame to perform STACK_WIND of flush.
    
    This patch fixes bug report by Greg <greg@easyflirt.com> on gluster-users@ with subject 'glusterfsd crash'
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f2cdc5d10c56ef8010ab83acf31b3fb6c4c2fd1f
Author: Anand V. Avati <avati@gluster.com>
Date:   Thu Apr 2 16:49:37 2009 +0530

    change char to int in execute_cmd (based on comment on #26006 from Giorgio Marinelli <gio@reversiva.net>
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 1e9b5a5a35e8d53e631788443dadf1fe30853743
Author: Bharat Shetty Barkur <bharat.shetty@gmail.com>
Date:   Thu Apr 2 01:41:55 2009 -0400

    Changed few lines to ensure Optimization (lesser code).
    
    Changed few lines to ensure lesser code optimization while checking the EOF for the file pointed to by specfp.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit aa0fd06dad70a7ecfc3dab819e9b3fab8baad2a9
Author: Harshavardhana <harsha@zresearch.com>
Date:   Thu Apr 2 02:49:42 2009 -0700

    Build fixes for ib-verbs compilation on solaris
    
    Build fixes for solaris on ib-verbs with recent OFUV Update 3 release.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 63115897fe77e584552624c88f84eaeac55d9b57
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Apr 2 04:05:50 2009 -0700

    unify-self-heal: Fix un-ref'ing of incorrect dict
    
    dict_unref'ing of the dict in local
    results in a crash due to de-referencing a NULL spinlock.
    That is because after a STACK_UNWIND(..), we cannot expect
    the frame->local to be allocated still.
    
    Fix by using the other available reference to local->dict.
    
    Ref: https://savannah.nongnu.org/bugs/?26058
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 26af4e1229106e3d4d311fcfa1646f1ce9f3f271
Author: Vikas Gorur <vikas@gluster.com>
Date:   Thu Apr 2 03:39:24 2009 -0700

    Print log message when AFR receives CHILD_UP/DOWN notification
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 522b2bdb540bef4911e0874030d1f9b3003ba104
Author: Anand V. Avati <avati@gluster.com>
Date:   Thu Apr 2 15:51:34 2009 +0530

    socket_connect() - if socket is already created, do not fail transport_connect() -- causes spurious CHILD_DOWN events to be sent up when reconnect() thread misinterprets the failure of transport_connect() to be an actual teardown of the transport
    
    the spurious CHILD_DOWN events cause self-heal in replicate to not heal files in that subvolume, writev to not modify that subvolume etc, accounting for a lot of discrepencies in replicate which are being in the mailing lists recently.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3acfb275879fb8392f8cb4ea2a58766afbc42baa
Author: Harshavardhana <harsha@zresearch.com>
Date:   Thu Apr 2 02:50:33 2009 -0700

    Fixes server goes into infinite loop on Solaris when poll_err is not set.
    
    Server goes into infinite loop when poll_err is not set.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit cda677a98d039de6381887422d0b482ed412daaf
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Thu Apr 2 06:09:56 2009 +0530

    mount/fuse to silently send fresh lookup for ESTALEd revalidates. log only in DEBUG level.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8e621bdfff915f40d67ed5b2d17914226c601108
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Thu Apr 2 06:09:26 2009 +0530

    cluster/stripe to propogate ESTALE to parent.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 2b63980c5da5e82c1a80fe91115fb8d8af201755
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Thu Apr 2 06:08:57 2009 +0530

    cluster/unify propogates ESTALE to parent translator, if any subvolume returns ESTALE during revalidate.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 60615a0a78ab8bc93dd027c1338c588c4f3d49a7
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Thu Apr 2 06:08:17 2009 +0530

    cluster/replicate should propogate the ESTALE error to parent, when at least one subvolume returns ESTALE.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 705c7c9bacafc22b714ac15e3925cb5eaeb45b0a
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Thu Apr 2 06:07:25 2009 +0530

    cluster/{dht,nufa} propogate ESTALE (when at least one subvolume returns ESTALE for revalidate) to parent translator.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e8cce0bed6e5e6bd926ee465c5ec7a00b0b37793
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Thu Apr 2 06:07:04 2009 +0530

    cluster/{nufa,dht} fail revalidates with ESTALE, in case a stale layout is found in inode->ctx.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 905b9fd38a3da787de3f30d1cbdd5e85d56e2f81
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Thu Apr 2 01:10:03 2009 +0530

    Review comment from Krishna was missed out in previous commit of fix for sending first_lookup in 2nd call

commit 25d415e1917df1cac363142fb6fd3768f3e7d2af
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Wed Apr 1 21:54:43 2009 +0530

    use (fgetc() != EOF) instaed of feof() in parser
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 978174fd7362b6c425db78c8d316b96050603844
Author: Amar Tumballi <amar@gluster.com>
Date:   Mon Mar 30 23:36:41 2009 -0700

    Bug fix in posix-init(), when span-devices is set above 1
    
    removed the extra '!' in if statement, which was a typo earlier.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 39d67cbf8921db55e7205a94bce5c6d154a3a3d5
Author: Amar Tumballi <amar@gluster.com>
Date:   Tue Mar 31 15:49:57 2009 -0700

    fix a segfault with io-threads when iot-schedule is called with NULL inode
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit db365c30d07f5faae4197e37148f64e75b54a7ec
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Tue Mar 31 10:56:10 2009 -0700

    Enable glusterfs client to exit after a configured number of failed connects \ while fetching volume specification file from server
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit aa63a122433d51e89148af27dab98cf68846dab4
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Tue Mar 31 11:18:55 2009 -0700

    Avoid infinite loop while parsing volume specification files on Linux/ARM.
    
    - patch submitted by anonymous user (ref: bug #26006 on savannah).
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 96b687b9b8d58fc70dfaaed42dbe1b35799117f8
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Tue Mar 31 06:22:16 2009 -0700

    Add new type of option type INTERNET_ADDRESS for validation
    
    - used to validate options like remote-host, bind-address.
      - Also validate options of translators created during fetch of volume
        specification file from remote server.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit c8ddd2588ae7d9890b2d30fd1dadc6f9b054d7f4
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Tue Mar 31 12:25:58 2009 +0530

    log message changes in mount/fuse for SETLK, GETLK, GETXATTR, SETXATTR fops
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 9922b37658d7d996321382c5157bf33bbbb1330d
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Mon Mar 30 21:14:45 2009 -0700

    Add support for log-level NORMAL in fuse mount helper script.
    
    - patch submitted by John Feuerstein <john@feurix.com>.
      - copying changes in the patch verbatim to
        xlators/mount/fuse/utils/mount.glusterfs.in and
        xlators/mount/fuse/utils/mount_glusterfs.in
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit a0c1de7c9cf41d37f95660fe45da66418e263340
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Mar 28 14:17:55 2009 +0530

    first call of fuse is INIT internal call, and not first system call. 2nd call is the system call where first_lookup() has to be done.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3276e650f8af676ed602279f4be85d053aa6065d
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sat Mar 28 00:32:34 2009 +0530

    memory leak (of header) when frame is attempted to be xfer'ed when transport is disconnected
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3baa99ebef316c6a9947c17c6d0c4bca863a8c82
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Fri Mar 27 22:11:31 2009 +0530

    ping-pong timer: - share last_sent and last_received between channels so that any activity ensures the remote host being alive (useful under heavy loads) - timer expiry disconnects both transports
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6c28cb81b2a326a416968932919ea9d19f3b56ab
Author: Anand V. Avati <avati@gluster.com>
Date:   Thu Mar 26 17:29:52 2009 +0530

    fix duplicate setting of values in inode->ctx and fd->ctx
    
    this patch avoids setting of duplicate key/value pairs in the context.
    note that consumers have to explicitly check for previous existance of key
    to avoid any kind of resource leak resulting from this overwrite.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 675e8b4a1f07668a6145c16283b68daa165a7a0c
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Mar 26 08:47:13 2009 -0700

    libglusterfsclient: Fix NULL argument bug
    
    inode_ctx_get was being passed a xlator_t type
    that was initialized to NULL resulting in a
    EINVAL return from glusterfs_fstat.
    
    Reported on gluster-devel
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit a59582c3faed3efcf713caeb990ea5c35479dd8d
Author: Anand V. Avati <avati@gluster.com>
Date:   Thu Mar 26 16:26:21 2009 +0530

    posix_unlink - open/unlink/close only regular files
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 36e39bf9cb4b7c712ef411d60203bf05af7e129f
Author: Anand V. Avati <avati@gluster.com>
Date:   Wed Mar 25 18:08:43 2009 +0530

    Enhancements to distribute selfheal
    
    - create missing directories instead of creating linkfiles when
      entry missing  on hashed subvol
    
    - detect cases where there are dirs and linkfiles for a name and
      make them all dirs
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit a2d44f8cd32988ad52ad924b61a2ef5fc41e4b0e
Author: Csaba Henk <csaba@zresearch.com>
Date:   Wed Mar 25 02:19:14 2009 +0100

    make the location of the mount utility tunable at configure time
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ec5a5fa20823aed3127bdbea4e754ef308d81d89
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon Mar 23 05:16:16 2009 -0700

    Fixed typo in warning string in afr.c
    
    Fixed typo.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3df266c278ab74c6bf1980bd17a545595bd04344
Author: Bharat Shetty Barkur <bharat.shetty@gmail.com>
Date:   Sun Mar 22 13:57:37 2009 -0400

    Changed the gf_log warning for return of null via CALLOC from 'old' to 'newdata'
    
    Fixed the warning message to be more clearer for return of the null by CALLOC, by changing old to newdata.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 4e5c297d7c3480d0d3ab1c0c2a184c6a4fb801ef
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Tue Mar 24 03:46:08 2009 -0700

    fix to rm of large file blocking other operations on the same directory containing file (ref: rt #779)
    
    posix_unlink follows the below procedure to avoid client noticing delay during
    unlink of large file
    1. open file
    2. unlink file
    3. stack_unwind
    4. close file
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6e8017479fd9997ae47e7c8cbb74247d7e2b4fd0
Author: Vikas Gorur <vikas@gluster.com>
Date:   Tue Mar 24 05:44:59 2009 -0700

    Made self heal logic more precise.
    
    Discard earlier patch sent for the same error. This patch fixes
    it more comprehensively.
    
    This solves the spurious split-brain seen by many users.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8f590ad883c170827cc06dcbcb17e5aaa1788996
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Mon Mar 23 23:45:53 2009 -0700

    dht memory leak fix
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 270621b34af7528755373e04b07f959c8dca274b
Author: Amar Tumballi <amar@gluster.com>
Date:   Sat Mar 21 19:04:15 2009 -0700

    fixes crash in write-behind
    
    in wb_flush, there was a chance that wb_process_queue()
    was called with NULL frame, which causes crash.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 617fa2504283b63dde7f27186648ef9a9f060f52
Author: Amar Tumballi <amar@del.gluster.com>
Date:   Fri Mar 20 12:50:51 2009 -0700

    when the both channels in client protocol is disconnected, fd's are marked as bad
    
    patch solves the problem of fds being valid even in the case of server
    disconnection, which causes operations on wrong fd when server comes back up.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit cf15c8ab0fab3ad9e37cab544ccbbccd59ab03db
Author: Amar Tumballi <amar@del.gluster.com>
Date:   Fri Mar 20 12:49:12 2009 -0700

    fixes issue of hashing to wrong subvolumes in case when a subvolume is down
    
    When a hashed subvolume is down, variable 'subvol' was NULL, but was sent to itransform.
    This patch solves this, and readdir is sent to proper subvolume now.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit c20359b5b2a564e83b5830b9a17013e780096e2d
Author: Amar Tumballi <amar@gluster.com>
Date:   Wed Mar 18 18:31:30 2009 -0700

    fixed sys_<fops> related warnings. (on mac os x and opensolaris)
    
    The fix in posix will fix 'unresolved' symbol errors in Mac/Solaris/FreeBSD
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 103d82700483bf744f86719e97846b065ca3394c
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Wed Mar 18 17:10:51 2009 +0530

    dht_layout_dir_cmp - if xattr is missing, it is an error only if cached layout has entry for that subvolume.

commit b9fef00edbe7272d31be0ca22f3b2794918300e0
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Tue Mar 17 21:59:30 2009 -0700

    Add return after STACK_UNWIND
    
    We must add a 'return' after a STACK_UNWIND due to a stub creation
    failure, because if we dont, we'll end up adding a NULL stub to the
    worker thread request queue.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 2d7f44e39792c71e4f7bb768acffc2f5a76c80e0
Author: Amar Tumballi <amar@gluster.com>
Date:   Tue Mar 17 19:05:43 2009 -0700

    Moving few translators which are not well tested, are in beta stage to 'testing/' directory.
    
    This way, users will be aware which are in 'beta' stage, and we can keep on
    adding new translators (if any) seemlessly to stable codebase and once tested
    can move them to proper places.
    
    To use these translators, everyone will have to prefix 'testing/' to existing
    type of translator (in volumefile)
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b947dc7161427b8c84f47b0a97861a36557f5748
Author: Amar Tumballi <amar@del.gluster.com>
Date:   Tue Mar 17 18:15:19 2009 -0700

    ib-verbs recv-size and send-size argument takes SIZET arguments now.
    
    With this patch, to specify recv-size and send-size of ib-verbs to <n>KB, we need not give
    the option as integer value of 'n * 1024' value. This is neater to do deployments.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 0a7f4cfc1c516da573949a9521248744ce97c4e9
Author: Amar Tumballi <amar@gluster.com>
Date:   Tue Mar 17 16:08:10 2009 -0700

    afr data self heal bug fix
    
    fixes the issue of corrupting self-healed copy in AFR
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ac8fe9901b3215c27ef8bc0971bf2bd140bbfcd5
Merge: 8e0453e 1601bb6
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Tue Mar 17 22:38:26 2009 +0530

    Merge branch 'master' of ssh://avati@git.sv.gnu.org/srv/git/gluster

commit 8e0453e615255a5f64777a68d873a6f46262b5b3
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Mar 16 07:05:33 2009 -0700

    IO-threads Cleanup: Remove useless data structures.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit babf82427ce19aee091259b25613c426c696c330
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Mar 16 07:04:21 2009 -0700

    IO-threads Cleanup: Clean-up request scheduling and queueing interface.
    
    This patch does two things:
    
    1. Cleans up the request scheduling and queueing interface so that all
    fops only need to call iot_schedule and not iot_queue and in some
    cases iot_schedule.
    
    2. Till now, we've had open and create calls go through the main
    glusterfsd thread when sending open and create fops. This patch makes
    them also go through the worker threads. But since the open and
    creates requests would not be called with a valid inode number in the
    loc_t, these requests will get assigned to the worker at index 0.
    This will be fixed RSN, when we introduce various techniques of
    distributing the inodes(..not requests..) over the worker threads.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8e3e0e776cc04ad9f840383c4693ee73adc79558
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Mar 16 07:03:02 2009 -0700

    IO-threads Cleanup: Change workers list to dynamically allocated array
    
    Worker threads were represented as a list in iot_conf_t
    which made us traverse the list of workers in order to
    decide which thread gets the request. Now we represent the
    workers as a dynamically allocated array so that we can just index
    into the array to schedule the file.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3a83fdc459a620d5ce0360bcf5fa071118d5430f
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Mar 16 07:01:33 2009 -0700

    IO-threads Cleanup: Change request queue into a struct list_head
    
    This patch changes the per-thread request queue from a custom circular
    linked list, into the standard list.h list which is easier to
    understand and has a cleaner interface.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3099d29e8e65554af31927c8f767b9b6103ca58e
Author: Vikas Gorur <vikas@gluster.com>
Date:   Mon Mar 16 04:03:55 2009 -0700

    Add system call abstraction layer
    
    - syscall.c provides platform-independent system calls
    - previous code for this from compat.c removed
    - posix xlator uses new functions from syscall.c
    - solaris_flistxattr added to compat.c
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 7d61f9d69309ccb0f9aa787caacfef77bc4e32d2
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Thu Mar 12 04:41:23 2009 -0700

    write behind preserves order of fops with respect to writes
    
    - the execution order of fops like read, stat, fsync, truncate etc whose results
     are affected by writes, are preserved.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 473d02d1698259b4a0a6c22fdf70071e69c6e987
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Fri Mar 13 01:12:20 2009 +0530

    implement forget for cluster/unify
    
    inode_ctx_put() would set a list allocated on heap and would not be free()ed anywhere.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 215a91c4729bff06899375c02ae1568f24d683a9
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Thu Mar 12 20:29:56 2009 +0530

    unify revalidate should propogate the error from any of the subvolume upto the parent, so that parent sends a fresh lookup.
    
    unify revalidate fails if one of the subvolume returns error.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 1601bb69f48b79572789c67d12753fcaa0bd2f24
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Thu Mar 12 04:41:23 2009 -0700

    write behind preserves order of fops with respect to writes
    
    - the execution order of fops like read, stat, fsync, truncate etc whose results
     are affected by writes, are preserved.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 7af8d8edbd8554235348e0f54348edf222c0b46e
Author: Vikas Gorur <vikas@zresearch.com>
Date:   Thu Mar 12 16:21:51 2009 +0530

    Add extra 'volume' parameter to inodelk/entrylk calls
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 31c817836c9c56eca1441b3b6f8b83db41c67f94
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Wed Mar 11 18:57:17 2009 +0530

    xlator.c option validation should check for empty valid options list (for strings).
    
    'if (!opt->value)' always fails as 'value' member is an array of size ZR_OPTION_MAX_ARRAY_SIZE and is always non-null. it should have been 'if (opt->value[0] == NULL)' instead.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b1c6a8507d59d16f9691652703be48f4539ca093
Author: Amar Tumballi <amar@gluster.com>
Date:   Mon Mar 9 22:37:57 2009 -0700

    feature to span the export directory across different mountpoints
    
    This feature enables exported directory containing different mountpoints.
    With, 'option span-devices <n>' where n is number of different mountpoints
    export directories can have, one can enable this feature. By default the
    number will be 1, and the inode scaling won't come into picture.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3b45b4c922a5f5835afa4e9211d64da2c6868633
Author: Krishna Srinivas <krishna@zresearch.com>
Date:   Tue Mar 10 00:00:58 2009 -0700

    ping timer will not timeout if we recently got POLLOUT on the socket i.e if ((cur - (sent|received)) < timeout)
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6a70225b69e7c617cb0ff62124b2687a7027c64a
Author: Bharat Shetty Barkur <bharat.shetty@gmail.com>
Date:   Sun Mar 8 12:54:25 2009 -0400

    Fixed two more occurrences of poll_out variables used for logging.
    
    Changed the poll_in variable to poll_out variable at two more places in the code.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d4adb2b0f5e7cd8e91d384f3f9047deab2464647
Author: Harshavardhana <harsha@zresearch.com>
Date:   Mon Mar 9 10:31:53 2009 -0700

    removed word "tla" from last of the remaining files
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 2323b92d9b7b679c84cab64697fc715434e28ac9
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Tue Mar 10 00:27:52 2009 +0530

    failover to any active transport when requested channel is not connected
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ae378b63c0ae93d8077d250de6a035b92bac8697
Author: Harshavardhana <harsha@zresearch.com>
Date:   Mon Mar 9 03:19:31 2009 -0700

    Fixed build problems for init script installation.
    
    Fixed build problem for init scripts (Reported by Krishna and Vikas).
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit fdfdd7cf05b7378c879917acb9129d69a407aee9
Author: Anand V. Avati <avati@gluster.com>
Date:   Mon Mar 9 16:16:02 2009 +0530

    dht_readdir_cbk - retry on same subvol if no entries match the hash
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 5e4e99f4c1aa09b9e323c6fd23fcc3517447a6d7
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Thu Mar 5 07:55:43 2009 -0800

    changing the conversion specifier from 'd' to 'o' while printing st_mode
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 0991858fca6dc93de685e9527fb9ff47d77f616f
Author: Vikas Gorur <vikas@zresearch.com>
Date:   Tue Mar 3 16:00:58 2009 +0530

    added fgetxattr and fsetxattr FOPs
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d092dff9a6e23d5fdef64154b6f3d6211f7482a6
Author: Vikas Gorur <vikas@zresearch.com>
Date:   Thu Mar 5 17:05:35 2009 +0530

    fixed deadlock in io-cache
    
    ioc_create_cbk was holding inode->lock and calling inode_ctx_put,
    which also holds the same lock.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit cb602a1d7d41587c24379cb2636961ab91446f86
Author: Krishna Srinivas <krishna@zresearch.com>
Date:   Tue Mar 3 02:54:20 2009 -0800

    Changed the default transport-timeout to 600
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit eab182e8a8b2f9a89147334f39e51db60aafa953
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Thu Mar 5 02:04:28 2009 +0530

    disable building of user-guide
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 762b1f9aefe07971178e584e288833bf142f402b
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Mar 4 04:00:24 2009 -0800

    code changes in the usage of inode_ctx_get and inode_ctx_put after their implementation is changed to hold inode->lock.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit c8340e70f881dbb95d5238e588a7e985f6f04816
Author: Amar Tumballi <amar@gluster.com>
Date:   Tue Mar 3 20:13:45 2009 -0800

    Change to fix the build problems with bison 1.28 (in RHEL 4.6)
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 1b51e542b9aa7996e2753a7686c7743ffc8ecefd
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Tue Mar 3 20:10:47 2009 +0530

    inode_ctx_t locks added
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 5ed5ea9bffe018512edc6babff18fd4d44bcdd70
Author: Amar Tumballi <amar@gluster.com>
Date:   Mon Mar 2 15:47:37 2009 -0800

    create fuse thread after setvolume cbk happens, not only in case of success
    
    This patch fixes the 'hang' effect when client protocol fails to authenticate
    to servers (it may be problem with volume file, or server process would have
    not started yet).
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 130ae0dee7f1ed1292c32df52276833a9fa187b2
Author: Amar Tumballi <amar@gluster.com>
Date:   Mon Mar 2 09:16:45 2009 -0800

    changes in patchset and repo version
    
    noticed that if anyone pulls from git repo, the version says 'tla' and
    patchset also shows tla's patch.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit da71d1359c1335997595935dbaa07c5747231861
Author: Harshavardhana <harsha@zresearch.com>
Date:   Sun Mar 1 05:35:18 2009 -0800

    Added proper handling for the init scripts for (Debian, Ubuntu, SuSE, Redhat), SuSE init script also added.
    
    * Init scripts added for Debian, Redhat, SuSE distribution, each are installed
      by checking each distribution specific.
    
    Tested on
    1. Debian, Ubuntu.
    2. Redhat, CentOS.
    3. OpenSUSE.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b29a555c0be1c0db47c290d61f8c4dfe1e6fecbf
Author: Harshavardhana <harsha@zresearch.com>
Date:   Fri Feb 27 05:03:50 2009 -0800

    now user-guide.info is built only when "makeinfo" found
    
    user-guide info is built only when "makeinfo" found
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 7d7610007aeb3e31e9d51996a2234659de792a25
Author: Bharat Shetty Barkur <bharat.shetty@gmail.com>
Date:   Mon Mar 2 14:31:39 2009 -0500

    Fixed small error regarding the poll_out variable
    
    Changed the poll_in variable to poll_out variable, so that the logging is relevant to the case of invalid poll_out value.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit fd524dda532a05cb2485935212d1a66f4130256c
Author: Harshavardhana <harsha@zresearch.com>
Date:   Sat Feb 28 01:49:40 2009 -0800

    Fix solaris server segfault in recent "rc3" release.
    
    typecasting from uint64_t directly over pl_inode structure segfaults
    are all the calls from posix-locks.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b6bf3b8d6efb995d4ca7b91ff41709c57753d632
Author: Harshavardhana <harsha@zresearch.com>
Date:   Fri Feb 27 10:23:45 2009 -0800

    CALLOC changed to calloc in rdd.c and several other cleanup and moved rdd.c into more appropriate "benchmarking" directory.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 24f80a408cbf5214664efe12466929d50575c963
Author: Harshavardhana <harsha@zresearch.com>
Date:   Fri Feb 27 10:23:29 2009 -0800

    Removed unncessary EXTRA_DIST entries and updated benchmarking directory
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b2db5d966f210be72250fb87e513d187d3de7fdd
Author: Harshavardhana <harsha@zresearch.com>
Date:   Fri Feb 27 10:23:08 2009 -0800

    Added /etc/init.d/glusterfsd for rpmbuilds
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3aff44fab8ba7a109bd691b8675dbfd9842237a3
Author: Vikas Gorur <vikas@zresearch.com>
Date:   Fri Feb 27 22:35:25 2009 +0530

    check for fd ctx set in changelog_needed_post_op for flush() in afr
    
    Earlier the check was in afr_flush(), which caused race conditions
    with writev()
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 1e5ac91d05e89356ac63fb07cc09bed7a979289f
Author: krishna <krishna@guest-laptop>
Date:   Fri Feb 27 03:31:13 2009 -0800

    send a lookup on root as soon as we get CHILD_UP to fuse.
    
    send a lookup on root as soon as we get CHILD_UP to fuse. This fixes the
    case where some of the fuse versions do not send a lookup on the root
    directory when one of the "sub-dir" or "sub-file" is accessed just after mount.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8462dd88ad3531837ebfccd17a083467faa40227
Author: Amar Tumballi <amar@gluster.com>
Date:   Thu Feb 26 08:09:25 2009 -0800

    volumefile modification awareness to make sure there are no inconsistencies.
    
    Complete (including feature to properly umount) in my sense.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit da9664587d414ba703c46839e3a4831ad3784a19
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Fri Feb 27 10:34:03 2009 +0530

    Skip self-heal when subvolumes are down
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 596b48e14e5797deca35915edb047471d7c15a00
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Fri Feb 27 02:50:48 2009 +0530

    fixing warnings in previous patch (typecasting pointer to long)

commit 0601a2d6631983cbce39982dfcbecae23a4fa629
Merge: 2dbcb3c b4ff0d5
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Fri Feb 27 02:39:49 2009 +0530

    Merge branch 'master' of ssh://avati@git.sv.gnu.org/srv/git/gluster
    
    Conflicts:
    	xlators/features/locks/src/common.c

commit 2dbcb3c79338dc4f4c45c21e4bf62e61e455ae19
Author: Vikas Gorur <vikas@zresearch.com>
Date:   Fri Feb 27 02:14:15 2009 +0530

    reverting nested locks in posix-locks for inodelk
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b4ff0d5c88b886dbe841cdcfdb71ac936522f9c3
Author: Vikas Gorur <vikas@zresearch.com>
Date:   Fri Feb 27 02:14:15 2009 +0530

    reverting nested locks in posix-locks for inodelk
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f097e77ffb386dc73e3639af4a9cd57df0d3d40d
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Fri Feb 27 00:36:23 2009 +0530

    moved dht_hashfn_tea() to libglusterfs/hashfn.c as gf_dm_hashfn() (dm - davies-meyer).
    
    moved dht_hashfn_tea() to libglusterfs/src/hashfn.c as gf_dm_hashfn().
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 3d8bc3cbafa84a46e43e46f69d3e7d617d746012
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Thu Feb 26 21:14:23 2009 +0530

    updated copyright header to extend copyright upto 2009
    
    updated copyright header to include 2009.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6fb7cda0a92b333e9c3861eb35f6f9ae3a1c03a2
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Thu Feb 26 20:47:16 2009 +0530

    removed unnecessary README.git file
    
    removed README.git file
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d3a318973c9613cfef8b1a14256fb5178e417fb0
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Thu Feb 26 20:36:50 2009 +0530

    fd->lock added to protect transactions for accessing and modifying fd->_ctx.
    
    fd->_ctx access and modifications are now protected by fd->lock.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 431617ef19244272797106f2356ef31591e9c7b9
Author: krishna <krishna@guest-laptop>
Date:   Thu Feb 26 06:11:48 2009 -0800

    Layout is sorted on volume names before forming the layout ranges. But when anomalies are to be detected layout is sorted based on "start" of the range (done in the selfheal during lookup).
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit c445012fa990be5dbc0ccbace04187484ccd92f3
Author: Vikas Gorur <vikas@zresearch.com>
Date:   Thu Feb 26 17:51:47 2009 +0530

    protect fd_ctx get/set in afr_transaction and afr.c with locks
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 523d23b94c21cf5cfdfd087409371d9d2dcf25a4
Author: Vikas Gorur <vikas@zresearch.com>
Date:   Thu Feb 26 17:13:25 2009 +0530

    Unset fd_ctx in afr_flush if it is set
    
    If fd_ctx is set, it means pending array needs to be decremented.
    However, flush might be called many times and it used to lead
    to multiple decrements. Fix is to unset fd_ctx on the first flush
    received
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b5377787903109dd5aea408e7b3a8e772b2be4f5
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Thu Feb 26 13:38:33 2009 +0530

    __inode_unlink() should not be sent a NULL inode.
    
    unlink_inode might be NULL in inode_unlink() under the following circumstances:
    1. 'inode' got forget() and was unhashed.
    2. 'inode' was replaced by a new inode object and the new object got forget() or was pruned out of the inode table.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 417dfa48df166bfcd3f8a6da56c189de6e7a6aff
Author: Krishna Srinivas <krishna@zresearch.com>
Date:   Thu Feb 19 12:39:04 2009 -0800

    DHT clean up. Lot of selfheal code is not applicable to newly created directory. Newly created directory will use only relavant part of DHT selfheal code - only for xattr application.
    
    DHT clean up. Lot of selfheal code is not applicable to newly created directory. Newly created directory will use only relavant part of DHT selfheal
    code - only for xattr application.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 029913bbd62ed7e3c3f436afe92ad6bca9dc642c
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Wed Feb 25 00:47:43 2009 -0800

    change MALLOC to malloc
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 6609b1d37bd0254ec0eb068758862a0bb0e78515
Author: Krishna Srinivas <krishna@zresearch.com>
Date:   Tue Feb 24 06:55:39 2009 -0800

    DHT selfheal fix during lookup - create missing directories.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 1d556afdf8bf5459a1ea1a27ed5638d440439666
Author: Krishna Srinivas <krishna@zresearch.com>
Date:   Tue Feb 24 06:53:21 2009 -0800

    Ping timer does not timeout in case there is any activity (cbks) from the server side.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8479df9809107f20df31afb332b8fb6a1931b861
Author: Krishna Srinivas <krishna@zresearch.com>
Date:   Tue Feb 24 06:52:55 2009 -0800

    per frame time out - i.e individual frames are unwound instead of the transport point itself being disconnected. timeout is configured using "transport-timeout".
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit ab7fe2987fb4e2c2bd3158682fbb8c1977a049de
Author: Raghavendra G <raghavendra@zresearch.com>
Date:   Tue Feb 24 02:42:41 2009 -0800

    backtick support enhancement
    
    - text within backtick can span multiple lines
      - check exit status of command after execution
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit d47eb5d681b79b32b838505b6e22c4ab627ba934
Author: Anand V. Avati <avati@gluster.com>
Date:   Mon Feb 23 17:18:53 2009 +0530

    DHT TEA hashfn bugfix
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit f264f69ae96ade536dc6f5b8c1ce2579839d6222
Author: Vikas Gorur <vikas@zresearch.com>
Date:   Mon Feb 23 19:36:26 2009 +0530

    Deleted xattr caching code from posix in anticipation of the xattr-cache translator.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8b1762971f8d18f73fa64a967c4cd2baa13d07fc
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Mon Feb 23 05:48:14 2009 -0800

    RE-SEND: Add braces around critical sections.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit a3ed4474de9db5bda606b374f3d8cb1cdbf8a9fb
Author: Vikas Gorur <vikas@zresearch.com>
Date:   Mon Feb 23 02:33:11 2009 -0800

    added lock_notify and lock_fnotify FOPs to everywhere necessary in libglusterfs/*
    
    fixed indentation and resubmitting
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 80066c23da120621f26d83d631e204ab2943d181
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Sun Feb 22 11:29:05 2009 +0530

    posix_releasedir flush fds from xattrcache.
    
    It would have entered cache in setdents.
    
    Proposed fix for: http://zresearch.com/pipermail/gluster-users/2009-February/001621.html
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 8b99865bb1db5e349cfdacc795ca2160a32604e1
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Sat Feb 21 15:27:03 2009 +0530

    removed to 'option cache-size <size>' in example volfiles for io-threads.
    
    io-threads translator does not take 'cache-size' option now. so removed all
    references to 'cache-size' option for performance/io-threads.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit bcd1e26a95ab75f3431be8e71d93eae9b7b6cbf8
Author: Amar Tumballi <amar@del.gluster.com>
Date:   Fri Feb 20 18:09:02 2009 -0800

    default volume file option enhanced in server-protocolg
    
    Noticed that with current codebase, there is no proper method to have a default volume filename to choose in getspec() without printing a *lot* of warning messages. This patch tries to have a proper 'default' behavior.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 869df6de6429bd556215a2a555883cabaa4dca80
Author: Amar Tumballi <amar@gluster.com>
Date:   Sat Feb 21 13:50:01 2009 -0800

    change to make round robin dns work for getspec()
    
    Noticed that if I have just 'socket' and not the address-family, the
    round robin dns for '-s' option doesn't work. Changing it to 'tcp'
    works.
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit a7b514ab8ec879a67e5a290743b4be6f0b58de1d
Author: Harshavardhana <harsha@zresearch.com>
Date:   Thu Feb 19 04:59:29 2009 -0800

    command line and mount/fuse now use float attr/entry timeouts
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit a2131aeafa94d671b0121631922d823c8a7ab988
Author: Harshavardhana <harsha@zresearch.com>
Date:   Thu Feb 19 04:59:06 2009 -0800

    attritbute and entry timeout values under volume now support float/double values
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit b5e0ee918fdff566e45bb255130b9efa6b8fb7b0
Author: Harshavardhana <harsha@zresearch.com>
Date:   Thu Feb 19 10:34:28 2009 -0800

    new function gf_string2double for float/double values
    
    fixed warning
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit 9679f8db65de29a40f622c12c2cc538d70b052b2
Author: Harshavardhana <harsha@zresearch.com>
Date:   Thu Feb 19 10:26:17 2009 -0800

    new functions dict_{get,set}_double for float/double value
    
    fixed warning
    
    Signed-off-by: Anand V. Avati <avati@amp.gluster.com>

commit e9ac5f587763b48acc19268ce57e6bfd886a0561
Author: Amar Tumballi <amar@del.gluster.com>
Date:   Fri Feb 20 09:37:13 2009 -0800

    fix to remove ''input' defined but not used' warning in building glusterfs
    
    needed to complete the build scripts without warnings
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 99a1cac632b4325afb95cb7c183721c0a90925d7
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Feb 19 05:21:47 2009 -0800

    Reduce iothreads requests queue lock granularity.
    
    iot_queue() and iot_dequeue() functions were using a io-threads
    translator-wide lock which would be contended for by every worker
    thread waiting for IO requests.
    
    This patch reduces the granularity by turning the
    lock into a per-worker lock.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 57957c59cd2925540769ae9cb58029b0125e4ae7
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Feb 19 05:20:41 2009 -0800

    Remove conf->cache_size checks
    
    Since we're not dependent on this io-thread internal state(i.e.
    cache_size and current_size) to rate limit requests, we can remove
    these two data members and code that checks for these.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 6a250d9087014551c5085a534248982b195f819f
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Feb 19 05:25:44 2009 -0800

    Remove dead code.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 91df2dbcb10813d17053f715ae40a50b7499f4bc
Author: Basavanagowda Kanur <gowda@gluster.com>
Date:   Thu Feb 19 19:38:57 2009 +0530

    cluster/ha to handle EBADFD for fd based operations as transport disconnected.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit ed1d91986cdaf0240b4e6a8c920f17b7f2d6d57b
Author: Vikas Gorur <vikas@zresearch.com>
Date:   Thu Feb 19 04:26:47 2009 -0800

    warn on ERANGE error for lgetxattr in posix
    
    (amended to fit in 80 columns)
    
    ERANGE is usually caused by the user reducing the number of AFR's
    children but continues to use the old backend.
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 1c701badce280d8de92a5314881824725deec1e6
Author: Shehjar Tikoo <shehjart@zresearch.com>
Date:   Thu Feb 19 02:26:40 2009 -0800

    Fix the order of CALLOC() args
    
    Fix the order of  CALLOC arguments.
    
    Signed-off-by: Shehjar Tikoo <shehjart@zresearch.com>
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 0bb3a56f246082967f7a89a7ea51638babf514d1
Author: Anand V. Avati <avati@amp.gluster.com>
Date:   Thu Feb 19 02:04:17 2009 -0800

    updated commit.sh
    
    changed commit.sh for git usage
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 9a4bba3a7ad86681abc9d022fd6677f668fdf062
Author: Vikas Gorur <vikas@zresearch.com>
Date:   Thu Feb 19 00:18:28 2009 -0800

    added lock-ahead translator design document
    
    Design document for the lock-ahead translator
    
    Vikas
    
    Signed-off-by: Anand V. Avati <avati@dev.gluster.com>

commit 77adf4cd648dce41f89469dd185deec6b6b53a0b
Author: Vikas Gorur <vikas@zresearch.com>
Date:   Wed Feb 18 17:36:07 2009 +0530

    Added all files

commit f3b2e6580e5663292ee113c741343c8a43ee133f
Author: Vikas Gorur <vikas@zresearch.com>
Date:   Wed Feb 18 17:01:30 2009 +0530

    Initial import