summaryrefslogtreecommitdiff
path: root/ext2fs
diff options
context:
space:
mode:
authorMiles Bader <miles@gnu.org>1996-06-25 21:33:14 +0000
committerMiles Bader <miles@gnu.org>1996-06-25 21:33:14 +0000
commitcfebe01e93fb123e31c295d4901d85eb7d5eb954 (patch)
treeaaf538c469de08c1da0e7f2c925974d5dc406ed0 /ext2fs
parentcec48d4b977cb95a22d777d4e6c6ad142adf7bd9 (diff)
(diskfs_shutdown_pager): Don't shutdown the disk pager, just sync it.
(diskfs_sync_everything): Call sync_global instead of pokel_sync. (final_sblock): Variable removed.
Diffstat (limited to 'ext2fs')
-rw-r--r--ext2fs/pager.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/ext2fs/pager.c b/ext2fs/pager.c
index 4d31cf12..2c6b6eab 100644
--- a/ext2fs/pager.c
+++ b/ext2fs/pager.c
@@ -781,9 +781,7 @@ diskfs_get_filemap_pager_struct (struct node *node)
return node->dn->pager;
}
-static struct ext2_super_block final_sblock;
-
-/* Shutdown all the pagers. */
+/* Shutdown all the pagers (except the disk pager). */
void
diskfs_shutdown_pager ()
{
@@ -797,13 +795,13 @@ diskfs_shutdown_pager ()
write_all_disknodes ();
- /* Because the superblock lives in the disk pager, we copy out the last
- known value just before we shut it down. */
- bcopy (sblock, &final_sblock, sizeof (final_sblock));
- sblock = &final_sblock;
-
ports_bucket_iterate (pager_bucket, shutdown_one);
- pager_shutdown (disk_pager);
+
+ /* Sync everything on the the disk pager. */
+ sync_global (1);
+
+ /* Despite the name of this function, we never actually shutdown the disk
+ pager, just make sure it's synced. */
}
/* Sync all the pagers. */
@@ -822,7 +820,7 @@ diskfs_sync_everything (int wait)
ports_bucket_iterate (pager_bucket, sync_one);
/* Do things on the the disk pager. */
- pokel_sync (&global_pokel, wait);
+ sync_global (wait);
}
/* ---------------------------------------------------------------- */