<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/config, branch zfs-0.6.2</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=zfs-0.6.2</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=zfs-0.6.2'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2013-08-15T23:19:07Z</updated>
<entry>
<title>Linux 3.11 compat: fops-&gt;iterate()</title>
<updated>2013-08-15T23:19:07Z</updated>
<author>
<name>Richard Yao</name>
<email>ryao@gentoo.org</email>
</author>
<published>2013-08-07T12:53:45Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=0f37d0c8bed442dd0d2c1b1dddd68653fa6eec66'/>
<id>urn:sha1:0f37d0c8bed442dd0d2c1b1dddd68653fa6eec66</id>
<content type='text'>
Commit torvalds/linux@2233f31aade393641f0eaed43a71110e629bb900
replaced -&gt;readdir() with -&gt;iterate() in struct file_operations.
All filesystems must now use the new -&gt;iterate method.

To handle this the code was reworked to use the new -&gt;iterate
interface.  Care was taken to keep the majority of changes
confined to the ZPL layer which is already Linux specific.
However, minor changes were required to the common zfs_readdir()
function.

Compatibility with older kernels was accomplished by adding
versions of the trivial dir_emit* helper functions.  Also the
various *_readdir() functions were reworked in to wrappers
which create a dir_context structure to pass to the new
*_iterate() functions.

Unfortunately, the new dir_emit* functions prevent us from
passing a private pointer to the filldir function.  The xattr
directory code leveraged this ability through zfs_readdir()
to generate the list of xattr names.  Since we can no longer
use zfs_readdir() a simplified zpl_xattr_readdir() function
was added to perform the same task.

Signed-off-by: Richard Yao &lt;ryao@cs.stonybrook.edu&gt;
Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Closes #1653
Issue #1591
</content>
</entry>
<entry>
<title>Fix arc_adapt() spinning in iterate_supers_type()</title>
<updated>2013-07-17T16:28:06Z</updated>
<author>
<name>Brian Behlendorf</name>
<email>behlendorf1@llnl.gov</email>
</author>
<published>2013-07-15T20:37:51Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=dba1d705669cf0e33091622d0e950b9459b20e2e'/>
<id>urn:sha1:dba1d705669cf0e33091622d0e950b9459b20e2e</id>
<content type='text'>
The iterate_supers_type() function which was introduced in the
3.0 kernel was supposed to provide a safe way to call an arbitrary
function on all super blocks of a specific type.  Unfortunately,
because a list_head was used a bug was introduced which made it
possible for iterate_supers_type() to get stuck spinning on a
super block which was just deactivated.

This can occur because when the list head is removed from the
fs_supers list it is reinitialized to point to itself.  If the
iterate_supers_type() function happened to be processing the
removed list_head it will get stuck spinning on that list_head.

The bug was fixed in the 3.3 kernel by converting the list_head
to an hlist_node.  However, to resolve the issue for existing
3.0 - 3.2 kernels we detect when a list_head is used.  Then to
prevent the spinning from occurring the .next pointer is set to
the fs_supers list_head which ensures the iterate_supers_type()
function will always terminate.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Closes #1045
Closes #861
Closes #790
</content>
</entry>
<entry>
<title>3.10 API change: block_device_operations-&gt;release() returns void</title>
<updated>2013-07-08T22:41:57Z</updated>
<author>
<name>Chris Dunlop</name>
<email>chris@onthe.net.au</email>
</author>
<published>2013-06-03T06:58:52Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=a1d9543a39942be56879ca9338078afc77c25cea'/>
<id>urn:sha1:a1d9543a39942be56879ca9338078afc77c25cea</id>
<content type='text'>
Linux kernel commit torvalds/linux@db2a144 changed the return type
of block_device_operations-&gt;release() to void.  Detect the expected
prototype and defined our callout accordingly.

Signed-off-by: Chris Dunlop &lt;chris@onthe.net.au&gt;
Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Closes #1494
</content>
</entry>
<entry>
<title>Add SEEK_DATA/SEEK_HOLE to lseek()/llseek()</title>
<updated>2013-07-02T16:24:43Z</updated>
<author>
<name>Li Dongyang</name>
<email>dongyang.li@anu.edu.au</email>
</author>
<published>2013-06-13T17:51:09Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=802e7b5feb0135483de119eac1da192404eb5bb7'/>
<id>urn:sha1:802e7b5feb0135483de119eac1da192404eb5bb7</id>
<content type='text'>
The approach taken was the rework zfs_holey() as little as
possible and then just wrap the code as needed to ensure
correct locking and error handling.

Tested with xfstests 285 and 286.  All tests pass except for
7-9 of 285 which try to reserve blocks first via fallocate(2)
and fail because fallocate(2) is not yet supported.

Note that the filp-&gt;f_lock spinlock did not exist prior to
Linux 2.6.30, but we avoid the need for autotools check by
virtue of the fact that SEEK_DATA/SEEK_HOLE support was not
added until Linux 3.1.

An autoconf check was added for lseek_execute() which is
currently a private function but the expectation is that it
will be exported perhaps as early as Linux 3.11.

