summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpjd <pjd@FreeBSD.org>2007-04-08 23:54:01 +0000
committerpjd <pjd@FreeBSD.org>2007-04-08 23:54:01 +0000
commit6f7c2e9be332701e0413b3b132f1ad7dcb450306 (patch)
treefcabd1eafcf591c83dba7cfa7c7c8d2beea65a4f
parent47ca069c43c45019e40fe40b2115caab4bc256c6 (diff)
downloadFreeBSD-src-6f7c2e9be332701e0413b3b132f1ad7dcb450306.zip
FreeBSD-src-6f7c2e9be332701e0413b3b132f1ad7dcb450306.tar.gz
Add root_mounted() function that returns true if the root file system is
already mounted.
-rw-r--r--sys/kern/vfs_mount.c14
-rw-r--r--sys/sys/systm.h1
2 files changed, 15 insertions, 0 deletions
diff --git a/sys/kern/vfs_mount.c b/sys/kern/vfs_mount.c
index cb556a2..b7dec78 100644
--- a/sys/kern/vfs_mount.c
+++ b/sys/kern/vfs_mount.c
@@ -1383,6 +1383,20 @@ root_mount_done(void)
mtx_unlock(&mountlist_mtx);
}
+ /*
+ * Return true if root is already mounted.
+ */
+int
+root_mounted(void)
+{
+ int mounted;
+
+ mtx_lock(&mountlist_mtx);
+ mounted = root_mount_complete;
+ mtx_unlock(&mountlist_mtx);
+ return (mounted);
+}
+
/*
* Wait until root is mounted.
*/
diff --git a/sys/sys/systm.h b/sys/sys/systm.h
index 673619e..817982c 100644
--- a/sys/sys/systm.h
+++ b/sys/sys/systm.h
@@ -340,6 +340,7 @@ struct root_hold_token;
struct root_hold_token *root_mount_hold(const char *identifier);
void root_mount_rel(struct root_hold_token *h);
void root_mount_wait(void);
+int root_mounted(void);
/*
OpenPOWER on IntegriCloud