diff options
Diffstat (limited to 'fs/xfs/quota/xfs_qm.c')
-rw-r--r-- | fs/xfs/quota/xfs_qm.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/fs/xfs/quota/xfs_qm.c b/fs/xfs/quota/xfs_qm.c index 3e4a8ad8a34c..7def4c699343 100644 --- a/fs/xfs/quota/xfs_qm.c +++ b/fs/xfs/quota/xfs_qm.c | |||
@@ -62,10 +62,9 @@ uint ndquot; | |||
62 | 62 | ||
63 | kmem_zone_t *qm_dqzone; | 63 | kmem_zone_t *qm_dqzone; |
64 | kmem_zone_t *qm_dqtrxzone; | 64 | kmem_zone_t *qm_dqtrxzone; |
65 | static kmem_shaker_t xfs_qm_shaker; | 65 | static struct shrinker *xfs_qm_shaker; |
66 | 66 | ||
67 | static cred_t xfs_zerocr; | 67 | static cred_t xfs_zerocr; |
68 | static xfs_inode_t xfs_zeroino; | ||
69 | 68 | ||
70 | STATIC void xfs_qm_list_init(xfs_dqlist_t *, char *, int); | 69 | STATIC void xfs_qm_list_init(xfs_dqlist_t *, char *, int); |
71 | STATIC void xfs_qm_list_destroy(xfs_dqlist_t *); | 70 | STATIC void xfs_qm_list_destroy(xfs_dqlist_t *); |
@@ -150,7 +149,7 @@ xfs_Gqm_init(void) | |||
150 | } else | 149 | } else |
151 | xqm->qm_dqzone = qm_dqzone; | 150 | xqm->qm_dqzone = qm_dqzone; |
152 | 151 | ||
153 | xfs_qm_shaker = kmem_shake_register(xfs_qm_shake); | 152 | xfs_qm_shaker = set_shrinker(DEFAULT_SEEKS, xfs_qm_shake); |
154 | 153 | ||
155 | /* | 154 | /* |
156 | * The t_dqinfo portion of transactions. | 155 | * The t_dqinfo portion of transactions. |
@@ -182,7 +181,7 @@ xfs_qm_destroy( | |||
182 | 181 | ||
183 | ASSERT(xqm != NULL); | 182 | ASSERT(xqm != NULL); |
184 | ASSERT(xqm->qm_nrefs == 0); | 183 | ASSERT(xqm->qm_nrefs == 0); |
185 | kmem_shake_deregister(xfs_qm_shaker); | 184 | remove_shrinker(xfs_qm_shaker); |
186 | hsize = xqm->qm_dqhashmask + 1; | 185 | hsize = xqm->qm_dqhashmask + 1; |
187 | for (i = 0; i < hsize; i++) { | 186 | for (i = 0; i < hsize; i++) { |
188 | xfs_qm_list_destroy(&(xqm->qm_usr_dqhtable[i])); | 187 | xfs_qm_list_destroy(&(xqm->qm_usr_dqhtable[i])); |
@@ -1415,7 +1414,7 @@ xfs_qm_qino_alloc( | |||
1415 | return error; | 1414 | return error; |
1416 | } | 1415 | } |
1417 | 1416 | ||
1418 | if ((error = xfs_dir_ialloc(&tp, &xfs_zeroino, S_IFREG, 1, 0, | 1417 | if ((error = xfs_dir_ialloc(&tp, NULL, S_IFREG, 1, 0, |
1419 | &xfs_zerocr, 0, 1, ip, &committed))) { | 1418 | &xfs_zerocr, 0, 1, ip, &committed))) { |
1420 | xfs_trans_cancel(tp, XFS_TRANS_RELEASE_LOG_RES | | 1419 | xfs_trans_cancel(tp, XFS_TRANS_RELEASE_LOG_RES | |
1421 | XFS_TRANS_ABORT); | 1420 | XFS_TRANS_ABORT); |