Page MenuHomeFreeBSD

D13411.id36346.diff
No OneTemporary

D13411.id36346.diff

Index: share/man/man4/md.4
===================================================================
--- share/man/man4/md.4
+++ share/man/man4/md.4
@@ -7,7 +7,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd November 5, 2017
+.Dd December 7, 2017
.Dt MD 4
.Os
.Sh NAME
@@ -79,6 +79,7 @@
needs the following options:
.Bd -literal -offset indent
options MD_ROOT # MD is a potential root device
+options MD_ROOT_READONLY # disallow mounting root writeable
options MD_ROOT_SIZE=8192 # 8MB ram disk
makeoptions MFS_IMAGE=/h/foo/ARM-MD
options ROOTDEVNAME=\\"ufs:md0\\"
Index: sys/conf/NOTES
===================================================================
--- sys/conf/NOTES
+++ sys/conf/NOTES
@@ -1116,6 +1116,9 @@
# images of type mfs_root or md_root.
options MD_ROOT
+# Write-protect the md root device so that it may not be mounted writeable.
+options MD_ROOT_READONLY
+
# Disk quotas are supported when this option is enabled.
options QUOTA #enable disk quotas
Index: sys/conf/options
===================================================================
--- sys/conf/options
+++ sys/conf/options
@@ -165,6 +165,7 @@
MAC_TEST opt_dontuse.h
MD_ROOT opt_md.h
MD_ROOT_FSTYPE opt_md.h
+MD_ROOT_READONLY opt_md.h
MD_ROOT_SIZE opt_md.h
MFI_DEBUG opt_mfi.h
MFI_DECODE_LOG opt_mfi.h
Index: sys/dev/md/md.c
===================================================================
--- sys/dev/md/md.c
+++ sys/dev/md/md.c
@@ -1791,10 +1791,16 @@
sc->start = mdstart_preload;
if (name != NULL)
strlcpy(sc->file, name, sizeof(sc->file));
-#if defined(MD_ROOT) && !defined(ROOTDEVNAME)
- if (sc->unit == 0)
+#ifdef MD_ROOT
+ if (sc->unit == 0) {
+#ifndef ROOTDEVNAME
rootdevnames[0] = MD_ROOT_FSTYPE ":/dev/md0";
#endif
+#ifdef MD_ROOT_READONLY
+ sc->flags |= MD_READONLY;
+#endif
+ }
+#endif
mdinit(sc);
if (name != NULL) {
printf("%s%d: Preloaded image <%s> %zd bytes at %p\n",

File Metadata

Mime Type
text/plain
Expires
Mon, Apr 20, 12:23 PM (6 h, 44 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
31839026
Default Alt Text
D13411.id36346.diff (1 KB)

Event Timeline