diff options
author | Edward Shishkin <edward@redhat.com> | 2014-10-27 21:35:16 +0100 |
---|---|---|
committer | Vijay Bellur <vbellur@redhat.com> | 2014-11-30 21:41:27 -0800 |
commit | 45af6c5fc385f2c948bdb387585b3e0a41ccbcde (patch) | |
tree | d06364c2d4912ae1363e43bf6fb402f0478a08e8 /xlators/storage/posix | |
parent | dcbab25710aa60a22708a0de8c41735bfca06d07 (diff) |
Prevent metadata corruption in the race conditions between
FOP->open() and FOP->link().
Problem: crypt_open() modifies @local->format, which is used
by crypt_link() to store the updated metadata string on disk.
This results in metadata corruption.
Fixup: Don't modify @local->format by FOP->open(). Instead
modify a local copy, allocated in the low-level meta-data
handler open_format_v1().
Change-Id: I046bb39ddefc33afe59c8d3b1a2fa798298f8499
BUG: 1157839
Signed-off-by: Edward Shishkin <edward@redhat.com>
Reviewed-on: http://review.gluster.org/8982
Reviewed-by: Emmanuel Dreyfus <manu@netbsd.org>
Tested-by: Emmanuel Dreyfus <manu@netbsd.org>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Diffstat (limited to 'xlators/storage/posix')
0 files changed, 0 insertions, 0 deletions