Commit:     5995cb7d805496362e5af73235145667096fbc6f
Parent:     265c1fac38e37e828df09965406e9cc20bfa3588
Author:     Eric Sandeen <[EMAIL PROTECTED]>
AuthorDate: Thu Aug 16 16:49:11 2007 +1000
Committer:  Tim Shimmin <[EMAIL PROTECTED]>
CommitDate: Wed Sep 5 14:51:04 2007 +1000

    [XFS] fix nasty quota hashtable allocation bug
    This git mod: 77e4635ae191774526ed695482a151ac986f3806
    converted to a "greedy" allocation interface, but for the quota hashtables
    it switched from allocating XFS_QM_HASHSIZE (nr of elements)
    xfs_dqhash_t's to allocating only XFS_QM_HASHSIZE *bytes* - quite a lot
    smaller! Then when we converted hsize "back" to nr of elements (the
    division line) hsize went to 0. This was leading to oopses when running
    any quota tests on the Fedora 8 test kernel, but the problem has been
    there for almost a year.
    SGI-PV: 968837
    SGI-Modid: xfs-linux-melb:xfs-kern:29354a
    Signed-off-by: Eric Sandeen <[EMAIL PROTECTED]>
    Signed-off-by: David Chinner <[EMAIL PROTECTED]>
    Signed-off-by: Tim Shimmin <[EMAIL PROTECTED]>
 fs/xfs/quota/xfs_qm.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/fs/xfs/quota/xfs_qm.c b/fs/xfs/quota/xfs_qm.c
index 2d274b2..6ff0f4d 100644
--- a/fs/xfs/quota/xfs_qm.c
+++ b/fs/xfs/quota/xfs_qm.c
@@ -120,7 +120,8 @@ xfs_Gqm_init(void)
         * Initialize the dquot hash tables.
        udqhash = kmem_zalloc_greedy(&hsize,
-                                    XFS_QM_HASHSIZE_LOW, XFS_QM_HASHSIZE_HIGH,
+                                    XFS_QM_HASHSIZE_LOW * sizeof(xfs_dqhash_t),
+                                    XFS_QM_HASHSIZE_HIGH * 
                                     KM_SLEEP | KM_MAYFAIL | KM_LARGE);
        gdqhash = kmem_zalloc(hsize, KM_SLEEP | KM_LARGE);
        hsize /= sizeof(xfs_dqhash_t);
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at

Reply via email to