From sommerfeld@sun.com Tue Jun 12 11:35:04 2007
Received: from sunmail5.uk.sun.com (sunmail5.UK.Sun.COM [129.156.85.165])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l5CIZ3gd012489
	for <psarc-ext@sac.sfbay.sun.com>; Tue, 12 Jun 2007 11:35:03 -0700 (PDT)
Received: from brm-avmta-1.central.sun.com (brm-avmta-1.Central.Sun.COM [129.147.4.11])
	by sunmail5.uk.sun.com (8.13.7+Sun/8.13.7/ENSMAIL,v2.2) with ESMTP id l5CIXONP017360;
	Tue, 12 Jun 2007 19:33:32 +0100 (BST)
Received: from pmxchannel-daemon.brm-avmta-1.central.sun.com by
 brm-avmta-1.central.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JJJ00B09CVUNC00@brm-avmta-1.central.sun.com>; Tue,
 12 Jun 2007 12:33:30 -0600 (MDT)
Received: from eastmail4bur.east.Sun.COM ([129.148.13.1])
 by brm-avmta-1.central.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JJJ00BRXCVT0M00@brm-avmta-1.central.sun.com>; Tue,
 12 Jun 2007 12:33:30 -0600 (MDT)
Received: from thunk.east.sun.com (thunk.East.Sun.COM [129.148.174.66])
	by eastmail4bur.east.Sun.COM (8.13.6+Sun/8.13.6/ENSMAIL,v2.2)
 with ESMTP id l5CIXTE9018304; Tue, 12 Jun 2007 14:33:29 -0400 (EDT)
Received: from [IPv6:::1] (localhost [IPv6:::1])
	by thunk.east.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l5CIXTtE004521; Tue,
 12 Jun 2007 14:33:29 -0400 (EDT)
Date: Tue, 12 Jun 2007 14:33:28 -0400
From: Bill Sommerfeld <sommerfeld@sun.com>
Subject: Re: Enhanced ZFS Pool Properties [PSARC/2007/342 FastTrack timeout
	06/20/2007]
In-reply-to: <200706121809.l5CI9NOL027714@zion.eng.sun.com>
To: Matthew Ahrens <ahrens@zion.eng.sun.com>
Cc: PSARC-ext@sun.com, zfs-eng@sun.com
Message-id: <1181673208.3743.31.camel@thunk>
MIME-version: 1.0
X-Mailer: Evolution 2.8.1.1
Content-type: text/plain
Content-transfer-encoding: 7BIT
X-PMX-Version: 5.2.0.264296
References: <200706121809.l5CI9NOL027714@zion.eng.sun.com>
Status: RO
Content-Length: 1088

On Tue, 2007-06-12 at 11:09 -0700, Matthew Ahrens wrote:
> The 'altroot' field of 'zpool list' will be broken into two distinct
> properties.  The first is 'temporary', which indicates that the pool is
> not persistent and should not be re-opened on reboot.  In implementation
> terms, the pool is not kept in /etc/zfs/zpool.cache.  The second
> property is 'altroot', which is prepended to the mountpoint of all
> datasets.  The existing 'zpool create -R' and 'zpool import -R' will
> retain the same behavior, but correspond to setting both 'temporary=on'
> and 'alroot=<path>'.  This separation is useful in clustering and other
> custom scenarios where more control is needed over the way pools are
> imported, without conflating the need for an alternate root.  These
> properties can be set at create or import time but are otherwise
> readonly.

am I correct in assuming that this would permit full operation of ZFS
(in some "custom scenarios" -- clearly startup scripts would need a
workover) without ever needing /etc/zfs/zpool.cache to exist or be
writeable?

				- Bill








From sacadmin Tue Jun 12 11:42:35 2007
Received: from sfbaymail1sca.SFBay.Sun.COM (sfbaymail1sca.SFBay.Sun.COM [129.145.154.35])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l5CIgZcM012595
	for <psarc-record@sac.sfbay.sun.com>; Tue, 12 Jun 2007 11:42:35 -0700 (PDT)
