Commit Graph

160 Commits

Author SHA1 Message Date
Mark Johnston
da3d1eecc5 5396 fix longjmp clobbering errors
illumos/illumos-gate@67a4bb8f9a

Reviewed by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
Reviewed by: Igor Kozhukhov <ikozhukhov@gmail.com>
Approved by: Richard Lowe <richlowe@richlowe.net>
Author: Gary Mills <gary_mills@fastmail.fm>
2016-08-13 19:54:32 +00:00
Andriy Gapon
298580cb35 6447 handful of nvpair cleanups
illumos/illumos-gate@759e89be35
759e89be35

https://www.illumos.org/issues/6447
  I got a patch from someone who uses nvpair code outside of illumos. It fixes a
  couple of gcc warnings/bugs for him.
     1. silence uninitialized use warnings
     2. add parentheses around assignment used as truth value
     3. fix printf format specifier (ll is for integers only)
     4. strstr, strspn, strcspn, and strcmp are declared in string.h, not
        strings.h.
     5. avoid scanning integer into boolean variable

Reviewed by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
Reviewed by: Andy Stormont <astormont@racktopsystems.com>
Reviewed by: Garrett D'Amore <garrett@damore.org>
Approved by: Robert Mustacchi <rm@joyent.com>
Author: Steve Dougherty <sdougherty@barracuda.com>
2016-07-12 12:05:58 +00:00
Andriy Gapon
f728d00c4d 6314 buffer overflow in dsl_dataset_name
illumos/illumos-gate@9adfa60d48
9adfa60d48

https://www.illumos.org/issues/6314
  Callers of dsl_dataset_name pass a buffer of size ZFS_MAXNAMELEN, but
  dsl_dataset_name copies the datasets' name PLUS the snapshot name to it,
  resulting in a max of 2 * ZFS_MAXNAMELEN + '@'.

Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Prakash Surya <prakash.surya@delphix.com>
Reviewed by: Igor Kozhukhov <ikozhukhov@gmail.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Matthew Ahrens <mahrens@delphix.com>
2016-07-12 12:01:54 +00:00
Andriy Gapon
dc71048043 6931 lib/libzfs: cleanup gcc warnings
illumos/illumos-gate@88f61dee20
88f61dee20

https://www.illumos.org/issues/6931
  need cleanup:
  CERRWARN += -_gcc=-Wno-switch
  CERRWARN += -_gcc=-Wno-parentheses
  CERRWARN += -_gcc=-Wno-unused-function

Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Approved by: Robert Mustacchi <rm@joyent.com>
Author: Igor Kozhukhov <ikozhukhov@gmail.com>
2016-07-12 12:00:31 +00:00
Andriy Gapon
febe58b078 6872 zfs libraries should not allow uninitialized variables
illumos/illumos-gate@f83b46baf9
f83b46baf9

https://www.illumos.org/issues/6872
  We compile the zfs libraries with -Wno-uninitialized. We should remove
  this. Change makefiles, fix new warnings, fix pbchk errors.

Reviewed by: Dan Kimmel <dan.kimmel@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Prakash Surya <prakash.surya@delphix.com>
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
Approved by: Robert Mustacchi <rm@joyent.com>
Author: Paul Dagnelie <pcd@delphix.com>
2016-07-12 11:59:25 +00:00
Andriy Gapon
aecdfa442a 4521 zfstest is trying to execute evil "zfs unmount -a"
illumos/illumos-gate@8808ac5dae
8808ac5dae

https://www.illumos.org/issues/4521
  zfstest is trying to execute evil "zfs unmount -a", which fails (fortunately,
  as it would otherwise leave me with my ~ missing):
  03:44:11.86 cannot unmount '/export/home/yuri': Device busy cannot unmount '/
  export/home': Device busy
  03:44:11.86 ERROR: /usr/sbin/zfs unmount -a exited 1
  This affects, at least, zfs_mount_009_neg and zfs_mount_all_001_pos, both
  failing on that step. The pool containing the /export/home hierarchy is
  included in KEEP variable, but it doesn't seem to affect anything here.

Reviewed by: Andriy Gapon <avg@FreeBSD.org>
Reviewed by: Dan McDonald <danmcd@omniti.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: John Kennedy <john.kennedy@delphix.com>
Approved by: Robert Mustacchi <rm@joyent.com>
Author: Yuri Pankov <yuri.pankov@nexenta.com>
2016-07-12 11:58:04 +00:00
Andriy Gapon
9b1e23defb 5813 zfs_setprop_error(): Handle errno value E2BIG.
illumos/illumos-gate@6fdcb3d1c2
6fdcb3d1c2

https://www.illumos.org/issues/5813
  Lets pull in this patch from freebsd:
  http://svnweb.freebsd.org/base?view=revision&revision=271764
  zfs_setprop_error(): Handle errno value E2BIG.
  This errno value is emitted by dsl_props_set_check() in
  sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_prop.c, and
  is used to mean that the property value is too long. For the record,
  the maximum length is ZAP_MAXVALUELEN, which is 8*1024 bytes.
  Instead of claiming an unknown error (and abort()ing), provide
  something more specific to the scenario involved. As far as I
  can tell, E2BIG is not emitted for any other scenario.
  MFC after: 1 week
  Sponsored by: Spectra Logic
  Affects: All ZFS versions starting 27 Feb 2009 (illumos ccba0801)
  This change modified the value returned by
  dsl_props_set_check(), so that it can distinguish between
  a name that's too long and a value that's too long, but
  libzfs was not updated accordingly.
  MFSpectraBSD: r1051499 on 2014/03/28 11:07:59

