xfs
[Top] [All Lists]

[PATCH 9/8] xfs: remove xfs_dqmarker

To: Dave Chinner <david@xxxxxxxxxxxxx>
Subject: [PATCH 9/8] xfs: remove xfs_dqmarker
From: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Sat, 3 Apr 2010 06:02:00 -0400
Cc: xfs@xxxxxxxxxxx
In-reply-to: <1270125691-29266-1-git-send-email-david@xxxxxxxxxxxxx>
References: <1270125691-29266-1-git-send-email-david@xxxxxxxxxxxxx>
User-agent: Mutt/1.5.19 (2009-01-05)
Signed-off-by: Christoph Hellwig <hch@xxxxxx>

Index: xfs/fs/xfs/quota/xfs_dquot.h
===================================================================
--- xfs.orig/fs/xfs/quota/xfs_dquot.h   2010-04-03 11:50:57.597006532 +0200
+++ xfs/fs/xfs/quota/xfs_dquot.h        2010-04-03 11:54:38.612005622 +0200
@@ -43,21 +43,10 @@ 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_dqu
 }
 
 #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: xfs/fs/xfs/quota/xfs_qm_syscalls.c
===================================================================
--- xfs.orig/fs/xfs/quota/xfs_qm_syscalls.c     2010-04-03 11:52:38.335003250 
+0200
+++ xfs/fs/xfs/quota/xfs_qm_syscalls.c  2010-04-03 11:54:51.139005979 +0200
@@ -930,7 +930,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 */

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