Bug 765462 (GLUSTER-3730)

Summary: valgrind says Invalid reads
Product: [Community] GlusterFS Reporter: Raghavendra Bhat <rabhat>
Component: distributeAssignee: shishir gowda <sgowda>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 3.2.4CC: amarts, anush, gluster-bugs, nsathyan, saurabh, vijay, vkoppad
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: glusterfs-3.4.0 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-07-24 17:24:31 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: glusterfs-3.3.0qa40 Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 817967    

Description Raghavendra Bhat 2011-10-17 12:51:48 UTC
There are some invalid reads reported by valgrind on a 2x2 distribute volume. Operations performed were, rm -rf of a directory, then fs-perf test.

 Invalid read of size 4
==1884==    at 0x62B5DE2: fuse_readdir_cbk (fuse-bridge.c:2103)
==1884==    by 0x9223F14: io_stats_readdir_cbk (io-stats.c:1319)
==1884==    by 0x900BCAD: sp_readdir_cbk (stat-prefetch.c:1354)
==1884==    by 0x4C3C1CB: default_readdirp_cbk (defaults.c:396)
==1884==    by 0x4C3C1CB: default_readdirp_cbk (defaults.c:396)
==1884==    by 0x4C3C1CB: default_readdirp_cbk (defaults.c:396)
==1884==    by 0x4C3C1CB: default_readdirp_cbk (defaults.c:396)
==1884==    by 0x4C3C1CB: default_readdirp_cbk (defaults.c:396)
==1884==    by 0x85AEF0E: dht_readdirp_cbk (dht-common.c:3120)
==1884==    by 0x83383B1: afr_readdirp_cbk (afr-dir-read.c:636)
==1884==    by 0x810F55C: client3_1_readdirp_cbk (client3_1-fops.c:1939)
==1884==    by 0x4E88364: rpc_clnt_handle_reply (rpc-clnt.c:741)
==1884==  Address 0x6295a78 is 152 bytes inside a block of size 154 alloc'd
==1884==    at 0x4A04A28: calloc (vg_replace_malloc.c:467)
==1884==    by 0x4C55B40: __gf_calloc (mem-pool.h:83)
==1884==    by 0x4C56133: gf_dirent_for_name (gf-dirent.c:59)
==1884==    by 0x85AEC45: dht_readdirp_cbk (dht-common.c:3054)
==1884==    by 0x83383B1: afr_readdirp_cbk (afr-dir-read.c:636)
==1884==    by 0x810F55C: client3_1_readdirp_cbk (client3_1-fops.c:1939)
==1884==    by 0x4E88364: rpc_clnt_handle_reply (rpc-clnt.c:741)
==1884==    by 0x4E885B8: rpc_clnt_notify (rpc-clnt.c:854)
==1884==    by 0x4E83457: rpc_transport_notify (rpc-transport.c:919)
==1884==    by 0x72D6253: socket_event_poll_in (socket.c:1647)
==1884==    by 0x72D6336: socket_event_handler (socket.c:1762)
==1884==    by 0x4C54503: event_dispatch_epoll (event.c:794)

Comment 1 Raghavendra Bhat 2011-10-18 08:06:56 UTC
There is one more set of Invalid reads.

Thread 4:
==12247== Invalid read of size 4
==12247==    at 0x85E6BDD: dht_stat (dht-common.c:1434)
==12247==    by 0x881A009: quota_stat (quota.c:2132)
==12247==    by 0x8A26F6D: wb_stat (write-behind.c:753)
==12247==    by 0x4C3C19F: default_stat (defaults.c:1147)
==12247==    by 0x4C3C19F: default_stat (defaults.c:1147)
==12247==    by 0x94A3484: io_stats_stat (io-stats.c:1759)
==12247==    by 0x62CF92C: fuse_getattr_resume (fuse-bridge.c:448)
==12247==    by 0x62CD384: fuse_resolve_done (fuse-resolve.c:617)
==12247==    by 0x62CD45A: fuse_resolve_all (fuse-resolve.c:647)
==12247==    by 0x62CD2F4: fuse_resolve (fuse-resolve.c:597)
==12247==    by 0x62CD431: fuse_resolve_all (fuse-resolve.c:643)
==12247==    by 0x62CD096: fuse_resolve_inode (fuse-resolve.c:521)
==12247==  Address 0xbb012a0 is 0 bytes inside a block of size 72 free'd
==12247==    at 0x4A0595D: free (vg_replace_malloc.c:366)
==12247==    by 0x4C5ACBC: __gf_free (mem-pool.c:259)
==12247==    by 0x85CE859: dht_layout_unref (dht-layout.c:142)
==12247==    by 0x8601C17: dht_forget (dht-common.c:5132)
==12247==    by 0x4C41E1E: __inode_destroy (inode.c:330)
==12247==    by 0x4C439E7: inode_table_prune (inode.c:1136)
==12247==    by 0x4C42299: inode_unref (inode.c:457)
==12247==    by 0x4C2B69A: loc_wipe (xlator.c:1698)
==12247==    by 0x83A7341: afr_local_cleanup (afr-common.c:390)
==12247==    by 0x8369EED: afr_stat_cbk (afr-inode-read.c:229)
==12247==    by 0x812D59B: client3_1_stat_cbk (client3_1-fops.c:413)
==12247==    by 0x4E95014: rpc_clnt_handle_reply (rpc-clnt.c:741)

Comment 2 Krishna Srinivas 2011-11-01 10:56:25 UTC
*** Bug 3735 has been marked as a duplicate of this bug. ***

Comment 3 Anand Avati 2011-11-09 14:32:37 UTC
CHANGE: http://review.gluster.com/687 (Possible situation is a forget call which unref's the inode, and the) merged in release-3.2 by Vijay Bellur (vijay)

Comment 4 Amar Tumballi 2011-11-14 02:54:44 UTC
*** Bug 2373 has been marked as a duplicate of this bug. ***

Comment 5 Amar Tumballi 2011-11-14 02:55:23 UTC
*** Bug 3469 has been marked as a duplicate of this bug. ***

Comment 6 Anand Avati 2011-11-16 06:54:37 UTC
CHANGE: http://review.gluster.com/694 (layout->cnt might be modified in cbk's or different threads, which) merged in master by Vijay Bellur (vijay)

Comment 7 shishir gowda 2011-12-19 04:29:16 UTC
*** Bug 768324 has been marked as a duplicate of this bug. ***

Comment 8 Raghavendra Bhat 2012-05-11 11:07:34 UTC
Checked with glusterfs-3.3.0qa40. This bug is not seen.