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 573ec03819..3a6464ac5e 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); |