diff options
author | Jan Kara <jack@suse.cz> | 2008-11-25 14:31:32 (GMT) |
---|---|---|
committer | Mark Fasheh <mfasheh@suse.com> | 2009-01-05 16:40:25 (GMT) |
commit | 7d9056ba20ebed6e3937a2e23183f6117919cb00 (patch) | |
tree | 3aefa0f187630fdbdefcec9e726155f2678cd1ab | |
parent | 5cd9d5bb86daf632a40f90e2321ea9379e42f073 (diff) | |
download | linux-7d9056ba20ebed6e3937a2e23183f6117919cb00.tar.xz |
quota: Export dquot_alloc() and dquot_destroy() functions
These are default functions for creating and destroying quota structures
and they should be used from filesystems.
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Mark Fasheh <mfasheh@suse.com>
-rw-r--r-- | fs/dquot.c | 6 | ||||
-rw-r--r-- | include/linux/quotaops.h | 2 |
2 files changed, 6 insertions, 2 deletions
@@ -413,10 +413,11 @@ out_dqlock: return ret; } -static void dquot_destroy(struct dquot *dquot) +void dquot_destroy(struct dquot *dquot) { kmem_cache_free(dquot_cachep, dquot); } +EXPORT_SYMBOL(dquot_destroy); static inline void do_destroy_dquot(struct dquot *dquot) { @@ -668,10 +669,11 @@ we_slept: spin_unlock(&dq_list_lock); } -static struct dquot *dquot_alloc(struct super_block *sb, int type) +struct dquot *dquot_alloc(struct super_block *sb, int type) { return kmem_cache_zalloc(dquot_cachep, GFP_NOFS); } +EXPORT_SYMBOL(dquot_alloc); static struct dquot *get_empty_dquot(struct super_block *sb, int type) { diff --git a/include/linux/quotaops.h b/include/linux/quotaops.h index f491394..21b781a 100644 --- a/include/linux/quotaops.h +++ b/include/linux/quotaops.h @@ -31,6 +31,8 @@ int dquot_is_cached(struct super_block *sb, unsigned int id, int type); int dquot_scan_active(struct super_block *sb, int (*fn)(struct dquot *dquot, unsigned long priv), unsigned long priv); +struct dquot *dquot_alloc(struct super_block *sb, int type); +void dquot_destroy(struct dquot *dquot); int dquot_alloc_space(struct inode *inode, qsize_t number, int prealloc); int dquot_alloc_inode(const struct inode *inode, qsize_t number); |