Reviewed by: Paul Dagnelie <paul.dagnelie@delphix.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Prakash Surya <prakash.surya@delphix.com>
Reviewed by: Richard Elling <richard.elling@richardelling.com>
Approved by: Garrett D'Amore <garrett@damore.org>
Author: Will Andrews <will@freebsd.org>
2016-07-12 11:56:45 +00:00
Andriy Gapon
9aa175f249 6873 zfs_destroy_snaps_nvl leaks errlist
illumos/illumos-gate@4cde22c299
4cde22c299

https://www.illumos.org/issues/6873
  lzc_destroy_snaps() returns an nvlist in errlist.
  zfs_destroy_snaps_nvl() should nvlist_free() it before returning.

Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Paul Dagnelie <pcd@delphix.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Chris Williamson <chris.williamson@delphix.com>
2016-07-12 11:54:25 +00:00
Andriy Gapon
8e810a64c6 6879 incorrect endianness swap for drr_spill.drr_length in libzfs_sendrecv.c
illumos/illumos-gate@20fea7a474
20fea7a474

https://www.illumos.org/issues/6879
  In libzfs_sendrecv, there's a typo:
  case DRR_SPILL:
              if (byteswap) {
                  drr->drr_u.drr_write.drr_length =
                      BSWAP_64(drr->drr_u.drr_spill.drr_length);
              }
  Instead of drr_write.drr_length, we should be assigning the result of the
  byteswap to drr_spill.drr_length.

Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Paul Dagnelie <pcd@delphix.com>
Approved by: Robert Mustacchi <rm@joyent.com>
Author: Dan Kimmel <dan.kimmel@delphix.com>
2016-07-12 11:52:33 +00:00
Andriy Gapon
ec16b455f0 6111 zfs send should ignore datasets created after the ending snapshot
illumos/illumos-gate@4a20c933b1
4a20c933b1

https://www.illumos.org/issues/6111
  If you create a zfs child folder, zfs send returns an error when a recursive
  incremental send is done between two snapshots made prior to the folder
  creation.
  The problem can be reproduced with the following steps.
  root@zfs:/# zfs create pool/test
  root@zfs:/# zfs snapshot pool/test@snap1
  root@zfs:/# zfs snapshot pool/test@snap2
  root@zfs:/# zfs create pool/test/child
  root@zfs:/# zfs send -R -I pool/test@snap1 pool/test@snap2 > /dev/null
  WARNING: could not send pool/test/child@snap2: does not exist
  WARNING: could not send pool/test/child@snap2: does not exist
  root@zfs:/# echo $?
  1
  root@zfs:/# zfs snapshot -r pool/test@snap3
  root@zfs:/# zfs send -R -I pool/test@snap1 pool/test@snap3 > /dev/null
  root@zfs:/# echo $?
  0
  root@zfs:/# zfs send -R -I pool/test@snap2 pool/test@snap3 > /dev/null
  root@zfs:/# echo $?
  0
  Since pool/test/child was created after snap2, zfs send should not expect snap2
  to be in pool/test/child when doing a recursive send. It should examine the
  compare the creation time of the snapshot and each child folder to decide if
  the folder will be sent. The next incremental send between snap2 and snap3
  would properly create the child folder and snap3 which first appears in the
  child folder.
  The problem is identical if '-i' is used instead of '-I'.

Reviewed by: Alex Aizman alex.aizman@nexenta.com
Reviewed by: Alek Pinchuk alek.pinchuk@nexenta.com
Reviewed by: Roman Strashkin roman.strashkin@nexenta.com
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Paul Dagnelie <pcd@delphix.com>
Approved by: Garrett D'Amore <garrett@damore.org>
Author: Alex Deiter <alex.deiter@nexenta.com>
2016-07-12 11:48:59 +00:00
Andriy Gapon
73f0e3e3e5 6902 speed up listing of snapshots if requesting name only and sorting by name
illumos/illumos-gate@0d8fa8f8eb
0d8fa8f8eb

https://www.illumos.org/issues/6902
  pjd has authored and commited a patch in Jan 21, 2012 that substanially speeds
  up zfs snapshot listing if requesting only the name property and sorting by
  name.
  In this special case, the snapshot properties do not need to be loaded. This
  code has been adopted by zfsonlinux on May 29, 2012.
  Commit message from pjd:
       Dramatically optimize listing snapshots when user requests only
       snapshot
       names and wants to sort them by name, ie. when executes:
          1. zfs list -t snapshot -o name -s name
       Because only name is needed we don't have to read all snapshot
       properties.
       Below you can find how long does it take to list 34509 snapshots from
       a single
       disk pool before and after this change with cold and warm cache:
       before:
          1. time zfs list -t snapshot -o name -s name > /dev/null
             cold cache: 525s
             warm cache: 218s
       after:
          1. time zfs list -t snapshot -o name -s name > /dev/null
             cold cache: 1.7s
             warm cache: 1.1s
  References:
  http://svnweb.freebsd.org/base?view=revision&revision=230438
  https://github.com/freebsd/freebsd/commit/8e3e9863
  https://github.com/zfsonlinux/zfs/commit/0cee2406

Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Pawel Dawidek <pjd@freebsd.org>
Reviewed by: Brian Behlendorf <behlendorf1@llnl.gov>
Approved by: Garrett D'Amore <garrett@damore.org>
Author: Martin Matuska <martin@matuska.org>
2016-07-12 11:21:41 +00:00
Andriy Gapon
21bdd8ff9f 6876 Stack corruption after importing a pool with a too-long name
illumos/illumos-gate@c971037baa
c971037baa

