--- old/usr/src/cmd/svc/milestone/global.xml	Thu Dec 12 07:43:36 2019
+++ new/usr/src/cmd/svc/milestone/global.xml	Thu Dec 12 07:43:36 2019
@@ -3,6 +3,7 @@
 <!--
  Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
  Copyright 2016 Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>
+ Copyright 2019 Joyent, Inc.
 
  CDDL HEADER START
 
@@ -102,7 +103,7 @@
 			    required='false'>
 				<description>
 					<loctext xml:lang='C'>
-Only one instance of this service may be run.  This property is currently unenforced, but will be at some point in the future.
+Only one instance of this service may be run.  This behavior is unimplemented, and obsolete.
 					</loctext>
 				</description>
 				<cardinality min='1' max='1'/>
--- old/usr/src/cmd/svc/milestone/network-physical.xml	Thu Dec 12 07:43:36 2019
+++ new/usr/src/cmd/svc/milestone/network-physical.xml	Thu Dec 12 07:43:37 2019
@@ -4,6 +4,8 @@
  Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
  Use is subject to license terms.
 
+ Copyright 2019 Joyent, Inc.
+
  CDDL HEADER START
 
  The contents of this file are subject to the terms of the
@@ -50,8 +52,7 @@
 	<!--
 		physical:default and physical:nwam are mutually exclusive.
 		Use a one-way dependency for now since two-way exclude_all
-		does not work; enforcement of single_instance in the future
-		will fix this.
+		does not work.
 	-->
 	<dependency
 		name='physical_nwam'
--- old/usr/src/cmd/svc/svccfg/svccfg_libscf.c	Thu Dec 12 07:43:37 2019
+++ new/usr/src/cmd/svc/svccfg/svccfg_libscf.c	Thu Dec 12 07:43:37 2019
@@ -21,7 +21,7 @@
 
 /*
  * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2015 Joyent, Inc.
+ * Copyright 2019 Joyent, Inc.
  * Copyright 2012 Milan Jurik. All rights reserved.
  * Copyright 2017 RackTop Systems.
  * Copyright 2018 OmniOS Community Edition (OmniOSce) Association.
@@ -9743,6 +9743,10 @@
 			scfdie();
 
 		if (strcmp(exp_str, SCF_PROPERTY_SINGLE_INSTANCE) == 0) {
+			/*
+			 * Unimplemented and obsolete, but we still process it
+			 * for compatibility purposes.
+			 */
 			if (prop_check_type(exp_prop, SCF_TYPE_BOOLEAN) == 0 &&
 			    prop_get_val(exp_prop, exp_val) == 0) {
 				uint8_t b;
--- old/usr/src/cmd/svc/svccfg/svccfg_xml.c	Thu Dec 12 07:43:38 2019
+++ new/usr/src/cmd/svc/svccfg/svccfg_xml.c	Thu Dec 12 07:43:38 2019
@@ -23,6 +23,7 @@
  */
 /*
  * Copyright 2011 Nexenta Systems, Inc.  All rights reserved.
+ * Copyright 2019 Joyent, Inc.
  */
 
 
@@ -3317,9 +3318,12 @@
 	return (0);
 }
 
-/* ARGSUSED1 */
+/*
+ * Unimplemented and obsolete, but we still process it for compatibility
+ * purposes.
+ */
 static int
