<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/lib/libspl, branch zfs-0.7.0-rc2</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=zfs-0.7.0-rc2</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=zfs-0.7.0-rc2'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2016-10-14T16:40:08Z</updated>
<entry>
<title>Fix coverity defects: CID 150921, 150927</title>
<updated>2016-10-14T16:40:08Z</updated>
<author>
<name>luozhengzheng</name>
<email>luo.zhengzheng@zte.com.cn</email>
</author>
<published>2016-10-14T16:40:08Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=9a875c6c5dd1e7cb0dad56d593a428d570ea5111'/>
<id>urn:sha1:9a875c6c5dd1e7cb0dad56d593a428d570ea5111</id>
<content type='text'>
CID 150921: Unchecked return value (CHECKED_RETURN)
CID 150927 : Unchecked return value (CHECKED_RETURN)

Reviewed-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Signed-off-by: luozhengzheng &lt;luo.zhengzheng@zte.com.cn&gt;
Closes #5267 </content>
</entry>
<entry>
<title>OpenZFS 4185 - add new cryptographic checksums to ZFS: SHA-512, Skein, Edon-R</title>
<updated>2016-10-03T21:51:15Z</updated>
<author>
<name>Tony Hutter</name>
<email>hutter2@llnl.gov</email>
</author>
<published>2016-06-15T22:47:05Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=3c67d83a8afb391f20bc53d36a0cebea6897b3e2'/>
<id>urn:sha1:3c67d83a8afb391f20bc53d36a0cebea6897b3e2</id>
<content type='text'>
Reviewed by: George Wilson &lt;george.wilson@delphix.com&gt;
Reviewed by: Prakash Surya &lt;prakash.surya@delphix.com&gt;
Reviewed by: Saso Kiselkov &lt;saso.kiselkov@nexenta.com&gt;
Reviewed by: Richard Lowe &lt;richlowe@richlowe.net&gt;
Approved by: Garrett D'Amore &lt;garrett@damore.org&gt;
Ported by: Tony Hutter &lt;hutter2@llnl.gov&gt;

OpenZFS-issue: https://www.illumos.org/issues/4185
OpenZFS-commit: https://github.com/openzfs/openzfs/commit/45818ee

Porting Notes:
This code is ported on top of the Illumos Crypto Framework code:

    https://github.com/zfsonlinux/zfs/pull/4329/commits/b5e030c8dbb9cd393d313571dee4756fbba8c22d

The list of porting changes includes:

- Copied module/icp/include/sha2/sha2.h directly from illumos

- Removed from module/icp/algs/sha2/sha2.c:
	#pragma inline(SHA256Init, SHA384Init, SHA512Init)

- Added 'ctx' to lib/libzfs/libzfs_sendrecv.c:zio_checksum_SHA256() since
  it now takes in an extra parameter.

- Added CTASSERT() to assert.h from for module/zfs/edonr_zfs.c

- Added skein &amp; edonr to libicp/Makefile.am

- Added sha512.S.  It was generated from sha512-x86_64.pl in Illumos.

- Updated ztest.c with new fletcher_4_*() args; used NULL for new CTX argument.

- In icp/algs/edonr/edonr_byteorder.h, Removed the #if defined(__linux) section
  to not #include the non-existant endian.h.

- In skein_test.c, renane NULL to 0 in "no test vector" array entries to get
  around a compiler warning.

- Fixup test files:
	- Rename &lt;sys/varargs.h&gt; -&gt; &lt;varargs.h&gt;, &lt;strings.h&gt; -&gt; &lt;string.h&gt;,
	- Remove &lt;note.h&gt; and define NOTE() as NOP.
	- Define u_longlong_t
	- Rename "#!/usr/bin/ksh" -&gt; "#!/bin/ksh -p"
	- Rename NULL to 0 in "no test vector" array entries to get around a
	  compiler warning.
	- Remove "for isa in $($ISAINFO); do" stuff
	- Add/update Makefiles
	- Add some userspace headers like stdio.h/stdlib.h in places of
	  sys/types.h.

