Clean up dquot pincount code.
This is a code cleanup and optimization that removes a per mount point
spinlock from the quota code and cleans up the code.
The patch changes the pincount from being an int protected by a spinlock
to an atomic_t allowing the pincount to be manipulated without holding
the spinlock.
This cleanup also protects against random wakup's of both the aild and
xfssyncd by reevaluating the pincount after been woken. Two latter patches
will address the Spurious wakeups.
Signed-off-by: Peter Leckie <pleckie@xxxxxxx>
Date: Fri Sep 26 14:42:30 AEST 2008
Workarea: chook.melbourne.sgi.com:/build/pleckie/2.6.x-xfs
Inspected by: donaldd,lachlan,hch@xxxxxx,david@xxxxxxxxxxxxx
The following file(s) were checked into:
longdrop.melbourne.sgi.com:/isms/linux/2.6.x-xfs-melb
Modid: xfs-linux-melb:xfs-kern:32215a
fs/xfs/xfsidbg.c - 1.367 - changed
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/xfsidbg.c.diff?r1=text&tr1=1.367&r2=text&tr2=1.366&f=h
- Clean up dquot pincount code.
fs/xfs/quota/xfs_dquot_item.c - 1.24 - changed
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/quota/xfs_dquot_item.c.diff?r1=text&tr1=1.24&r2=text&tr2=1.23&f=h
- Clean up dquot pincount code.
fs/xfs/quota/xfs_dquot.h - 1.14 - changed
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/quota/xfs_dquot.h.diff?r1=text&tr1=1.14&r2=text&tr2=1.13&f=h
- Clean up dquot pincount code.
fs/xfs/quota/xfs_dquot.c - 1.39 - changed
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/quota/xfs_dquot.c.diff?r1=text&tr1=1.39&r2=text&tr2=1.38&f=h
- Clean up dquot pincount code.
fs/xfs/quota/xfs_qm.h - 1.21 - changed
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/quota/xfs_qm.h.diff?r1=text&tr1=1.21&r2=text&tr2=1.20&f=h
- Clean up dquot pincount code.
fs/xfs/quota/xfs_qm.c - 1.75 - changed
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/quota/xfs_qm.c.diff?r1=text&tr1=1.75&r2=text&tr2=1.74&f=h
- Clean up dquot pincount code.
|