diff options
author | Raghavendra G <raghavendra@gluster.com> | 2011-04-24 22:52:46 +0000 |
---|---|---|
committer | Anand Avati <avati@gluster.com> | 2011-05-31 21:54:09 -0700 |
commit | 38b5f930f05b4291af0609f3babc7f48d7a29f22 (patch) | |
tree | 2ad5664dbd67e3e69e51a4103608765634b8beb4 /xlators/cluster | |
parent | 7cc8a41744eae66765ce475b0374d2d77920a98b (diff) |
performance/write-behind: initialize lock in wb-file before wb-file is set in fd-ctx.
- Consider a combination of fuse->quick-read->read-ahead->wb->client.
quick-read can do open-behind (open is returned as success even
before it is issued to backend) and hence the fd can already be
in the list of open fds of the inode. A flush call on some other
fd opened on the same inode, will result in ra_flush issuing flush
calls to all the fds opened on the same inode. This can result in
wb_flush trying to hold a lock on non-initialized lock there by causing
memory corruption.
Signed-off-by: Raghavendra G <raghavendra@gluster.com>
Signed-off-by: Anand Avati <avati@gluster.com>
BUG: 2679 (Crash in GlusterFS 3.0.5 in GSP)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2679
Diffstat (limited to 'xlators/cluster')
0 files changed, 0 insertions, 0 deletions