Bug 1256616

Summary: libgfapi : adding follow flag to glfs_h_lookupat()
Product: [Community] GlusterFS Reporter: Jiffin <jthottan>
Component: libgfapiAssignee: Jiffin <jthottan>
Status: CLOSED CURRENTRELEASE QA Contact: Sudhir D <sdharane>
Severity: medium Docs Contact:
Priority: medium    
Version: 3.7.3CC: akhakhar, asriram, bugs, gluster-bugs, jthottan, kkeithle, mlawrenc, ndevos, nlevinki, skoduri, storage-qa-internal, vagarwal
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: glusterfs-3.7.4 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1252410
: 1257007 (view as bug list) Environment:
Last Closed: 2015-09-09 09:40:43 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1241871, 1252410, 1257014    
Bug Blocks: 1188184, 1216951, 1257007    

Comment 1 Anand Avati 2015-08-25 07:03:56 UTC
REVIEW: http://review.gluster.org/12009 (libgfapi: adding 'follow' flag to glfs_h_lookupat()) posted (#1) for review on release-3.7 by jiffin tony Thottan (jthottan)

Comment 2 Anand Avati 2015-08-25 12:32:03 UTC
COMMIT: http://review.gluster.org/12009 committed in release-3.7 by Kaleb KEITHLEY (kkeithle) 
------
commit 130697b8b706432153d9a0fda49b896065289aaa
Author: Jiffin Tony Thottan <jthottan>
Date:   Tue Aug 11 16:00:47 2015 +0530

    libgfapi: adding 'follow' flag to glfs_h_lookupat()
    
    This patch is backport of http://review.gluster.org/#/c/11883/
    
    Previously glfs_h_lookupat won't follow the symlink, this patch
    introduces new flag `follow` which will resolve the same. Applications
    linking against the new library will need to use the new glfs_h_lookupat
    API call.
    
    In order to stay compatible with existing binaries that use the previous
    glfs_h_lookupat() function, the old symbol needs to stay available.
    
    Verification that there are two versions of glfs_h_lookupat:
    
      $ objdump -T /usr/lib64/libgfapi.so.0 | grep -w glfs_h_lookupat
      0000000000015070 g    DF .text  000000000000021e  GFAPI_3.7.4 glfs_h_lookupat
      0000000000015290 g    DF .text  0000000000000008 (GFAPI_3.4.2) glfs_h_lookupat
    
    Testing with a binary (based on anonymous_fd_read_write.c from ./tests/)
    that was linked against the old library:
    
      $ objdump -T ./lookupat | grep -w glfs_h_lookupat
      0000000000000000      DF *UND*  0000000000000000  GFAPI_3.4.2 glfs_h_lookupat
    
    Enable debugging for 'ld.so' so that we can check that the GFAPI_3.4.2
    version of the symbol gets loaded:
    
      $ export LD_DEBUG_OUTPUT=lookupat.ld.log LD_DEBUG=all
      $ ./lookupat
      $ grep -w glfs_h_lookupat lookupat.ld.log.2543
      2543:     symbol=glfs_h_lookupat;  lookup in file=./lookupat [0]
      2543:     symbol=glfs_h_lookupat;  lookup in file=/lib64/libgfapi.so.0 [0]
      2543:     binding file ./lookupat [0] to /lib64/libgfapi.so.0 [0]: normal symbol `glfs_h_lookupat' [GFAPI_3.4.2]
    
    This change has been successfully cherry-picked as 1ead86a8bcbfe4045729466e4b98f765f3c13c8d
    in master
    
    Upstream reference
    >Change-Id: I8bf9b1c19a0585f681bc1a7f84aad1ccd0f75f6a
    >BUG: 1252410
    >Signed-off-by: Jiffin Tony Thottan <jthottan>
    >Signed-off-by: Niels de Vos <ndevos>
    >Reviewed-on: http://review.gluster.org/11883
    >Reviewed-by: soumya k <skoduri>
    >Reviewed-by: Kaleb KEITHLEY <kkeithle>
    >Tested-by: NetBSD Build System <jenkins.org>
    Signed-off-by: Jiffin Tony Thottan <jthottan>
    
    Change-Id: Idbbf0cd6802f86c53b16377d90d08ff6d99e7b08
    BUG: 1256616
    Reviewed-on: http://review.gluster.org/12009
    Tested-by: NetBSD Build System <jenkins.org>
    Tested-by: Gluster Build System <jenkins.com>
    Reviewed-by: Kaleb KEITHLEY <kkeithle>

Comment 3 Kaushal 2015-09-09 09:40:43 UTC
This bug is getting closed because a release has been made available that should address the reported issue. In case the problem is still not fixed with glusterfs-3.7.4, please open a new bug report.

glusterfs-3.7.4 has been announced on the Gluster mailinglists [1], packages for several distributions should become available in the near future. Keep an eye on the Gluster Users mailinglist [2] and the update infrastructure for your distribution.

[1] http://thread.gmane.org/gmane.comp.file-systems.gluster.devel/12496
[2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user