Reviewed-by: Richard Laager &lt;rlaager@wiktel.com&gt;
Signed-off-by: Richard Yao &lt;ryao@gentoo.org&gt;
Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Closes #1384
</content>
</entry>
<entry>
<title>Ensure --with-spl-timeout waits for spl_config.h and symvers</title>
<updated>2013-05-02T22:40:44Z</updated>
<author>
<name>Carlos Alberto Lopez Perez</name>
<email>clopez@igalia.com</email>
</author>
<published>2013-04-27T18:18:11Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=5165473737e488447edfe25209c68704e08b3a2d'/>
<id>urn:sha1:5165473737e488447edfe25209c68704e08b3a2d</id>
<content type='text'>
The previous code was only waiting for the symver file. But the
postinst target of the DKMS script for SPL will not only create
the symvers file, but also the header spl_config.h.

If we are waiting in the configure script of ZFS for the SPL
symvers file, then we also need to wait for spl_config.h.
Otherwise the configure script will abort because the spl_config.h
is not yet available.

On top of that, the function ZFS_AC_SPL_MODULE_SYMVERS is moved
to the end of the function ZFS_AC_SPL to allow both checks share
the with-spl-timeout parameter.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Closes #1431
</content>
</entry>
<entry>
<title>Set RPM_DEFINE_COMMON options</title>
<updated>2013-04-24T23:18:55Z</updated>
<author>
<name>Brian Behlendorf</name>
<email>behlendorf1@llnl.gov</email>
</author>
<published>2013-04-23T23:40:47Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=e013670550641610dc09b6b58f0ea9fd00169d07'/>
<id>urn:sha1:e013670550641610dc09b6b58f0ea9fd00169d07</id>
<content type='text'>
When the kmod packaging was introduced the ability to pass the
--enable-debug and --enable-dmu-tx options from configure all
the way through to `make rpm|deb` was accidenally lost.  Update
ZFS_AC_RPM to explicitlu set RPM_DEFINE_COMMON with these
rpmbuild defines.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Issue #1402
</content>
</entry>
<entry>
<title>Add --bump=0 to alien</title>
<updated>2013-04-24T23:18:53Z</updated>
<author>
<name>Turbo Fredriksson</name>
<email>turbo@bayour.com</email>
</author>
<published>2013-04-13T16:59:19Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=1a33036df9de8f95aea38ec0d9e483106d1abaa4'/>
<id>urn:sha1:1a33036df9de8f95aea38ec0d9e483106d1abaa4</id>
<content type='text'>
Preserve the release field when creating Debian packages.  The
--keep-version option was not used because it results in a failure
when the git '&lt;commit&gt;_&lt;hash&gt;' syntax is used for the release.
The '_' is a valid character for RPM packages but not for DEBs.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Signed-off-by: Turbo Fredriksson &lt;turbo@bayour.com&gt;
Issue #1402
Issue #928
</content>
</entry>
<entry>
<title>Support .nogitrelease file</title>
<updated>2013-04-24T23:18:49Z</updated>
<author>
<name>Turbo Fredriksson</name>
<email>turbo@bayour.com</email>
</author>
<published>2013-04-20T05:24:15Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=d012ba3832e11511451ff71c1c45f4f64c3b759c'/>
<id>urn:sha1:d012ba3832e11511451ff71c1c45f4f64c3b759c</id>
<content type='text'>
When building a custom release in a git tree provide the ability
to prevent the release field from being overwritten by the
`git describe` output.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Issue #1402
</content>
</entry>
<entry>
<title>Replace the ZFS_AC_META perl dependency with awk</title>
<updated>2013-04-02T23:05:45Z</updated>
<author>
<name>Brian Behlendorf</name>
<email>behlendorf1@llnl.gov</email>
</author>
<published>2013-04-02T20:31:42Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=d17eeafbf0c680c154ed83cec60112a0b28ae985'/>
<id>urn:sha1:d17eeafbf0c680c154ed83cec60112a0b28ae985</id>
<content type='text'>
The only remaining perl dependency is part of the ZFS_AC_META macro.
By eliminating this and replacing it with awk we can avoid the need
to pull in perl to rebuild the packages.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Issue #1380
</content>
</entry>
<entry>
<title>build: do not call boilerplate ourself</title>
<updated>2013-04-02T17:55:20Z</updated>
<author>
<name>Jan Engelhardt</name>
<email>jengelh@inai.de</email>
</author>
<published>2013-03-30T02:33:09Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=8c3926294579f64f6ebe09b0ddaed5dd9cbd48ef'/>
<id>urn:sha1:8c3926294579f64f6ebe09b0ddaed5dd9cbd48ef</id>
<content type='text'>
Rationale see section 3.5 "Using `autoreconf' to Update `configure'
Scripts" of the autoconf manual.

http://www.gnu.org/software/autoconf/manual/autoconf-2.67/html_node/autoreconf-Invocation.html

Signed-off-by: Jan Engelhardt &lt;jengelh@inai.de&gt;
Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
</content>
</entry>
</feed>
