diff options
Diffstat (limited to 'libglusterfs/src/inode.c')
| -rw-r--r-- | libglusterfs/src/inode.c | 9 | 
1 files changed, 9 insertions, 0 deletions
diff --git a/libglusterfs/src/inode.c b/libglusterfs/src/inode.c index 573ec03819a..3a6464ac5e1 100644 --- a/libglusterfs/src/inode.c +++ b/libglusterfs/src/inode.c @@ -2549,6 +2549,15 @@ inode_ctx_size (inode_t *inode)                          old_THIS = THIS;                          THIS = xl; +                        /* If inode ref is taken when THIS is global xlator, +                         * the ctx xl_key is set, but the value is NULL. +                         * For global xlator the cbks can be NULL, hence check +                         * for the same */ +                        if (!xl->cbks) { +                                THIS = old_THIS; +                                continue; +                        } +                          if (xl->cbks->ictxsize)                                  size += xl->cbks->ictxsize (xl, inode);  | 