https://www.illumos.org/issues/6876
  Calling dsl_dataset_name on a dataset with a 256 byte buffer is asking for
  trouble. We should check every dataset on import, using a 1024 byte buffer and
  checking each time to see if the dataset's new name is longer than 256 bytes.

Reviewed by: Prakash Surya <prakash.surya@delphix.com>
Reviewed by: Dan Kimmel <dan.kimmel@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
Approved by: Richard Lowe <richlowe@richlowe.net>
Author: Paul Dagnelie <pcd@delphix.com>
2016-07-12 11:20:00 +00:00
Andriy Gapon
0efd880fa0 6052 decouple lzc_create() from the implementation details
illumos/illumos-gate@26455f9efc
26455f9efc

https://www.illumos.org/issues/6052
  At the moment type parameter of lzc_create() is of dmu_objset_type_t type.
  That exposes an implementation detail and requires sys/fs/zfs.h to be included
  in libzfs_core.h creating unnecessary coupling between libzfs_core interface
  and ZFS internals.
  I think that dmu_objset_type_t should be replaced with a libzfs_core
  enumeration of supported dataset types.
  For ABI reasons the new enumeration could be bit-compatible with
  dmu_objset_type_t.
  For example:
      typedef enum {
          LZC_DST_ZFS = 2,
          LZC_DST_ZVOL
      } lzc_dataset_type_t;

Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Approved by: Richard Lowe <richlowe@richlowe.net>
Author: Andriy Gapon <andriy.gapon@clusterhq.com>
2016-04-22 12:51:55 +00:00
Alexander Motin
41e0d6d109 6418 zpool should have a label clearing command
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Author: Will Andrews <will@firepipe.net>

Closes #83
Closes #32
2016-04-09 19:49:40 +00:00
Alexander Motin
2d8b9931c7 6739 userland version of cv_timedwait_hires() always assumes absolute time
Reviewed by: Paul Dagnelie <pcd@delphix.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Dan McDonald <danmcd@omniti.com>
Reviewed by: Robert Mustacchi <rm@joyent.com>
Approved by: Robert Mustacchi <rm@joyent.com>
Author: George Wilson <george.wilson@delphix.com>

illumos/illumos-gate@41c6413cb5
2016-04-02 08:24:23 +00:00
Alexander Motin
d50309ea89 4448 zfs diff misprints unicode characters
Reviewed by: Igor Kozhukhov <ikozhukhov@gmail.com>
Reviewed by: Toomas Soome <tsoome@me.com>
Approved by: Matthew Ahrens <mahrens@delphix.com>
Author: Joshua M. Clulow <jmc@joyent.com>

illumos/illumos-gate@b211eb9181
2016-03-08 18:51:12 +00:00
Alexander Motin
95c8eb9c67 6544 incorrect comment in libzfs.h about offline status
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Gerhard Roethlin <git@the-color-black.net>

illumos/illumos-gate@cb605c4d8a
2016-03-08 18:47:24 +00:00
Alexander Motin
117b5ba78e 6659 nvlist_free(NULL) is a no-op
Reviewed by: Toomas Soome <tsoome@me.com>
Reviewed by: Marcel Telka <marcel@telka.sk>
Approved by: Robert Mustacchi <rm@joyent.com>
Author: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>

illumos/illumos-gate@aab83bb83b
2016-03-08 18:08:33 +00:00
Alexander Motin
a51bfc6a1e 5027 zfs large block support (add copyright)
Author: Matthew Ahrens <matt@mahrens.org>

illumos/illumos-gate@c3d26abc9e
2016-03-08 17:48:26 +00:00
Alexander Motin
0fbf79a6b3 6358 A faulted pool with only unavailable vdevs triggers assertion
failure in libzfs

Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Andrew Stormont <andyjstormont@gmail.com>
Reviewed by: Serban Maduta <serban.maduta@gmail.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Dan Vatca <dan.vatca@gmail.com>

illumos/illumos-gate@b289d045e0
2016-01-29 17:18:50 +00:00
Alexander Motin
cfb45c466f 4986 receiving replication stream fails if any snapshot exceeds refquota
Reviewed by: John Kennedy <john.kennedy@delphix.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Approved by: Gordon Ross <gordon.ross@nexenta.com>
Author: Dan McDonald <danmcd@omniti.com>

illumos/illumos-gate@5878fad70d
2016-01-26 13:20:31 +00:00
Alexander Motin
fabafcb14e 6328 Fix cstyle errors in zfs codebase
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Alex Reece <alex@delphix.com>
Reviewed by: Richard Elling <Richard.Elling@RichardElling.com>
Reviewed by: Jorgen Lundman <lundman@lundman.net>
Approved by: Robert Mustacchi <rm@joyent.com>
Author: Paul Dagnelie <pcd@delphix.com>

illumos/illumos-gate@9a686fbc18
2015-10-19 08:16:46 +00:00
Alexander Motin
43d8621a0c 5847 libzfs_diff should check zfs_prop_get() return
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Albert Lee <trisk@omniti.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Alexander Eremin <a.eremin@nexenta.com>

illumos/illumos-gate@8430278980
2015-10-18 18:30:47 +00:00
Alexander Motin
20fe8f90e0 5561 support root pools on EFI/GPT partitioned disks
5125 update zpool/libzfs to manage bootable whole disk pools (EFI/GPT labeled disks)

