storage/posix: Avoid excessive logging in posix.

When quota or gsyncd is enabled, the marker translator performs setxattr on
files/directories. If the file/directory is deleted before setxattr, posix gets
an error when it does setxattr and logs it. But its not an error for marker and
it handles the case gracefully. Hence, avoid logging for these keys.

Change-Id: Ic614777399497be92ed1c2b4718d46adfb639d96
BUG: 765498
Signed-off-by: Mohammed Junaid <junaid@redhat.com>
Reviewed-on: http://review.gluster.com/3105
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
Fix compiler warnings and typos from Debian build.

Mostly to do with "-Werror=format-security" being buggy, but while we're
here we might as well fix some typos and such.  Credit goes to Patrick
Matthäi <pmatthaei@debian.org> for pointing these out.

Change-Id: Ia32d1111d7c10b1f213df85d86b17a1326248ffd
BUG: 811387
Signed-off-by: Jeff Darcy <jdarcy@redhat.com>
Reviewed-on: http://review.gluster.com/3117
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
fuse-bridge: generate GFID as gfid-req in fresh lookup

This is necessary for self-heal to assign fresh GFID when
performing lookup on files/dirs without GFID (migration from
old version, etc.)

Change-Id: I6f070255dc6e85bf6625b704cb5fb7f831ee58e6
BUG: 795355
Signed-off-by: Anand Avati <avati@redhat.com>
Reviewed-on: http://review.gluster.com/3101
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Pranith Kumar Karampuri <pranithk@gluster.com>
protocol/server: validate connection object before dereferencing

in 'release()' and 'releasedir()' fops the check for 'connection object'
was not done before dereferencing it. the check was in place for all
other fops. handling the missing cases now.

also removed some warnings related to 'set-but-unused'

Change-Id: I47b95318e8f2f28233179be509ce090b2fb7276d
Signed-off-by: Amar Tumballi <amarts@redhat.com>
BUG: 801411
Reviewed-on: http://review.gluster.com/3125
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
protocol/client: in link_cbk() try to print valid information in case of error

currently there is a chance we don't have a source 'loc_t' path information
instead we would have gfid. Need to print destination information too.

Change-Id: I7a5edbdc9abe18fdb330fc7ed49c9946cf7fe382
Signed-off-by: Amar Tumballi <amarts@redhat.com>
BUG: 810146
Reviewed-on: http://review.gluster.com/3122
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Shishir Gowda <shishirng@gluster.com>
Reviewed-by: Raghavendra Bhat <raghavendrabhat@gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
dht/rebalance: Correct log messages

Change-Id: Ica73707922c1bf1a0975a8057d39c1441b987b0a
BUG: 808376
Signed-off-by: shishir gowda <shishirng@gluster.com>
Reviewed-on: http://review.gluster.com/3127
Reviewed-by: Amar Tumballi <amarts@redhat.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
doc: Move outdated documentation to legacy

Change-Id: I0ceba9a993e8b1cdef4ff6a784bfd69c08107d88
BUG: 811311
Signed-off-by: Vijay Bellur <vijay@gluster.com>
Reviewed-on: http://review.gluster.com/3116
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amarts@redhat.com>
Reviewed-by: Anand Avati <avati@redhat.com>
Error-gen: declare the structure for cbks

Change-Id: Iaa2e367ad225a2b24dd56c3941163f90be74e6ee
BUG: 811445
Signed-off-by: Anush Shetty <ashetty@redhat.com>
Reviewed-on: http://review.gluster.com/3121
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amarts@redhat.com>
Reviewed-by: Anand Avati <avati@redhat.com>
glusterfsd: mem-pool count of dict_t is adjusted

increased dict_t pool count based on test results.

