<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/module, 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-26T17:30:43Z</updated>
<entry>
<title>Fix lookup_bdev() on Ubuntu</title>
<updated>2016-10-26T17:30:43Z</updated>
<author>
<name>Hajo Möller</name>
<email>dasjoe@users.noreply.github.com</email>
</author>
<published>2016-10-26T17:30:43Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=e02aaf17f15ad274fa1f24c9c826f1477911ea3f'/>
<id>urn:sha1:e02aaf17f15ad274fa1f24c9c826f1477911ea3f</id>
<content type='text'>
Ubuntu added support for checking inode permissions to lookup_bdev() in kernel
commit 193fb6a2c94fab8eb8ce70a5da4d21c7d4023bee (merged in 4.4.0-6.21).
Upstream bug: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1636517

This patch adds a test for Ubuntu's variant of lookup_bdev() to configure and
calls the function in the correct way.

Reviewed-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Signed-off-by: Hajo Möller &lt;dasjoe@gmail.com&gt;
Closes #5336 </content>
</entry>
<entry>
<title>Disable zio_dva_throttle_enabled by default</title>
<updated>2016-10-26T16:13:43Z</updated>
<author>
<name>Brian Behlendorf</name>
<email>behlendorf1@llnl.gov</email>
</author>
<published>2016-10-26T16:13:43Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=76a87a902ef031432a855fb341cf35291e2be2b6'/>
<id>urn:sha1:76a87a902ef031432a855fb341cf35291e2be2b6</id>
<content type='text'>
Until it can be determined definitively that a performance
regression wasn't introduced accidentally by 3dfb57a this
functionality is being disabled by default.  It can be re-
enabled by setting zio_dva_throttle_enabled=1.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Closes #5335 
Issue #5289 </content>
</entry>
<entry>
<title>Fix statechange-led.sh &amp; unnecessary libdevmapper warning</title>
<updated>2016-10-25T18:05:30Z</updated>
<author>
<name>Tony Hutter</name>
<email>hutter2@llnl.gov</email>
</author>
<published>2016-10-25T18:05:30Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=6568379eea8f01ad87a6cbcb66111112a1b5665f'/>
<id>urn:sha1:6568379eea8f01ad87a6cbcb66111112a1b5665f</id>
<content type='text'>
- Fix autoreplace behaviour on statechange-led.sh script.

ZED sends the following events on an auto-replace:

1. statechange: Disk goes UNAVAIL-&gt;ONLINE
2. statechange: Disk goes ONLINE-&gt;UNAVAIL
3. vdev_attach: Disk goes ONLINE

Events 1-2 happen when ZED first attempts to do an auto-online.  When that
fails, ZED then tries an auto-replace, generating the vdev_attach event in #3.

In the previous code, statechange-led was only looking at the UNAVAIL-&gt;ONLINE
transition to turn off the LED.  It ignored the #2 ONLINE-&gt;UNAVAIL transition,
assuming it was just the "old" VDEV going offline.  This is problematic, as
a drive can go from ONLINE-&gt;UNAVAIL when it's malfunctioning, and we don't want
to ignore that.

This new patch correctly turns on the fault LED every time a drive becomes
UNAVAIL.  It also monitors vdev_attach events to trigger turning off the LED
when an auto-replaced disk comes online.

- Remove unnecessary libdevmapper warning with --with-config=kernel

This fixes an unnecessary libdevmapper warning when building
--with-config=kernel.  Kernel code does not use libdevmapper, so the warning
is not needed.

Reviewed-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Signed-off-by: Tony Hutter &lt;hutter2@llnl.gov&gt;
Closes #2375 
Closes #5312 
Closes #5331 </content>
</entry>
<entry>
<title>icp: mark asm files with noexec stack</title>
<updated>2016-10-25T17:44:09Z</updated>
<author>
<name>Jason Zaman</name>
<email>jasonzaman@gmail.com</email>
</author>
<published>2016-10-25T17:44:09Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=402c7c27b02ce7c62e1d108f4316a8faadb5f806'/>
<id>urn:sha1:402c7c27b02ce7c62e1d108f4316a8faadb5f806</id>
<content type='text'>
Similar to commit a3600a106.  Asm files need an explicit note
that they do not require an executable stack.

Reviewed-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Signed-off-by: Jason Zaman &lt;jason@perfinion.com&gt;
Closes #5332 </content>
</entry>
<entry>
<title>Fix cred leak in zpl_fallocate_common</title>
<updated>2016-10-24T23:41:56Z</updated>
<author>
<name>tuxoko</name>
<email>tuxoko@gmail.com</email>
</author>
<published>2016-10-24T23:41:56Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=9fa4db44b76716352b994abd7668bc9565466f7f'/>
<id>urn:sha1:9fa4db44b76716352b994abd7668bc9565466f7f</id>
<content type='text'>
This is caught by kmemleak when running compress_004_pos

Reviewed-by: Tim Chase &lt;tim@chase2k.com&gt;
Reviewed by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Signed-off-by: Chunwei Chen &lt;david.chen@osnexus.com&gt;
Closes #5244 
Closes #5330 </content>
</entry>
<entry>
<title>Fix taskq creation failure in vdev_open_children()</title>
<updated>2016-10-24T20:28:58Z</updated>
<author>
<name>Brian Behlendorf</name>
<email>behlendorf1@llnl.gov</email>
</author>
<published>2016-10-24T20:28:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=13d9a004fe533df8613888687650b1b0e272b67d'/>
<id>urn:sha1:13d9a004fe533df8613888687650b1b0e272b67d</id>
<content type='text'>
When creating and destroying pools in tight loop it's possible to
exhaust the number of allowed threads on a system.  This results
in taskq_create() failling and a NULL dereference.

