summaryrefslogtreecommitdiffstats
path: root/xlators
diff options
context:
space:
mode:
authorShehjar Tikoo <shehjart@zresearch.com>2009-04-06 00:37:54 -0700
committerAnand V. Avati <avati@amp.gluster.com>2009-04-06 21:49:18 +0530
commit258da6cd992c279469f2288f8a3cd41be69d43c2 (patch)
tree6146518b79834bdb78da8942cffe53986df7604c /xlators
parent45dab1eefd85e38570c2c3ccfac0061245f70e74 (diff)
io-threads: Cleaner stub destruction
Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
Diffstat (limited to 'xlators')
-rw-r--r--xlators/performance/io-threads/src/io-threads.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/xlators/performance/io-threads/src/io-threads.c b/xlators/performance/io-threads/src/io-threads.c
index 9a387d93ac7..83d0d708922 100644
--- a/xlators/performance/io-threads/src/io-threads.c
+++ b/xlators/performance/io-threads/src/io-threads.c
@@ -171,6 +171,8 @@ iot_schedule_ordered (iot_conf_t *conf,
if (inode == NULL) {
gf_log (conf->this->name, GF_LOG_ERROR,
"Got NULL inode for ordered request");
+ STACK_UNWIND (stub->frame, -1, EINVAL, NULL);
+ call_stub_destroy (stub);
return;
}
req = iot_init_request (stub);
@@ -182,6 +184,7 @@ iot_schedule_ordered (iot_conf_t *conf,
"Insane worker index. Unwinding stack");
STACK_UNWIND (stub->frame, -1, ECANCELED, NULL);
iot_destroy_request (req);
+ call_stub_destroy (stub);
goto unlock_out;
}
/* inode lock once acquired, cannot be left here