<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/include/linux, 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>Linux 4.9 compat: inode_change_ok() renamed setattr_prepare()</title>
<updated>2016-10-20T16:39:09Z</updated>
<author>
<name>Brian Behlendorf</name>
<email>behlendorf1@llnl.gov</email>
</author>
<published>2016-10-18T23:49:23Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=3b0ba3ba99b8a3af0fb532bf264629436b1abd84'/>
<id>urn:sha1:3b0ba3ba99b8a3af0fb532bf264629436b1abd84</id>
<content type='text'>
In torvalds/linux@31051c8 the inode_change_ok() function was
renamed setattr_prepare() and updated to take a dentry ratheri
than an inode.  Update the code to call the setattr_prepare()
and add a wrapper function which call inode_change_ok() for
older kernels.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Signed-off-by: Chunwei Chen &lt;david.chen@osnexus.com&gt;
Requires-spl: refs/pull/581/head
</content>
</entry>
<entry>
<title>Add parity generation/rebuild using 128-bits NEON for Aarch64</title>
<updated>2016-10-03T16:44:00Z</updated>
<author>
<name>Romain Dolbeau</name>
<email>romain.github@dolbeau.name</email>
</author>
<published>2016-10-03T16:44:00Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=62a65a654e15a1388bfb571727e69b46e7cc07ab'/>
<id>urn:sha1:62a65a654e15a1388bfb571727e69b46e7cc07ab</id>
<content type='text'>
This re-use the framework established for SSE2, SSSE3 and
AVX2. However, GCC is using FP registers on Aarch64, so
unlike SSE/AVX2 we can't rely on the registers being left alone
between ASM statements. So instead, the NEON code uses
C variables and GCC extended ASM syntax. Note that since
the kernel explicitly disable vector registers, they
have to be locally re-enabled explicitly.

As we use the variable's number to define the symbolic
name, and GCC won't allow duplicate symbolic names,
numbers have to be unique. Even when the code is not
going to be used (e.g. the case for 4 registers when
using the macro with only 2). Only the actually used
variables should be declared, otherwise the build
will fails in debug mode.

This requires the replacement of the XOR(X,X) syntax
by a new ZERO(X) macro, which does the same thing but
without repeating the argument. And perhaps someday
there will be a machine where there is a more efficient
way to zero a register than XOR with itself. This affects
scalar, SSE2, SSSE3 and AVX2 as they need the new macro.

It's possible to write faster implementations (different
scheduling, different unrolling, interleaving NEON and
scalar, ...) for various cores, but this one has the
advantage of fitting in the current state of the code,
and thus is likely easier to review/check/merge.

The only difference between aarch64-neon and aarch64-neonx2
is that aarch64-neonx2 unroll some functions some more.

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 #4801 </content>
</entry>
<entry>
<title>Linux compat: Grsecurity kernel</title>
<updated>2016-08-22T17:05:45Z</updated>
<author>
<name>Gvozden Neskovic</name>
<email>neskovic@gmail.com</email>
</author>
<published>2016-08-21T19:29:49Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=9cc1844a1dab9cb62743f1f31eca73fcc6aaf0c4'/>
<id>urn:sha1:9cc1844a1dab9cb62743f1f31eca73fcc6aaf0c4</id>
<content type='text'>
API Change: Module parameter set/get methods take const parameter in
Grsecurity kernel v4.7.1

Signed-off-by: Gvozden Neskovic &lt;neskovic@gmail.com&gt;
Signed-off-by: Jason Zaman &lt;jason@perfinion.com&gt;
Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Closes #4997
Closes #5001
</content>
</entry>
<entry>
<title>Add support for AVX-512 family of instruction sets</title>
<updated>2016-08-16T21:10:33Z</updated>
<author>
<name>Gvozden Neskovic</name>
<email>neskovic@gmail.com</email>
</author>
<published>2016-07-01T16:33:04Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=32ffaa3de58981814342fe6d3556c03d41d121f8'/>
<id>urn:sha1:32ffaa3de58981814342fe6d3556c03d41d121f8</id>
<content type='text'>
This patch adds compiler and runtime tests (user and kernel) for following
instruction sets: avx512f, avx512cd, avx512er, avx512pf, avx512bw, avx512dq,
avx512vl, avx512ifma, avx512vbmi.

note: Linux support for AVX-512F (Foundation) instruction set started with
linux v3.15