Received: from sca-es-mail-1.sun.com (sca-es-mail-1.Sun.COM [192.18.43.132])
	by sfbaymail1sca.SFBay.Sun.COM (8.13.6+Sun/8.13.6/ENSMAIL,v2.2) with ESMTP id l5CIf20n024427
	for <psarc-record@sac.sfbay.sun.com>; Tue, 12 Jun 2007 11:41:02 -0700 (PDT)
Received: from fe-sfbay-10.sun.com ([192.18.43.129])
	by sca-es-mail-1.sun.com (8.13.7+Sun/8.12.9) with ESMTP id l5CIevdc021461
	for <psarc-record@sac.sfbay.sun.com>; Tue, 12 Jun 2007 11:40:57 -0700 (PDT)
Received: from conversion-daemon.fe-sfbay-10.sun.com by fe-sfbay-10.sun.com
 (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
 id <0JJJ00G01D6XFM00@fe-sfbay-10.sun.com>
 (original mail from John.Plocher@Sun.COM) for psarc-record@sac.sfbay.sun.com;
 Tue, 12 Jun 2007 11:40:57 -0700 (PDT)
Received: from [129.146.58.87] by fe-sfbay-10.sun.com
 (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
 with ESMTPSA id <0JJJ00FOND89RO90@fe-sfbay-10.sun.com> for
 psarc-record@sac.sfbay.sun.com; Tue, 12 Jun 2007 11:40:57 -0700 (PDT)
Date: Tue, 12 Jun 2007 11:40:45 -0700
From: John Plocher <John.Plocher@Sun.COM>
Subject: [Fwd: Enhanced ZFS Pool Properties [PSARC/2007/342 FastTrack timeout
 06/20/2007]]
Sender: John.Plocher@Sun.COM
To: psarc-record@sac.sfbay.sun.com
Message-id: <466EE8AD.2040604@Sun.Com>
MIME-version: 1.0
Content-type: text/plain; format=flowed; charset=ISO-8859-1
Content-transfer-encoding: 7BIT
User-Agent: Thunderbird 1.5.0.12 (Macintosh/20070509)
Status: RO
Content-Length: 14127



-------- Original Message --------
Subject: Enhanced ZFS Pool Properties [PSARC/2007/342 FastTrack timeout 06/20/2007]
Date: Tue, 12 Jun 2007 11:09:23 -0700 (PDT)
From: Matthew Ahrens <ahrens@zion.eng.sun.com>
To: PSARC-EXT@sun.com
CC: zfs-eng@sun.com


Template Version: @(#)sac_nextcase 1.61 05/24/07 SMI
This information is Copyright 2007 Sun Microsystems
1. Introduction
     1.1. Project/Component Working Name:
	 Enhanced ZFS Pool Properties
     1.2. Name of Document Author/Supplier:
	 Author:  Eric Schrock
     1.3  Date of This Document:
	12 June, 2007
4. Technical Description
This case clarifies and expands the functionality of ZFS pool
properties.  The stability of the options is committed, and the release
binding is patch/micro.

1. INTRODUCTION

As part of PSARC 2006/577, the concept of 'pool properties' was created.
This was implemented with 2007/083 to allow the 'bootfs' property to be
set via 'zpool set' and the value retrieved via 'zpool get'.  A second
property will be introduced as part of PSARC 2006/465 to control
delegated administration.  The original proposal was amended as part of
PSARC 2007/228 to allow properties to be set generically on import using
'zpool import -p'.

The current property interfaces are limited in several ways when
compared with their zfs(1M) equivalents:

	- There is no 'zpool list -o' option corresponding to these
	  properties.  Only the existing static properties (name, used,
	  available, capacity, health) can be specified with this
	  option.

	- The existing static properties are not represented as
	  pool properties, and cannot be retrieved through 'zpool get'.

	- There is no 'zpool create -o' option to set properties at
	  creation time.

	- The 'altroot' field is really a combination of two distinct
	  properties: temporary (do not auto-import on reboot) and
	  altroot (prepend the path to all mountpoints).

	- There are several properties that should exist but currently
	  do not, including 'version', and 'guid'.

This case fixes these deficiencies and clarifies the use of properties
when dealing with ZFS pools.

2. DETAILS

All existing static properties described in 'zpool list -o' (name, size,
used, available, capacity, and health) will be documented as 'readonly
properties'.  These properties can be retrieved with 'zpool get' or
'zpool list -o' but not set through 'zpool set'.

A new option, '-o', will be added to 'zpool create' to allow properties
to be set at create-time.  Only writable properties can be set at create
time.

The 'altroot' field of 'zpool list' will be broken into two distinct
properties.  The first is 'temporary', which indicates that the pool is
not persistent and should not be re-opened on reboot.  In implementation
terms, the pool is not kept in /etc/zfs/zpool.cache.  The second
property is 'altroot', which is prepended to the mountpoint of all
datasets.  The existing 'zpool create -R' and 'zpool import -R' will
retain the same behavior, but correspond to setting both 'temporary=on'
and 'alroot=<path>'.  This separation is useful in clustering and other
custom scenarios where more control is needed over the way pools are
imported, without conflating the need for an alternate root.  These
properties can be set at create or import time but are otherwise
readonly.

Two new properties, 'version' and 'guid', will be introduced.  The
'version' property can be set at creation time and increased via 'zpool
set', but never decresed.  This allows for testing of older pool
versions and also creating pools on newer systems that can be used on
older systems.  The existing 'zpool upgrade' will continue to exist, as
it also provides mechanisms for listing pool versions, as well as
updating to the current version (whatever that may be).  The 'guid'
property is readonly and will return the GUID for a pool.  This number
is reported in 'zpool import' when listing available pools to import but
is currently unavailable for active pools.

3. FUTURE WORK

Future work could make some of these properties more dynamic.  Examples
include changing the 'temporary' or 'altroot' property, as well as
allowing the guid to be specified on import to avoid conflicts.  Support
could also be added for arbitrary user properties as with zfs(1M).
Another possibility is to allow pools to be renamed via 'zpool set name'.

These extensions are left as future work since there is little current
demand and the implementation is non-trivial.

4. EXAMPLES

	# zpool create -o version=3 oldpool c0t0d0
	# zpool get version oldpool
	3
	# zpool export oldpool
	# zpool import -o temporary=on oldpool
	# zpool create newpool c0t1d0
	# zpool list -o name,version
	newpool  6
	oldpool  3

5. MANPAGE CHANGES

Note that the current manpages do not include the 'zpool get' and
'zpool set' commands (bug 6539452), nor are the changes for
PSARC 2007/228 included here.

--- zpool.1m	Mon Jun  4 17:13:18 2007
+++ zpool.new	Mon Jun  4 19:07:49 2007
@@ -9,19 +9,20 @@
       zpool - configures	ZFS storage pools

  SYNOPSIS
       zpool [-?]

-     zpool create [-fn]	[-R root] [-m mountpoint] pool vdev ...
+     zpool create [-fn]	[-R root] [-m mountpoint] [-o property=value]
+     pool vdev ...

       zpool destroy [-f]	pool

       zpool add [-fn] pool vdev

       zpool remove pool vdev

-     zpool list	[-H] [-o field[,field]*] [pool]	...
+     zpool list	[-H] [-o property[,property]*] [pool]	...

       zpool iostat [-v] [pool] ... [interval [count]]

       zpool status [-xv]	[pool] ...

@@ -52,10 +53,14 @@

       zpool upgrade -v

       zpool upgrade [-a | pool]

+     zpool get <all | property[,property]...> [pool] ...
+
+     zpool set <property=value> <pool>
+
  DESCRIPTION
       The zpool command configures ZFS storage  pools.  A  storage
       pool  is  a  collection  of  devices  that	provides physical


@@ -244,22 +249,12 @@
       ing  the  hot  spare.  If	the  original  faulted	device is
       detached, then the	hot spare assumes its place in the confi-
       guration,	and  is	removed	from the spare list of all active
       pools.

-  Alternate Root Pools
-     The "zpool	create -R" and "zpool import -R"  commands  allow
-     users  to	create	and  import  a pool with a different root
-     path. By default, whenever	a pool is created or imported  on
-     a	system,	 it  is	permanently added so that it is	available
-     whenever the system boots.	For removable media, or	 when  in
-     recovery  situations,  this  may not always be desirable. An
-     alternate root pool does not persist on the system. Instead,
-     it	 exists	only until exported or the system is rebooted, at


-
  SunOS 5.10	     Last change: 6 Jun	2006			4




@@ -267,21 +262,75 @@

  System Administration Commands				zpool(1M)



-     which point it will have to be imported again.
+  Properties
+     Each pool has several properties associated with it.  Some
+     properties are read-only statistics while others are
+     configurable and change the behavior of the pool.  The
+     following are read-only properties:

-     In	addition, all mount points in the pool are prefixed  with
-     the given root, so	a pool can be constrained to a particular
-     area of the file system. This is most useful when	importing
-     unknown  pools  from removable media, as the mount	points of
-     any file systems cannot be	trusted.
+     name	Name of the storage pool.

-     When creating an alternate	 root  pool,  the  default  mount
-     point is "/", rather than the normal default "/pool".
+     size	Total size of the storage pool.

+     used	Amount of storage used within the pool.
+
+     available	Amount of storage available within the pool.
+
+     capacity	Capacity of storage pool expressed as a percentage.
+
+     health	The current health of the pool, either 'ONLINE',
+		'DEGRADED', or 'FAULTED'.
+
+     guid	A unique identifier for the pool.
+
+     This space usage properties report actual physical space
+     available  to the storage  pool.  The physical space can be
+     different from the  total  amount  of  space  that  any
+     contained datasets can actually use. The	amount of space
+     used in a raidz configuration depends on the  characteristics
+     of the  data  being written. In addition,	ZFS reserves some
+     space for internal accounting that the	 zfs(1M)  command
+     takes into account, but the zpool command does	not.  For
+     non-full pools	 of  a	reasonable  size,  these  effects
+     should	 be invisible. For small pools,	or pools that are
+     close to being	completely full, these discrepancies  may
+     become	more noticeable.
+
+     The following properties can be set at creation time but not
+     modified:
+
+     temporary	By default, all pools are persistent, and will
+		automatically be opened when the system is
+		rebooted.  Setting this boolean property to
+		'on' will cause the pool to exist only while
+		the system is up.  If the system is rebooted,
+		the pool will have to be manually imported via
+		'zpool import'.  This is often useful when
+		using pools on removable media, where the
+		devices may not be present when the system
+		reboots.
+
+     altroot	Alternate root directory.  If set, then this
+		directory is prepended to any mountpoints within
+		the pool.  This can be used when examining an
+		unknown pool where the mountpoints cannot be
+		trusted, or in an alternate boot environment
+		where the typical paths are not valid.
+
+     The following properties can be set be set at creation time
+     and later changed via 'zpool set':
+
+     version	The current on-disk version of the pool.  This
+		can be increased, but never decreased.  The
+		preferred method of updating pools is via
+		'zpool upgrade', though this can be used when
+		a specific version is needed for backwards
+		compatibility.  This property can be any number
+		between 1 and the current version reported by
+		'zpool upgrade -v'.  The special value 'current'
+		is an alias for the latest supported version.
+
    Subcommands
       The zpool command provides	subcommands to create and destroy
       storage  pools,  add  capacity to storage pools, and provide
       information about the storage pools. The  following  subcom-
       mands are supported:
@@ -353,20 +402,22 @@
  	     without  actually creating	the pool. The actual pool
  	     creation  can  still  fail	  due	to   insufficient
  	     privileges	or device sharing.


+	 -o property=value[,property=value]

-	 -R root
+	    Sets the given pool properties.  See the 'Properties'
+	    section for a list of valid properties that can be
+	    set.

-	     Creates the pool with an  alternate  root.	 See  the
-	     "Alternate	Root Pools" section. The root dataset has
-	     its mount point set to "/"	as part	 of  this  opera-
-	     tion.

+	 -R root

+	     Equivalent to '-o temporary=on,altroot=<root>'.

+
  	 -m mountpoint

  	     Sets the mount  point  for	 the  root  dataset.  The
  	     default mount point is "/pool". The mount point must
  	     be	an absolute path, "legacy", or "none".	For  more
@@ -445,19 +496,17 @@
  		  arbitrary space.




-	 -o field Comma-separated list of fields to display. Each
-		  field	must be	one of:
+	 -o props Comma-separated list of properties to display.
+		  See the 'Properties' section for a list of
+		  valid properties.  The default list is
+		  'name,size,used,available,capacity,health,altroot'


-		  name		  Pool name
-		  size		  Total	size

-
-
  SunOS 5.10	     Last change: 6 Jun	2006			7




@@ -465,33 +514,10 @@

  System Administration Commands				zpool(1M)



-		  used		  Amount of space used
-		  available	  Amount of space available
-		  capacity	  Percentage of	pool space used
-		  health	  Health status
-
-		  The default is all fields.
-
-
-
-	 This command reports actual physical space available  to
-	 the  storage  pool.  The physical space can be	different
-	 from the  total  amount  of  space  that  any	contained
-	 datasets can actually use. The	amount of space	used in	a
-	 raidz configuration depends on	 the  characteristics  of
-	 the  data  being written. In addition,	ZFS reserves some
-	 space for internal accounting that the	 zfs(1M)  command
-	 takes into account, but the zpool command does	not.  For
-	 non-full pools	 of  a	reasonable  size,  these  effects
-	 should	 be invisible. For small pools,	or pools that are
-	 close to being	completely full, these discrepancies  may
-	 become	more noticeable.
-
-
       zpool iostat [-v] [pool] ... [interval [count]]

  	 Displays I/O statistics for the given pools. When  given
  	 an  interval,	the statistics are printed every interval
  	 seconds until Ctrl-C is pressed. If no	pools are  speci-
@@ -802,12 +828,12 @@
  		  zfs(1M) for a	description of dataset properties
  		  and mount options.



-	 -R root  Imports pool(s) with an alternate root. See the
-		  "Alternate Root Pools" section.
+	 -R root  Sets the 'temporary' property to 'on' and the
+		  'altroot' property to '<root>'.


@@ -877,12 +903,35 @@
  	 on systems running older versions of the software.

  	 -a	  Upgrades all pools.


+     zpool get <all | property[,property]*> <pool> ...

+	 Retrieves the given list of properties (or all properties
+	 if 'all' is used) for the specified storage pool(s).  These
+	 properties are displayed with the following fields:

+	 name	  Name of storage pool.
+
+	 property Property name
+
+	 value    Property value
+
+	 source	  Property source, either 'default' or 'local'.
+
+	 See the 'Properties' section for more information on the
+	 available pool properties.
+
+
+     zpool set property=value <pool>
+
+	 Sets the given property on the specified pool.  See the
+	 'Properties' section for a list of properties that can
+	 be changed once the pool has been created.
+
+

  EXAMPLES
       Example 1:	Creating a RAID-Z Storage Pool

       The following command creates a pool  with	 a  single  raidz

6. Resources and Schedule
     6.4. Steering Committee requested information
    	6.4.1. Consolidation C-team Name:
		ON
     6.5. ARC review type: FastTrack

From eschrock@zion.eng.sun.com Tue Jun 12 12:07:46 2007
Received: from sunmail5.uk.sun.com (sunmail5.UK.Sun.COM [129.156.85.165])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l5CJ7jeY013387
	for <psarc-ext@sac.sfbay.sun.com>; Tue, 12 Jun 2007 12:07:46 -0700 (PDT)
Received: from nwk-avmta-2.sfbay.sun.com (nwk-avmta-2.SFBay.Sun.COM [129.145.155.6])
	by sunmail5.uk.sun.com (8.13.7+Sun/8.13.7/ENSMAIL,v2.2) with ESMTP id l5CJ63le028441;
	Tue, 12 Jun 2007 20:06:14 +0100 (BST)
Received: from pmxchannel-daemon.nwk-avmta-2.sfbay.sun.com by
 nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JJJ00D0PEECCL00@nwk-avmta-2.sfbay.sun.com>; Tue,
 12 Jun 2007 12:06:12 -0700 (PDT)
Received: from engmail3mpk.sfbay.Sun.COM ([129.146.11.26])
 by nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JJJ00AVWEECGH20@nwk-avmta-2.sfbay.sun.com>; Tue,
 12 Jun 2007 12:06:12 -0700 (PDT)
Received: from zion.eng.sun.com (zion.SFBay.Sun.COM [129.146.17.75])
	by engmail3mpk.sfbay.Sun.COM (8.13.6+Sun/8.13.6/ENSMAIL,v2.2)
 with ESMTP id l5CJ6CWK010492; Tue, 12 Jun 2007 12:06:12 -0700 (PDT)
Received: from zion.eng.sun.com (localhost [127.0.0.1])
	by zion.eng.sun.com (8.13.7+Sun/8.13.7) with ESMTP id l5CJ6Amn000503; Tue,
 12 Jun 2007 12:06:10 -0700 (PDT)
Received: (from eschrock@localhost)
	by zion.eng.sun.com (8.13.7+Sun/8.13.7/Submit) id l5CJ6AHw000502; Tue,
 12 Jun 2007 12:06:10 -0700 (PDT)
Date: Tue, 12 Jun 2007 12:06:10 -0700
From: Eric Schrock <eric.schrock@sun.com>
Subject: Re: Enhanced ZFS Pool Properties [PSARC/2007/342 FastTrack timeout
 06/20/2007]
In-reply-to: <1181673208.3743.31.camel@thunk>
To: Bill Sommerfeld <sommerfeld@sun.com>
Cc: Matthew Ahrens <ahrens@zion.eng.sun.com>, PSARC-ext@sun.com,
        zfs-eng@sun.com
Message-id: <20070612190610.GH25777@eng.sun.com>
MIME-version: 1.0
Content-type: text/plain; charset=us-ascii
Content-transfer-encoding: 7BIT
Content-disposition: inline
X-PMX-Version: 5.2.0.264296
References: <200706121809.l5CI9NOL027714@zion.eng.sun.com>
 <1181673208.3743.31.camel@thunk>
User-Agent: Mutt/1.4.2.1i
Status: RO
Content-Length: 1282

On Tue, Jun 12, 2007 at 02:33:28PM -0400, Bill Sommerfeld wrote:
> 
> am I correct in assuming that this would permit full operation of ZFS
> (in some "custom scenarios" -- clearly startup scripts would need a
> workover) without ever needing /etc/zfs/zpool.cache to exist or be
> writeable?
> 

Almost, but not quite.  With this change, it is possible for arbitrary
consumers to maintain their own copies of the pool configuration (as
some for of nvlist).  This will work for simple scenarios, but for
complex configuration where asynchronous changes are made to the config
(such as replacing disks, hot spares, etc), it would be difficult for
such a consumer to remain in sync.

One of the features we have talked about is the ability to expressly set
a particular cache file location on a per-pool basis.  This would both
allow consumers to control when and how such a pool is loaded, as well
as keep the kernel state in sync with the on-disk state.  Such a feature
was not included with this proposal because there are some non-trivial
implementation issues to sort out, there is little current demand for
it, and it is a logical follow-on once this case has been approved and
integrated.

- Eric

--
Eric Schrock, Solaris Kernel Development       http://blogs.sun.com/eschrock

From glenn.skinner@sun.com Tue Jun 12 14:15:37 2007
Received: from sunmail3mpk.sfbay.sun.com (sunmail3mpk.SFBay.Sun.COM [129.146.11.52])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l5CLFb6U016519
	for <psarc-ext@sac.sfbay.sun.com>; Tue, 12 Jun 2007 14:15:37 -0700 (PDT)
Received: from nwk-avmta-2.sfbay.sun.com (nwk-avmta-2.SFBay.Sun.COM [129.145.155.6])
	by sunmail3mpk.sfbay.sun.com (8.13.7+Sun/8.13.7/ENSMAIL,v2.2) with ESMTP id l5CLE6Me012115;
	Tue, 12 Jun 2007 14:14:06 -0700 (PDT)
Received: from pmxchannel-daemon.nwk-avmta-2.sfbay.sun.com by
 nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JJJ00J0BKBI9100@nwk-avmta-2.sfbay.sun.com>; Tue,
 12 Jun 2007 14:14:06 -0700 (PDT)
Received: from sfbaymail2sca.sfbay.sun.com ([129.145.155.42])
 by nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JJJ00AWYKBIG9D0@nwk-avmta-2.sfbay.sun.com>; Tue,
 12 Jun 2007 14:14:06 -0700 (PDT)
Received: from ivrel.sfbay.sun.com (ivrel.SFBay.Sun.COM [129.146.74.76])
	by sfbaymail2sca.sfbay.sun.com (8.13.6+Sun/8.12.10/ENSMAIL,v2.2)
 with ESMTP id l5CLE6hI018118; Tue, 12 Jun 2007 14:14:06 -0700 (PDT)
Received: from ivrel (ivrel [129.146.74.76])
	by ivrel.sfbay.sun.com (8.13.8+Sun/8.13.8) with SMTP id l5CLB6aY009690; Tue,
 12 Jun 2007 14:11:06 -0700 (PDT)
Date: Tue, 12 Jun 2007 14:11:06 -0700 (PDT)
From: Glenn Skinner <glenn.skinner@sun.com>
Subject: Re: 2007/342 [Enhanced ZFS Pool Properties]
To: PSARC-EXT@sun.com, ahrens@zion.eng.sun.com
Cc: zfs-eng@sun.com
Reply-to: Glenn Skinner <glenn.skinner@sun.com>
Message-id: <200706122111.l5CLB6aY009690@ivrel.sfbay.sun.com>
MIME-version: 1.0
X-Mailer: dtmail 1.3.0 @(#)CDE Version 1.6_36 SunOS 5.11 sun4u sparc
Content-type: TEXT/plain; charset=us-ascii
Content-transfer-encoding: 7BIT
Content-MD5: N6CKN3d0ILjkV3IA35PAcA==
X-PMX-Version: 5.2.0.264296
Status: RO
Content-Length: 911

    Date: Tue, 12 Jun 2007 11:09:23 -0700 (PDT)
    From: Matthew Ahrens <ahrens@zion.eng.sun.com>
    Subject: Enhanced ZFS Pool Properties [PSARC/2007/342 FastTrack
	    timeout 06/20/2007]

    ...
    5. MANPAGE CHANGES

    Note that the current manpages do not include the 'zpool get' and
    'zpool set' commands (bug 6539452), nor are the changes for
    PSARC 2007/228 included here.

    --- zpool.1m	Mon Jun  4 17:13:18 2007
    +++ zpool.new	Mon Jun  4 19:07:49 2007
    @@ -9,19 +9,20 @@
          zpool - configures	ZFS storage pools

     SYNOPSIS
          zpool [-?]

    -     zpool create [-fn]	[-R root] [-m mountpoint] pool vdev ...
    +     zpool create [-fn]	[-R root] [-m mountpoint] [-o property=value]
    +     pool vdev ...

A small nit:  Rather than the single occurrence of -o permitted by the
revised synopsis above, you intend to allow multiple occurrences,
right?

		-- Glenn


From eschrock@zion.eng.sun.com Tue Jun 12 14:20:22 2007
Received: from sunmail2sca.sfbay.sun.com (sunmail2sca.SFBay.Sun.COM [129.145.155.234])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l5CLKMlU016655
	for <psarc-ext@sac.sfbay.sun.com>; Tue, 12 Jun 2007 14:20:22 -0700 (PDT)
Received: from brm-avmta-1.central.sun.com (brm-avmta-1.Central.Sun.COM [129.147.4.11])
	by sunmail2sca.sfbay.sun.com (8.13.7+Sun/8.13.7/ENSMAIL,v2.2) with ESMTP id l5CLIoBX023934;
	Tue, 12 Jun 2007 14:18:52 -0700 (PDT)
Received: from pmxchannel-daemon.brm-avmta-1.central.sun.com by
 brm-avmta-1.central.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JJJ00N05KJF5000@brm-avmta-1.central.sun.com>; Tue,
 12 Jun 2007 15:18:51 -0600 (MDT)
Received: from engmail3mpk.sfbay.Sun.COM ([129.146.11.26])
 by brm-avmta-1.central.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JJJ00N1QKJD3D00@brm-avmta-1.central.sun.com>; Tue,
 12 Jun 2007 15:18:50 -0600 (MDT)
Received: from zion.eng.sun.com (zion.SFBay.Sun.COM [129.146.17.75])
	by engmail3mpk.sfbay.Sun.COM (8.13.6+Sun/8.13.6/ENSMAIL,v2.2)
 with ESMTP id l5CLInkw024297; Tue, 12 Jun 2007 14:18:49 -0700 (PDT)
Received: from zion.eng.sun.com (localhost [127.0.0.1])
	by zion.eng.sun.com (8.13.7+Sun/8.13.7) with ESMTP id l5CLImNU005346; Tue,
 12 Jun 2007 14:18:48 -0700 (PDT)
Received: (from eschrock@localhost)
	by zion.eng.sun.com (8.13.7+Sun/8.13.7/Submit) id l5CLImui005343; Tue,
 12 Jun 2007 14:18:48 -0700 (PDT)
Date: Tue, 12 Jun 2007 14:18:46 -0700
From: Eric Schrock <eric.schrock@sun.com>
Subject: Re: 2007/342 [Enhanced ZFS Pool Properties]
In-reply-to: <200706122111.l5CLB6aY009690@ivrel.sfbay.sun.com>
To: Glenn Skinner <glenn.skinner@sun.com>
Cc: PSARC-EXT@sun.com, ahrens@zion.eng.sun.com, zfs-eng@sun.com
Message-id: <20070612211845.GB3654@eng.sun.com>
MIME-version: 1.0
Content-type: text/plain; charset=us-ascii
Content-transfer-encoding: 7BIT
Content-disposition: inline
X-PMX-Version: 5.2.0.264296
References: <200706122111.l5CLB6aY009690@ivrel.sfbay.sun.com>
User-Agent: Mutt/1.4.2.1i
Status: RO
Content-Length: 592

On Tue, Jun 12, 2007 at 02:11:06PM -0700, Glenn Skinner wrote:
> 
>     -     zpool create [-fn]	[-R root] [-m mountpoint] pool vdev ...
>     +     zpool create [-fn]	[-R root] [-m mountpoint] [-o property=value]
>     +     pool vdev ...
> 
> A small nit:  Rather than the single occurrence of -o permitted by the
> revised synopsis above, you intend to allow multiple occurrences,
> right?
> 

Yes, that is correct.  The syntax should match that of zfs(1M), and
allow for multiple instances of '-o'.

- Eric

--
Eric Schrock, Solaris Kernel Development       http://blogs.sun.com/eschrock

