summaryrefslogtreecommitdiff
path: root/usr/src
diff options
context:
space:
mode:
authorJerry Jelinek <jerry.jelinek@joyent.com>2017-04-25 11:53:21 +0000
committerJerry Jelinek <jerry.jelinek@joyent.com>2017-04-25 11:53:21 +0000
commitb939bed1c2e06296d423fe61f7135cbcd726d957 (patch)
tree05f05f230b4c1b44fccfd66d29fdb11f6edab751 /usr/src
parentfbc5848b477b441a7e8f5e25096c81994887cd09 (diff)
parent5f368aef86387d6ef4eda84030ae9b402313ee4c (diff)
downloadillumos-joyent-b939bed1c2e06296d423fe61f7135cbcd726d957.tar.gz
[illumos-gate merge]
commit 5f368aef86387d6ef4eda84030ae9b402313ee4c 7786 zfs`vdev_online() needs better notification about state changes commit 15f8fb316fc55565c224927c040311780c39041b 8079 temporarily disable apix module on Xen HVM platform commit 6617bbf6c820fca35b3a835635d0c5f4641cfa23 8066 loader: zfs reader vdev_probe should check for minimum device size commit 3c0982d96234beda3fbd087b8b47765d73998f64 8094 a handful of manual sections are in the wrong package
Diffstat (limited to 'usr/src')
-rw-r--r--usr/src/boot/Makefile.version2
-rw-r--r--usr/src/boot/sys/boot/zfs/zfsimpl.c11
-rw-r--r--usr/src/pkg/manifests/SUNWcs.man1m.inc2
-rw-r--r--usr/src/pkg/manifests/library-libtecla.mf24
-rw-r--r--usr/src/pkg/manifests/service-network-network-clients.mf2
-rw-r--r--usr/src/pkg/manifests/system-library-security-libsasl.mf81
-rw-r--r--usr/src/pkg/manifests/system-library.man3proc.inc25
-rw-r--r--usr/src/pkg/manifests/system-library.man3project.inc31
-rw-r--r--usr/src/pkg/manifests/system-library.man3resolv.inc43
-rw-r--r--usr/src/pkg/manifests/system-library.man3rpc.inc18
-rw-r--r--usr/src/pkg/manifests/system-library.man3sysevent.inc36
-rw-r--r--usr/src/pkg/manifests/system-library.mf9
-rw-r--r--usr/src/uts/common/fs/zfs/vdev.c14
-rw-r--r--usr/src/uts/i86pc/io/apix/apix.c9
14 files changed, 191 insertions, 116 deletions
diff --git a/usr/src/boot/Makefile.version b/usr/src/boot/Makefile.version
index 018e7e7816..2fb500a314 100644
--- a/usr/src/boot/Makefile.version
+++ b/usr/src/boot/Makefile.version
@@ -33,4 +33,4 @@ LOADER_VERSION = 1.1
# Use date like formatting here, YYYY.MM.DD.XX, without leading zeroes.
# The version is processed from left to right, the version number can only
# be increased.
-BOOT_VERSION = $(LOADER_VERSION)-2017.4.22.1
+BOOT_VERSION = $(LOADER_VERSION)-2017.4.22.2
diff --git a/usr/src/boot/sys/boot/zfs/zfsimpl.c b/usr/src/boot/sys/boot/zfs/zfsimpl.c
index c3f439855f..9257fcf2cc 100644
--- a/usr/src/boot/sys/boot/zfs/zfsimpl.c
+++ b/usr/src/boot/sys/boot/zfs/zfsimpl.c
@@ -924,7 +924,7 @@ vdev_probe(vdev_phys_read_t *phys_read, void *read_priv, spa_t **spap)
{
vdev_t vtmp;
vdev_phys_t *vdev_label = (vdev_phys_t *) zap_scratch;
- vdev_phys_t *tmp_label = zfs_alloc(sizeof(vdev_phys_t));
+ vdev_phys_t *tmp_label;
spa_t *spa;
vdev_t *vdev, *top_vdev, *pool_vdev;
off_t off;
@@ -952,6 +952,12 @@ vdev_probe(vdev_phys_read_t *phys_read, void *read_priv, spa_t **spap)
psize = P2ALIGN(ldi_get_size(read_priv),
(uint64_t)sizeof (vdev_label_t));
+ /* Test for minimum device size. */
+ if (psize < SPA_MINDEVSIZE)
+ return (EIO);
+
+ tmp_label = zfs_alloc(sizeof (vdev_phys_t));
+
for (l = 0; l < VDEV_LABELS; l++) {
off = vdev_label_offset(psize, l,
offsetof(vdev_label_t, vl_vdev_phys));
@@ -983,6 +989,9 @@ vdev_probe(vdev_phys_read_t *phys_read, void *read_priv, spa_t **spap)
zfs_free(tmp_label, sizeof (vdev_phys_t));
+ if (best_txg == 0)
+ return (EIO);
+
if (vdev_label->vp_nvlist[0] != NV_ENCODE_XDR)
return (EIO);
diff --git a/usr/src/pkg/manifests/SUNWcs.man1m.inc b/usr/src/pkg/manifests/SUNWcs.man1m.inc
index cdec1ce952..4a6af9f479 100644
--- a/usr/src/pkg/manifests/SUNWcs.man1m.inc
+++ b/usr/src/pkg/manifests/SUNWcs.man1m.inc
@@ -211,6 +211,7 @@ file path=usr/share/man/man1m/route.1m
file path=usr/share/man/man1m/routeadm.1m
file path=usr/share/man/man1m/rpcbind.1m
file path=usr/share/man/man1m/rpcinfo.1m
+file path=usr/share/man/man1m/rsh.1m
file path=usr/share/man/man1m/rtc.1m
file path=usr/share/man/man1m/sac.1m
file path=usr/share/man/man1m/sacadm.1m
@@ -281,6 +282,7 @@ link path=usr/share/man/man1m/grpck.1m target=pwck.1m
link path=usr/share/man/man1m/intro.1m target=Intro.1m
link path=usr/share/man/man1m/poweroff.1m target=halt.1m
link path=usr/share/man/man1m/quotaoff.1m target=quotaon.1m
+link path=usr/share/man/man1m/restricted_shell.1m target=rsh.1m
link path=usr/share/man/man1m/telinit.1m target=init.1m
link path=usr/share/man/man1m/umount.1m target=mount.1m
link path=usr/share/man/man1m/umountall.1m target=mountall.1m
diff --git a/usr/src/pkg/manifests/library-libtecla.mf b/usr/src/pkg/manifests/library-libtecla.mf
index 574a213317..6a5c90fa53 100644
--- a/usr/src/pkg/manifests/library-libtecla.mf
+++ b/usr/src/pkg/manifests/library-libtecla.mf
@@ -39,7 +39,6 @@ dir path=usr/lib/$(ARCH64)
dir path=usr/share/man
dir path=usr/share/man/man1
dir path=usr/share/man/man3lib
-dir path=usr/share/man/man3sysevent
dir path=usr/share/man/man3tecla
dir path=usr/share/man/man5
file path=usr/bin/enhance mode=0555
@@ -51,13 +50,6 @@ file path=usr/lib/llib-ltecla
file path=usr/lib/llib-ltecla.ln
file path=usr/share/man/man1/enhance.1
file path=usr/share/man/man3lib/libtecla.3lib
-file path=usr/share/man/man3sysevent/sysevent_bind_handle.3sysevent
-file path=usr/share/man/man3sysevent/sysevent_free.3sysevent
-file path=usr/share/man/man3sysevent/sysevent_get_attr_list.3sysevent
-file path=usr/share/man/man3sysevent/sysevent_get_class_name.3sysevent
-file path=usr/share/man/man3sysevent/sysevent_get_vendor_name.3sysevent
-file path=usr/share/man/man3sysevent/sysevent_post_event.3sysevent
-file path=usr/share/man/man3sysevent/sysevent_subscribe_event.3sysevent
file path=usr/share/man/man3tecla/cpl_complete_word.3tecla
file path=usr/share/man/man3tecla/ef_expand_file.3tecla
file path=usr/share/man/man3tecla/gl_get_line.3tecla
@@ -71,22 +63,6 @@ license usr/src/lib/libtecla/THIRDPARTYLICENSE \
license=usr/src/lib/libtecla/THIRDPARTYLICENSE
link path=usr/lib/$(ARCH64)/libtecla.so target=libtecla.so.1
link path=usr/lib/libtecla.so target=libtecla.so.1
-link path=usr/share/man/man3sysevent/sysevent_get_pid.3sysevent \
- target=sysevent_get_vendor_name.3sysevent
-link path=usr/share/man/man3sysevent/sysevent_get_pub_name.3sysevent \
- target=sysevent_get_vendor_name.3sysevent
-link path=usr/share/man/man3sysevent/sysevent_get_seq.3sysevent \
- target=sysevent_get_class_name.3sysevent
-link path=usr/share/man/man3sysevent/sysevent_get_size.3sysevent \
- target=sysevent_get_class_name.3sysevent
-link path=usr/share/man/man3sysevent/sysevent_get_subclass_name.3sysevent \
- target=sysevent_get_class_name.3sysevent
-link path=usr/share/man/man3sysevent/sysevent_get_time.3sysevent \
- target=sysevent_get_class_name.3sysevent
-link path=usr/share/man/man3sysevent/sysevent_unbind_handle.3sysevent \
- target=sysevent_bind_handle.3sysevent
-link path=usr/share/man/man3sysevent/sysevent_unsubscribe_event.3sysevent \
- target=sysevent_subscribe_event.3sysevent
link path=usr/share/man/man3tecla/cfc_file_start.3tecla \
target=cpl_complete_word.3tecla
link path=usr/share/man/man3tecla/cfc_literal_escapes.3tecla \
diff --git a/usr/src/pkg/manifests/service-network-network-clients.mf b/usr/src/pkg/manifests/service-network-network-clients.mf
index 5c63abc4e2..26b2161d4e 100644
--- a/usr/src/pkg/manifests/service-network-network-clients.mf
+++ b/usr/src/pkg/manifests/service-network-network-clients.mf
@@ -61,7 +61,6 @@ file path=usr/share/man/man1/rusers.1
file path=usr/share/man/man1/whois.1
file path=usr/share/man/man1m/rdate.1m
file path=usr/share/man/man1m/rmt.1m
-file path=usr/share/man/man1m/rsh.1m
file path=usr/share/man/man1m/rwall.1m
file path=usr/share/man/man1m/snoop.1m
file path=usr/share/man/man1m/spray.1m
@@ -84,4 +83,3 @@ link path=usr/bin/remsh target=./rsh
link path=usr/lib/sunw,rcp target=../bin/rcp
link path=usr/share/man/man1/remote_shell.1 target=rsh.1
link path=usr/share/man/man1/remsh.1 target=rsh.1
-link path=usr/share/man/man1m/restricted_shell.1m target=rsh.1m
diff --git a/usr/src/pkg/manifests/system-library-security-libsasl.mf b/usr/src/pkg/manifests/system-library-security-libsasl.mf
index 9dfb4096d6..8f2bbb5005 100644
--- a/usr/src/pkg/manifests/system-library-security-libsasl.mf
+++ b/usr/src/pkg/manifests/system-library-security-libsasl.mf
@@ -39,10 +39,6 @@ dir path=usr/lib/sasl
dir path=usr/lib/sasl/$(ARCH64)
dir path=usr/share/man
dir path=usr/share/man/man3lib
-dir path=usr/share/man/man3proc
-dir path=usr/share/man/man3project
-dir path=usr/share/man/man3resolv
-dir path=usr/share/man/man3rpc
dir path=usr/share/man/man3sasl
dir path=usr/share/man/man4
file path=usr/lib/$(ARCH64)/libsasl.so.1
@@ -56,18 +52,6 @@ file path=usr/lib/sasl/digestmd5.so.1
file path=usr/lib/sasl/login.so.1
file path=usr/lib/sasl/plain.so.1
file path=usr/share/man/man3lib/libsasl.3lib
-file path=usr/share/man/man3proc/proc_service.3proc
-file path=usr/share/man/man3proc/ps_lgetregs.3proc
-file path=usr/share/man/man3proc/ps_pglobal_lookup.3proc
-file path=usr/share/man/man3proc/ps_pread.3proc
-file path=usr/share/man/man3proc/ps_pstop.3proc
-file path=usr/share/man/man3project/getprojent.3project
-file path=usr/share/man/man3project/project_walk.3project
-file path=usr/share/man/man3project/setproject.3project
-file path=usr/share/man/man3resolv/resolver.3resolv
-file path=usr/share/man/man3rpc/rstat.3rpc
-file path=usr/share/man/man3rpc/rusers.3rpc
-file path=usr/share/man/man3rpc/rwall.3rpc
file path=usr/share/man/man3sasl/sasl_authorize_t.3sasl
file path=usr/share/man/man3sasl/sasl_auxprop.3sasl
file path=usr/share/man/man3sasl/sasl_auxprop_add_plugin.3sasl
@@ -130,71 +114,6 @@ license usr/src/lib/libsasl/THIRDPARTYLICENSE \
license=usr/src/lib/libsasl/THIRDPARTYLICENSE
link path=usr/lib/$(ARCH64)/libsasl.so target=libsasl.so.1
link path=usr/lib/libsasl.so target=libsasl.so.1
-link path=usr/share/man/man3proc/ps_kill.3proc target=ps_pstop.3proc
-link path=usr/share/man/man3proc/ps_lcontinue.3proc target=ps_pstop.3proc
-link path=usr/share/man/man3proc/ps_lgetfpregs.3proc target=ps_lgetregs.3proc
-link path=usr/share/man/man3proc/ps_lgetxregs.3proc target=ps_lgetregs.3proc
-link path=usr/share/man/man3proc/ps_lgetxregsize.3proc \
- target=ps_lgetregs.3proc
-link path=usr/share/man/man3proc/ps_lrolltoaddr.3proc target=ps_pstop.3proc
-link path=usr/share/man/man3proc/ps_lsetfpregs.3proc target=ps_lgetregs.3proc
-link path=usr/share/man/man3proc/ps_lsetregs.3proc target=ps_lgetregs.3proc
-link path=usr/share/man/man3proc/ps_lsetxregs.3proc target=ps_lgetregs.3proc
-link path=usr/share/man/man3proc/ps_lstop.3proc target=ps_pstop.3proc
-link path=usr/share/man/man3proc/ps_pcontinue.3proc target=ps_pstop.3proc
-link path=usr/share/man/man3proc/ps_pdread.3proc target=ps_pread.3proc
-link path=usr/share/man/man3proc/ps_pdwrite.3proc target=ps_pread.3proc
-link path=usr/share/man/man3proc/ps_pglobal_sym.3proc \
- target=ps_pglobal_lookup.3proc
-link path=usr/share/man/man3proc/ps_ptread.3proc target=ps_pread.3proc
-link path=usr/share/man/man3proc/ps_ptwrite.3proc target=ps_pread.3proc
-link path=usr/share/man/man3proc/ps_pwrite.3proc target=ps_pread.3proc
-link path=usr/share/man/man3project/endprojent.3project \
- target=getprojent.3project
-link path=usr/share/man/man3project/fgetprojent.3project \
- target=getprojent.3project
-link path=usr/share/man/man3project/getdefaultproj.3project \
- target=getprojent.3project
-link path=usr/share/man/man3project/getprojbyid.3project \
- target=getprojent.3project
-link path=usr/share/man/man3project/getprojbyname.3project \
- target=getprojent.3project
-link path=usr/share/man/man3project/getprojidbyname.3project \
- target=getprojent.3project
-link path=usr/share/man/man3project/inproj.3project target=getprojent.3project
-link path=usr/share/man/man3project/setprojent.3project \
- target=getprojent.3project
-link path=usr/share/man/man3resolv/dn_comp.3resolv target=resolver.3resolv
-link path=usr/share/man/man3resolv/dn_expand.3resolv target=resolver.3resolv
-link path=usr/share/man/man3resolv/fp_resstat.3resolv target=resolver.3resolv
-link path=usr/share/man/man3resolv/herror.3resolv target=resolver.3resolv
-link path=usr/share/man/man3resolv/hstrerror.3resolv target=resolver.3resolv
-link path=usr/share/man/man3resolv/res_getservers.3resolv \
- target=resolver.3resolv
-link path=usr/share/man/man3resolv/res_hostalias.3resolv \
- target=resolver.3resolv
-link path=usr/share/man/man3resolv/res_init.3resolv target=resolver.3resolv
-link path=usr/share/man/man3resolv/res_mkquery.3resolv target=resolver.3resolv
-link path=usr/share/man/man3resolv/res_nclose.3resolv target=resolver.3resolv
-link path=usr/share/man/man3resolv/res_ndestroy.3resolv \
- target=resolver.3resolv
-link path=usr/share/man/man3resolv/res_ninit.3resolv target=resolver.3resolv
-link path=usr/share/man/man3resolv/res_nmkquery.3resolv \
- target=resolver.3resolv
-link path=usr/share/man/man3resolv/res_nquery.3resolv target=resolver.3resolv
-link path=usr/share/man/man3resolv/res_nquerydomain.3resolv \
- target=resolver.3resolv
-link path=usr/share/man/man3resolv/res_nsearch.3resolv target=resolver.3resolv
-link path=usr/share/man/man3resolv/res_nsend.3resolv target=resolver.3resolv
-link path=usr/share/man/man3resolv/res_nsendsigned.3resolv \
- target=resolver.3resolv
-link path=usr/share/man/man3resolv/res_query.3resolv target=resolver.3resolv
-link path=usr/share/man/man3resolv/res_search.3resolv target=resolver.3resolv
-link path=usr/share/man/man3resolv/res_send.3resolv target=resolver.3resolv
-link path=usr/share/man/man3resolv/res_setservers.3resolv \
- target=resolver.3resolv
-link path=usr/share/man/man3rpc/havedisk.3rpc target=rstat.3rpc
-link path=usr/share/man/man3rpc/rnusers.3rpc target=rusers.3rpc
link path=usr/share/man/man3sasl/prop_clear.3sasl target=sasl_auxprop.3sasl
link path=usr/share/man/man3sasl/prop_dispose.3sasl target=sasl_auxprop.3sasl
link path=usr/share/man/man3sasl/prop_dup.3sasl target=sasl_auxprop.3sasl
diff --git a/usr/src/pkg/manifests/system-library.man3proc.inc b/usr/src/pkg/manifests/system-library.man3proc.inc
index b60df1f600..d7eeb3e42f 100644
--- a/usr/src/pkg/manifests/system-library.man3proc.inc
+++ b/usr/src/pkg/manifests/system-library.man3proc.inc
@@ -13,7 +13,30 @@
# Copyright 2015 Joyent, Inc.
#
-
+file path=usr/share/man/man3proc/proc_service.3proc
+file path=usr/share/man/man3proc/ps_lgetregs.3proc
+file path=usr/share/man/man3proc/ps_pglobal_lookup.3proc
+file path=usr/share/man/man3proc/ps_pread.3proc
+file path=usr/share/man/man3proc/ps_pstop.3proc
+link path=usr/share/man/man3proc/ps_kill.3proc target=ps_pstop.3proc
+link path=usr/share/man/man3proc/ps_lcontinue.3proc target=ps_pstop.3proc
+link path=usr/share/man/man3proc/ps_lgetfpregs.3proc target=ps_lgetregs.3proc
+link path=usr/share/man/man3proc/ps_lgetxregs.3proc target=ps_lgetregs.3proc
+link path=usr/share/man/man3proc/ps_lgetxregsize.3proc \
+ target=ps_lgetregs.3proc
+link path=usr/share/man/man3proc/ps_lrolltoaddr.3proc target=ps_pstop.3proc
+link path=usr/share/man/man3proc/ps_lsetfpregs.3proc target=ps_lgetregs.3proc
+link path=usr/share/man/man3proc/ps_lsetregs.3proc target=ps_lgetregs.3proc
+link path=usr/share/man/man3proc/ps_lsetxregs.3proc target=ps_lgetregs.3proc
+link path=usr/share/man/man3proc/ps_lstop.3proc target=ps_pstop.3proc
+link path=usr/share/man/man3proc/ps_pcontinue.3proc target=ps_pstop.3proc
+link path=usr/share/man/man3proc/ps_pdread.3proc target=ps_pread.3proc
+link path=usr/share/man/man3proc/ps_pdwrite.3proc target=ps_pread.3proc
+link path=usr/share/man/man3proc/ps_pglobal_sym.3proc \
+ target=ps_pglobal_lookup.3proc
+link path=usr/share/man/man3proc/ps_ptread.3proc target=ps_pread.3proc
+link path=usr/share/man/man3proc/ps_ptwrite.3proc target=ps_pread.3proc
+link path=usr/share/man/man3proc/ps_pwrite.3proc target=ps_pread.3proc
file path=usr/share/man/man3proc/Lctlfd.3proc
file path=usr/share/man/man3proc/Lfree.3proc
file path=usr/share/man/man3proc/Lgrab_error.3proc
diff --git a/usr/src/pkg/manifests/system-library.man3project.inc b/usr/src/pkg/manifests/system-library.man3project.inc
new file mode 100644
index 0000000000..ce52ec9662
--- /dev/null
+++ b/usr/src/pkg/manifests/system-library.man3project.inc
@@ -0,0 +1,31 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+# Copyright 2017, Richard Lowe
+
+file path=usr/share/man/man3project/getprojent.3project
+file path=usr/share/man/man3project/project_walk.3project
+file path=usr/share/man/man3project/setproject.3project
+link path=usr/share/man/man3project/endprojent.3project \
+ target=getprojent.3project
+link path=usr/share/man/man3project/fgetprojent.3project \
+ target=getprojent.3project
+link path=usr/share/man/man3project/getdefaultproj.3project \
+ target=getprojent.3project
+link path=usr/share/man/man3project/getprojbyid.3project \
+ target=getprojent.3project
+link path=usr/share/man/man3project/getprojbyname.3project \
+ target=getprojent.3project
+link path=usr/share/man/man3project/getprojidbyname.3project \
+ target=getprojent.3project
+link path=usr/share/man/man3project/inproj.3project target=getprojent.3project
+link path=usr/share/man/man3project/setprojent.3project \
+ target=getprojent.3project
diff --git a/usr/src/pkg/manifests/system-library.man3resolv.inc b/usr/src/pkg/manifests/system-library.man3resolv.inc
new file mode 100644
index 0000000000..4b5b158e00
--- /dev/null
+++ b/usr/src/pkg/manifests/system-library.man3resolv.inc
@@ -0,0 +1,43 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+# Copyright 2017, Richard Lowe
+
+file path=usr/share/man/man3resolv/resolver.3resolv
+link path=usr/share/man/man3resolv/dn_comp.3resolv target=resolver.3resolv
+link path=usr/share/man/man3resolv/dn_expand.3resolv target=resolver.3resolv
+link path=usr/share/man/man3resolv/fp_resstat.3resolv target=resolver.3resolv
+link path=usr/share/man/man3resolv/herror.3resolv target=resolver.3resolv
+link path=usr/share/man/man3resolv/hstrerror.3resolv target=resolver.3resolv
+link path=usr/share/man/man3resolv/res_getservers.3resolv \
+ target=resolver.3resolv
+link path=usr/share/man/man3resolv/res_hostalias.3resolv \
+ target=resolver.3resolv
+link path=usr/share/man/man3resolv/res_init.3resolv target=resolver.3resolv
+link path=usr/share/man/man3resolv/res_mkquery.3resolv target=resolver.3resolv
+link path=usr/share/man/man3resolv/res_nclose.3resolv target=resolver.3resolv
+link path=usr/share/man/man3resolv/res_ndestroy.3resolv \
+ target=resolver.3resolv
+link path=usr/share/man/man3resolv/res_ninit.3resolv target=resolver.3resolv
+link path=usr/share/man/man3resolv/res_nmkquery.3resolv \
+ target=resolver.3resolv
+link path=usr/share/man/man3resolv/res_nquery.3resolv target=resolver.3resolv
+link path=usr/share/man/man3resolv/res_nquerydomain.3resolv \
+ target=resolver.3resolv
+link path=usr/share/man/man3resolv/res_nsearch.3resolv target=resolver.3resolv
+link path=usr/share/man/man3resolv/res_nsend.3resolv target=resolver.3resolv
+link path=usr/share/man/man3resolv/res_nsendsigned.3resolv \
+ target=resolver.3resolv
+link path=usr/share/man/man3resolv/res_query.3resolv target=resolver.3resolv
+link path=usr/share/man/man3resolv/res_search.3resolv target=resolver.3resolv
+link path=usr/share/man/man3resolv/res_send.3resolv target=resolver.3resolv
+link path=usr/share/man/man3resolv/res_setservers.3resolv \
+ target=resolver.3resolv
diff --git a/usr/src/pkg/manifests/system-library.man3rpc.inc b/usr/src/pkg/manifests/system-library.man3rpc.inc
new file mode 100644
index 0000000000..9cf676197e
--- /dev/null
+++ b/usr/src/pkg/manifests/system-library.man3rpc.inc
@@ -0,0 +1,18 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+# Copyright 2017, Richard Lowe
+
+file path=usr/share/man/man3rpc/rstat.3rpc
+file path=usr/share/man/man3rpc/rusers.3rpc
+file path=usr/share/man/man3rpc/rwall.3rpc
+link path=usr/share/man/man3rpc/havedisk.3rpc target=rstat.3rpc
+link path=usr/share/man/man3rpc/rnusers.3rpc target=rusers.3rpc
diff --git a/usr/src/pkg/manifests/system-library.man3sysevent.inc b/usr/src/pkg/manifests/system-library.man3sysevent.inc
new file mode 100644
index 0000000000..c6f213d539
--- /dev/null
+++ b/usr/src/pkg/manifests/system-library.man3sysevent.inc
@@ -0,0 +1,36 @@
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source. A copy of the CDDL is also available via the Internet
+# at http://www.illumos.org/license/CDDL.
+#
+
+# Copyright 2017, Richard Lowe
+
+file path=usr/share/man/man3sysevent/sysevent_bind_handle.3sysevent
+file path=usr/share/man/man3sysevent/sysevent_free.3sysevent
+file path=usr/share/man/man3sysevent/sysevent_get_attr_list.3sysevent
+file path=usr/share/man/man3sysevent/sysevent_get_class_name.3sysevent
+file path=usr/share/man/man3sysevent/sysevent_get_vendor_name.3sysevent
+file path=usr/share/man/man3sysevent/sysevent_post_event.3sysevent
+file path=usr/share/man/man3sysevent/sysevent_subscribe_event.3sysevent
+link path=usr/share/man/man3sysevent/sysevent_get_pid.3sysevent \
+ target=sysevent_get_vendor_name.3sysevent
+link path=usr/share/man/man3sysevent/sysevent_get_pub_name.3sysevent \
+ target=sysevent_get_vendor_name.3sysevent
+link path=usr/share/man/man3sysevent/sysevent_get_seq.3sysevent \
+ target=sysevent_get_class_name.3sysevent
+link path=usr/share/man/man3sysevent/sysevent_get_size.3sysevent \
+ target=sysevent_get_class_name.3sysevent
+link path=usr/share/man/man3sysevent/sysevent_get_subclass_name.3sysevent \
+ target=sysevent_get_class_name.3sysevent
+link path=usr/share/man/man3sysevent/sysevent_get_time.3sysevent \
+ target=sysevent_get_class_name.3sysevent
+link path=usr/share/man/man3sysevent/sysevent_unbind_handle.3sysevent \
+ target=sysevent_bind_handle.3sysevent
+link path=usr/share/man/man3sysevent/sysevent_unsubscribe_event.3sysevent \
+ target=sysevent_subscribe_event.3sysevent
diff --git a/usr/src/pkg/manifests/system-library.mf b/usr/src/pkg/manifests/system-library.mf
index 000169ef55..06a7e9bab4 100644
--- a/usr/src/pkg/manifests/system-library.mf
+++ b/usr/src/pkg/manifests/system-library.mf
@@ -55,11 +55,15 @@
<include system-library.man3nvpair.inc>
<include system-library.man3pam.inc>
<include system-library.man3proc.inc>
+<include system-library.man3project.inc>
+<include system-library.man3resolv.inc>
+<include system-library.man3rpc.inc>
<include system-library.man3scf.inc>
<include system-library.man3sec.inc>
<include system-library.man3secdb.inc>
<include system-library.man3sip.inc>
<include system-library.man3socket.inc>
+<include system-library.man3sysevent.inc>
<include system-library.man3tsol.inc>
<include system-library.man3uuid.inc>
<include system-library.man3volmgt.inc>
@@ -152,11 +156,16 @@ dir path=usr/share/man/man3nsl
dir path=usr/share/man/man3nvpair
dir path=usr/share/man/man3pam
dir path=usr/share/man/man3pool
+dir path=usr/share/man/man3proc
+dir path=usr/share/man/man3project
+dir path=usr/share/man/man3resolv
+dir path=usr/share/man/man3rpc
dir path=usr/share/man/man3scf
dir path=usr/share/man/man3sec
dir path=usr/share/man/man3secdb
dir path=usr/share/man/man3sip
dir path=usr/share/man/man3socket
+dir path=usr/share/man/man3sysevent
dir path=usr/share/man/man3tsol
dir path=usr/share/man/man3uuid
dir path=usr/share/man/man3volmgt
diff --git a/usr/src/uts/common/fs/zfs/vdev.c b/usr/src/uts/common/fs/zfs/vdev.c
index d43745cd11..d8a31dcab1 100644
--- a/usr/src/uts/common/fs/zfs/vdev.c
+++ b/usr/src/uts/common/fs/zfs/vdev.c
@@ -22,7 +22,7 @@
/*
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2015 by Delphix. All rights reserved.
- * Copyright 2015 Nexenta Systems, Inc. All rights reserved.
+ * Copyright 2017 Nexenta Systems, Inc.
* Copyright (c) 2014 Integros [integros.com]
* Copyright 2016 Toomas Soome <tsoome@me.com>
*/
@@ -2450,7 +2450,8 @@ int
vdev_online(spa_t *spa, uint64_t guid, uint64_t flags, vdev_state_t *newstate)
{
vdev_t *vd, *tvd, *pvd, *rvd = spa->spa_root_vdev;
- boolean_t postevent = B_FALSE;
+ boolean_t wasoffline;
+ vdev_state_t oldstate;
spa_vdev_state_enter(spa, SCL_NONE);
@@ -2460,9 +2461,8 @@ vdev_online(spa_t *spa, uint64_t guid, uint64_t flags, vdev_state_t *newstate)
if (!vd->vdev_ops->vdev_op_leaf)
return (spa_vdev_state_exit(spa, NULL, ENOTSUP));
- postevent =
- (vd->vdev_offline == B_TRUE || vd->vdev_tmpoffline == B_TRUE) ?
- B_TRUE : B_FALSE;
+ wasoffline = (vd->vdev_offline || vd->vdev_tmpoffline);
+ oldstate = vd->vdev_state;
tvd = vd->vdev_top;
vd->vdev_offline = B_FALSE;
@@ -2500,7 +2500,9 @@ vdev_online(spa_t *spa, uint64_t guid, uint64_t flags, vdev_state_t *newstate)
spa_async_request(spa, SPA_ASYNC_CONFIG_UPDATE);
}
- if (postevent)
+ if (wasoffline ||
+ (oldstate < VDEV_STATE_DEGRADED &&
+ vd->vdev_state >= VDEV_STATE_DEGRADED))
spa_event_notify(spa, vd, ESC_ZFS_VDEV_ONLINE);
return (spa_vdev_state_exit(spa, vd, 0));
diff --git a/usr/src/uts/i86pc/io/apix/apix.c b/usr/src/uts/i86pc/io/apix/apix.c
index 062dca64b9..87043cb8d8 100644
--- a/usr/src/uts/i86pc/io/apix/apix.c
+++ b/usr/src/uts/i86pc/io/apix/apix.c
@@ -258,6 +258,15 @@ apix_probe()
if (apix_enable == 0)
return (PSM_FAILURE);
+ /*
+ * FIXME Temporarily disable apix module on Xen HVM platform due to
+ * known hang during boot (see #3605).
+ *
+ * Please remove when/if the issue is resolved.
+ */
+ if (get_hwenv() == HW_XEN_HVM)
+ return (PSM_FAILURE);
+
/* check for hw features if specified */
if (apix_hw_chk_enable) {
/* check if x2APIC mode is supported */