Signed-off-by: Gvozden Neskovic &lt;neskovic@gmail.com&gt;
Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Issue #4952
</content>
</entry>
<entry>
<title>Reorder HAVE_BIO_RW_* checks</title>
<updated>2016-08-12T16:17:40Z</updated>
<author>
<name>Brian Behlendorf</name>
<email>behlendorf1@llnl.gov</email>
</author>
<published>2016-08-11T21:58:13Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=6eb73b00466b4d72c9e0f0df8e000ef68b757c99'/>
<id>urn:sha1:6eb73b00466b4d72c9e0f0df8e000ef68b757c99</id>
<content type='text'>
The HAVE_BIO_RW_* #ifdef's must appear before REQ_* #ifdef's
in the bio_is_flush() and bio_is_discard() macros.  Linux 2.6.32
era kernels defined both of values and the HAVE_BIO_RW_* must be
used in this case.  This resulted in a panic in zconfig test 5.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Signed-off-by: Chunwei Chen &lt;david.chen@osnexus.com&gt;
Closes #4951
Closes #4959
</content>
</entry>
<entry>
<title>Use file_dentry and file_inode wrappers</title>
<updated>2016-08-11T19:06:37Z</updated>
<author>
<name>Chen Haiquan</name>
<email>oc@yunify.com</email>
</author>
<published>2016-08-04T15:57:35Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=d9c97ec08b995f1a36657accc4bbc6057645a72c'/>
<id>urn:sha1:d9c97ec08b995f1a36657accc4bbc6057645a72c</id>
<content type='text'>
Fix bugs due to kernel change in torvalds/linux@4bacc9c9234c ("overlayfs:
Make f_path always point to the overlay and f_inode to the underlay").

This problem crashes system when use zfs as a layer of overlayfs.

Signed-off-by: Chen Haiquan &lt;oc@yunify.com&gt;
Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Closes #4914
Closes #4935
</content>
</entry>
<entry>
<title>Linux 4.8 compat: Fix removal of bio-&gt;bi_rw member</title>
<updated>2016-08-11T18:19:34Z</updated>
<author>
<name>Brian Behlendorf</name>
<email>behlendorf1@llnl.gov</email>
</author>
<published>2016-08-09T18:22:30Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=cf41432c70c2df282f0f4ed7647154f3f4972d34'/>
<id>urn:sha1:cf41432c70c2df282f0f4ed7647154f3f4972d34</id>
<content type='text'>
All users of bio-&gt;bi_rw have been replaced with compatibility wrappers.
This allows the kernel specific logic to be abstracted away, and for
each of the supported cases to be documented with the wrapper.  The
updated interfaces are as follows:

* void blk_queue_set_write_cache(struct request_queue *, bool, bool)
* boolean_t bio_is_flush(struct bio *)
* boolean_t bio_is_fua(struct bio *)
* boolean_t bio_is_discard(struct bio *)
* boolean_t bio_is_secure_erase(struct bio *)
* VDEV_WRITE_FLUSH_FUA

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Signed-off-by: Chunwei Chen &lt;david.chen@osnexus.com&gt;
Closes #4951
</content>
</entry>
<entry>
<title>Linux 4.8 compat: posix_acl_valid()</title>
<updated>2016-08-08T18:46:40Z</updated>
<author>
<name>Brian Behlendorf</name>
<email>behlendorf1@llnl.gov</email>
</author>
<published>2016-08-02T18:11:45Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=4b908d32200b6e5c7b5115322b6c8d25e770daa0'/>
<id>urn:sha1:4b908d32200b6e5c7b5115322b6c8d25e770daa0</id>
<content type='text'>
The posix_acl_valid() function has been updated to require a
user namespace.  Filesystem callers should normally provide the
user_ns from the super block associcated with the ACL; the
zpl_posix_acl_valid() wrapper has been added for this purpose.
See https://github.com/torvalds/linux/commit/0d4d717f for
complete details.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Signed-off-by: Nikolay Borisov &lt;n.borisov.lkml@gmail.com&gt;
Signed-off-by: Chunwei Chen &lt;david.chen@osnexus.com&gt;
Closes #4922
</content>
</entry>
<entry>
<title>Retire HAVE_CURRENT_UMASK and HAVE_POSIX_ACL_CACHING</title>
<updated>2016-08-08T18:46:32Z</updated>
<author>
<name>Brian Behlendorf</name>
<email>behlendorf1@llnl.gov</email>
</author>
<published>2016-08-02T17:50:52Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=e85a6396b0f7f3cb5a76cf88e47fc1334f9162b7'/>
<id>urn:sha1:e85a6396b0f7f3cb5a76cf88e47fc1334f9162b7</id>
<content type='text'>
Remove ZFS_AC_KERNEL_CURRENT_UMASK and ZFS_AC_KERNEL_POSIX_ACL_CACHING
configure checks, all supported kernel provide this functionality.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Signed-off-by: Nikolay Borisov &lt;n.borisov.lkml@gmail.com&gt;
Signed-off-by: Chunwei Chen &lt;david.chen@osnexus.com&gt;
Closes #4922
</content>
</entry>
</feed>
