summaryrefslogtreecommitdiff
path: root/include/linux/quota.h
diff options
context:
space:
mode:
authorJan Kara <jack@suse.cz>2002-05-19 19:33:51 -0700
committerLinus Torvalds <torvalds@penguin.transmeta.com>2002-05-19 19:33:51 -0700
commit61d681d67f15e4bdbc576e2495b0dc2fc76dbf42 (patch)
tree88e838d8900dbb37294c67f46ac96beaaf1dce5c /include/linux/quota.h
parentcb0c3669ddda7d721e1de69cffadec32e113f2cc (diff)
[PATCH] [1/13] quota-1-newlocks
This patch adds dq_dup_ref to struct dquot. Functions altering just usage of quota take just this duplicated reference, inodes, quotactl() helpers take real dq_count reference. dqput() blocks if there are some duplicated references and put reference is last 'real one'. This way is assured that quota IO is not done from functions altering quota usage (quota structure is written on last dqput()).
Diffstat (limited to 'include/linux/quota.h')
-rw-r--r--include/linux/quota.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/include/linux/quota.h b/include/linux/quota.h
index b2d5de7368f6..0b4bb2b87580 100644
--- a/include/linux/quota.h
+++ b/include/linux/quota.h
@@ -41,6 +41,9 @@
#include <linux/errno.h>
+#define __DQUOT_VERSION__ "dquot_6.5.1"
+#define __DQUOT_NUM_VERSION__ 6*10000+5*100+1
+
/*
* Convert diskblocks to blocks and the other way around.
*/
@@ -161,7 +164,8 @@ struct dquot {
struct list_head dq_free; /* Free list element */
wait_queue_head_t dq_wait_lock; /* Pointer to waitqueue on dquot lock */
wait_queue_head_t dq_wait_free; /* Pointer to waitqueue for quota to be unused */
- int dq_count; /* Reference count */
+ int dq_count; /* Use count */
+ int dq_dup_ref; /* Number of duplicated refences */
/* fields after this point are cleared when invalidating */
struct super_block *dq_sb; /* superblock this applies to */