summaryrefslogtreecommitdiffstats
path: root/cddl/contrib/opensolaris/cmd
Commit message (Collapse)AuthorAgeFilesLines
...
* MFV 263436-263438:delphij2014-03-213-13/+49
| | | | | | | | | | | | | | 3947 zpool(1M) references nonexistent zfs-features(5) 4540 zpool(1M) man page doesn't describe "readonly" property 3948 zfs sync=default is not accepted 4611 zfs(1M) still mentions 'send -r' in synopsis 4415 zpool(1M) man page missing "import -m" description 4570 Document dedupditto pool property 4572 Dedup-related documentation additions for zpool and zdb. 1371 Add -D option description to zpool(1M) manpage 4571 Add documentation for -T and interval to "zpool list" MFC after: 2 weeks
* Remove unused option -r from zpool.delphij2014-03-191-1/+1
| | | | | Submitted by: Richard Yao <ryao gentoo org> MFC after: 2 weeks
* 4478 dtrace_dof_maxsize is far too smallmarkj2014-02-281-0/+97
| | | | | | | illumos/illumos-gate@d339a29bb4765c4b6883a935cf69b669cd05bca0 PR: 187027 MFC after: 1 week
* 1452 DTrace buffer autoscaling should be less violentmarkj2014-02-222-16/+0
| | | | | | | | | | | illumos/illumos-gate@6fb4854bed54ce82bd8610896b64ddebcd4af706 This fixes the tst.resize1.d and tst.resize2.d DTrace tests, which have been failing since r261122 since they were causing dtrace(1) to attempt to allocate and use large amounts of memory, and get killed by the OOM killer as a result. MFC after: 1 month
* Fix formatting.feld2014-02-171-2/+2
| | | | | | | | | "Manpages should start a new sentence on a new line. This makes it easier for translators to track changes." -jhb Approved by: jhb MFC after: 3 days Sponsored by: SupraNet Communications, Inc
* zfs.8: fix garbled options in a sample zfs send -R command lineavg2014-02-141-1/+1
| | | | MFC after: 5 days
* zpool.8: fix typo in option description of labelclear commandavg2014-02-141-1/+1
| | | | MFC after: 5 days
* Add caveat to zpool manpage indicating that we do not automatically activatefeld2014-02-111-0/+6
| | | | | | | | | | | hot spares. This should be MFC'd to all STABLE branches. Upon the availability of zfsd, the zpool manpage on relevant branches should be updated to remove this caveat and document hot spare's reliance on zfsd. Approved by: avg MFC after: 1 week Sponsored by: SupraNet Communications
* zdb -R: do not treat numeric parameters to a flag as more flagsavg2014-01-171-0/+1
| | | | | Reviewed by: Matthew Ahrens <mahrens@delphix.com> MFC after: 1 week
* zinject must use ioctl(2) compatibility wrapperavg2014-01-161-0/+1
| | | | | MFC after: 8 days Sponsored by: HybridCluster
* MFV r260154 + 260182:delphij2014-01-024-99/+403
| | | | | | | | | 4369 implement zfs bookmarks 4368 zfs send filesystems from readonly pools Illumos/illumos-gate@78f171005391b928aaf1642b3206c534ed644332 MFC after: 2 weeks
* MFV r260152:delphij2014-01-011-2/+2
| | | | | | | | | | 4208 Typo in zfs_main.c: "posxiuser" illumos/illumos-gate@f38cb554a534c6df738be3f4d23327e69888e634 Note: this is a stripped down version of Illumos change. MFC after: 2 weeks
* MFV r259170:delphij2014-01-014-47/+136
| | | | | | | | | | | | | 4370 avoid transmitting holes during zfs send 4371 DMU code clean up illumos/illumos-gate@43466aae47bfcd2ad9bf501faec8e75c08095e4f NOTE: Make sure the boot code is updated if a zpool upgrade is done on boot zpool. MFC after: 2 weeks
* MFV r258972:delphij2013-12-312-4/+123
| | | | | | | | 4373 add block contents print to zstreamdump illumos/illumos-gate@994fb6b8a9d07a8021d77d79f46e30637bca3ad3 MFC after: 2 weeks
* MFV r242733:delphij2013-12-314-46/+133
| | | | | | | | | | | | | | | 3306 zdb should be able to issue reads in parallel 3321 'zpool reopen' command should be documented in the man page and help message illumos/illumos-gate@31d7e8fa33fae995f558673adb22641b5aa8b6e1 FreeBSD porting notes: the kernel part of this changeset depends on Solaris buf(9S) interfaces and are not really applicable for our use. vdev_disk.c is patched as-is to reduce diverge from upstream, but vdev_file.c is left intact. MFC after: 2 weeks
* MFV r258384:delphij2013-12-254-41/+50
| | | | | | | | 2583 Add -p (parsable) option to zfs list illumos/illumos-gate@43d68d68c1ce08fb35026bebfb141af422e7082e MFC after: 2 weeks
* Fix incorrect markup introduced in r259813.delphij2013-12-241-1/+1
| | | | | Pointy hat to: delphij X-MFC-after: r259813
* MFV r258374:delphij2013-12-244-26/+56
| | | | | | | | | | | 4171 clean up spa_feature_*() interfaces 4172 implement extensible_dataset feature for use by other zpool features illumos/illumos-gate@2acef22db7808606888f8f92715629ff3ba555b9 MFC after: 2 weeks
* MFV r258373:delphij2013-12-241-19/+30
| | | | | | | | | | | 4168 ztest assertion failure in dbuf_undirty 4169 verbatim import causes zdb to segfa 4170 zhack leaves pool in ACTIVE state illumos/illumos-gate@7fdd916c474ea52896c671bbe7b56ba34a1ca132 MFC after: 2 weeks
* Don't panic when we get ZPOOL_STATUS_NON_NATIVE_ASHIFTdelphij2013-12-091-0/+6
| | | | | | while listing importable pools. MFC after: 3 days
* mdoc: remove EOL whitespace.joel2013-12-061-1/+1
|
* Enable some previously-disabled DTrace tests for umod, ufunc and usym. Theymarkj2013-12-043-3/+3
| | | | | | expect the installed ksh binary to be named "ksh", which is not the case when it's installed on FreeBSD via the shells/ksh93 port. Allow for it to be "ksh93" as well so that the tests can actually pass.
* MFV r258371,r258372: 4101 metaslab_debug should allow for fine-grained controlavg2013-11-283-80/+174
| | | | | | | | | | | | | | | | | | | 4101 metaslab_debug should allow for fine-grained control 4102 space_maps should store more information about themselves 4103 space map object blocksize should be increased 4104 ::spa_space no longer works 4105 removing a mirrored log device results in a leaked object 4106 asynchronously load metaslab illumos/illumos-gate@0713e232b7712cd27d99e1e935ebb8d5de61c57d Note that some tunables have been removed and some new tunables have been added. Of particular note, FreeBSD-only knob vfs.zfs.space_map_last_hope is removed as it was a nop for some time now (after one of the previous merges from upstream). MFC after: 11 days Sponsored by: HybridCluster [merge]
* MFV r255255: 4045 zfs write throttle & i/o scheduler performance workavg2013-11-261-7/+7
| | | | | | | | | | | | | illumos/illumos-gate@69962b5647e4a8b9b14998733b765925381b727e Please note the following changes: - zio_ioctl has lost its priority parameter and now TRIM is executed with 'now' priority - some knobs are gone and some new knobs are added; not all of them are exposed as tunables / sysctls yet MFC after: 10 days Sponsored by: HybridCluster [merge]
* Use 'int' to store the return value of getopt(), rather than char.jhibbits2013-11-202-3/+4
| | | | | | | | On some architectures (powerpc), char is unsigned by default, which means comparisons against -1 always fail, so the programs get stuck in an infinite loop. MFC after: 1 week
* If the initial attempt to open /dev/ksyms fails, kldload the ksyms modulemarkj2013-10-271-0/+11
| | | | and retry.
* Convert the lockstat(1) man page to mdoc and make sure that it getsmarkj2013-10-271-827/+351
| | | | | | | | | | | | installed. Additionally, remove Solaris-specific sections and references, and replace example outputs with output from lockstat on FreeBSD, since lockstat's output contains stack traces. This change also removes some examples that don't seem to work properly on FreeBSD. The examples should be re-added when lockstat is fixed. Reported by: avg MFC after: 1 week
* Added support for the 'zfs list -t snap' and 'zfs snap' aliases which aresmh2013-10-232-16/+24
| | | | | | | | | | | | | | | | available under Oracle Solaris 11. This includes an update to the ZFS(8) man page to reflect all the available alias (snap, umount, and recv). Initial changes obtained from ZFS On Linux + fixes for man page and cmd help: https://github.com/zfsonlinux/zfs/commit/10b75496bb0cb7a7b8146c263164adc37f1d176a https://github.com/zfsonlinux/zfs/commit/cf81b00a73fe47fdb21586ac1cc179b734540973 Obtained from: https://github.com/zfsonlinux/zfs MFC after: 2 weeks Sponsored by: Multiplay
* Convert the dtrace(1) man page to mdoc and fix up some aspects of it thatmarkj2013-10-101-645/+652
| | | | | | | | | | | | | | | | don't make sense on FreeBSD. In particular, - remove the ATTRIBUTES section, - remove references to the Solaris Dynamic Tracing Guide, except in the SEE ALSO section, - update the description of the -A option for FreeBSD's implementation, - remove references to Solaris-specific programs and configuration files, and replace them with FreeBSD equivalents where possible. The content has not changed aside from this. Approved by: re (joel) MFC after: 1 week
* Fix implicit declaration of jail_getid()rmh2013-10-071-0/+1
| | | | Approved by: re
* MFV r254750:delphij2013-09-212-5/+34
| | | | | | | | | | | | | Add support of Illumos dumps on zvol over RAID-Z. Note that this only adds the features. FreeBSD would still need more work to support dumping on zvols. Illumos ZFS issues: 2932 support crash dumps to raidz, etc. pools MFC after: 1 month Approved by: re (ZFS blanket)
* MFV r254751:delphij2013-08-241-1/+4
| | | | | | | | | | Don't treat the parameter as a number (pool GUID) when there is error converting it from string, instead, treat it as the pool name. Illumos ZFS issues: 1765 assert triggered in libzfs_import.c trying to import pool name beginning with a number
* Enhance the ZFS vdev layer to maintain both a logical and a physicalgibbs2013-08-211-2/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | minimum allocation size for devices. Use this information to automatically increase ZFS's minimum allocation size for new top-level vdevs to a value that more closely matches the optimum device allocation size. Use GEOM's stripesize attribute, if set, as the physical sector size of the GEOM. Calculate the minimum blocksize of each metaslab class. Use the calculated value instead of SPA_MINBLOCKSIZE (512b) when determining the likelyhood of compression yeilding a reduction in physical space usage. Report devices with sub-optimal block size configuration in "zpool status". Also properly fail attempts to attach devices with a logical block size greater than 8kB, since this will cause corruption to ZFS's label area. Sponsored by: Spectra Logic Corporaion MFC after: 2 weeks Background ========== Many modern devices use physical allocation units that are much larger than the minimum logical allocation size accessible by external commands. Two prevalent examples of this are 512e disk drives (512b logical sector, 4K physical sector) and flash devices (512b logical sector, 4K or larger allocation block size, and 128k or larger erase block size). Operations that modify less than the physical sector size result in a costly read-modify-write or garbage collection sequence on these devices. Simply exporting the true physical sector of the device to ZFS would yield optimal performance, but has two serious drawbacks: 1) Existing pools created with devices that have different logical and physical block sizes, but were configured to use the logical block size (e.g. because the OS version used for pool construction reported the logical block size instead of the physical block size) will suddenly find that the vdev allocation size has increased. This can be easily tolerated for active members of the array, but ZFS would prevent replacement of a vdev with another identical device because it now appears that the smaller allocation size required by the pool is not supported by the new device. 2) The device's physical block size may be too large to be supported by ZFS. The optimal allocation size for the vdev may be quite large. For example, a RAID controller may export a vdev that requires read-modify-write cycles unless accessed using 64k aligned/sized requests. ZFS currently has an 8k minimum block size limit. Reporting both the logical and physical allocation sizes for vdevs solves these problems. A device may be used so long as the logical block size is compatible with the configuration. By comparing the logical and physical block sizes, new configurations can be optimized and administrators can be notified of any existing pools that are sub-optimal. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h: Add the SPA_ASHIFT constant. ZFS currently has a hard upper limit of 13 (8k) for ashift and this constant is used to both document and enforce this limit. sys/cddl/contrib/opensolaris/uts/common/sys/fs/zfs.h: Add the VDEV_AUX_ASHIFT_TOO_BIG error code. Add fields for exporting the configured, logical, and physical ashift to the vdev_stat_t structure. Add VDEV_STAT_VALID() macro which can be used to verify the presence of required vdev_stat_t fields in nvlist data. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c: Provide a SYSCTL_PROC handler for "max_auto_ashift". Since the limit is only referenced long after boot when a create operation occurs, there's no compelling need for it to be a boot time configurable tunable. This also allows the validation code for the max_auto_ashift value to be contained within the sysctl handler. Populate the new fields in the vdev_stat_t structure. Fail vdev opens if the vdev reports an ashift larger than SPA_MAXASHIFT. Propogate vdev_logical_ashift and vdev_physical_ashift between child and parent vdevs as is done for vdev_ashift. In vdev_open(), restore code that fails opens for devices where vdev_ashift grows. This can only happen now if the device's logical ashift grows, which means it really isn't safe to use the device. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_file.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_missing.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_raidz.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_root.c: Update the vdev_open() API so that both logical (what was just ashift before) and physical ashift are reported. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h: Add two new fields, vdev_physical_ashift and vdev_logical_ashift, to vdev_t. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c: Add vdev_ashift_optimize(). Call it anytime a new top-level vdev is allocated. cddl/contrib/opensolaris/cmd/zpool/zpool_main.c: Add text for the VDEV_AUX_ASHIFT_TOO_BIG error. For each sub-optimally configured leaf vdev, report configured and native block sizes. cddl/contrib/opensolaris/cmd/zpool/zpool_main.c: cddl/contrib/opensolaris/lib/libzfs/common/libzfs.h: cddl/contrib/opensolaris/lib/libzfs/common/libzfs_status.c: Introduce a new zpool status: ZPOOL_STATUS_NON_NATIVE_ASHIFT. This status is reported on healthy pools containing vdevs configured to use a block size smaller than their reported physical block size. cddl/contrib/opensolaris/lib/libzfs/common/libzfs_status.c: Update find_vdev_problem() and supporting functions to provide the full vdev_stat_t structure to problem checking routines, and to allow decent into replacing vdevs. Add a vdev_non_native_ashift() validator which is used on the full vdev tree to check for ZPOOL_STATUS_NON_NATIVE_ASHIFT. cddl/contrib/opensolaris/lib/libzpool/common/kernel.c: cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h: Enhance sysctl userland stubs now that a SYSCTL_PROC handler is used in vdev.c. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/metaslab_impl.h: When the group membership of a metaslab class changes (i.e. when a vdev is added or removed from a pool), walk the group list to determine the smallest block size currently available and record this in the metaslab class. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/metaslab.h: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c: Add the metaslab_class_get_minblocksize() accessor. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio_compress.h: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_compress.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c: In zio_compress_data(), take the minimum blocksize as an input parameter instead of assuming SPA_MINBLOCKSIZE. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c: In l2arc_compress_buf(), pass SPA_MINBLOCKSIZE as the minimum blocksize of the device. The l2arc code performs has it's own code for deciding if compression is worth while, so this effectively disables zio_compress_data() from second guessing the original decision. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c: In zio_write_bp_init(), use the minimum blocksize of the normal metaslab class when compressing data.
* MFV r254079:delphij2013-08-081-5/+16
| | | | | | | | | | | Illumos ZFS issues: 3957 ztest should update the cachefile before killing itself 3958 multiple scans can lead to partial resilvering 3959 ddt entries are not always resilvered 3960 dsl_scan can skip over dedup-ed blocks if physical birth != logical birth 3961 freed gang blocks are not resilvered and can cause pool to suspend 3962 ztest should print out zfs debug buffer before exiting
* MFV r254071:delphij2013-08-071-0/+3
| | | | | | | | | | | | | | | | | | | | | | | Fix a regression introduced by fix for Illumos bug #3834. Quote from Matthew Ahrens on the Illumos issue: ztest fails this assertion because ztest_dmu_read_write() does dmu_tx_hold_free(tx, bigobj, bigoff, bigsize); and then dmu_object_set_checksum(os, bigobj, (enum zio_checksum)ztest_random_dsl_prop(ZFS_PROP_CHECKSUM), tx); If the region to free is past the end of the file, the DMU assumes that there will be nothing to do for this object. However, ztest does set_checksum(), which must modify the dnode. The fix is for ztest to also call dmu_tx_hold_bonus(tx, bigobj); so we can account for the dirty data associated with setting the checksum Illumos ZFS issues: 3955 ztest failure: assertion refcount_count(&tx->tx_space_written) + delta <= tx->tx_space_towrite
* MFV r254070:delphij2013-08-071-8/+44
| | | | | | | | | | Merge vendor bugfix for ZFS test suite that triggers false positives. Illumos ZFS issues: 3949 ztest fault injection should avoid resilvering devices 3950 ztest: deadman fires when we're doing a scan 3951 ztest hang when running dedup test 3952 ztest: ztest_reguid test and ztest_fault_inject don't place nice together
* Fix implicit declaration of warnx().rmh2013-08-041-0/+1
|
* MFV r253781 + r253871:delphij2013-07-301-0/+6
| | | | | | | Illumos ZFS issues: 3894 zfs should not allow snapshot of inconsistent dataset MFC after: 2 weeks
* DTrace: re-apply r249426 now that the underlying issues have been solved.pfg2013-07-2814-18/+151
| | | | | | | | | | | | | | | | | | | | Merge change from illumos: 3519 DTrace fails to resolve const types from fbt 3520 dtrace internal error -- token type 316 is not a valid D compilation token 3521 clean up dtrace unit tests Illumos Revision: e98f46c Reference: https://www.illumos.org/issues/3519 https://www.illumos.org/issues/3520 https://www.illumos.org/issues/3521 Tested by: Fabian Keil Obtained from: Illumos MFC after: 1 month
* DTrace: re-merge remainder of r249367 (original from Illumos).pfg2013-07-2824-149/+509
| | | | | | | | | | | | | | | | | | | | | | | Bring back some important fixes from Illumos: 3022 DTrace: keys should not affect the sort order when sorting by value 3023 it should be possible to dereference dynamic variables 3024 D integer narrowing needs some work We particularly avoid the LD_NOLAZYLOAD changes that Illumos made as those don't apply to FreeBSD and were causing problems in interactive mode. Illumos Revision: 13758:23432da34147 Reference: https://www.illumos.org/issues/3022 https://www.illumos.org/issues/3023 https://www.illumos.org/issues/3024 MFC after: 1 month Tested by: markj
* Use kern_ioctl() rather than ioctl() for testing the FBT provider, since themarkj2013-07-277-12/+12
| | | | latter doesn't exist in FreeBSD. All the tests under fbtprovider pass now.
* Manually merge part of vendor import r238583 from Illumos.delphij2013-07-181-1/+1
| | | | | | | | | Illumos changeset: 13680:2bd022a765e2 Illumos ZFS issue: 2671 zpool import should not fail if vdev ashift has increased MFC after: 3 days
* Fix misleading or remove irrelevant illumos messages and manpage referencesmm2013-07-041-9/+13
| | | | | | | | in the zfs command. PR: bin/178996 Submitted by: Peter Schaefer <peter.schaefer@wilhelmheinrichs.de> MFC after: 3 days
* Fixed ZFS zpool freeze (debug command) not processing due to invalid ioctl ↵smh2013-06-211-4/+3
| | | | | | call syntax. MFC after: 1 week
* MFV r251644:delphij2013-06-123-4/+6
| | | | | | | | | | | Poor ZFS send / receive performance due to snapshot hold / release processing (by smh@) Illumos ZFS issues: 3740 Poor ZFS send / receive performance due to snapshot hold / release processing MFC after: 2 weeks
* MFV r251624:delphij2013-06-111-1/+1
| | | | | | | | | txg commit callbacks don't work Illumos ZFS issues: 3747 txg commit callbacks don't work MFC after: 2 weeks
* MFV r251623:delphij2013-06-111-8/+29
| | | | | | | | | zpool create should treat -O mountpoint and -m the same Illumos ZFS issues: 3745 zpool create should treat -O mountpoint and -m the same MFC after: 2 weeks
* Port the SDT test now that it's possible to create SDT probes that takemarkj2013-06-022-13/+11
| | | | | | | | | | | | seven arguments. The original test uses Solaris' uadmin system call to trigger the test probe; this change adds a sysctl to the dtrace_test module and gets the test program to trigger the test probe via the sysctl handler. The test is currently failing on amd64 because of some bugs in the way that probe arguments beyond the first five are obtained - these bugs will be fixed in a separate change.
* Re-introduce another part of r249367. This commit fixes a register leak inmarkj2013-05-192-0/+85
| | | | | | | | | | | | dt_cg_ptrsize() and generally cleans up some of the error handling around register allocation. This change corresponds to part of illumos-gate commit e5803b76927480: 3025 register leak in D code generation Reviewed by: pfg Obtained from: illumos MFC after: 1 month
* Convert a couple of helper scripts used to test the ip provider to work onmarkj2013-05-152-11/+20
| | | | | | | | FreeBSD. In the IPv6 case, try each interface before returning an error; each IPv6-enabled interface will have a link-local address even if the link isn't up. MFC after: 1 week
OpenPOWER on IntegriCloud