Reviewed by: Jean McCormack <jean.mccormack@nexenta.com>
Reviewed by: Josef 'Jeff' Sipek <josef.sipek@nexenta.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Hans Rosenfeld <hans.rosenfeld@nexenta.com>

illumos/illumos-gate@1a902ef862
2015-10-18 17:57:42 +00:00
Alexander Motin
8344a1d622 6298 zfs_create_008_neg and zpool_create_023_neg need to be updated for large block support
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: John Kennedy <john.kennedy@delphix.com>
Approved by: Robert Mustacchi <rm@joyent.com>
Author: Joe Stein <joe.stein@delphix.com>

illumos/illumos-gate@e9316f7696
2015-10-18 11:23:58 +00:00
Alexander Motin
c3f02fb90c 5745 zfs set allows only one dataset property to be set at a time
Reviewed by: Christopher Siden <christopher.siden@delphix.com>
Reviewed by: George Wilson <george@delphix.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Bayard Bell <buffer.g.overflow@gmail.com>
Reviewed by: Richard PALO <richard@NetBSD.org>
Reviewed by: Steven Hartland <killing@multiplay.co.uk>
Approved by: Rich Lowe <richlowe@richlowe.net>
Author: Chris Williamson <chris.williamson@delphix.com>

illumos/illumos-gate@30925561c2
2015-10-18 08:12:05 +00:00
Alexander Motin
b7ccc7b38a 2605 want to resume interrupted zfs send
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Paul Dagnelie <pcd@delphix.com>
Reviewed by: Richard Elling <Richard.Elling@RichardElling.com>
Reviewed by: Xin Li <delphij@freebsd.org>
Reviewed by: Arne Jansen <sensille@gmx.net>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Matthew Ahrens <mahrens@delphix.com>

illumos/illumos-gate@9c3fd1216f
2015-10-14 11:36:55 +00:00
Alexander Motin
d7476bd1df 5764 "zfs send -nv" directs output to stderr
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Paul Dagnelie <paul.dagnelie@delphix.com>
Reviewed by: Basil Crow <basil.crow@delphix.com>
Reviewed by: Steven Hartland <killing@multiplay.co.uk>
Reviewed by: Bayard Bell <buffer.g.overflow@gmail.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Manoj Joseph <manoj.joseph@delphix.com>

illumos/illumos-gate@dc5f28a3c3
2015-10-14 11:33:07 +00:00
Alexander Motin
456aaec66d 4185 add new cryptographic checksums to ZFS: SHA-512, Skein, Edon-R
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Prakash Surya <prakash.surya@delphix.com>
Reviewed by: Saso Kiselkov <saso.kiselkov@nexenta.com>
Reviewed by: Richard Lowe <richlowe@richlowe.net>
Approved by: Garrett D'Amore <garrett@damore.org>
Author: Matthew Ahrens <mahrens@delphix.com>

illumos/illumos-gate@45818ee124
2015-10-14 11:12:47 +00:00
Andriy Gapon
a4b6d5e128 5692 expose the number of hole blocks in a file
illumos/illumos-gate@2bcf0248e9

https://www.illumos.org/issues/5692
we would like to expose the number of hole (sparse) blocks in a file. this
can be useful to for example if you want to fill in the holes with some
data; knowing the number of holes in advances allows you to report progress
on hole filling. We could use SEEK_HOLE to do that but it would be O(n)
where n is the number of holes present in the file.

Author: Max Grossman <max.grossman@delphix.com>
Reviewed by: Adam Leventhal <ahl@delphix.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Boris Protopopov <bprotopopov@hotmail.com>
Approved by: Richard Lowe <richlowe@richlowe.net>
2015-08-18 14:10:04 +00:00
Alexander Motin
fa4d80aacb 5960 zfs recv should prefetch indirect blocks
5925 zfs receive -o origin=

Reviewed by: Prakash Surya <prakash.surya@delphix.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Author: Paul Dagnelie <pcd@delphix.com>

While running 'zfs recv' we noticed that every 128th 8K block required a
read. We were seeing that restore_write() was calling dmu_tx_hold_write()
and the indirect block was not cached. We should prefetch upcoming indirect
blocks to avoid having to go to disk and blocking the restore_write().
2015-08-12 22:36:02 +00:00
Alexander Motin
283af7ea31 5746 more checksumming in zfs send
Reviewed by: Christopher Siden <christopher.siden@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Bayard Bell <buffer.g.overflow@gmail.com>
Approved by: Albert Lee <trisk@omniti.com>
Author: Matthew Ahrens <mahrens@delphix.com>

illumos/illumos-gate@98110f08fa
2015-08-10 19:32:30 +00:00
Andriy Gapon
c5a4f44d85 1778 Assertion failed: rn->rn_nozpool == B_FALSE, file ../common/libzfs_import.c, line 1077, function zpool_open_func
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: George Wilson <george@delphix.com>
Reviewed by: Richard Elling <richard.elling@richardelling.com>
Approved by: Gordon Ross <gordon.ross@nexenta.com>
Author: Andrew Stormont <andyjstormont@gmail.com>

illumos/illumos-gate@bd0f709169
2015-06-05 17:26:07 +00:00
Xin LI
360534a625 5518 Memory leaks in libzfs import implementation
Reviewed by: Dan Fields <dan.fields@nexenta.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Serghei Samsi <sscdvp@gmail.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Marcel Telka <marcel.telka@nexenta.com>

