xfs: remove xfs_dqmarker
authorChristoph Hellwig <hch@infradead.org>
Tue, 13 Apr 2010 05:06:53 +0000 (15:06 +1000)
committerAlex Elder <aelder@sgi.com>
Wed, 19 May 2010 14:58:11 +0000 (09:58 -0500)
The xfs_dqmarker structure does not need to exist anymore. Move the
remaining flags field out of it and remove the structure altogether.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Dave Chinner <david@fromorbit.com>
fs/xfs/quota/xfs_dquot.h
fs/xfs/quota/xfs_qm_syscalls.c

index 56fb21d..5da3a23 100644 (file)
@@ -42,22 +42,11 @@ typedef struct xfs_dqhash {
 struct xfs_mount;
 struct xfs_trans;
 
-/*
- * This is the marker which is designed to occupy the first few
- * bytes of the xfs_dquot_t structure. Even inside this, the freelist pointers
- * must come first.
- * This serves as the marker ("sentinel") when we have to restart list
- * iterations because of locking considerations.
- */
-typedef struct xfs_dqmarker {
-       uint             dqm_flags;     /* various flags (XFS_DQ_*) */
-} xfs_dqmarker_t;
-
 /*
  * The incore dquot structure
  */
 typedef struct xfs_dquot {
-       xfs_dqmarker_t   q_lists;       /* list ptrs, q_flags (marker) */
+       uint             dq_flags;      /* various flags (XFS_DQ_*) */
        struct list_head q_freelist;    /* global free list of dquots */
        struct list_head q_mplist;      /* mount's list of dquots */
        struct list_head q_hashlist;    /* gloabl hash list of dquots */
@@ -81,13 +70,6 @@ typedef struct xfs_dquot {
        wait_queue_head_t q_pinwait;    /* dquot pinning wait queue */
 } xfs_dquot_t;
 
-
-#define dq_flnext      q_lists.dqm_flnext
-#define dq_flprev      q_lists.dqm_flprev
-#define dq_mplist      q_lists.dqm_mplist
-#define dq_hashlist    q_lists.dqm_hashlist
-#define dq_flags       q_lists.dqm_flags
-
 /*
  * Lock hierarchy for q_qlock:
  *     XFS_QLOCK_NORMAL is the implicit default,
@@ -121,7 +103,6 @@ static inline void xfs_dqfunlock(xfs_dquot_t *dqp)
 }
 
 #define XFS_DQ_IS_LOCKED(dqp)  (mutex_is_locked(&((dqp)->q_qlock)))
-#define XFS_DQ_IS_ON_FREELIST(dqp)  ((dqp)->dq_flnext != (dqp))
 #define XFS_DQ_IS_DIRTY(dqp)   ((dqp)->dq_flags & XFS_DQ_DIRTY)
 #define XFS_QM_ISUDQ(dqp)      ((dqp)->dq_flags & XFS_DQ_USER)
 #define XFS_QM_ISPDQ(dqp)      ((dqp)->dq_flags & XFS_DQ_PROJ)
index c82e319..4533744 100644 (file)
@@ -931,7 +931,7 @@ struct mutex  qcheck_lock;
 }
 
 typedef struct dqtest {
-       xfs_dqmarker_t  q_lists;
+       uint             dq_flags;      /* various flags (XFS_DQ_*) */
        struct list_head q_hashlist;
        xfs_dqhash_t    *q_hash;        /* the hashchain header */
        xfs_mount_t     *q_mount;       /* filesystem this relates to */