Resolve the issue by falling back to opening the vdevs all
synchronously.

Reviewed-by: Denys Rtveliashvili &lt;denys@rtveliashvili.name&gt;
Reviewed-by: Håkan Johansson &lt;f96hajo@chalmers.se&gt;
Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Closes zfsonlinux/spl#521
Closes #4637 </content>
</entry>
<entry>
<title>Turn on/off enclosure slot fault LED even when disk isn't present</title>
<updated>2016-10-24T17:45:59Z</updated>
<author>
<name>Tony Hutter</name>
<email>hutter2@llnl.gov</email>
</author>
<published>2016-10-24T17:45:59Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=1bbd8770490f0e5b8c575865ab70f6853bca2a2a'/>
<id>urn:sha1:1bbd8770490f0e5b8c575865ab70f6853bca2a2a</id>
<content type='text'>
Previously when a drive faulted, the statechange-led.sh script would lookup
the drive's LED sysfs entry in /sys/block/sd*/device/enclosure_device, and
turn it on.  During testing we noticed that if you pulled out a drive, or if
the drive was so badly broken that it no longer appeared to Linux, that the
/sys/block/sd* path would be removed, and the script could not lookup the
LED entry.

To fix this, this patch looks up the disks's more persistent
"/sys/class/enclosure/X:X:X:X/Slot N" LED sysfs path at pool import.  It then
passes that path to the statechange-led script to use, rather than having the
script look it up on the fly.  This allows the script to turn on/off the slot
LEDs even when the drive is missing.

Closes #5309 
Closes #2375 </content>
</entry>
<entry>
<title>Fletcher4 algorithm implemented in pure NEON for Aarch64 / ARMv8 64 bits</title>
<updated>2016-10-21T17:55:49Z</updated>
<author>
<name>Romain Dolbeau</name>
<email>romain.github@dolbeau.name</email>
</author>
<published>2016-10-21T17:55:49Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=24cdeaf12e9e546621902449699fc6d664aeac2b'/>
<id>urn:sha1:24cdeaf12e9e546621902449699fc6d664aeac2b</id>
<content type='text'>
This is not useful on micro-architecture with a weak NEON
implementation (only 64 bits); the native version is slower &amp;
the byteswap barely faster than scalar.  On A53 or A57, it's
a small improvement on scalar but OK for byteswap.

Results from an A53 system:
0 0 0x01 -1 0 1499068294333000 1499101101878000
implementation   native         byteswap       
scalar           1008227510     755880264      
aarch64_neon     1198098720     1044818671     
fastest          aarch64_neon   aarch64_neon 

Results from a A57 system:
0 0 0x01 -1 0 4407214734807033 4407233933777404
implementation   native         byteswap       
scalar           2302071241     1124873346     
aarch64_neon     2542214946     2245570352     
fastest          aarch64_neon   aarch64_neon 

Reviewed-by: Gvozden Neskovic &lt;neskovic@gmail.com&gt;
Reviewed-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Signed-off-by: Romain Dolbeau &lt;romain.dolbeau@atos.net&gt;
Closes #5248 </content>
</entry>
<entry>
<title>Fix userquota_compare() function</title>
<updated>2016-10-21T15:23:27Z</updated>
<author>
<name>Brian Behlendorf</name>
<email>behlendorf1@llnl.gov</email>
</author>
<published>2016-10-21T15:23:27Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=e4ffa98dcaf2208c742609f0ab2bdb343071446a'/>
<id>urn:sha1:e4ffa98dcaf2208c742609f0ab2bdb343071446a</id>
<content type='text'>
The AVL tree compare function requires that either -1, 0, or 1 be
returned.  However the strcmp() function only guarantees that a
negative, zero, or positive value is returned.  Therefore, the
return value of strcmp() needs to be sanitized with AVL_ISIGN.

This was initially overlooked because the x86_64 implementation
of strcmp() happens to only returns the allowed values.  This
was observed on an aarch64 platform which behaves correctly but
differently as described above.

Reviewed-by: Jinshan Xiong &lt;jinshan.xiong@intel.com&gt;
Reviewed-by: Richard Laager &lt;rlaager@wiktel.com&gt;
Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Closes #5311 
Closes #5313 </content>
</entry>
<entry>
<title>Fix coverity defects: CID 153459</title>
<updated>2016-10-20T18:54:02Z</updated>
<author>
<name>luozhengzheng</name>
<email>luo.zhengzheng@zte.com.cn</email>
</author>
<published>2016-10-20T18:54:02Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=9523b15ac1881946a7a6b7a145c8e2bb622dc56c'/>
<id>urn:sha1:9523b15ac1881946a7a6b7a145c8e2bb622dc56c</id>
<content type='text'>
CID 153459: Null pointer dereferences (FORWARD_NULL)
Accidentally introduced by #5159.

Reviewed-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Signed-off-by: luozhengzheng &lt;luo.zhengzheng@zte.com.cn&gt;
Closes #5310 </content>
</entry>
</feed>