illumos/illumos-gate@078266a5aa
2015-01-20 20:18:59 +00:00
Xin LI
1a3dd08e88 5497 lock contention on arcs_mtx
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Richard Elling <richard.elling@richardelling.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Prakash Surya <prakash.surya@delphix.com>

illumos/illumos-gate@244781f10d
2015-01-20 20:17:29 +00:00
Xin LI
d45822d0ec 5427 memory leak in libzfs when doing rollback
Reviewed by: Michael Tsymbalyuk <mtzaurus@gmail.com>
Reviewed by: Steven Hartland <killing@multiplay.co.uk>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Jan Kryl <jan.kryl@nexenta.com>

illumos/illumos-gate@b7070b7dbc
2014-12-15 08:02:22 +00:00
Xin LI
6ace6d0b0a 5312 libzfs should be decoupled from kernel's zfs_context.h
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Will Andrews <willa@spectralogic.com>
Reviewed by: Andriy Gapon <avg@FreeBSD.org>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Justin T. Gibbs <justing@spectralogic.com>

illumos/illumos-gate@587644a856
2014-12-06 00:17:25 +00:00
Xin LI
e9b500ac47 5316 allow smbadm join to use RPC
Reviewed by: Bayard Bell <bayard.bell@nexenta.com>
Reviewed by: Dan McDonald <danmcd@nexenta.com>
Reviewed by: Thomas Keiser <thomas.keiser@nexenta.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Approved by: Robert Mustacchi <rm@joyent.com>
Author: Gordon Ross <gwr@nexenta.com>

illumos/illumos-gate@1ed6b69a5c
2014-12-06 00:10:47 +00:00
Xin LI
83f1ce8ea7 5005 libnvpair JSON output broken by lint fixes
5006 libnvpair JSON cannot print int16 arrays
Reviewed by: Robert Mustacchi <rm@joyent.com>
Approved by: Gordon Ross <gwr@nexenta.com>
Author: Joshua M. Clulow <josh@sysmgr.org>

illumos/illumos-gate@37c79205ad
2014-12-05 23:43:15 +00:00
Xin LI
0945ce02d2 5027 zfs large block support
Reviewed by: Alek Pinchuk <pinchuk.alek@gmail.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Josef 'Jeff' Sipek <josef.sipek@nexenta.com>
Reviewed by: Richard Elling <richard.elling@richardelling.com>
Reviewed by: Saso Kiselkov <skiselkov.ml@gmail.com>
Reviewed by: Brian Behlendorf <behlendorf1@llnl.gov>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Matthew Ahrens <matt@mahrens.org>

illumos/illumos-gate@b515258426
2014-11-08 06:43:33 +00:00
Xin LI
6c426f3bd4 5244 zio pipeline callers should explicitly invoke next stage
Reviewed by: Adam Leventhal <ahl@delphix.com>
Reviewed by: Alex Reece <alex.reece@delphix.com>
Reviewed by: Christopher Siden <christopher.siden@delphix.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Richard Elling <richard.elling@gmail.com>
Reviewed by: Dan McDonald <danmcd@omniti.com>
Reviewed by: Steven Hartland <killing@multiplay.co.uk>
Approved by: Gordon Ross <gwr@nexenta.com>
Author: George Wilson <george.wilson@delphix.com>

illumos/illumos-gate@738f37bc3d
2014-11-08 06:34:37 +00:00
Xin LI
8b8b61b2cc 5147 zpool list -v should show individual disk capacity
Reviewed by: Adam Leventhal <adam.leventhal@delphix.com>
Reviewed by: Christopher Siden <christopher.siden@delphix.com>
Reviewed by: Matthew Ahrens <matthew.ahrens@delphix.com>
Reviewed by: Richard Elling <richard.elling@gmail.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author:	George Wilson <george.wilson@delphix.com>

illumos/illumos-gate@7a09f97bc0
2014-10-04 07:24:35 +00:00
Xin LI
5cd2c4891f 5134 if ZFS_DEBUG or debug= is set, libzpool should enable debug prints
Reviewed by: Adam Leventhal <adam.leventhal@delphix.com>
Reviewed by: Christopher Siden <christopher.siden@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Saso Kiselkov <skiselkov.ml@gmail.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Matthew Ahrens <mahrens@delphix.com>

illumos/illumos-gate@7fa49ea5e7
2014-09-13 15:27:46 +00:00
Xin LI
7bdd0535ff 5135 zpool_find_import_cached() can use fnvlist_*
Reviewed by: Christopher Siden <christopher.siden@delphix.com>
Reviewed by: Max Grossman <max.grossman@delphix.com>
Reviewed by: Richard Elling <richard.elling@gmail.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Matthew Ahrens <mahrens@delphix.com>

illumos/illumos-gate@b18d6b0e20
2014-09-13 14:30:46 +00:00
Xin LI
be3baf67b6 5116 zpool history -i goes into infinite loop
Reviewed by: Christopher Siden <christopher.siden@delphix.com>
Reviewed by: Dan Kimmel <dan.kimmel@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Richard Elling <richard.elling@gmail.com>
Reviewed by: Boris Protopopov <boris.protopopov@me.com>
Approved by: Dan McDonald <danmcd@omniti.com>
Author: Matthew Ahrens <mahrens@delphix.com>

