xfs-masters
[Top] [All Lists]

[xfs-masters] [Bug 764] oops on mount in F8 test1 with quotas, in __mute

To: xfs-master@xxxxxxxxxxx
Subject: [xfs-masters] [Bug 764] oops on mount in F8 test1 with quotas, in __mutex_lock_slowpath
From: bugzilla-daemon@xxxxxxxxxxx
Date: Sun, 5 Aug 2007 14:26:09 -0700
Reply-to: xfs-masters@xxxxxxxxxxx
Sender: xfs-masters-bounce@xxxxxxxxxxx
http://oss.sgi.com/bugzilla/show_bug.cgi?id=764


sandeen-xfs@xxxxxxxxxxx changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED




------- Additional Comments From sandeen-xfs@xxxxxxxxxxx  2007-08-05 14:26 CST 
-------
Patch sent to the list:

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.

Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxxx>

Index: linux-2.6.22-rc4/fs/xfs/quota/xfs_qm.c
===================================================================
--- linux-2.6.22-rc4.orig/fs/xfs/quota/xfs_qm.c
+++ linux-2.6.22-rc4/fs/xfs/quota/xfs_qm.c
@@ -117,7 +117,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 * 
sizeof(xfs_dqhash_t),
                                     KM_SLEEP | KM_MAYFAIL | KM_LARGE);
        gdqhash = kmem_zalloc(hsize, KM_SLEEP | KM_LARGE);
        hsize /= sizeof(xfs_dqhash_t);

-- 
Configure bugmail: http://oss.sgi.com/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.


<Prev in Thread] Current Thread [Next in Thread>