- EXPORT_SYMBOL *_Init/*_Update/*_Final... routines in ICP modules.

- Update scripts/zfs2zol-patch.sed

- include &lt;sys/sha2.h&gt; in sha2_impl.h

- Add sha2.h to include/sys/Makefile.am

- Add skein and edonr dirs to icp Makefile

- Add new checksums to zpool_get.cfg

- Move checksum switch block from zfs_secpolicy_setprop() to
  zfs_check_settable()

- Fix -Wuninitialized error in edonr_byteorder.h on PPC

- Fix stack frame size errors on ARM32
  	- Don't unroll loops in Skein on 32-bit to save stack space
  	- Add memory barriers in sha2.c on 32-bit to save stack space

- Add filetest_001_pos.ksh checksum sanity test

- Add option to write psudorandom data in file_write utility
</content>
</entry>
<entry>
<title>fix: Shift exponent too large</title>
<updated>2016-09-29T22:55:41Z</updated>
<author>
<name>Gvozden Neskovic</name>
<email>neskovic@gmail.com</email>
</author>
<published>2016-08-31T08:12:08Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=031d7c2fe6afaa78943bd0a563b91fc84ace42d7'/>
<id>urn:sha1:031d7c2fe6afaa78943bd0a563b91fc84ace42d7</id>
<content type='text'>
Undefined operation is reported by running ztest (or zloop) compiled with GCC
UndefinedBehaviorSanitizer. Error only happens on top level of dnode indirection
with large enough offset values. Logically, left shift operation would work,
but bit shift semantics in C, and limitation of uint64_t, do not produce desired
result.

Issue #5059, #4883

Signed-off-by: Gvozden Neskovic &lt;neskovic@gmail.com&gt;
</content>
</entry>
<entry>
<title>Change /etc/mtab to /proc/self/mounts</title>
<updated>2016-09-20T17:07:58Z</updated>
<author>
<name>slashdd</name>
<email>eric.desrochers@canonical.com</email>
</author>
<published>2016-09-20T17:07:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=792517389fad5c495a2738b61c2e9c65dedaaa9a'/>
<id>urn:sha1:792517389fad5c495a2738b61c2e9c65dedaaa9a</id>
<content type='text'>
Fix misleading error message:

 "The /dev/zfs device is missing and must be created.", if /etc/mtab is missing.

Reviewed-by: Richard Laager &lt;rlaager@wiktel.com&gt;
Reviewed-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Signed-off-by: Eric Desrochers &lt;eric.desrochers@canonical.com&gt;
Closes #4680 
Closes #5029</content>
</entry>
<entry>
<title>OpenZFS 5997 - FRU field not set during pool creation and never updated</title>
<updated>2016-08-12T20:06:48Z</updated>
<author>
<name>Hans Rosenfeld</name>
<email>hans.rosenfeld@nexenta.com</email>
</author>
<published>2016-07-27T22:29:15Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=fb390aafc8338c62115e611dbe1917bbe7435eef'/>
<id>urn:sha1:fb390aafc8338c62115e611dbe1917bbe7435eef</id>
<content type='text'>
Authored by: Hans Rosenfeld &lt;hans.rosenfeld@nexenta.com&gt;
Reviewed by: Dan Fields &lt;dan.fields@nexenta.com&gt;
Reviewed by: Josef Sipek &lt;josef.sipek@nexenta.com&gt;
Reviewed by: Richard Elling &lt;richard.elling@gmail.com&gt;
Reviewed by: George Wilson &lt;george.wilson@delphix.com&gt;
Approved by: Robert Mustacchi &lt;rm@joyent.com&gt;
Signed-off-by: Don Brady &lt;don.brady@intel.com&gt;
Ported-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;

OpenZFS-issue: https://www.illumos.org/issues/5997
OpenZFS-commit: https://github.com/openzfs/openzfs/commit/1437283

Porting Notes:

In addition to the OpenZFS changes this patch realigns the events
with those found in OpenZFS.

Events which would be logged as sysevents on illumos have been
been mapped to the 'sysevent' class for Linux.  In addition, several
subclass names have been changed to match what is used in OpenZFS.
In all cases this means a '.' was changed to an '_' in the subclass.

The scripts provided by ZoL have been updated, however users which
provide scripts for any of the following events will need to rename
them based on the new subclass names.

  ereport.fs.zfs.config.sync         sysevent.fs.zfs.config_sync
  ereport.fs.zfs.zpool.destroy       sysevent.fs.zfs.pool_destroy
  ereport.fs.zfs.zpool.reguid        sysevent.fs.zfs.pool_reguid
  ereport.fs.zfs.vdev.remove         sysevent.fs.zfs.vdev_remove
  ereport.fs.zfs.vdev.clear          sysevent.fs.zfs.vdev_clear
  ereport.fs.zfs.vdev.check          sysevent.fs.zfs.vdev_check
  ereport.fs.zfs.vdev.spare          sysevent.fs.zfs.vdev_spare
  ereport.fs.zfs.vdev.autoexpand     sysevent.fs.zfs.vdev_autoexpand
  ereport.fs.zfs.resilver.start      sysevent.fs.zfs.resilver_start
  ereport.fs.zfs.resilver.finish     sysevent.fs.zfs.resilver_finish
  ereport.fs.zfs.scrub.start         sysevent.fs.zfs.scrub_start
  ereport.fs.zfs.scrub.finish        sysevent.fs.zfs.scrub_finish
  ereport.fs.zfs.bootfs.vdev.attach  sysevent.fs.zfs.bootfs_vdev_attach
</content>
</entry>
<entry>
<title>Illumos Crypto Port module added to enable native encryption in zfs</title>
<updated>2016-07-20T17:43:30Z</updated>
<author>
<name>Tom Caputi</name>
<email>tcaputi@datto.com</email>
</author>
<published>2016-05-12T14:51:24Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=0b04990a5de594659d2cf20458965277dd6efeb1'/>
<id>urn:sha1:0b04990a5de594659d2cf20458965277dd6efeb1</id>
<content type='text'>
A port of the Illumos Crypto Framework to a Linux kernel module (found
in module/icp). This is needed to do the actual encryption work. We cannot
use the Linux kernel's built in crypto api because it is only exported to
GPL-licensed modules. Having the ICP also means the crypto code can run on
any of the other kernels under OpenZFS. I ended up porting over most of the
internals of the framework, which means that porting over other API calls (if
we need them) should be fairly easy. Specifically, I have ported over the API
functions related to encryption, digests, macs, and crypto templates. The ICP
is able to use assembly-accelerated encryption on amd64 machines and AES-NI
instructions on Intel chips that support it. There are place-holder
directories for similar assembly optimizations for other architectures
(although they have not been written).

Signed-off-by: Tom Caputi &lt;tcaputi@datto.com&gt;
Signed-off-by: Tony Hutter &lt;hutter2@llnl.gov&gt;
Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Issue #4329
</content>
</entry>
<entry>
<title>Add `zfs allow` and `zfs unallow` support</title>
<updated>2016-06-07T16:16:52Z</updated>
<author>
<name>Brian Behlendorf</name>
<email>behlendorf1@llnl.gov</email>
</author>
<published>2016-06-07T16:16:52Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=f74b821a6696fef9e9953aae05941e99bf83800e'/>
<id>urn:sha1:f74b821a6696fef9e9953aae05941e99bf83800e</id>
<content type='text'>
ZFS allows for specific permissions to be delegated to normal users
with the `zfs allow` and `zfs unallow` commands.  In addition, non-
privileged users should be able to run all of the following commands:

  * zpool [list | iostat | status | get]
  * zfs [list | get]

Historically this functionality was not available on Linux.  In order
to add it the secpolicy_* functions needed to be implemented and mapped
to the equivalent Linux capability.  Only then could the permissions on
the `/dev/zfs` be relaxed and the internal ZFS permission checks used.

Even with this change some limitations remain.  Under Linux only the
root user is allowed to modify the namespace (unless it's a private
namespace).  This means the mount, mountpoint, canmount, unmount,
and remount delegations cannot be supported with the existing code.  It
may be possible to add this functionality in the future.

This functionality was validated with the cli_user and delegation test
cases from the ZFS Test Suite.  These tests exhaustively verify each
of the supported permissions which can be delegated and ensures only
an authorized user can perform it.

Two minor bug fixes were required for test-running.py.  First, the
Timer() object cannot be safely created in a `try:` block when there
is an unconditional `finally` block which references it.  Second,
when running as a normal user also check for scripts using the
both the .ksh and .sh suffixes.

Finally, existing users who are simulating delegations by setting
group permissions on the /dev/zfs device should revert that
customization when updating to a version with this change.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Signed-off-by: Tony Hutter &lt;hutter2@llnl.gov&gt;
Closes #362 
Closes #434 
Closes #4100
Closes #4394 
Closes #4410 
Closes #4487 </content>
</entry>
<entry>
<title>Add isa_defs for MIPS</title>
<updated>2016-05-31T16:05:40Z</updated>
<author>
<name>YunQiang Su</name>
<email>syq@debian.org</email>
</author>
<published>2016-05-28T12:33:15Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=2493dca54e18b24bcd8b7ff5432f4dc51dddc472'/>
<id>urn:sha1:2493dca54e18b24bcd8b7ff5432f4dc51dddc472</id>
<content type='text'>
GCC for MIPS only defines _LP64 when 64bit,
while no _ILP32 defined when 32bit.

Signed-off-by: YunQiang Su &lt;syq@debian.org&gt;
Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Closes #4712
</content>
</entry>
<entry>
<title>Add -lhHpw options to "zpool iostat" for avg latency, histograms, &amp; queues</title>
<updated>2016-05-12T19:36:32Z</updated>
<author>
<name>Tony Hutter</name>
<email>hutter2@llnl.gov</email>
</author>
<published>2016-02-29T18:05:23Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=193a37cb2430960ce759daf12ce5cc804818aba1'/>
<id>urn:sha1:193a37cb2430960ce759daf12ce5cc804818aba1</id>
<content type='text'>
Update the zfs module to collect statistics on average latencies, queue sizes,
and keep an internal histogram of all IO latencies.  Along with this, update
"zpool iostat" with some new options to print out the stats:

-l: Include average IO latencies stats:

 total_wait     disk_wait    syncq_wait    asyncq_wait  scrub
 read  write   read  write   read  write   read  write   wait
-----  -----  -----  -----  -----  -----  -----  -----  -----
    -   41ms      -    2ms      -   46ms      -    4ms      -
    -    5ms      -    1ms      -    1us      -    4ms      -
    -    5ms      -    1ms      -    1us      -    4ms      -
    -      -      -      -      -      -      -      -      -
    -   49ms      -    2ms      -   47ms      -      -      -
    -      -      -      -      -      -      -      -      -
    -    2ms      -    1ms      -      -      -    1ms      -
-----  -----  -----  -----  -----  -----  -----  -----  -----
  1ms    1ms    1ms  413us   16us   25us      -    5ms      -
  1ms    1ms    1ms  413us   16us   25us      -    5ms      -
  2ms    1ms    2ms  412us   26us   25us      -    5ms      -
    -    1ms      -  413us      -   25us      -    5ms      -
    -    1ms      -  460us      -   29us      -    5ms      -
196us    1ms  196us  370us    7us   23us      -    5ms      -
-----  -----  -----  -----  -----  -----  -----  -----  -----

-w: Print out latency histograms:

sdb           total           disk         sync_queue      async_queue
latency    read   write    read   write    read   write    read   write   scrub
-------  ------  ------  ------  ------  ------  ------  ------  ------  ------
1ns           0       0       0       0       0       0       0       0       0
...
33us          0       0       0       0       0       0       0       0       0
66us          0       0     107    2486       2     788      12      12       0
131us         2     797     359    4499      10     558     184     184       6
262us        22     801     264    1563      10     286     287     287      24
524us        87     575      71   52086      15    1063     136     136      92
1ms         152    1190       5   41292       4    1693     252     252     141
2ms         245    2018       0   50007       0    2322     371     371     220
4ms         189    7455      22  162957       0    3912    6726    6726     199
8ms         108    9461       0  102320       0    5775    2526    2526      86
17ms         23   11287       0   37142       0    8043    1813    1813      19
34ms          0   14725       0   24015       0   11732    3071    3071       0
67ms          0   23597       0    7914       0   18113    5025    5025       0
134ms         0   33798       0     254       0   25755    7326    7326       0
268ms         0   51780       0      12       0   41593   10002   10002       0
537ms         0   77808       0       0       0   64255   13120   13120       0
1s            0  105281       0       0       0   83805   20841   20841       0
2s            0   88248       0       0       0   73772   14006   14006       0
4s            0   47266       0       0       0   29783   17176   17176       0
9s            0   10460       0       0       0    4130    6295    6295       0
17s           0       0       0       0       0       0       0       0       0
34s           0       0       0       0       0       0       0       0       0
69s           0       0       0       0       0       0       0       0       0
137s          0       0       0       0       0       0       0       0       0
-------------------------------------------------------------------------------

-h: Help

-H: Scripted mode. Do not display headers, and separate fields by a single
    tab instead of arbitrary space.

-q: Include current number of entries in sync &amp; async read/write queues,
    and scrub queue:

 syncq_read    syncq_write   asyncq_read  asyncq_write   scrubq_read
 pend  activ   pend  activ   pend  activ   pend  activ   pend  activ
-----  -----  -----  -----  -----  -----  -----  -----  -----  -----
    0      0      0      0     78     29      0      0      0      0
    0      0      0      0     78     29      0      0      0      0
    0      0      0      0      0      0      0      0      0      0
    -      -      -      -      -      -      -      -      -      -
    0      0      0      0      0      0      0      0      0      0
    -      -      -      -      -      -      -      -      -      -
    0      0      0      0      0      0      0      0      0      0
-----  -----  -----  -----  -----  -----  -----  -----  -----  -----
    0      0    227    394      0     19      0      0      0      0
    0      0    227    394      0     19      0      0      0      0
    0      0    108     98      0     19      0      0      0      0
    0      0     19     98      0      0      0      0      0      0
    0      0     78     98      0      0      0      0      0      0
    0      0     19     88      0      0      0      0      0      0
-----  -----  -----  -----  -----  -----  -----  -----  -----  -----

-p: Display numbers in parseable (exact) values.

Also, update iostat syntax to allow the user to specify specific vdevs
to show statistics for.  The three options for choosing pools/vdevs are:

Display a list of pools:
    zpool iostat ... [pool ...]

Display a list of vdevs from a specific pool:
    zpool iostat ... [pool vdev ...]

Display a list of vdevs from any pools:
    zpool iostat ... [vdev ...]

Lastly, allow zpool command "interval" value to be floating point:
    zpool iostat -v 0.5

Signed-off-by: Tony Hutter &lt;hutter2@llnl.gov
Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Closes #4433
</content>
</entry>
<entry>
<title>OpenZFS 6672 - arc_reclaim_thread() should use gethrtime()</title>
<updated>2016-05-06T16:35:52Z</updated>
<author>
<name>David Quigley</name>
<email>dpquigl@users.noreply.github.com</email>
</author>
<published>2016-05-06T16:35:52Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=ae6d0c601eb863f8275bf4ec841fbebf774c3d65'/>
<id>urn:sha1:ae6d0c601eb863f8275bf4ec841fbebf774c3d65</id>
<content type='text'>
6672 arc_reclaim_thread() should use gethrtime() instead of ddi_get_lbolt()

Reviewed by: Matthew Ahrens &lt;mahrens@delphix.com&gt;
Reviewed by: Prakash Surya &lt;prakash.surya@delphix.com&gt;
Reviewed by: Josef 'Jeff' Sipek &lt;jeffpc@josefsipek.net&gt;
Reviewed by: Robert Mustacchi &lt;rm@joyent.com&gt;
Approved by: Dan McDonald &lt;danmcd@omniti.com&gt;
Ported-by: David Quigley &lt;dpquigl@davequigley.com&gt;
Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;

OpenZFS-issue: https://www.illumos.org/issues/6672
OpenZFS-commit: https://github.com/openzfs/openzfs/commit/571be5c
Closes #4600 </content>
</entry>
</feed>