illumos/illumos-gate@3339867a86
2014-09-07 12:13:49 +00:00
Xin LI
d6fb141e08 4976 zfs should only avoid writing to a failing non-redundant top-level vdev
4977 mdb error in ::spa_space from space_cb() if a metaslab's ms_sm is NULL
4978 ztest fails in get_metaslab_refcount()
4979 extend free space histogram to device and pool
4980 metaslabs should have a fragmentation metric
4981 remove fragmented ops vector from block allocator
4982 space_map object should proactively upgrade when feature is enabled
4983 need to collect metaslab information via mdb
4984 device selection should use fragmentation metric
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Adam Leventhal <adam.leventhal@delphix.com>
Reviewed by: Christopher Siden <christopher.siden@delphix.com>
Approved by: Garrett D'Amore <garrett@damore.org>

illumos/illumos-gate@2e4c998613
2014-07-23 08:00:34 +00:00
Xin LI
31074d9a86 4953 zfs rename <snapshot> need not involve libshare
4954 "zfs create" need not involve libshare if we are not sharing
4955 libshare's get_zfs_dataset need not sort the datasets
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Sebastien Roy <sebastien.roy@delphix.com>
Reviewed by: Dan McDonald <danmcd@omniti.com>
Reviewed by: Gordon Ross <gordon.ross@nexenta.com>
Approved by: Garrett D'Amore <garrett@damore.org>

illumos/illumos-gate@33cde0d0c2
2014-07-09 08:17:09 +00:00
Xin LI
de7933ee7e 4914 zfs on-disk bookmark structure should be named *_phys_t
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Christopher Siden <christopher.siden@delphix.com>
Reviewed by: Richard Lowe <richlowe@richlowe.net>
Reviewed by: Saso Kiselkov <skiselkov.ml@gmail.com>
Approved by: Robert Mustacchi <rm@joyent.com>

illumos/illumos-gate@7802d7bf98
2014-07-01 21:14:35 +00:00
Xin LI
02ee1c3d19 4891 want zdb option to dump all metadata
Reviewed by: Sonu Pillai <sonu.pillai@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Christopher Siden <christopher.siden@delphix.com>
Reviewed by: Dan McDonald <danmcd@omniti.com>
Reviewed by: Richard Lowe <richlowe@richlowe.net>
Approved by: Garrett D'Amore <garrett@damore.org>

illumos/illumos-gate@df15e419cb
2014-06-17 07:51:55 +00:00
Xin LI
0b5251374e 4390 i/o errors when deleting filesystem/zvol can lead to space map corruption
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Christopher Siden <christopher.siden@delphix.com>
Reviewed by: Adam Leventhal <ahl@delphix.com>
Reviewed by: Dan McDonald <danmcd@omniti.com>
Reviewed by: Saso Kiselkov <saso.kiselkov@nexenta.com>
Approved by: Dan McDonald <danmcd@omniti.com>

illumos/illumos-dist@7fd05ac4de
2014-06-17 07:44:55 +00:00
Xin LI
ee3ed92a53 4757 ZFS embedded-data block pointers ("zero block compression")
4913 zfs release should not be subject to space checks

Reviewed by: Adam Leventhal <ahl@delphix.com>
Reviewed by: Max Grossman <max.grossman@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Christopher Siden <christopher.siden@delphix.com>
Reviewed by: Dan McDonald <danmcd@omniti.com>
Approved by: Dan McDonald <danmcd@omniti.com>

illumos/illumos-dist@5d7b4d438c
2014-06-17 07:35:54 +00:00
Mark Johnston
ba911031dd 4470 overly aggressive D integer narrowing breaks 32-bit ustack helpers
illumos/illumos-gate@2e0552679e
2014-06-03 01:55:27 +00:00
Mark Johnston
db9dbc75dd 4471 DTrace count() with histogram
4472 DTrace full width distribution histograms
4473 DTrace frequency trails

illumos/illumos-gate@33093f5bcd
2014-06-03 01:42:09 +00:00
Mark Johnston
b9aa9b1022 4474 DTrace Userland CTF Support
4475 DTrace userland Keyword
4476 DTrace tests should be better citizens
4479 pid provider types
4480 dof emulation is missing checks

illumos/illumos-gate@a386cc11a8
2014-06-03 01:24:46 +00:00
Mark Johnston
4884fa147f 4477 DTrace should speak JSON
illumos/illumos-gate@f497f9fe23
2014-06-03 01:06:31 +00:00
Mark Johnston
5cd3142dc7 2915 DTrace in a zone should see "cpu", "curpsinfo", et al
2916 DTrace in a zone should be able to access fds[]
2917 DTrace in a zone should have limited provider access

illumos/illumos-gate@b0f673c462
2014-06-03 00:55:15 +00:00
Xin LI
3f5b84a0d9 3897 zfs filesystem and snapshot limits
illumos/illumos@a2afb611b3
2014-04-23 19:09:14 +00:00
Xin LI
745fef1489 4374 dn_free_ranges should use range_tree_t
(MD code for highbit64 omitted)

illumos/illumos-gate@bf16b11e8d
2014-04-18 19:38:29 +00:00
Xin LI
31c94b8d0b 3993 zpool(1M) and zfs(1M) should support -p for "list" and "get"
4700 "zpool get" doesn't support -H or -o options

illumos/illumos-gate@c58b352673
2014-03-28 22:46:55 +00:00
Xin LI
2c647d53ed 4626 libzfs memleak in zpool_in_use()
illumos/illumos-gate@fb13f48f1d
2014-02-27 20:00:26 +00:00
Andriy Gapon
54a90449ac 4304 fmdump shall emit JSON
illumos/illumos-gate@2db6d66318

