diff options
author | Raghavendra G <rgowdapp@redhat.com> | 2016-01-11 16:17:29 +0530 |
---|---|---|
committer | Raghavendra G <rgowdapp@redhat.com> | 2016-01-13 21:42:13 -0800 |
commit | 1b9174d35dc113f97fd5cec811633853cef269f3 (patch) | |
tree | 93b58bf113bbdc71bbd0043f05fdd3193f20b3e2 /configure.ac | |
parent | 252fe523e2932e83a98f203f71678f391eee6b22 (diff) |
performance/write-behind: fix memory corruption
1. while handling short writes, __wb_fulfill_short_write would've freed
current request before moving on to next in the list if request is not
big enough to accomodate completed number of bytes. So, make sure to
save next member before invoking __wb_fulfill_short_write on current
request. Also handle the case where request is exactly the size of
remaining completed number of bytes.
2. When write request is unwound because there is a conflicting failed
liability, make sure its deleted from tempted list. Otherwise there
will be two unwinds (one as part handling a failed request in
wb_do_winds and another in wb_do_unwinds).
Change-Id: Id1b54430796b19b956d24b8d99ab0cdd5140e4f6
BUG: 1297373
Signed-off-by: Raghavendra G <rgowdapp@redhat.com>
Reviewed-on: http://review.gluster.org/13213
Tested-by: NetBSD Build System <jenkins@build.gluster.org>
Reviewed-by: Raghavendra Talur <rtalur@redhat.com>
Diffstat (limited to 'configure.ac')
0 files changed, 0 insertions, 0 deletions