From 4fb5a2af7b9fe926782ea6139349eeb63be86920 Mon Sep 17 00:00:00 2001 From: vmallika Date: Sat, 2 Apr 2016 08:57:00 +0530 Subject: marker: optimize mq_update_dirty_inode_task This is a backport of http://review.gluster.org/#/c/13892/ In function mq_update_dirty_inode_task we do readdirp on a dirty directory and for entry we again do lookup to fecth the contribution xattr. We can fetch this contribution as part of readdirp > Change-Id: I766593c0dba793f1ab3b43625acce1c7d9af8d7f > BUG: 1320818 > Signed-off-by: vmallika Change-Id: Id826a09a72529f7435372ea7f04068dd10da5fcb BUG: 1324040 Signed-off-by: vmallika Reviewed-on: http://review.gluster.org/13908 Smoke: Gluster Build System NetBSD-regression: NetBSD Build System CentOS-regression: Gluster Build System --- libglusterfs/src/quota-common-utils.c | 11 +++++++++++ libglusterfs/src/quota-common-utils.h | 3 +++ 2 files changed, 14 insertions(+) (limited to 'libglusterfs') diff --git a/libglusterfs/src/quota-common-utils.c b/libglusterfs/src/quota-common-utils.c index 5e688e50856..ad7e4dcba1c 100644 --- a/libglusterfs/src/quota-common-utils.c +++ b/libglusterfs/src/quota-common-utils.c @@ -16,6 +16,17 @@ #include "common-utils.h" #include "libglusterfs-messages.h" +gf_boolean_t +quota_meta_is_null (const quota_meta_t *meta) +{ + if (meta->size == 0 && + meta->file_count == 0 && + meta->dir_count == 0) + return _gf_true; + + return _gf_false; +} + int32_t quota_data_to_meta (data_t *data, char *key, quota_meta_t *meta) { diff --git a/libglusterfs/src/quota-common-utils.h b/libglusterfs/src/quota-common-utils.h index c930db8e86c..e479398c398 100644 --- a/libglusterfs/src/quota-common-utils.h +++ b/libglusterfs/src/quota-common-utils.h @@ -37,6 +37,9 @@ struct _quota_meta { } __attribute__ ((__packed__)); typedef struct _quota_meta quota_meta_t; +gf_boolean_t +quota_meta_is_null (const quota_meta_t *meta); + int32_t quota_data_to_meta (data_t *data, char *key, quota_meta_t *meta); -- cgit