-lxml_get_single_instance(entity_t *entity, xmlNodePtr si)
+lxml_get_single_instance(entity_t *entity, xmlNodePtr si __unused)
 {
 	pgroup_t *pg;
 	property_t *p;
--- old/usr/src/man/man1/svcprop.1	Thu Dec 12 07:43:39 2019
+++ new/usr/src/man/man1/svcprop.1	Thu Dec 12 07:43:39 2019
@@ -1,13 +1,13 @@
 '\" te
 .\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
+.\" Copyright 2019 Joyent, Inc.
 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SVCPROP 1 "April 9, 2016"
+.TH SVCPROP 1 "Dec 11, 2019"
 .SH NAME
 svcprop \- retrieve values of service configuration properties
 .SH SYNOPSIS
-.LP
 .nf
 \fBsvcprop\fR [\fB-fqtv\fR] [\fB-C\fR | \fB-c\fR | \fB-s\fR \fIsnapshot\fR]
      [\fB-z\fR \fIzone\fR] [\fB-p\fR [\fIname\fR/]\fIname\fR]...
@@ -20,7 +20,6 @@
 .fi
 
 .SH DESCRIPTION
-.LP
 The \fBsvcprop\fR utility prints values of properties in the service
 configuration repository. Properties are selected by \fB-p\fR options and the
 operands.
@@ -35,7 +34,6 @@
 property composition. If the \fBrunning\fR snapshot does not exist then the
 instance's directly attached properties are used instead.
 .SS "Output Format"
-.LP
 By default, when a single property is selected, the values for each are printed
 on separate lines. Empty \fBASCII\fR string values are represented by a pair of
 double quotes (\fB""\fR). Bourne shell metacharacters ('\fB;\fR', '\fB&\fR\&',
@@ -62,7 +60,6 @@
 .LP
 Error messages are printed to the standard error stream.
 .SH OPTIONS
-.LP
 The following options are supported:
 .sp
 .ne 2
@@ -174,7 +171,6 @@
 This option is only applicable from the global zone, see \fBzones\fR(5).
 
 .SH OPERANDS
-.LP
 The following operands are supported:
 .sp
 .ne 2
@@ -236,7 +232,6 @@
 .RE
 
 .SH EXAMPLES
-.LP
 \fBExample 1 \fRDisplaying the Value of a Single Property
 .sp
 .LP
@@ -284,7 +279,6 @@
 general/package astring SUNWntpr
 general/enabled boolean true
 general/entity_stability astring Unstable
-general/single_instance boolean true
 .fi
 .in -2
 .sp
@@ -367,7 +361,6 @@
 .sp
 
 .SH EXIT STATUS
-.LP
 The following exit values are returned:
 .sp
 .ne 2
@@ -397,7 +390,6 @@
 .RE
 
 .SH SEE ALSO
-.LP
 \fBsvcs\fR(1), \fBinetd\fR(1M), \fBsvcadm\fR(1M), \fBsvccfg\fR(1M),
 \fBsvc.startd\fR(1M), \fBservice_bundle\fR(4), \fBattributes\fR(5),
 \fBfnmatch\fR(5), \fBsmf\fR(5), \fBsmf_method\fR(5), \fBsmf_security\fR(5),
--- old/usr/src/man/man1m/svc.startd.1m	Thu Dec 12 07:43:39 2019
+++ new/usr/src/man/man1m/svc.startd.1m	Thu Dec 12 07:43:39 2019
@@ -1,14 +1,13 @@
 '\" te
 .\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
-.\" Copyright 2012, Joyent, Inc. All Rights Reserved.
+.\" Copyright 2019 Joyent, Inc.
 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SVC.STARTD 1M "Mar 18, 2011"
+.TH SVC.STARTD 1M "Dec 11, 2019"
 .SH NAME
 svc.startd \- Service Management Facility master restarter
 .SH SYNOPSIS
-.LP
 .nf
 \fB/lib/svc/bin/svc.startd\fR
 .fi
@@ -19,8 +18,6 @@
 .fi
 
 .SH DESCRIPTION
-.sp
-.LP
 \fBsvc.startd\fR is the master restarter daemon for Service Management Facility
 (SMF) and the default restarter for all services. \fBsvc.startd\fR starts,
 stops, and restarts services based on administrative requests, system failures,
@@ -44,8 +41,6 @@
 Configuration Facility. \fBsvcadm\fR(1M) allows manipulation of service
 instances with respect to the service's restarter.
 .SS "Environment Variables"
-.sp
-.LP
 Environment variables with the "SMF_" prefix are reserved and may be
 overwritten.
 .sp
@@ -59,8 +54,6 @@
 Duplicate entries are reduced to a single entry. The value used is undefined.
 Environment entries that are not prefixed with "<\fIname\fR>=" are ignored.
 .SS "Restarter Options"
-.sp
-.LP
 \fBsvc.startd\fR is not configured by command line options. Instead,
 configuration is read from the service configuration repository. You can use
 \fBsvccfg\fR(1M) to set all options and properties.
@@ -159,13 +152,9 @@
 Configuration errors, such as disabling \fBsvc.startd\fR are logged by
 \fBsyslog\fR, but ignored.
 .SS "SERVICE STATES"
-.sp
-.LP
 Services managed by \fBsvc.startd\fR can appear in any of the states described
 in \fBsmf\fR(5). The state definitions are unmodified by this restarter.
 .SS "SERVICE REPORTING"
-.sp
-.LP
 In addition to any logging done by the managed service, \fBsvc.startd\fR
 provides a common set of service reporting and logging mechanisms.
 .sp
@@ -249,8 +238,6 @@
 of logging to system global locations like \fB/var/svc/log/svc.startd.log\fR
 and \fBsyslog\fR is controlled by the \fBoptions/logging\fR property.
 .SS "SERVICE DEFINITION"
-.sp
-.LP
 When developing or configuring a service managed by \fBsvc.startd\fR, a common
 set of properties are used to affect the interaction between the service
 instance and the restarter.
@@ -351,8 +338,10 @@
 .ad
 .sp .6
 .RS 4n
-If \fBsingle_instance\fR is set to true, \fBsvc.startd\fR only allows one
-instance of this service to transition to online or degraded at any time.
+This was originally supposed to ensure that only one service instance could be
+in online or degraded state at once; however, it was never implemented, and is
+often incorrectly specified in multi-instance manifests. As such, it should be
+considered obsolete and not specified in new manifests.
 .RE
 
 .sp
@@ -426,8 +415,6 @@
 .RE
 
 .SS "SERVICE FAILURE"
-.sp
-.LP
 \fBsvc.startd\fR assumes that a method has failed if it returns a non-zero exit
 code or if fails to complete before the timeout specified expires. If
 \fB$SMF_EXIT_ERR_CONFIG\fR or \fB$SMF_EXIT_ERR_FATAL\fR is returned,
@@ -492,8 +479,6 @@
 exiting with an error that exceeds the default rate (5 failures/second) will be
 throttled back so that the service only restarts once per second.
 .SS "LEGACY SERVICES"
-.sp
-.LP
 \fBsvc.startd\fR continues to provide support for services invoked during the
 startup run level transitions. Each \fB/etc/rc?.d\fR directory is processed
 after all managed services which constitute the equivalent run level milestone
@@ -542,7 +527,6 @@
 dependencies of other services. The initial start time of the legacy service is
 captured as a convenience for the administrator.
 .SH FILES
-.sp
 .ne 2
 .na
 \fB\fB/var/svc/log\fR\fR
@@ -562,7 +546,6 @@
 .RE
 
 .SH EXAMPLE
-.LP
 \fBExample 1 \fRTurning on Verbose Logging
 .sp
 .LP
@@ -585,8 +568,6 @@
 This request will take effect on the next restart of \fBsvc.startd\fR.
 
 .SH SEE ALSO
-.sp
-.LP
 \fBsvcs\fR(1), \fBsvcprop\fR(1), \fBkernel\fR(1M), \fBinit\fR(1M),
 \fBsvcadm\fR(1M), \fBsvccfg\fR(1M), \fBsvc.configd\fR(1M), \fBsetsid\fR(2),
 \fBsyslog\fR(3C), \fBlibscf\fR(3LIB), \fBscf_value_is_type\fR(3SCF),
--- old/usr/src/man/man5/smf_restarter.5	Thu Dec 12 07:43:39 2019
+++ new/usr/src/man/man5/smf_restarter.5	Thu Dec 12 07:43:39 2019
@@ -1,14 +1,13 @@
 '\" te
 .\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
+.\" Copyright 2019 Joyent, Inc.
 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
-.TH SMF_RESTARTER 5 "May 23, 2008"
+.TH SMF_RESTARTER 5 "Dec 11, 2019"
 .SH NAME
 smf_restarter \- service management facility conventions for restarters
 .SH DESCRIPTION
-.sp
-.LP
 All service instances in the service management facility must be managed by a
 restarter. This manual page describes configuration, functionality, and
 reporting characteristics that are common to all restarters in the framework.
@@ -21,8 +20,6 @@
 property groups to communicate the current disposition of a service with
 display tools such as \fBsvcs\fR(1).
 .SS "Service Configuration"
-.sp
-.LP
 The common restarter configuration for all services is captured in the
 \fBgeneral\fR property group. This group includes the following required and
 optional property settings.
@@ -54,12 +51,11 @@
 .ad
 .RS 19n
 This is an optional property. When set, only one instance of the service is
-allowed to transition to an online or degraded status at any time.
+allowed to transition to an online or degraded status at any time. Note that no
+known implementation honours this setting, and it should be considered obsolete.
 .RE
 
 .SS "Service Reporting"
-.sp
-.LP
 All restarters report status using the \fBrestarter\fR property group, which
 includes the following properties:
 .sp
@@ -106,7 +102,5 @@
 .RE
 
 .SH SEE ALSO
-.sp
-.LP
 \fBsvcs\fR(1), \fBsvc.startd\fR(1M), \fBservice_bundle\fR(4), \fBsmf\fR(5),
 \fBsmf_method\fR(5)
