Date: Mon, 19 Oct 2015 04:39:28 +0000 (UTC) From: Alan Cox <alc@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r289559 - in user/alc/PQ_LAUNDRY: . bin/dd bin/dd/tests bin/ps bin/test/tests cddl/contrib/opensolaris/cmd/zfs cddl/contrib/opensolaris/cmd/zpool cddl/contrib/opensolaris/lib/libzfs/com... Message-ID: <201510190439.t9J4dSZr038602@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: alc Date: Mon Oct 19 04:39:27 2015 New Revision: 289559 URL: https://svnweb.freebsd.org/changeset/base/289559 Log: MFH r289558 Added: user/alc/PQ_LAUNDRY/bin/dd/tests/ - copied from r289558, head/bin/dd/tests/ user/alc/PQ_LAUNDRY/contrib/llvm/patches/patch-09-clang-r250657-openmp.diff - copied unchanged from r289558, head/contrib/llvm/patches/patch-09-clang-r250657-openmp.diff user/alc/PQ_LAUNDRY/contrib/wpa/patches/openssl-0.9.8zf-tls-extensions.patch - copied unchanged from r289558, head/contrib/wpa/patches/openssl-0.9.8zf-tls-extensions.patch user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/sha384-prf.c - copied unchanged from r289558, head/contrib/wpa/src/crypto/sha384-prf.c user/alc/PQ_LAUNDRY/contrib/wpa/src/fst/ - copied from r289558, head/contrib/wpa/src/fst/ user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/eapol_test.py - copied unchanged from r289558, head/contrib/wpa/wpa_supplicant/eapol_test.py user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/p2p_supplicant_sd.c - copied unchanged from r289558, head/contrib/wpa/wpa_supplicant/p2p_supplicant_sd.c user/alc/PQ_LAUNDRY/etc/ntp/ - copied from r289558, head/etc/ntp/ user/alc/PQ_LAUNDRY/share/man/man9/bitset.9 - copied unchanged from r289558, head/share/man/man9/bitset.9 user/alc/PQ_LAUNDRY/sys/arm/arm/intrng.c - copied unchanged from r289558, head/sys/arm/arm/intrng.c user/alc/PQ_LAUNDRY/sys/arm/arm/pic_if.m - copied unchanged from r289558, head/sys/arm/arm/pic_if.m user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/edonr_zfs.c - copied unchanged from r289558, head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/edonr_zfs.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/skein_zfs.c - copied unchanged from r289558, head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/skein_zfs.c user/alc/PQ_LAUNDRY/sys/dev/vnic/ - copied from r289558, head/sys/dev/vnic/ user/alc/PQ_LAUNDRY/tests/sys/acl/ - copied from r289558, head/tests/sys/acl/ user/alc/PQ_LAUNDRY/tests/sys/posixshm/ - copied from r289558, head/tests/sys/posixshm/ Deleted: user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/crypto_cryptoapi.c user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/tls_schannel.c user/alc/PQ_LAUNDRY/tools/regression/acltools/ user/alc/PQ_LAUNDRY/tools/regression/posixshm/ user/alc/PQ_LAUNDRY/tools/test/posixshm/ Modified: user/alc/PQ_LAUNDRY/Makefile user/alc/PQ_LAUNDRY/Makefile.inc1 user/alc/PQ_LAUNDRY/UPDATING user/alc/PQ_LAUNDRY/bin/dd/Makefile user/alc/PQ_LAUNDRY/bin/ps/Makefile user/alc/PQ_LAUNDRY/bin/test/tests/legacy_test.sh user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/cmd/zfs/zfs.8 user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/cmd/zpool/zpool_main.c user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/lib/libzfs/common/libzfs.h user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_diff.c user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_pool.c user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_util.c user/alc/PQ_LAUNDRY/contrib/llvm/tools/clang/lib/Driver/Tools.cpp user/alc/PQ_LAUNDRY/contrib/netbsd-tests/bin/dd/t_dd.sh user/alc/PQ_LAUNDRY/contrib/wpa/hostapd/ChangeLog user/alc/PQ_LAUNDRY/contrib/wpa/hostapd/config_file.c user/alc/PQ_LAUNDRY/contrib/wpa/hostapd/config_file.h user/alc/PQ_LAUNDRY/contrib/wpa/hostapd/ctrl_iface.c user/alc/PQ_LAUNDRY/contrib/wpa/hostapd/defconfig user/alc/PQ_LAUNDRY/contrib/wpa/hostapd/hlr_auc_gw.c user/alc/PQ_LAUNDRY/contrib/wpa/hostapd/hlr_auc_gw.milenage_db user/alc/PQ_LAUNDRY/contrib/wpa/hostapd/hostapd.conf user/alc/PQ_LAUNDRY/contrib/wpa/hostapd/hostapd_cli.c user/alc/PQ_LAUNDRY/contrib/wpa/hostapd/main.c user/alc/PQ_LAUNDRY/contrib/wpa/hs20/client/Makefile user/alc/PQ_LAUNDRY/contrib/wpa/hs20/client/osu_client.c user/alc/PQ_LAUNDRY/contrib/wpa/hs20/client/spp_client.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/accounting.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/acs.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/ap_config.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/ap_config.h user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/ap_drv_ops.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/ap_drv_ops.h user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/ap_list.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/ap_list.h user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/authsrv.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/beacon.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/beacon.h user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/ctrl_iface_ap.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/dfs.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/drv_callbacks.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/eap_user_db.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/hostapd.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/hostapd.h user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/hw_features.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/hw_features.h user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/ieee802_11.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/ieee802_11.h user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/ieee802_11_auth.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/ieee802_11_auth.h user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/ieee802_11_ht.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/ieee802_11_vht.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/ieee802_1x.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/ieee802_1x.h user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/ndisc_snoop.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/sta_info.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/sta_info.h user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/utils.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/vlan_init.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/vlan_init.h user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/vlan_util.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/wmm.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/wpa_auth.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/wpa_auth.h user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/wpa_auth_ft.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/wpa_auth_glue.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/wpa_auth_i.h user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/wpa_auth_ie.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/wps_hostapd.c user/alc/PQ_LAUNDRY/contrib/wpa/src/ap/x_snoop.c user/alc/PQ_LAUNDRY/contrib/wpa/src/common/common_module_tests.c user/alc/PQ_LAUNDRY/contrib/wpa/src/common/defs.h user/alc/PQ_LAUNDRY/contrib/wpa/src/common/hw_features_common.c user/alc/PQ_LAUNDRY/contrib/wpa/src/common/hw_features_common.h user/alc/PQ_LAUNDRY/contrib/wpa/src/common/ieee802_11_common.c user/alc/PQ_LAUNDRY/contrib/wpa/src/common/ieee802_11_common.h user/alc/PQ_LAUNDRY/contrib/wpa/src/common/ieee802_11_defs.h user/alc/PQ_LAUNDRY/contrib/wpa/src/common/privsep_commands.h user/alc/PQ_LAUNDRY/contrib/wpa/src/common/qca-vendor.h user/alc/PQ_LAUNDRY/contrib/wpa/src/common/sae.c user/alc/PQ_LAUNDRY/contrib/wpa/src/common/sae.h user/alc/PQ_LAUNDRY/contrib/wpa/src/common/version.h user/alc/PQ_LAUNDRY/contrib/wpa/src/common/wpa_common.c user/alc/PQ_LAUNDRY/contrib/wpa/src/common/wpa_common.h user/alc/PQ_LAUNDRY/contrib/wpa/src/common/wpa_ctrl.c user/alc/PQ_LAUNDRY/contrib/wpa/src/common/wpa_ctrl.h user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/crypto.h user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/crypto_module_tests.c user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/crypto_openssl.c user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/dh_groups.c user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/fips_prf_openssl.c user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/ms_funcs.c user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/ms_funcs.h user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/random.c user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/sha1-tlsprf.c user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/sha1-tprf.c user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/sha256-kdf.c user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/sha384.h user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/tls.h user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/tls_gnutls.c user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/tls_internal.c user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/tls_none.c user/alc/PQ_LAUNDRY/contrib/wpa/src/crypto/tls_openssl.c user/alc/PQ_LAUNDRY/contrib/wpa/src/drivers/driver.h user/alc/PQ_LAUNDRY/contrib/wpa/src/drivers/driver_bsd.c user/alc/PQ_LAUNDRY/contrib/wpa/src/drivers/driver_ndis.c user/alc/PQ_LAUNDRY/contrib/wpa/src/drivers/driver_nl80211.h user/alc/PQ_LAUNDRY/contrib/wpa/src/drivers/driver_nl80211_android.c user/alc/PQ_LAUNDRY/contrib/wpa/src/drivers/driver_nl80211_capa.c user/alc/PQ_LAUNDRY/contrib/wpa/src/drivers/driver_nl80211_event.c user/alc/PQ_LAUNDRY/contrib/wpa/src/drivers/driver_nl80211_scan.c user/alc/PQ_LAUNDRY/contrib/wpa/src/drivers/driver_privsep.c user/alc/PQ_LAUNDRY/contrib/wpa/src/drivers/drivers.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_common/eap_common.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_common/eap_fast_common.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_common/eap_pwd_common.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_common/eap_pwd_common.h user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_common/eap_sake_common.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_common/ikev2_common.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap.h user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap_aka.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap_eke.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap_fast.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap_gpsk.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap_i.h user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap_mschapv2.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap_pax.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap_peap.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap_pwd.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap_sake.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap_sim.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap_tls.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap_tls_common.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap_tls_common.h user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap_ttls.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_peer/eap_wsc.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_server/eap.h user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_server/eap_i.h user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_server/eap_server.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_server/eap_server_eke.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_server/eap_server_fast.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_server/eap_server_mschapv2.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_server/eap_server_peap.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_server/eap_server_pwd.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_server/eap_server_tls.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_server/eap_server_tls_common.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_server/eap_server_ttls.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eap_server/eap_tls_common.h user/alc/PQ_LAUNDRY/contrib/wpa/src/eapol_auth/eapol_auth_sm.c user/alc/PQ_LAUNDRY/contrib/wpa/src/eapol_auth/eapol_auth_sm.h user/alc/PQ_LAUNDRY/contrib/wpa/src/eapol_supp/eapol_supp_sm.c user/alc/PQ_LAUNDRY/contrib/wpa/src/p2p/p2p.c user/alc/PQ_LAUNDRY/contrib/wpa/src/p2p/p2p.h user/alc/PQ_LAUNDRY/contrib/wpa/src/p2p/p2p_build.c user/alc/PQ_LAUNDRY/contrib/wpa/src/p2p/p2p_dev_disc.c user/alc/PQ_LAUNDRY/contrib/wpa/src/p2p/p2p_go_neg.c user/alc/PQ_LAUNDRY/contrib/wpa/src/p2p/p2p_group.c user/alc/PQ_LAUNDRY/contrib/wpa/src/p2p/p2p_i.h user/alc/PQ_LAUNDRY/contrib/wpa/src/p2p/p2p_invitation.c user/alc/PQ_LAUNDRY/contrib/wpa/src/p2p/p2p_parse.c user/alc/PQ_LAUNDRY/contrib/wpa/src/p2p/p2p_pd.c user/alc/PQ_LAUNDRY/contrib/wpa/src/p2p/p2p_utils.c user/alc/PQ_LAUNDRY/contrib/wpa/src/radius/radius.c user/alc/PQ_LAUNDRY/contrib/wpa/src/radius/radius_das.c user/alc/PQ_LAUNDRY/contrib/wpa/src/radius/radius_server.c user/alc/PQ_LAUNDRY/contrib/wpa/src/radius/radius_server.h user/alc/PQ_LAUNDRY/contrib/wpa/src/rsn_supp/tdls.c user/alc/PQ_LAUNDRY/contrib/wpa/src/rsn_supp/wpa.c user/alc/PQ_LAUNDRY/contrib/wpa/src/rsn_supp/wpa_ft.c user/alc/PQ_LAUNDRY/contrib/wpa/src/rsn_supp/wpa_ie.c user/alc/PQ_LAUNDRY/contrib/wpa/src/rsn_supp/wpa_ie.h user/alc/PQ_LAUNDRY/contrib/wpa/src/tls/libtommath.c user/alc/PQ_LAUNDRY/contrib/wpa/src/tls/tlsv1_client.c user/alc/PQ_LAUNDRY/contrib/wpa/src/tls/tlsv1_client.h user/alc/PQ_LAUNDRY/contrib/wpa/src/tls/tlsv1_server.c user/alc/PQ_LAUNDRY/contrib/wpa/src/tls/tlsv1_server.h user/alc/PQ_LAUNDRY/contrib/wpa/src/tls/x509v3.c user/alc/PQ_LAUNDRY/contrib/wpa/src/utils/browser-wpadebug.c user/alc/PQ_LAUNDRY/contrib/wpa/src/utils/common.c user/alc/PQ_LAUNDRY/contrib/wpa/src/utils/common.h user/alc/PQ_LAUNDRY/contrib/wpa/src/utils/eloop.c user/alc/PQ_LAUNDRY/contrib/wpa/src/utils/http_curl.c user/alc/PQ_LAUNDRY/contrib/wpa/src/utils/includes.h user/alc/PQ_LAUNDRY/contrib/wpa/src/utils/os.h user/alc/PQ_LAUNDRY/contrib/wpa/src/utils/os_internal.c user/alc/PQ_LAUNDRY/contrib/wpa/src/utils/os_none.c user/alc/PQ_LAUNDRY/contrib/wpa/src/utils/os_unix.c user/alc/PQ_LAUNDRY/contrib/wpa/src/utils/os_win32.c user/alc/PQ_LAUNDRY/contrib/wpa/src/utils/radiotap.c user/alc/PQ_LAUNDRY/contrib/wpa/src/utils/utils_module_tests.c user/alc/PQ_LAUNDRY/contrib/wpa/src/utils/wpa_debug.c user/alc/PQ_LAUNDRY/contrib/wpa/src/utils/wpa_debug.h user/alc/PQ_LAUNDRY/contrib/wpa/src/utils/wpabuf.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/http_client.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/http_server.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/httpread.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/ndef.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/wps.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/wps.h user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/wps_attr_parse.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/wps_attr_parse.h user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/wps_common.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/wps_defs.h user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/wps_enrollee.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/wps_er.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/wps_er_ssdp.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/wps_module_tests.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/wps_registrar.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/wps_upnp.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/wps_upnp_ap.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/wps_upnp_event.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/wps_upnp_ssdp.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/wps_upnp_web.c user/alc/PQ_LAUNDRY/contrib/wpa/src/wps/wps_validate.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/ChangeLog user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/ap.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/ap.h user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/bss.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/bss.h user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/config.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/config.h user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/config_file.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/config_ssid.h user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/ctrl_iface.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/ctrl_iface_named_pipe.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/ctrl_iface_udp.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/ctrl_iface_unix.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/dbus/dbus_new.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/dbus/dbus_new.h user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/dbus/dbus_new_handlers.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/dbus/dbus_new_handlers.h user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/dbus/dbus_new_handlers_p2p.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/dbus/dbus_new_handlers_p2p.h user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/dbus/dbus_new_handlers_wps.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/dbus/dbus_new_helpers.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/dbus/dbus_new_introspect.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/dbus/dbus_old.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/dbus/dbus_old_handlers.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/defconfig user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/driver_i.h user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/eapol_test.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/events.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/hs20_supplicant.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/ibss_rsn.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/interworking.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/main.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/mesh.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/mesh_mpm.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/mesh_rsn.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/notify.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/notify.h user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/p2p_supplicant.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/p2p_supplicant.h user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/preauth_test.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/scan.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/sme.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/wpa_cli.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/wpa_priv.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/wpa_supplicant.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/wpa_supplicant.conf user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/wpa_supplicant_i.h user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/wpas_glue.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/wpas_glue.h user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/wps_supplicant.c user/alc/PQ_LAUNDRY/contrib/wpa/wpa_supplicant/wps_supplicant.h user/alc/PQ_LAUNDRY/etc/Makefile user/alc/PQ_LAUNDRY/etc/mtree/BSD.tests.dist user/alc/PQ_LAUNDRY/etc/mtree/BSD.var.dist user/alc/PQ_LAUNDRY/etc/ntp.conf user/alc/PQ_LAUNDRY/lib/clang/clang.build.mk user/alc/PQ_LAUNDRY/lib/clang/include/clang/Config/config.h user/alc/PQ_LAUNDRY/lib/clang/include/llvm/Config/config.h user/alc/PQ_LAUNDRY/lib/libc/string/ffs.3 user/alc/PQ_LAUNDRY/lib/libcam/camlib.c user/alc/PQ_LAUNDRY/lib/libfetch/file.c user/alc/PQ_LAUNDRY/lib/libfetch/http.c user/alc/PQ_LAUNDRY/lib/libxo/Makefile user/alc/PQ_LAUNDRY/lib/libxo/tests/Makefile user/alc/PQ_LAUNDRY/lib/libxo/tests/encoder/Makefile user/alc/PQ_LAUNDRY/rescue/rescue/Makefile user/alc/PQ_LAUNDRY/sbin/mount/mount.conf.8 user/alc/PQ_LAUNDRY/sbin/newfs_msdos/mkfs_msdos.c user/alc/PQ_LAUNDRY/sbin/savecore/Makefile user/alc/PQ_LAUNDRY/share/man/man3/bitstring.3 user/alc/PQ_LAUNDRY/share/man/man9/Makefile user/alc/PQ_LAUNDRY/share/mk/bsd.sys.mk user/alc/PQ_LAUNDRY/share/mk/src.libnames.mk user/alc/PQ_LAUNDRY/share/mk/sys.mk user/alc/PQ_LAUNDRY/share/zoneinfo/Makefile user/alc/PQ_LAUNDRY/sys/arm/allwinner/a20/a20_mp.c user/alc/PQ_LAUNDRY/sys/arm/altera/socfpga/socfpga_mp.c user/alc/PQ_LAUNDRY/sys/arm/amlogic/aml8726/aml8726_mp.c user/alc/PQ_LAUNDRY/sys/arm/annapurna/alpine/alpine_machdep_mp.c user/alc/PQ_LAUNDRY/sys/arm/annapurna/alpine/common.c user/alc/PQ_LAUNDRY/sys/arm/arm/gic.c user/alc/PQ_LAUNDRY/sys/arm/arm/mp_machdep.c user/alc/PQ_LAUNDRY/sys/arm/arm/nexus.c user/alc/PQ_LAUNDRY/sys/arm/conf/BEAGLEBONE user/alc/PQ_LAUNDRY/sys/arm/conf/IMX6 user/alc/PQ_LAUNDRY/sys/arm/conf/PANDABOARD user/alc/PQ_LAUNDRY/sys/arm/freescale/imx/imx6_machdep.c user/alc/PQ_LAUNDRY/sys/arm/freescale/imx/imx6_mp.c user/alc/PQ_LAUNDRY/sys/arm/freescale/imx/imx_gpio.c user/alc/PQ_LAUNDRY/sys/arm/include/fdt.h user/alc/PQ_LAUNDRY/sys/arm/include/intr.h user/alc/PQ_LAUNDRY/sys/arm/include/smp.h user/alc/PQ_LAUNDRY/sys/arm/mv/std-pj4b.mv user/alc/PQ_LAUNDRY/sys/arm/qemu/virt_common.c user/alc/PQ_LAUNDRY/sys/arm/qemu/virt_mp.c user/alc/PQ_LAUNDRY/sys/arm/rockchip/rk30xx_mp.c user/alc/PQ_LAUNDRY/sys/arm/samsung/exynos/exynos5_mp.c user/alc/PQ_LAUNDRY/sys/arm/ti/omap4/omap4_mp.c user/alc/PQ_LAUNDRY/sys/arm/ti/omap4/std.omap4 user/alc/PQ_LAUNDRY/sys/arm/ti/ti_common.c user/alc/PQ_LAUNDRY/sys/arm/xilinx/zy7_mp.c user/alc/PQ_LAUNDRY/sys/arm64/arm64/copyinout.S user/alc/PQ_LAUNDRY/sys/arm64/arm64/genassym.c user/alc/PQ_LAUNDRY/sys/arm64/arm64/locore.S user/alc/PQ_LAUNDRY/sys/arm64/arm64/machdep.c user/alc/PQ_LAUNDRY/sys/arm64/arm64/support.S user/alc/PQ_LAUNDRY/sys/arm64/conf/GENERIC user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/common/zfs/zfeature_common.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/common/zfs/zfeature_common.h user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/common/zfs/zfs_fletcher.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/common/zfs/zfs_fletcher.h user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/common/zfs/zfs_ioctl_compat.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/common/zfs/zfs_prop.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/ddt.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sha256.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu.h user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa_impl.h user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio_checksum.h user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_checksum.c user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/uts/common/sys/debug.h user/alc/PQ_LAUNDRY/sys/conf/dtb.mk user/alc/PQ_LAUNDRY/sys/conf/files.arm user/alc/PQ_LAUNDRY/sys/conf/files.arm64 user/alc/PQ_LAUNDRY/sys/conf/kern.post.mk user/alc/PQ_LAUNDRY/sys/conf/kmod.mk user/alc/PQ_LAUNDRY/sys/conf/options.arm user/alc/PQ_LAUNDRY/sys/contrib/ipfilter/netinet/ip_state.c user/alc/PQ_LAUNDRY/sys/dev/drm2/i915/intel_dp.c user/alc/PQ_LAUNDRY/sys/dev/drm2/i915/intel_iic.c user/alc/PQ_LAUNDRY/sys/dev/mpr/mpr.c user/alc/PQ_LAUNDRY/sys/dev/mpr/mprvar.h user/alc/PQ_LAUNDRY/sys/dev/mps/mps.c user/alc/PQ_LAUNDRY/sys/dev/mps/mpsvar.h user/alc/PQ_LAUNDRY/sys/dev/ntb/if_ntb/if_ntb.c user/alc/PQ_LAUNDRY/sys/dev/ntb/ntb_hw/ntb_hw.c user/alc/PQ_LAUNDRY/sys/dev/ntb/ntb_hw/ntb_hw.h user/alc/PQ_LAUNDRY/sys/dev/ntb/ntb_hw/ntb_regs.h user/alc/PQ_LAUNDRY/sys/dev/otus/if_otus.c user/alc/PQ_LAUNDRY/sys/dev/pci/pci.c user/alc/PQ_LAUNDRY/sys/dev/pci/pci_pci.c user/alc/PQ_LAUNDRY/sys/dev/pci/pcib_if.m user/alc/PQ_LAUNDRY/sys/kern/kern_fork.c user/alc/PQ_LAUNDRY/sys/kern/vfs_mountroot.c user/alc/PQ_LAUNDRY/sys/mips/atheros/if_arge.c user/alc/PQ_LAUNDRY/sys/mips/atheros/if_argevar.h user/alc/PQ_LAUNDRY/sys/mips/conf/AR933X_BASE user/alc/PQ_LAUNDRY/sys/mips/conf/TP-MR3020 user/alc/PQ_LAUNDRY/sys/mips/conf/TP-MR3020.hints user/alc/PQ_LAUNDRY/sys/modules/cloudabi64/Makefile user/alc/PQ_LAUNDRY/sys/net/route.c user/alc/PQ_LAUNDRY/sys/net/route.h user/alc/PQ_LAUNDRY/sys/netinet/in.c user/alc/PQ_LAUNDRY/sys/netinet/in_rmx.c user/alc/PQ_LAUNDRY/sys/netinet/in_var.h user/alc/PQ_LAUNDRY/sys/sys/mbuf.h user/alc/PQ_LAUNDRY/sys/sys/param.h user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c user/alc/PQ_LAUNDRY/sys/x86/x86/busdma_bounce.c user/alc/PQ_LAUNDRY/tests/sys/Makefile user/alc/PQ_LAUNDRY/usr.bin/iscsictl/Makefile user/alc/PQ_LAUNDRY/usr.bin/iscsictl/iscsictl.8 user/alc/PQ_LAUNDRY/usr.bin/iscsictl/iscsictl.c user/alc/PQ_LAUNDRY/usr.bin/ldd/ldd.c user/alc/PQ_LAUNDRY/usr.bin/wc/Makefile user/alc/PQ_LAUNDRY/usr.bin/xo/Makefile user/alc/PQ_LAUNDRY/usr.sbin/wpa/Makefile.crypto user/alc/PQ_LAUNDRY/usr.sbin/wpa/hostapd/Makefile user/alc/PQ_LAUNDRY/usr.sbin/wpa/wpa_supplicant/Makefile Directory Properties: user/alc/PQ_LAUNDRY/ (props changed) user/alc/PQ_LAUNDRY/cddl/ (props changed) user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/ (props changed) user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/cmd/zfs/ (props changed) user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/lib/libzfs/ (props changed) user/alc/PQ_LAUNDRY/contrib/llvm/ (props changed) user/alc/PQ_LAUNDRY/contrib/llvm/tools/clang/ (props changed) user/alc/PQ_LAUNDRY/contrib/wpa/ (props changed) user/alc/PQ_LAUNDRY/lib/libc/ (props changed) user/alc/PQ_LAUNDRY/sbin/ (props changed) user/alc/PQ_LAUNDRY/share/ (props changed) user/alc/PQ_LAUNDRY/share/zoneinfo/ (props changed) user/alc/PQ_LAUNDRY/sys/ (props changed) user/alc/PQ_LAUNDRY/sys/cddl/contrib/opensolaris/ (props changed) user/alc/PQ_LAUNDRY/sys/conf/ (props changed) user/alc/PQ_LAUNDRY/sys/contrib/ipfilter/ (props changed) Modified: user/alc/PQ_LAUNDRY/Makefile ============================================================================== --- user/alc/PQ_LAUNDRY/Makefile Mon Oct 19 04:33:18 2015 (r289558) +++ user/alc/PQ_LAUNDRY/Makefile Mon Oct 19 04:39:27 2015 (r289559) @@ -243,14 +243,8 @@ cleanworld: # Handle the user-driven targets, using the source relative mk files. # -.if !(!empty(.MAKEFLAGS:M-n) && ${.MAKEFLAGS:M-n} == "-n") -# skip this for -n to avoid changing previous behavior of -# 'make -n buildworld' etc. Using -n -n will run it. -${TGTS}: .MAKE tinderbox toolchains kernel-toolchains: .MAKE -.endif - -${TGTS}: .PHONY +${TGTS}: .PHONY .MAKE ${_+_}@cd ${.CURDIR}; ${_MAKE} ${.TARGET} # The historic default "all" target creates files which may cause stale @@ -261,7 +255,7 @@ ${TGTS}: .PHONY _guard: .PHONY @echo - @echo "Explicit target required. Likely \"buildworld\" is wanted. See build(7)." + @echo "Explicit target required. Likely \"${SUBDIR_OVERRIDE:Dall:Ubuildworld}\" is wanted. See build(7)." @echo @false Modified: user/alc/PQ_LAUNDRY/Makefile.inc1 ============================================================================== --- user/alc/PQ_LAUNDRY/Makefile.inc1 Mon Oct 19 04:33:18 2015 (r289558) +++ user/alc/PQ_LAUNDRY/Makefile.inc1 Mon Oct 19 04:39:27 2015 (r289559) @@ -50,16 +50,23 @@ .include <bsd.arch.inc.mk> .include <bsd.compiler.mk> -# We must do lib/ and libexec/ before bin/, because if installworld -# installs a new /bin/sh, the 'make' command will *immediately* -# use that new version. And the new (dynamically-linked) /bin/sh -# will expect to find appropriate libraries in /lib and /libexec. -# +# We must do lib/ and libexec/ before bin/ in case of a mid-install error to +# keep the users system reasonably usable. For static->dynamic root upgrades, +# we don't want to install a dynamic binary without rtld and the needed +# libraries. More commonly, for dynamic root, we don't want to install a +# binary that requires a newer library version that hasn't been installed yet. +# This ordering is not a guarantee though. The only guarantee of a working +# system here would require fine-grained ordering of all components based +# on their dependencies. SRCDIR?= ${.CURDIR} .if defined(SUBDIR_OVERRIDE) SUBDIR= ${SUBDIR_OVERRIDE} .else SUBDIR= lib libexec +.if make(install*) +# Ensure libraries are installed before progressing. +SUBDIR+=.WAIT +.endif SUBDIR+=bin .if ${MK_CDDL} != "no" SUBDIR+=cddl @@ -85,10 +92,6 @@ SUBDIR+= tests .if ${MK_OFED} != "no" SUBDIR+=contrib/ofed .endif -# -# We must do etc/ last for install/distribute to work. -# -SUBDIR+=etc # Local directories are last, since it is nice to at least get the base # system rebuilt before you do them. @@ -112,6 +115,15 @@ SUBDIR+= ${_DIR} .endfor .endif +# We must do etc/ last as it hooks into building the man whatis file +# by calling 'makedb' in share/man. This is only relevant for +# install/distribute so they build the whatis file after every manpage is +# installed. +.if make(install*) +SUBDIR+=.WAIT +.endif +SUBDIR+=etc + .if defined(NOCLEAN) NO_CLEAN= ${NOCLEAN} .endif @@ -136,14 +148,17 @@ OSRELDATE!= awk '/^\#define[[:space:]]*_ .else OSRELDATE= 0 .endif +.export OSRELDATE .endif +# Set VERSION for CTFMERGE to use via the default CTFFLAGS=-L VERSION. .if !defined(VERSION) REVISION!= ${MAKE} -C ${SRCDIR}/release -V REVISION BRANCH!= ${MAKE} -C ${SRCDIR}/release -V BRANCH SRCRELDATE!= awk '/^\#define[[:space:]]*__FreeBSD_version/ { print $$3 }' \ ${SRCDIR}/sys/sys/param.h VERSION= FreeBSD ${REVISION}-${BRANCH:C/-p[0-9]+$//} ${TARGET_ARCH} ${SRCRELDATE} +.export VERSION .endif KNOWN_ARCHES?= aarch64/arm64 amd64 arm armeb/arm armv6/arm armv6hf/arm i386 i386/pc98 mips mipsel/mips mips64el/mips mips64/mips mipsn32el/mips mipsn32/mips powerpc powerpc64/powerpc sparc64 @@ -252,7 +267,6 @@ CROSSENV+= ${TARGET_CFLAGS} BMAKEENV= INSTALL="sh ${.CURDIR}/tools/install.sh" \ PATH=${BPATH}:${PATH} \ WORLDTMP=${WORLDTMP} \ - VERSION="${VERSION}" \ MAKEFLAGS="-m ${.CURDIR}/tools/build/mk ${.MAKEFLAGS}" # need to keep this in sync with targets/pseudo/bootstrap-tools/Makefile BSARGS= DESTDIR= \ @@ -289,8 +303,7 @@ XMAKE= TOOLS_PREFIX=${WORLDTMP} ${BMAKE # kernel-tools stage KTMAKEENV= INSTALL="sh ${.CURDIR}/tools/install.sh" \ PATH=${BPATH}:${PATH} \ - WORLDTMP=${WORLDTMP} \ - VERSION="${VERSION}" + WORLDTMP=${WORLDTMP} KTMAKE= TOOLS_PREFIX=${WORLDTMP} MAKEOBJDIRPREFIX=${WORLDTMP} \ ${KTMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ DESTDIR= \ @@ -303,7 +316,6 @@ KTMAKE= TOOLS_PREFIX=${WORLDTMP} MAKEOB # world stage WMAKEENV= ${CROSSENV} \ _LDSCRIPTROOT= \ - VERSION="${VERSION}" \ INSTALL="sh ${.CURDIR}/tools/install.sh" \ PATH=${TMPPATH} @@ -313,10 +325,6 @@ HMAKE= PATH=${TMPPATH} ${MAKE} LOCAL_MT HMAKE+= PATH=${TMPPATH} METALOG=${METALOG} -DNO_ROOT .endif -.if ${MK_CDDL} == "no" -WMAKEENV+= MK_CTF=no -.endif - .if defined(CROSS_TOOLCHAIN) LOCALBASE?= /usr/local .include "${LOCALBASE}/share/toolchains/${CROSS_TOOLCHAIN}.mk" @@ -446,7 +454,6 @@ LIB32FLAGS+= --sysroot=${WORLDTMP} # Yes, the flags are redundant. LIB32WMAKEENV+= MAKEOBJDIRPREFIX=${LIB32_OBJTREE} \ _LDSCRIPTROOT=${LIB32TMP} \ - VERSION="${VERSION}" \ INSTALL="sh ${.CURDIR}/tools/install.sh" \ PATH=${TMPPATH} \ LIBDIR=/usr/lib32 \ @@ -584,9 +591,9 @@ _cleanobj: @echo "--------------------------------------------------------------" @echo ">>> stage 2.1: cleaning up the object tree" @echo "--------------------------------------------------------------" - ${_+_}cd ${.CURDIR}; ${WMAKE} ${CLEANDIR:S/^/par-/} + ${_+_}cd ${.CURDIR}; ${WMAKE} ${CLEANDIR} .if defined(LIB32TMP) - ${_+_}cd ${.CURDIR}; ${LIB32WMAKE} -f Makefile.inc1 ${CLEANDIR:S/^/par-/} + ${_+_}cd ${.CURDIR}; ${LIB32WMAKE} -f Makefile.inc1 ${CLEANDIR} .endif .endif _obj: @@ -594,7 +601,7 @@ _obj: @echo "--------------------------------------------------------------" @echo ">>> stage 2.2: rebuilding the object tree" @echo "--------------------------------------------------------------" - ${_+_}cd ${.CURDIR}; ${WMAKE} par-obj + ${_+_}cd ${.CURDIR}; ${WMAKE} obj _build-tools: @echo @echo "--------------------------------------------------------------" @@ -613,7 +620,8 @@ _includes: @echo "--------------------------------------------------------------" @echo ">>> stage 4.1: building includes" @echo "--------------------------------------------------------------" - ${_+_}cd ${.CURDIR}; ${WMAKE} SHARED=symlinks par-includes + ${_+_}cd ${.CURDIR}; ${WMAKE} SHARED=symlinks buildincludes + ${_+_}cd ${.CURDIR}; ${WMAKE} SHARED=symlinks installincludes _libraries: @echo @echo "--------------------------------------------------------------" @@ -627,7 +635,7 @@ _depend: @echo "--------------------------------------------------------------" @echo ">>> stage 4.3: make dependencies" @echo "--------------------------------------------------------------" - ${_+_}cd ${.CURDIR}; ${WMAKE} par-depend + ${_+_}cd ${.CURDIR}; ${WMAKE} depend everything: @echo @echo "--------------------------------------------------------------" @@ -736,7 +744,7 @@ buildworld_epilogue: # to quote multiword values. # buildenvvars: - @echo ${WMAKEENV:Q} + @echo ${WMAKEENV:Q} ${.MAKE.EXPORTED:@v@$v=\"${$v}\"@} .if ${.TARGETS:Mbuildenv} .if ${.MAKEFLAGS:M-j} @@ -820,7 +828,7 @@ _zoneinfo= zic tzsetup ITOOLS= [ awk cap_mkdb cat chflags chmod chown cmp cp \ date echo egrep find grep id install ${_install-info} \ - ln lockf make mkdir mtree mv pwd_mkdb \ + ln make mkdir mtree mv pwd_mkdb \ rm sed services_mkdb sh strip sysctl test true uname wc ${_zoneinfo} \ ${LOCAL_ITOOLS} @@ -1063,7 +1071,7 @@ INSTALLKERNEL= ${_kernel} .endif .endfor -buildkernel ${WMAKE_TGTS:N_worldtmp} ${.ALLTARGETS:M_*:N_worldtmp}: .MAKE .PHONY +buildkernel ${WMAKE_TGTS:N_worldtmp:Nbuild32} ${.ALLTARGETS:M_*:N_worldtmp}: .MAKE .PHONY # # buildkernel @@ -1493,7 +1501,7 @@ build-tools: .MAKE # # kernel-tools: Build kernel-building tools # -kernel-tools: .MAKE +kernel-tools: mkdir -p ${MAKEOBJDIRPREFIX}/usr mtree -deU -f ${.CURDIR}/etc/mtree/BSD.usr.dist \ -p ${MAKEOBJDIRPREFIX}/usr >/dev/null @@ -1574,7 +1582,6 @@ cross-tools: .MAKE NXBENV= MAKEOBJDIRPREFIX=${OBJTREE}/nxb \ INSTALL="sh ${.CURDIR}/tools/install.sh" \ - VERSION="${VERSION}" \ PATH=${PATH}:${OBJTREE}/gperf_for_gcc/usr/bin NXBMAKE= ${NXBENV} ${MAKE} \ TBLGEN=${OBJTREE}/nxb-bin/usr/bin/tblgen \ @@ -1593,7 +1600,7 @@ NXBMAKE= ${NXBENV} ${MAKE} \ # For non-clang enabled targets that are still using the in tree gcc # we must build a gperf binary for one instance of its Makefiles. On # clang-enabled systems, the gperf binary is obsolete. -native-xtools: .MAKE +native-xtools: .if ${MK_GCC_BOOTSTRAP} != "no" mkdir -p ${OBJTREE}/gperf_for_gcc/usr/bin ${_+_}@${ECHODIR} "===> ${_gperf} (obj,depend,all,install)"; \ @@ -1939,22 +1946,18 @@ _startup_libs: ${_startup_libs:S/$/__L/} _prebuild_libs: ${_prebuild_libs:S/$/__L/} _generic_libs: ${_generic_libs:S/$/__L/} -.for __target in all clean cleandepend cleandir depend includes obj -.for entry in ${SUBDIR} -${entry}.${__target}__D: .PHONY .MAKE - ${_+_}@set -e; if test -d ${.CURDIR}/${entry}.${MACHINE_ARCH}; then \ - ${ECHODIR} "===> ${DIRPRFX}${entry}.${MACHINE_ARCH} (${__target})"; \ - edir=${entry}.${MACHINE_ARCH}; \ - cd ${.CURDIR}/$${edir}; \ - else \ - ${ECHODIR} "===> ${DIRPRFX}${entry} (${__target})"; \ - edir=${entry}; \ - cd ${.CURDIR}/$${edir}; \ - fi; \ - ${MAKE} ${__target} DIRPRFX=${DIRPRFX}$${edir}/ -.endfor -par-${__target}: ${SUBDIR:S/$/.${__target}__D/} -.endfor +# Enable SUBDIR_PARALLEL when not calling 'make all', unless called as +# 'par-all'. This is because it is unlikely that running 'make all' from +# the top-level, especially with a SUBDIR_OVERRIDE or LOCAL_DIRS set, +# will have a reliable build if SUBDIRs are built in parallel. This is +# safe for the world stage of buildworld though since it has already +# built libraries in a proper order and installed includes into WORLDTMP. +# Special handling is done for SUBDIR ordering for 'install*' to avoid +# trashing a system if it crashes mid-install. +par-all: all .PHONY +.if !make(all) +SUBDIR_PARALLEL= +.endif .include <bsd.subdir.mk> @@ -2262,7 +2265,9 @@ _xi-cross-tools: .endfor _xi-includes: - ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 par-includes \ + ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 buildincludes \ + DESTDIR=${XDDESTDIR} + ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 installincludes \ DESTDIR=${XDDESTDIR} _xi-libraries: Modified: user/alc/PQ_LAUNDRY/UPDATING ============================================================================== --- user/alc/PQ_LAUNDRY/UPDATING Mon Oct 19 04:33:18 2015 (r289558) +++ user/alc/PQ_LAUNDRY/UPDATING Mon Oct 19 04:39:27 2015 (r289559) @@ -31,6 +31,12 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20151017: + The build previously allowed using 'make -n' to not recurse into + sub-directories while showing what commands would be executed, and + 'make -n -n' to recursively show commands. Now 'make -n' will recurse + and 'make -N' will not. + 20151012: If you specify SENDMAIL_MC or SENDMAIL_CF in make.conf, mergemaster and etcupdate will now use this file. A custom sendmail.cf is now Modified: user/alc/PQ_LAUNDRY/bin/dd/Makefile ============================================================================== --- user/alc/PQ_LAUNDRY/bin/dd/Makefile Mon Oct 19 04:33:18 2015 (r289558) +++ user/alc/PQ_LAUNDRY/bin/dd/Makefile Mon Oct 19 04:39:27 2015 (r289559) @@ -1,6 +1,8 @@ # @(#)Makefile 8.1 (Berkeley) 5/31/93 # $FreeBSD$ +.include <src.opts.mk> + PROG= dd SRCS= args.c conv.c conv_tab.c dd.c misc.c position.c @@ -24,4 +26,8 @@ test: ${PROG} gen .endfor @rm -f gen +.if ${MK_TESTS} != "no" +SUBDIR+= tests +.endif + .include <bsd.prog.mk> Modified: user/alc/PQ_LAUNDRY/bin/ps/Makefile ============================================================================== --- user/alc/PQ_LAUNDRY/bin/ps/Makefile Mon Oct 19 04:33:18 2015 (r289558) +++ user/alc/PQ_LAUNDRY/bin/ps/Makefile Mon Oct 19 04:39:27 2015 (r289559) @@ -11,6 +11,6 @@ SRCS= fmt.c keyword.c nlist.c print.c ps # on large systems. # CFLAGS+=-DLAZY_PS -LIBADD= m kvm jail xo util +LIBADD= m kvm jail xo .include <bsd.prog.mk> Modified: user/alc/PQ_LAUNDRY/bin/test/tests/legacy_test.sh ============================================================================== --- user/alc/PQ_LAUNDRY/bin/test/tests/legacy_test.sh Mon Oct 19 04:33:18 2015 (r289558) +++ user/alc/PQ_LAUNDRY/bin/test/tests/legacy_test.sh Mon Oct 19 04:39:27 2015 (r289559) @@ -2,7 +2,7 @@ #- # Copyright (c) June 1996 Wolfram Schneider <wosch@FreeBSD.org>. Berlin. -# All rights reserved. +# All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions @@ -31,7 +31,7 @@ # $FreeBSD$ # force a specified test program, e.g. `env test=/bin/test sh regress.sh' -: ${test=test} +: ${test=test} t () { @@ -54,13 +54,13 @@ t () count=0 echo "1..130" -t 0 'b = b' -t 0 'b == b' -t 1 'b != b' -t 0 '\( b = b \)' -t 0 '\( b == b \)' -t 1 '! \( b = b \)' -t 1 '! \( b == b \)' +t 0 'b = b' +t 0 'b == b' +t 1 'b != b' +t 0 '\( b = b \)' +t 0 '\( b == b \)' +t 1 '! \( b = b \)' +t 1 '! \( b == b \)' t 1 '! -f /etc/passwd' t 0 '-h = -h' Modified: user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/cmd/zfs/zfs.8 ============================================================================== --- user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/cmd/zfs/zfs.8 Mon Oct 19 04:33:18 2015 (r289558) +++ user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/cmd/zfs/zfs.8 Mon Oct 19 04:39:27 2015 (r289559) @@ -18,7 +18,7 @@ .\" information: Portions Copyright [yyyy] [name of copyright owner] .\" .\" Copyright (c) 2010, Sun Microsystems, Inc. All Rights Reserved. -.\" Copyright (c) 2014 by Delphix. All rights reserved. +.\" Copyright (c) 2011, 2014 by Delphix. All rights reserved. .\" Copyright (c) 2011, Pawel Jakub Dawidek <pjd@FreeBSD.org> .\" Copyright (c) 2012, Glen Barber <gjb@FreeBSD.org> .\" Copyright (c) 2012, Bryan Drewery <bdrewery@FreeBSD.org> @@ -117,7 +117,7 @@ .Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot .Nm .Cm set -.Ar property Ns = Ns Ar value +.Ar property Ns = Ns Ar value Oc ... .Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns ... .Nm .Cm get @@ -2121,14 +2121,14 @@ option, but sorts by property in descend .It Xo .Nm .Cm set -.Ar property Ns = Ns Ar value +.Ar property Ns = Ns Ar value Oc ... .Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot .Xc .Pp -Sets the property to the given value for each dataset. Only some properties can -be edited. See the "Properties" section for more information on what properties -can be set and acceptable values. Numeric values can be specified as exact -values, or in a human-readable form with a suffix of +Sets the property or list of properties to the given value(s) for each dataset. +Only some properties can be edited. See the "Properties" section for more +information on what properties can be set and acceptable values. Numeric values +can be specified as exact values, or in a human-readable form with a suffix of .Sy B , K , M , G , T , P , E , Z (for bytes, kilobytes, megabytes, gigabytes, terabytes, petabytes, exabytes, or zettabytes, respectively). User properties can be set on snapshots. For more Modified: user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c ============================================================================== --- user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c Mon Oct 19 04:33:18 2015 (r289558) +++ user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c Mon Oct 19 04:39:27 2015 (r289559) @@ -21,7 +21,7 @@ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. - * Copyright (c) 2011, 2014 by Delphix. All rights reserved. + * Copyright (c) 2011, 2015 by Delphix. All rights reserved. * Copyright 2012 Milan Jurik. All rights reserved. * Copyright (c) 2012, Joyent, Inc. All rights reserved. * Copyright (c) 2011-2012 Pawel Jakub Dawidek <pawel@dawidek.net>. @@ -283,7 +283,7 @@ get_usage(zfs_help_t idx) "<filesystem|volume|snapshot>\n" "\tsend [-nvPe] -t <receive_resume_token>\n")); case HELP_SET: - return (gettext("\tset <property=value> " + return (gettext("\tset <property=value> ... " "<filesystem|volume|snapshot> ...\n")); case HELP_SHARE: return (gettext("\tshare <-a | filesystem>\n")); @@ -498,6 +498,10 @@ usage(boolean_t requested) exit(requested ? 0 : 2); } +/* + * Take a property=value argument string and add it to the given nvlist. + * Modifies the argument inplace. + */ static int parseprop(nvlist_t *props, char *propname) { @@ -505,7 +509,7 @@ parseprop(nvlist_t *props, char *propnam if ((propval = strchr(propname, '=')) == NULL) { (void) fprintf(stderr, gettext("missing " - "'=' for -o option\n")); + "'=' for property=value argument\n")); return (-1); } *propval = '\0'; @@ -632,7 +636,7 @@ zfs_do_clone(int argc, char **argv) while ((c = getopt(argc, argv, "o:p")) != -1) { switch (c) { case 'o': - if (parseprop(props, optarg)) + if (parseprop(props, optarg) != 0) return (1); break; case 'p': @@ -841,10 +845,12 @@ zfs_do_create(int argc, char **argv) if (type == ZFS_TYPE_VOLUME && !noreserve) { zpool_handle_t *zpool_handle; + nvlist_t *real_props; uint64_t spa_version; char *p; zfs_prop_t resv_prop; char *strval; + char msg[1024]; if (p = strchr(argv[0], '/')) *p = '\0'; @@ -855,12 +861,22 @@ zfs_do_create(int argc, char **argv) goto error; spa_version = zpool_get_prop_int(zpool_handle, ZPOOL_PROP_VERSION, NULL); - zpool_close(zpool_handle); if (spa_version >= SPA_VERSION_REFRESERVATION) resv_prop = ZFS_PROP_REFRESERVATION; else resv_prop = ZFS_PROP_RESERVATION; - volsize = zvol_volsize_to_reservation(volsize, props); + + (void) snprintf(msg, sizeof (msg), + gettext("cannot create '%s'"), argv[0]); + if (props && (real_props = zfs_valid_proplist(g_zfs, type, + props, 0, NULL, zpool_handle, msg)) == NULL) { + zpool_close(zpool_handle); + goto error; + } + zpool_close(zpool_handle); + + volsize = zvol_volsize_to_reservation(volsize, real_props); + nvlist_free(real_props); if (nvlist_lookup_string(props, zfs_prop_to_name(resv_prop), &strval) != 0) { @@ -3532,21 +3548,17 @@ out: } /* - * zfs set property=value { fs | snap | vol } ... + * zfs set property=value ... { fs | snap | vol } ... * - * Sets the given property for all datasets specified on the command line. + * Sets the given properties for all datasets specified on the command line. */ -typedef struct set_cbdata { - char *cb_propname; - char *cb_value; -} set_cbdata_t; static int set_callback(zfs_handle_t *zhp, void *data) { - set_cbdata_t *cbp = data; + nvlist_t *props = data; - if (zfs_prop_set(zhp, cbp->cb_propname, cbp->cb_value) != 0) { + if (zfs_prop_set_list(zhp, props) != 0) { switch (libzfs_errno(g_zfs)) { case EZFS_MOUNTFAILED: (void) fprintf(stderr, gettext("property may be set " @@ -3565,7 +3577,8 @@ set_callback(zfs_handle_t *zhp, void *da static int zfs_do_set(int argc, char **argv) { - set_cbdata_t cb; + nvlist_t *props = NULL; + int ds_start = -1; /* argv idx of first dataset arg */ int ret = 0; /* check for options */ @@ -3577,36 +3590,51 @@ zfs_do_set(int argc, char **argv) /* check number of arguments */ if (argc < 2) { - (void) fprintf(stderr, gettext("missing property=value " - "argument\n")); + (void) fprintf(stderr, gettext("missing arguments\n")); usage(B_FALSE); } if (argc < 3) { - (void) fprintf(stderr, gettext("missing dataset name\n")); + if (strchr(argv[1], '=') == NULL) { + (void) fprintf(stderr, gettext("missing property=value " + "argument(s)\n")); + } else { + (void) fprintf(stderr, gettext("missing dataset " + "name(s)\n")); + } usage(B_FALSE); } - /* validate property=value argument */ - cb.cb_propname = argv[1]; - if (((cb.cb_value = strchr(cb.cb_propname, '=')) == NULL) || - (cb.cb_value[1] == '\0')) { - (void) fprintf(stderr, gettext("missing value in " - "property=value argument\n")); + /* validate argument order: prop=val args followed by dataset args */ + for (int i = 1; i < argc; i++) { + if (strchr(argv[i], '=') != NULL) { + if (ds_start > 0) { + /* out-of-order prop=val argument */ + (void) fprintf(stderr, gettext("invalid " + "argument order\n"), i); + usage(B_FALSE); + } + } else if (ds_start < 0) { + ds_start = i; + } + } + if (ds_start < 0) { + (void) fprintf(stderr, gettext("missing dataset name(s)\n")); usage(B_FALSE); } - *cb.cb_value = '\0'; - cb.cb_value++; - - if (*cb.cb_propname == '\0') { - (void) fprintf(stderr, - gettext("missing property in property=value argument\n")); - usage(B_FALSE); + /* Populate a list of property settings */ + if (nvlist_alloc(&props, NV_UNIQUE_NAME, 0) != 0) + nomem(); + for (int i = 1; i < ds_start; i++) { + if ((ret = parseprop(props, argv[i])) != 0) + goto error; } - ret = zfs_for_each(argc - 2, argv + 2, 0, - ZFS_TYPE_DATASET, NULL, NULL, 0, set_callback, &cb); + ret = zfs_for_each(argc - ds_start, argv + ds_start, 0, + ZFS_TYPE_DATASET, NULL, NULL, 0, set_callback, props); +error: + nvlist_free(props); return (ret); } Modified: user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/cmd/zpool/zpool_main.c ============================================================================== --- user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/cmd/zpool/zpool_main.c Mon Oct 19 04:33:18 2015 (r289558) +++ user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/cmd/zpool/zpool_main.c Mon Oct 19 04:39:27 2015 (r289559) @@ -2940,6 +2940,9 @@ print_list_stats(zpool_handle_t *zhp, co uint_t c, children; char *vname; boolean_t scripted = cb->cb_scripted; + uint64_t islog = B_FALSE; + boolean_t haslog = B_FALSE; + char *dashes = "%-*s - - - - - -\n"; verify(nvlist_lookup_uint64_array(nv, ZPOOL_CONFIG_VDEV_STATS, (uint64_t **)&vs, &c) == 0); @@ -2990,24 +2993,47 @@ print_list_stats(zpool_handle_t *zhp, co ZPOOL_CONFIG_IS_HOLE, &ishole) == 0 && ishole) continue; + if (nvlist_lookup_uint64(child[c], + ZPOOL_CONFIG_IS_LOG, &islog) == 0 && islog) { + haslog = B_TRUE; + continue; + } + vname = zpool_vdev_name(g_zfs, zhp, child[c], B_FALSE); print_list_stats(zhp, vname, child[c], cb, depth + 2); free(vname); } - /* - * Include level 2 ARC devices in iostat output - */ + if (haslog == B_TRUE) { + /* LINTED E_SEC_PRINTF_VAR_FMT */ + (void) printf(dashes, cb->cb_namewidth, "log"); + for (c = 0; c < children; c++) { + if (nvlist_lookup_uint64(child[c], ZPOOL_CONFIG_IS_LOG, + &islog) != 0 || !islog) + continue; + vname = zpool_vdev_name(g_zfs, zhp, child[c], B_FALSE); + print_list_stats(zhp, vname, child[c], cb, depth + 2); + free(vname); + } + } + if (nvlist_lookup_nvlist_array(nv, ZPOOL_CONFIG_L2CACHE, - &child, &children) != 0) - return; + &child, &children) == 0 && children > 0) { + /* LINTED E_SEC_PRINTF_VAR_FMT */ + (void) printf(dashes, cb->cb_namewidth, "cache"); + for (c = 0; c < children; c++) { + vname = zpool_vdev_name(g_zfs, zhp, child[c], B_FALSE); + print_list_stats(zhp, vname, child[c], cb, depth + 2); + free(vname); + } + } - if (children > 0) { - (void) printf("%-*s - - - - - " - "-\n", cb->cb_namewidth, "cache"); + if (nvlist_lookup_nvlist_array(nv, ZPOOL_CONFIG_SPARES, &child, + &children) == 0 && children > 0) { + /* LINTED E_SEC_PRINTF_VAR_FMT */ + (void) printf(dashes, cb->cb_namewidth, "spare"); for (c = 0; c < children; c++) { - vname = zpool_vdev_name(g_zfs, zhp, child[c], - B_FALSE); + vname = zpool_vdev_name(g_zfs, zhp, child[c], B_FALSE); print_list_stats(zhp, vname, child[c], cb, depth + 2); free(vname); } Modified: user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/lib/libzfs/common/libzfs.h ============================================================================== --- user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/lib/libzfs/common/libzfs.h Mon Oct 19 04:33:18 2015 (r289558) +++ user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/lib/libzfs/common/libzfs.h Mon Oct 19 04:39:27 2015 (r289559) @@ -23,7 +23,7 @@ * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2011 Pawel Jakub Dawidek <pawel@dawidek.net>. * All rights reserved. - * Copyright (c) 2013 by Delphix. All rights reserved. + * Copyright (c) 2011, 2015 by Delphix. All rights reserved. * Copyright (c) 2012, Joyent, Inc. All rights reserved. * Copyright (c) 2012 Martin Matuska <mm@FreeBSD.org>. All rights reserved. * Copyright (c) 2013 Steven Hartland. All rights reserved. @@ -426,10 +426,11 @@ extern const char *zfs_prop_column_name( extern boolean_t zfs_prop_align_right(zfs_prop_t); extern nvlist_t *zfs_valid_proplist(libzfs_handle_t *, zfs_type_t, - nvlist_t *, uint64_t, zfs_handle_t *, const char *); + nvlist_t *, uint64_t, zfs_handle_t *, zpool_handle_t *, const char *); extern const char *zfs_prop_to_name(zfs_prop_t); extern int zfs_prop_set(zfs_handle_t *, const char *, const char *); +extern int zfs_prop_set_list(zfs_handle_t *, nvlist_t *); extern int zfs_prop_get(zfs_handle_t *, zfs_prop_t, char *, size_t, zprop_source_t *, char *, size_t, boolean_t); extern int zfs_prop_get_recvd(zfs_handle_t *, const char *, char *, size_t, Modified: user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c ============================================================================== --- user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c Mon Oct 19 04:33:18 2015 (r289558) +++ user/alc/PQ_LAUNDRY/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c Mon Oct 19 04:39:27 2015 (r289559) @@ -22,7 +22,7 @@ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2013, Joyent, Inc. All rights reserved. - * Copyright (c) 2011, 2014 by Delphix. All rights reserved. + * Copyright (c) 2011, 2015 by Delphix. All rights reserved. * Copyright (c) 2012 DEY Storage Systems, Inc. All rights reserved. * Copyright (c) 2011-2012 Pawel Jakub Dawidek <pawel@dawidek.net>. * All rights reserved. @@ -890,7 +890,8 @@ zfs_which_resv_prop(zfs_handle_t *zhp, z */ nvlist_t * zfs_valid_proplist(libzfs_handle_t *hdl, zfs_type_t type, nvlist_t *nvl, - uint64_t zoned, zfs_handle_t *zhp, const char *errbuf) + uint64_t zoned, zfs_handle_t *zhp, zpool_handle_t *zpool_hdl, + const char *errbuf) { nvpair_t *elem; uint64_t intval; @@ -1084,8 +1085,8 @@ zfs_valid_proplist(libzfs_handle_t *hdl, case ZFS_PROP_RECORDSIZE: { int maxbs = SPA_MAXBLOCKSIZE; - if (zhp != NULL) { - maxbs = zpool_get_prop_int(zhp->zpool_hdl, + if (zpool_hdl != NULL) { + maxbs = zpool_get_prop_int(zpool_hdl, ZPOOL_PROP_MAXBLOCKSIZE, NULL); } /* @@ -1403,6 +1404,7 @@ zfs_add_synthetic_resv(zfs_handle_t *zhp uint64_t old_reservation; uint64_t new_reservation; zfs_prop_t resv_prop; + nvlist_t *props; /* * If this is an existing volume, and someone is setting the volsize, @@ -1412,16 +1414,25 @@ zfs_add_synthetic_resv(zfs_handle_t *zhp if (zfs_which_resv_prop(zhp, &resv_prop) < 0) return (-1); old_reservation = zfs_prop_get_int(zhp, resv_prop); - if ((zvol_volsize_to_reservation(old_volsize, zhp->zfs_props) != - old_reservation) || nvlist_lookup_uint64(nvl, - zfs_prop_to_name(resv_prop), &new_reservation) != ENOENT) { + + props = fnvlist_alloc(); + fnvlist_add_uint64(props, zfs_prop_to_name(ZFS_PROP_VOLBLOCKSIZE), + zfs_prop_get_int(zhp, ZFS_PROP_VOLBLOCKSIZE)); + + if ((zvol_volsize_to_reservation(old_volsize, props) != + old_reservation) || nvlist_exists(nvl, + zfs_prop_to_name(resv_prop))) { + fnvlist_free(props); return (0); } if (nvlist_lookup_uint64(nvl, zfs_prop_to_name(ZFS_PROP_VOLSIZE), - &new_volsize) != 0) + &new_volsize) != 0) { + fnvlist_free(props); return (-1); - new_reservation = zvol_volsize_to_reservation(new_volsize, - zhp->zfs_props); + } + new_reservation = zvol_volsize_to_reservation(new_volsize, props); + fnvlist_free(props); + if (nvlist_add_uint64(nvl, zfs_prop_to_name(resv_prop), new_reservation) != 0) { (void) no_memory(zhp->zfs_hdl); @@ -1493,6 +1504,12 @@ zfs_setprop_error(libzfs_handle_t *hdl, "property setting is not allowed on " "bootable datasets")); (void) zfs_error(hdl, EZFS_NOTSUP, errbuf); + } else if (prop == ZFS_PROP_CHECKSUM || + prop == ZFS_PROP_DEDUP) { + (void) zfs_error_aux(hdl, dgettext(TEXT_DOMAIN, + "property setting is not allowed on " + "root pools")); + (void) zfs_error(hdl, EZFS_NOTSUP, errbuf); } else { (void) zfs_standard_error(hdl, err, errbuf); } @@ -1528,15 +1545,10 @@ zfs_setprop_error(libzfs_handle_t *hdl, int zfs_prop_set(zfs_handle_t *zhp, const char *propname, const char *propval) { - zfs_cmd_t zc = { 0 }; int ret = -1; - prop_changelist_t *cl = NULL; char errbuf[1024]; libzfs_handle_t *hdl = zhp->zfs_hdl; - nvlist_t *nvl = NULL, *realprops; - zfs_prop_t prop; - boolean_t do_prefix = B_TRUE; - int added_resv; + nvlist_t *nvl = NULL; (void) snprintf(errbuf, sizeof (errbuf), dgettext(TEXT_DOMAIN, "cannot set property for '%s'"), @@ -1548,79 +1560,149 @@ zfs_prop_set(zfs_handle_t *zhp, const ch goto error; } - if ((realprops = zfs_valid_proplist(hdl, zhp->zfs_type, nvl, - zfs_prop_get_int(zhp, ZFS_PROP_ZONED), zhp, errbuf)) == NULL) - goto error; + ret = zfs_prop_set_list(zhp, nvl); +error: nvlist_free(nvl); - nvl = realprops; + return (ret); +} - prop = zfs_name_to_prop(propname); - /* We don't support those properties on FreeBSD. */ - switch (prop) { - case ZFS_PROP_DEVICES: - case ZFS_PROP_ISCSIOPTIONS: - case ZFS_PROP_XATTR: - case ZFS_PROP_VSCAN: - case ZFS_PROP_NBMAND: - case ZFS_PROP_MLSLABEL: - (void) snprintf(errbuf, sizeof (errbuf), - "property '%s' not supported on FreeBSD", propname); - ret = zfs_error(hdl, EZFS_PERM, errbuf); - goto error; - } - if (prop == ZFS_PROP_VOLSIZE) { - if ((added_resv = zfs_add_synthetic_resv(zhp, nvl)) == -1) - goto error; - } +/* + * Given an nvlist of property names and values, set the properties for the + * given dataset. + */ +int +zfs_prop_set_list(zfs_handle_t *zhp, nvlist_t *props) +{ + zfs_cmd_t zc = { 0 }; + int ret = -1; + prop_changelist_t **cls = NULL; + int cl_idx; + char errbuf[1024]; + libzfs_handle_t *hdl = zhp->zfs_hdl; + nvlist_t *nvl; + int nvl_len; + int added_resv; - if ((cl = changelist_gather(zhp, prop, 0, 0)) == NULL) - goto error; + (void) snprintf(errbuf, sizeof (errbuf), + dgettext(TEXT_DOMAIN, "cannot set property for '%s'"), + zhp->zfs_name); - if (prop == ZFS_PROP_MOUNTPOINT && changelist_haszonedchild(cl)) { - zfs_error_aux(hdl, dgettext(TEXT_DOMAIN, - "child dataset with inherited mountpoint is used " - "in a non-global zone")); - ret = zfs_error(hdl, EZFS_ZONED, errbuf); + if ((nvl = zfs_valid_proplist(hdl, zhp->zfs_type, props, + zfs_prop_get_int(zhp, ZFS_PROP_ZONED), zhp, zhp->zpool_hdl, + errbuf)) == NULL) goto error; - } /* - * We don't want to unmount & remount the dataset when changing - * its canmount property to 'on' or 'noauto'. We only use - * the changelist logic to unmount when setting canmount=off. + * We have to check for any extra properties which need to be added + * before computing the length of the nvlist. */ - if (prop == ZFS_PROP_CANMOUNT) { - uint64_t idx; - int err = zprop_string_to_index(prop, propval, &idx, - ZFS_TYPE_DATASET); - if (err == 0 && idx != ZFS_CANMOUNT_OFF) - do_prefix = B_FALSE; + for (nvpair_t *elem = nvlist_next_nvpair(nvl, NULL); + elem != NULL; + elem = nvlist_next_nvpair(nvl, elem)) { + if (zfs_name_to_prop(nvpair_name(elem)) == ZFS_PROP_VOLSIZE && + (added_resv = zfs_add_synthetic_resv(zhp, nvl)) == -1) { + goto error; + } } - - if (do_prefix && (ret = changelist_prefix(cl)) != 0) + /* + * Check how many properties we're setting and allocate an array to + * store changelist pointers for postfix(). + */ + nvl_len = 0; + for (nvpair_t *elem = nvlist_next_nvpair(nvl, NULL); + elem != NULL; + elem = nvlist_next_nvpair(nvl, elem)) + nvl_len++; + if ((cls = calloc(nvl_len, sizeof (prop_changelist_t *))) == NULL) goto error; + cl_idx = 0; + for (nvpair_t *elem = nvlist_next_nvpair(nvl, NULL); + elem != NULL; + elem = nvlist_next_nvpair(nvl, elem)) { + + zfs_prop_t prop = zfs_name_to_prop(nvpair_name(elem)); + + assert(cl_idx < nvl_len); + /* + * We don't want to unmount & remount the dataset when changing + * its canmount property to 'on' or 'noauto'. We only use + * the changelist logic to unmount when setting canmount=off. + */ + if (!(prop == ZFS_PROP_CANMOUNT && + fnvpair_value_uint64(elem) != ZFS_CANMOUNT_OFF)) { + cls[cl_idx] = changelist_gather(zhp, prop, 0, 0); + if (cls[cl_idx] == NULL) + goto error; + } + + if (prop == ZFS_PROP_MOUNTPOINT && + changelist_haszonedchild(cls[cl_idx])) { + zfs_error_aux(hdl, dgettext(TEXT_DOMAIN, + "child dataset with inherited mountpoint is used " + "in a non-global zone")); + ret = zfs_error(hdl, EZFS_ZONED, errbuf); + goto error; + } + + /* We don't support those properties on FreeBSD. */ + switch (prop) { + case ZFS_PROP_DEVICES: + case ZFS_PROP_ISCSIOPTIONS: + case ZFS_PROP_XATTR: + case ZFS_PROP_VSCAN: + case ZFS_PROP_NBMAND: + case ZFS_PROP_MLSLABEL: + (void) snprintf(errbuf, sizeof (errbuf), + "property '%s' not supported on FreeBSD", + nvpair_name(elem)); + ret = zfs_error(hdl, EZFS_PERM, errbuf); + goto error; + } + + if (cls[cl_idx] != NULL && + (ret = changelist_prefix(cls[cl_idx])) != 0) + goto error; + + cl_idx++; + } + assert(cl_idx == nvl_len); + /* - * Execute the corresponding ioctl() to set this property. + * Execute the corresponding ioctl() to set this list of properties. */ (void) strlcpy(zc.zc_name, zhp->zfs_name, sizeof (zc.zc_name)); - if (zcmd_write_src_nvlist(hdl, &zc, nvl) != 0) + if ((ret = zcmd_write_src_nvlist(hdl, &zc, nvl)) != 0 || + (ret = zcmd_alloc_dst_nvlist(hdl, &zc, 0)) != 0) goto error; ret = zfs_ioctl(hdl, ZFS_IOC_SET_PROP, &zc); if (ret != 0) { - zfs_setprop_error(hdl, prop, errno, errbuf); + /* Get the list of unset properties back and report them. */ + nvlist_t *errorprops = NULL; + if (zcmd_read_dst_nvlist(hdl, &zc, &errorprops) != 0) + goto error; + for (nvpair_t *elem = nvlist_next_nvpair(nvl, NULL); + elem != NULL; + elem = nvlist_next_nvpair(nvl, elem)) { + zfs_prop_t prop = zfs_name_to_prop(nvpair_name(elem)); + zfs_setprop_error(hdl, prop, errno, errbuf); + } + nvlist_free(errorprops); + if (added_resv && errno == ENOSPC) { /* clean up the volsize property we tried to set */ uint64_t old_volsize = zfs_prop_get_int(zhp, ZFS_PROP_VOLSIZE); nvlist_free(nvl); + nvl = NULL; zcmd_free_nvlists(&zc); + if (nvlist_alloc(&nvl, NV_UNIQUE_NAME, 0) != 0) goto error; if (nvlist_add_uint64(nvl, @@ -1632,8 +1714,13 @@ zfs_prop_set(zfs_handle_t *zhp, const ch (void) zfs_ioctl(hdl, ZFS_IOC_SET_PROP, &zc); } } else { *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201510190439.t9J4dSZr038602>