xfs
[Top] [All Lists]

[PATCH 1/7] xfs: cleanup log unmount handling

To: xfs@xxxxxxxxxxx
Subject: [PATCH 1/7] xfs: cleanup log unmount handling
From: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Fri, 20 Feb 2009 03:52:08 -0500
References: <20090220085207.663702000@xxxxxxxxxxxxxxxxxxxxxx>
User-agent: quilt/0.47-1
Kill the current xfs_log_unmount wrapper and opencode the two function
calls in the only caller.  Rename the current xfs_log_unmount_dealloc to
xfs_log_unmount as it undoes xfs_log_mount and the new name makes that
more clear.


Signed-off-by: Christoph Hellwig <hch@xxxxxx>

Index: xfs/fs/xfs/xfs_log.c
===================================================================
--- xfs.orig/fs/xfs/xfs_log.c   2009-02-10 19:18:54.177068965 +0100
+++ xfs/fs/xfs/xfs_log.c        2009-02-10 19:21:28.338068613 +0100
@@ -635,19 +635,6 @@ xfs_log_mount_finish(xfs_mount_t *mp)
 }
 
 /*
- * Unmount processing for the log.
- */
-int
-xfs_log_unmount(xfs_mount_t *mp)
-{
-       int             error;
-
-       error = xfs_log_unmount_write(mp);
-       xfs_log_unmount_dealloc(mp);
-       return error;
-}
-
-/*
  * Final log writes as part of unmount.
  *
  * Mark the filesystem clean as unmount happens.  Note that during relocation
@@ -797,7 +784,7 @@ xfs_log_unmount_write(xfs_mount_t *mp)
  * and deallocate the log as the aild references the log.
  */
 void
-xfs_log_unmount_dealloc(xfs_mount_t *mp)
+xfs_log_unmount(xfs_mount_t *mp)
 {
        xfs_trans_ail_destroy(mp);
        xlog_dealloc_log(mp->m_log);
Index: xfs/fs/xfs/xfs_log.h
===================================================================
--- xfs.orig/fs/xfs/xfs_log.h   2009-02-10 11:10:41.813069852 +0100
+++ xfs/fs/xfs/xfs_log.h        2009-02-10 19:21:28.338068613 +0100
@@ -170,9 +170,8 @@ int   xfs_log_write(struct xfs_mount *mp
                        int              nentries,
                        xfs_log_ticket_t ticket,
                        xfs_lsn_t        *start_lsn);
-int      xfs_log_unmount(struct xfs_mount *mp);
 int      xfs_log_unmount_write(struct xfs_mount *mp);
-void      xfs_log_unmount_dealloc(struct xfs_mount *mp);
+void      xfs_log_unmount(struct xfs_mount *mp);
 int      xfs_log_force_umount(struct xfs_mount *mp, int logerror);
 int      xfs_log_need_covered(struct xfs_mount *mp);
 
Index: xfs/fs/xfs/xfs_mount.c
===================================================================
--- xfs.orig/fs/xfs/xfs_mount.c 2009-02-10 19:16:19.537069383 +0100
+++ xfs/fs/xfs/xfs_mount.c      2009-02-10 19:21:28.339069370 +0100
@@ -1194,7 +1194,7 @@ xfs_mountfs(
  out_rele_rip:
        IRELE(rip);
  out_log_dealloc:
-       xfs_log_unmount_dealloc(mp);
+       xfs_log_unmount(mp);
  out_free_perag:
        xfs_free_perag(mp);
  out_remove_uuid:
@@ -1280,7 +1280,8 @@ xfs_unmountfs(
                                "Freespace may not be correct on next mount.");
        xfs_unmountfs_writesb(mp);
        xfs_unmountfs_wait(mp);                 /* wait for async bufs */
-       xfs_log_unmount(mp);                    /* Done! No more fs ops. */
+       xfs_log_unmount_write(mp);
+       xfs_log_unmount(mp);
 
        if ((mp->m_flags & XFS_MOUNT_NOUUID) == 0)
                uuid_table_remove(&mp->m_sb.sb_uuid);

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