NB: this adds JSON output support to libnvpair
2014-01-16 13:12:06 +00:00
Xin LI
cbdc759424 4369 implement zfs bookmarks
4368 zfs send filesystems from readonly pools

llumos/illumos-gate@78f1710053
2014-01-01 01:15:53 +00:00
Andriy Gapon
4f662c9721 2583 Add -p (parsable) option to zfs list
illumos/illumos-gate@43d68d68c1
2013-11-20 11:06:57 +00:00
Andriy Gapon
12ad6bef9b 4161 deadlock between zfs_read() and zfs_putpage()
illumos/illumos-gate@b3d32f0ceb
2013-11-20 11:05:07 +00:00
Andriy Gapon
7df1fb6a6e 4251 libdtrace leaks open file handles
4250 libdtrace should use "F" specifier on fopen()

illumos/illumos-gate@93ed8d0d4b
2013-11-20 11:04:14 +00:00
Andriy Gapon
dd120f9e9d 4248 dtrace(1M) should never create DOF with empty probes section
4249 Only probes from the first DTrace object file will be included

illumos/illumos-gate@54a20ab41a
2013-11-20 11:02:18 +00:00
Andriy Gapon
a1d7a45c43 4171 clean up spa_feature_*() interfaces
4172 implement extensible_dataset feature for use by other zpool
features

illumos/illumos-gate@2acef22db7
2013-11-20 10:54:06 +00:00
Andriy Gapon
6cbd36185c 3933 contract adoption can race
illumos/illumos-gate@a81df0a5d7

Note we now reference illumos commits in the github repository as the
mercurial mirror seems to be neglected.

For connectivity:
r255255 referenced 14164:dceb17481b99 which is
illumos/illumos-gate@69962b5647

r255258 referenced 14176:15e9457c12ec which is
illumos/illumos-gate@cf746768a8
2013-11-20 10:12:47 +00:00
Xin LI
119a3b6b54 Update vendor/illumos/dist and vendor-sys/illumos/dist
to 14164:dceb17481b99:

Illumos ZFS issues:
  4045 zfs write throttle & i/o scheduler performance work
2013-09-05 17:52:54 +00:00
Xin LI
fd1be4250e Update vendor/illumos/dist and vendor-sys/illumos/dist
to 14159:dc75c925d8aa:

Illumos ZFS issues:
  2932 support crash dumps to raidz, etc. pools
2013-08-23 23:46:27 +00:00
Xin LI
baaf1b273e Update vendor/illumos/dist to 14152:46f5fb0b0d36:
Illumos DTrace issues:
  4061 libzfs: memory leak in iter_dependents_cb()
2013-08-23 23:37:55 +00:00
Xin LI
0239dcb737 Update vendor/illumos/dist to 14148:fe28bd725808:
Illumos DTrace issues:
  4005 libctf can't deal with extended sections
2013-08-23 23:34:54 +00:00
Xin LI
30670ee8c3 Update vendor/illumos/dist and vendor-sys/illumos/dist
to illumos-gate 14137:f7523d207d74:

Illumos ZFS issues:
  3996 want a libzfs_core API to rollback to latest snapshot
2013-08-16 19:27:29 +00:00
Xin LI
fe8484c3ba Update vendor/illumos/dist to illumos-gate 14096:12d3631da129:
Illumos ZFS issues:
  3909 "zfs send -D" does not work
2013-07-29 20:36:27 +00:00
Xin LI
492ec2eef2 Update vendor/illumos/dist and vendor-sys/illumos/dist
to illumos-gate 14089:520f3adc5d46:

Illumos ZFS issues:
  3894 zfs should not allow snapshot of inconsistent dataset
2013-07-29 20:31:44 +00:00
Xin LI
f7482da4db Update vendor/illumos/dist and vendor-sys/illumos/dist
to illumos-gate 14060:aeb4e8fef072

Illumos ZFS issues:
  3829 fix for 3740 changed behavior of zfs destroy/hold/release ioctl
2013-06-25 21:44:48 +00:00
Xin LI
2b24cff063 Update vendor/illumos/dist to illumos-gate 14056:812b3d1ca0a0
Illumos ZFS issues:
  3818 zpool status -x should report pools with removed l2arc devices
2013-06-25 21:34:21 +00:00
Xin LI
03ce21f2d0 Update vendor/illumos/dist and vendor-sys/illumos/dist
to illumos-gate 14052:1a272fe1337b

Illumos ZFS issues:
  3740 Poor ZFS send / receive performance due to snapshot
       hold / release processing
2013-06-12 06:56:15 +00:00
Xin LI
df8f2946a7 Update vendor/illumos/dist to illumos-gate 14049:4a7f6353bcf0
Illumos ZFS issues:
  3745 zpool create should treat -O mountpoint and -m the same
2013-06-11 18:39:38 +00:00
Xin LI
6ba2019d67 Update vendor/illumos/dist and vendor-sys/illumos/dist
to illumos-gate 14045:9475b3fef59d

Illumos ZFS issues:
  3741 zfs needs better comments
2013-06-11 18:28:25 +00:00
Martin Matuska
f1ec5e88ff Update vendor/illumos/dist and vendor-sys/illumos/dist
to illumos-gate 14031:e4eb37f33d60

Illumos ZFS issues:
  3699 zfs hold or release of a non-existent snapshot does not output error
  3739 cannot set zfs quota or reservation on pool version < 22
