summaryrefslogtreecommitdiffstats
path: root/xlators/performance/io-cache/src/io-cache.c
diff options
context:
space:
mode:
Diffstat (limited to 'xlators/performance/io-cache/src/io-cache.c')
-rw-r--r--xlators/performance/io-cache/src/io-cache.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/xlators/performance/io-cache/src/io-cache.c b/xlators/performance/io-cache/src/io-cache.c
index ef7f2ff216d..7156b426b04 100644
--- a/xlators/performance/io-cache/src/io-cache.c
+++ b/xlators/performance/io-cache/src/io-cache.c
@@ -189,7 +189,7 @@ ioc_inode_update (xlator_t *this, inode_t *inode, char *path,
LOCK (&inode->lock);
{
- __inode_ctx_get (inode, this, &tmp_ioc_inode);
+ (void) __inode_ctx_get (inode, this, &tmp_ioc_inode);
ioc_inode = (ioc_inode_t *)(long)tmp_ioc_inode;
if (!ioc_inode) {
@@ -198,8 +198,8 @@ ioc_inode_update (xlator_t *this, inode_t *inode, char *path,
ioc_inode = ioc_inode_create (table, inode,
weight);
- __inode_ctx_put (inode, this,
- (uint64_t)(long)ioc_inode);
+ (void) __inode_ctx_put (inode, this,
+ (uint64_t)(long)ioc_inode);
}
}
UNLOCK (&inode->lock);
@@ -300,6 +300,11 @@ ioc_lookup (call_frame_t *frame, xlator_t *this, loc_t *loc,
return 0;
unwind:
+ if (local != NULL) {
+ loc_wipe (&local->file_loc);
+ mem_put (local);
+ }
+
STACK_UNWIND_STRICT (lookup, frame, -1, op_errno, NULL, NULL,
NULL, NULL);