Change-Id: Ia5b24940b79a1489b00cca2993241c32be94bbec
Signed-off-by: Amar Tumballi <amarts@redhat.com>
BUG: 809034
Reviewed-on: http://review.gluster.com/3131
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Jeff Darcy <jdarcy@redhat.com>
Reviewed-by: Anand Avati <avati@redhat.com>
contrib/md5: prune contrib/md5/* from tree

Previous change set did not delete contrib/md5 from the tree.

BUG: 807718
Change-Id: I74eee1897fac24b83b379f2433de5e4648eb5f4c
Signed-off-by: Kaleb KEITHLEY <kkeithle@redhat.com>
Reviewed-on: http://review.gluster.com/3095
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amarts@redhat.com>
Reviewed-by: Anand Avati <avati@redhat.com>
md-cache: fix dict memory leak in mdc_inode_xatt_update

We currently either dict_ref() or dict_copy() into mdc->xattr.
The double dict_ref() call path is obvious. Alternatively,
dict_copy() does not ref the dict in the situation where it
creates a new dict, but we only call dict_copy() in this
context when we already have a dict, which should mean the
extra ref is unnecessary.

BUG: 801582
Change-Id: I72e3f1a16f942f04752c033812d13d50ee7c2c2c
Signed-off-by: Brian Foster <bfoster@redhat.com>
Reviewed-on: http://review.gluster.com/3138
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
libglusterfs: loc_copy should set name only if src->name is set

Change-Id: If06d97dd1ff1293730e0cd4933f6ab3283f0475e
BUG: 788051
Signed-off-by: Pranith Kumar K <pranithk@gluster.com>
Reviewed-on: http://review.gluster.com/3137
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
storage/posix: Handle gfid-less lookup

Change-Id: I4605dbb1dd8bf8e26de7f253e54a7f4840c8a8be
BUG: 795355
Signed-off-by: Pranith Kumar K <pranithk@gluster.com>
Reviewed-on: http://review.gluster.com/3128
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
cluster/afr: Perform gfid-less lookup in afr

Change-Id: I78d9f0563e25047f392675ae32db38d2c94f6651
BUG: 795355
Signed-off-by: Pranith Kumar K <pranithk@gluster.com>
Reviewed-on: http://review.gluster.com/3129
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
glusterd/rebalance: Provide option start rebalance with valgrind

Change-Id: Ia7a836425f5dbfe07b2e46563e49aaeaaaaa4e14
BUG: 810836
Signed-off-by: shishir gowda <shishirng@gluster.com>
Reviewed-on: http://review.gluster.com/3108
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amarts@redhat.com>
features/quota: don't adjust statfs buffer if size used is already
greater than available limit.

members f_bfree and f_bavail of struct statfs are unsigned types.
A negative value assigned to them is interpreted as some positive
number and resulting in incorrect output of df output.

Signed-off-by: Raghavendra G <raghavendra@gluster.com>
Change-Id: I4d3d38b9bb6f675958ee38ad4d6c71ebcf4bb9a1
BUG: 773530
Reviewed-on: http://review.gluster.com/3102
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amarts@redhat.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
glusterd: Removed 'unprotected' concurrent access of priv->volumes on glusterd restart

This must have been removed as part of
afe542eca18888463798747d2a95e5a9d239a4a0 (reverting to non-synctask behaviour).

Change-Id: Ic23c8bbf8f90f4c9af6e68349de63e22d7f25606
BUG: 810829
Signed-off-by: Krishnan Parthasarathi <kp@gluster.com>
Reviewed-on: http://review.gluster.com/3109
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amarts@redhat.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
glusterd: Added volume-id to 'op' dictionary

Volume-id passed in op dictionary would help detect possible split brains
among peers in a cluster. The idea is to check if the volume's id and
the vol-id that was passed are equal.
ie, same volume name, but different volume id indicate that glusterd
'metadata' of one of the participating peers is stale or there is
a split brain.

This is over and above the existing checksum based validation of peer
supplied cluster 'metadata' (ie, volume info file).

Change-Id: I1049ef249e417e540ccb4243e450f92fcd0f46f9
BUG: 797734
Signed-off-by: Krishnan Parthasarathi <kp@gluster.com>
Reviewed-on: http://review.gluster.com/3083
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Jeff Darcy <jdarcy@redhat.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
mount.glusterfs: multiple fixes

* noticed that the regex to parse the options were not fool proof.
  for example, 'ro' in a logfilename could have made the mount
  point read-only. Now fixed.

* this issue existed for 'acl', 'worm' options.

* log-server/log-server-port options were legacy, and no more
  needed in codebase.

* refactored option processing in general to avoid above issues

Change-Id: I172d24c86ece9a34420ba997fa385e304b4924ae
BUG: 806978
Signed-off-by: Jeff Darcy <jdarcy@redhat.com>
Reviewed-on: http://review.gluster.com/3058
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amarts@redhat.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
glusterd/rebalance: re-establish conn between rebalance process

Signed-off-by: shishir gowda <shishirng@gluster.com>
Change-Id: Ib13b4b9beebf18632027e4dd7c68f627c311781c
BUG: 810688
Reviewed-on: http://review.gluster.com/3110
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Amar Tumballi <amarts@redhat.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>