2013-05-23 22:52:21 +00:00
Martin Matuska
450b0b99ec Add missing file dt_pq.h that should have been committed in r239385
Reported by:	Pedro Giffuni <pfg@FreeBSD.org>
2013-04-09 06:33:03 +00:00
Martin Matuska
85ac19dadc Update vendor/illumos/dist to illumos-gate 14004:dd91fed709a7
Illumos DTrace issues:
  3675 DTrace print() should try to resolve function pointers
  3676 dt_print_enum hardcodes a value of zero
2013-04-06 08:06:25 +00:00
Martin Matuska
4b9d8e5ee8 Update vendor/illumos/dist and vendor-sys/illumos/dist
to illumos-gate 13980:d7059eb1884c

Illumos ZFS issues:
  3598 want to dtrace when errors are generated in zfs
2013-03-12 21:46:29 +00:00
Martin Matuska
0c75791b4c Update vendor/illumos/dist and vendor-sys/illumos/dist
to illumos-gate 13975:ef6409bc370f

Illumos ZFS issues:
  3582 zfs_delay() should support a variable resolution
  3584 DTrace sdt probes for ZFS txg states
2013-03-05 15:33:28 +00:00
Martin Matuska
577227be9d Update vendor/illumos/dist and vendor-sys/illumos/dist
to illumos-gate 13973:4972ab336f54

Illumos ZFS issues:
  3464 zfs synctask code needs restructuring
2013-03-01 21:01:45 +00:00
Martin Matuska
3e63c75755 Update vendor/illumos/dist and vendor-sys/illumos/dist
to illumos-gate 13967:92bec6d87f59

Illumos ZFS issues:
  3557 dumpvp_size is not updated correctly when a dump zvol's size is
       changed
  3558 setting the volsize on a dump device does not return back ENOSPC
  3559 setting a volsize larger than the space available sometimes succeeds
2013-02-23 09:06:36 +00:00
Martin Matuska
28c0619e5e Update vendor/illumos/dist and vendor-sys/illumos/dist
to illumos-gate 13957:512faafc0eaf

Illumos ZFS issues:
  3537 want pool io kstats
2013-02-18 11:48:08 +00:00
Martin Matuska
dbfa74b7cc Update vendor/illumos/dist to illumos-gate version 13944:bbcbb468dc37
Illumos dtrace issues:
  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
2013-02-06 08:26:55 +00:00
Martin Matuska
f056fd4daf Update vendor/illumos/dist and vendor-sys/illumos/dist
to illumos-gate 13934:9e23a7f7b812

Illumos ZFS issues:
 3422 zpool create/syseventd race yield non-importable pool
 3425 first write to a new zvol can fail with EFBIG
2013-02-06 07:54:46 +00:00
Martin Matuska
fb6c5b06d9 Update vendor/illumos/dist and vendor/illumos-sys/dist
to illumos-gate 13871:a9c12c2c1647
(zfs changes, illumos issues #3306, #3321)
2012-11-08 01:38:30 +00:00
Martin Matuska
49bb29ae1c Update vendor/illumos/dist and vendor-sys/illumos/dist
to illumos-gate 13869:921a99998bb4
(illumos ZFS issue #3246 ZFS I/O deadman thread)

Note: illumos disables deadman logic by default on vmware and sparc
2012-11-08 01:36:06 +00:00
Martin Matuska
eb424c124f Update vendor/illumos/dist to illumos-gate 13810:4b38a0c01186
(zfs changes, illumos issue #3098)
2012-09-10 21:24:41 +00:00
Martin Matuska
e73ba0ab20 Update vendor/illumos/dist and vendor/illumos-sys/dist
to illumos-gate 13805:e3a9ae14a119
(zfs changes, illumos issues #1884, #3006)
2012-09-09 07:52:13 +00:00
Martin Matuska
4ecf6b4e55 Update vendor/illumos/dist to illumos-gate 13804:9f4f28db61d2
(dtrace changes only, illumos issue #3021)
2012-09-09 07:48:51 +00:00
Martin Matuska
1034179220 Update vendor/illumos/dist and vendor/illumos-gate/dist
to illumos-gate revision 13794:7c5e0e746b2c

Obtained from:	ssh://anonhg@hg.illumos.org/illumos-gate
2012-09-04 21:58:22 +00:00
Martin Matuska
c9b711eab6 Update vendor/illumos to illumos-gate 13788:0cb9e2232ae0
(dtrace changes, illumos issue #3123)
2012-09-04 21:38:31 +00:00
Martin Matuska
d18d85e243 Update vendor/illumos/dist and vendor/illumos-gate/dist
to illumos-gate revision 13782:8f78aae28a63

Obtained from:	ssh://anonhg@hg.illumos.org/illumos-gate
2012-08-27 19:25:20 +00:00
Martin Matuska
b15aa3a4ae Update vendor/illumos and vendor-sys/illumos to revision 13777:b1e53580146d
Obtained from:	ssh://anonhg@hg.illumos.org/illumos-gate
2012-08-23 09:18:52 +00:00
Martin Matuska
41adcc32e9 Update vendor/illumos to illumos-gate 13758:23432da34147 (dtrace changes)
References:
  https://www.illumos.org/issues/3021
  https://www.illumos.org/issues/3022
  https://www.illumos.org/issues/3023
  https://www.illumos.org/issues/3024
  https://www.illumos.org/issues/3025
  https://www.illumos.org/issues/3026

Obtained from:	ssh://anonhg@hg.illumos.org/illumos-gate
2012-08-19 09:20:22 +00:00