<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/configure, branch zfs-0.6.0-rc6</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=zfs-0.6.0-rc6</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=zfs-0.6.0-rc6'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2011-09-06T20:20:48Z</updated>
<entry>
<title>Convert 'if' statements to AS_IF in kernel.m4</title>
<updated>2011-09-06T20:20:48Z</updated>
<author>
<name>Prakash Surya</name>
<email>surya1@llnl.gov</email>
</author>
<published>2011-08-24T16:52:16Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=8366cd6a83ab76885c89f57285e13428e4644ac0'/>
<id>urn:sha1:8366cd6a83ab76885c89f57285e13428e4644ac0</id>
<content type='text'>
The 'if' statements found in kernel.m4 were converted to use the
portable alternative provided by autoconf, the AS_IF macro.

Signed-off-by: Prakash Surya &lt;surya1@llnl.gov&gt;
Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
</content>
</entry>
<entry>
<title>Fix minor autoconf error message inconsistencies</title>
<updated>2011-09-06T20:20:04Z</updated>
<author>
<name>Prakash Surya</name>
<email>surya1@llnl.gov</email>
</author>
<published>2011-08-24T16:23:44Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=2984e0bb0c1dd3b96166b4c3ab99771e8712f686'/>
<id>urn:sha1:2984e0bb0c1dd3b96166b4c3ab99771e8712f686</id>
<content type='text'>
A few of the autoconf error messages were inconsistent with the rest of
the build system. To be specific, the inconsistencies addressed by this
commit are the following:

 * The second line of the error message for the CONFIG_PREEMPT check
   was missing it's third asterisk.

 * A few of the error messages were prefixed by two tabs, whereas the
   majority of error messages are only prefixed by a single tab.

Signed-off-by: Prakash Surya &lt;surya1@llnl.gov&gt;
Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
</content>
</entry>
<entry>
<title>Fix autoconf variable substitution in init scripts.</title>
<updated>2011-08-19T23:26:14Z</updated>
<author>
<name>Brian Behlendorf</name>
<email>behlendorf1@llnl.gov</email>
</author>
<published>2011-08-09T23:49:18Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=aa2b4896c93bbb2652ddc5e10e66175e54ff56c8'/>
<id>urn:sha1:aa2b4896c93bbb2652ddc5e10e66175e54ff56c8</id>
<content type='text'>
Change the variable substitution in the init script templates
according to the method described in the Autoconf manual;
Chapter 4.7.2: Installation Directory Variables.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
</content>
</entry>
<entry>
<title>Improve HAVE_EVICT_INODE check</title>
<updated>2011-08-08T23:42:09Z</updated>
<author>
<name>Brian Behlendorf</name>
<email>behlendorf1@llnl.gov</email>
</author>
<published>2011-08-05T23:55:04Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=ddd052aa8311f846e3d3f7a9ddf1a21d317fb04a'/>
<id>urn:sha1:ddd052aa8311f846e3d3f7a9ddf1a21d317fb04a</id>
<content type='text'>
The hardened gentoo kernel defines all of the super block
operation callbacks as const.  This prevents the autoconf test
from assigning the callback and results in a false negative.
By moving the assignment in to the declaration we can avoid
this issue and get a correct result for this patched kernel.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Closes #296
</content>
</entry>
<entry>
<title>Autogen refresh for udev changes</title>
<updated>2011-08-08T23:30:27Z</updated>
<author>
<name>Brian Behlendorf</name>
<email>behlendorf1@llnl.gov</email>
</author>
<published>2011-08-08T21:50:36Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=de0a1c099b7dc6722eb428838e893a4d9490a21e'/>
<id>urn:sha1:de0a1c099b7dc6722eb428838e893a4d9490a21e</id>
<content type='text'>
Run autogen.sh using the same autotools versions as upstream:

 * autoconf-2.63
 * automake-1.11.1
 * libtool-2.2.6b
</content>
</entry>
<entry>
<title>Add backing_device_info per-filesystem</title>
<updated>2011-08-04T20:37:38Z</updated>
<author>
<name>Brian Behlendorf</name>
<email>behlendorf1@llnl.gov</email>
</author>
<published>2011-08-02T01:24:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=76659dc110ef2ada13bcb8e4e2ec60d8216c6836'/>
<id>urn:sha1:76659dc110ef2ada13bcb8e4e2ec60d8216c6836</id>
<content type='text'>
For a long time now the kernel has been moving away from using the
pdflush daemon to write 'old' dirty pages to disk.  The primary reason
for this is because the pdflush daemon is single threaded and can be
a limiting factor for performance.  Since pdflush sequentially walks
the dirty inode list for each super block any delay in processing can
slow down dirty page writeback for all filesystems.

The replacement for pdflush is called bdi (backing device info).  The
bdi system involves creating a per-filesystem control structure each
with its own private sets of queues to manage writeback.  The advantage
is greater parallelism which improves performance and prevents a single
filesystem from slowing writeback to the others.

For a long time both systems co-existed in the kernel so it wasn't
strictly required to implement the bdi scheme.  However, as of
Linux 2.6.36 kernels the pdflush functionality has been retired.

Since ZFS already bypasses the page cache for most I/O this is only
an issue for mmap(2) writes which must go through the page cache.
Even then adding this missing support for newer kernels was overlooked
because there are other mechanisms which can trigger writeback.

However, there is one critical case where not implementing the bdi
functionality can cause problems.  If an application handles a page
fault it can enter the balance_dirty_pages() callpath.  This will
result in the application hanging until the number of dirty pages in
the system drops below the dirty ratio.

Without a registered backing_device_info for the filesystem the
dirty pages will not get written out.  Thus the application will hang.
As mentioned above this was less of an issue with older kernels because
pdflush would eventually write out the dirty pages.

This change adds a backing_device_info structure to the zfs_sb_t
which is already allocated per-super block.  It is then registered
when the filesystem mounted and unregistered on unmount.  It will
not be registered for mounted snapshots which are read-only.  This
change will result in flush-&lt;pool&gt; thread being dynamically created
and destroyed per-mounted filesystem for writeback.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Closes #174
</content>
</entry>
<entry>
<title>Turn the init.d scripts into autoconf config files</title>
<updated>2011-08-01T16:54:44Z</updated>
<author>
<name>Kyle Fuller</name>
<email>inbox@kylefuller.co.uk</email>
</author>
<published>2011-07-25T00:00:53Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=5faa9c0367e8d6b1ee1c45f1ebeffd3e53ef35e8'/>
<id>urn:sha1:5faa9c0367e8d6b1ee1c45f1ebeffd3e53ef35e8</id>
<content type='text'>
This change ensures the paths used by the provided init scripts
always reference the prefixes provided at configure time.  The
@sbindir@ and @sysconfdir@ prefixes will be correctly replaced
at build time.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Closes #336
</content>
</entry>
<entry>
<title>Fix the configure CONFIG_* option detection</title>
<updated>2011-07-22T22:07:16Z</updated>
<author>
<name>Brian Behlendorf</name>
<email>behlendorf1@llnl.gov</email>
</author>
<published>2011-07-22T21:10:38Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=0da78696904f6e0e7cfedd2a0296879f47717f4f'/>
<id>urn:sha1:0da78696904f6e0e7cfedd2a0296879f47717f4f</id>
<content type='text'>
The latest kernels no longer define AUTOCONF_INCLUDED which was
being used to detect the new style autoconf.h kernel configure
options.  This results in the CONFIG_* checks always failing
incorrectly for newer kernels.

The fix for this is a simplification of the testing method.
Rather than attempting to explicitly include to renamed config
header.  It is simpler to unconditionally include &lt;linux/module.h&gt;
which must pick up the correctly named header.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Closes #320
</content>
</entry>
<entry>
<title>Provide a rc.d script for archlinux</title>
<updated>2011-07-11T21:12:23Z</updated>
<author>
<name>Kyle Fuller</name>
<email>inbox@kylefuller.co.uk</email>
</author>
<published>2011-07-10T15:57:33Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=615ab66d18f74b3f4979c06192e1aa1082523dd3'/>
<id>urn:sha1:615ab66d18f74b3f4979c06192e1aa1082523dd3</id>
<content type='text'>
Unlike most other Linux distributions archlinux installs its
init scripts in /etc/rc.d insead of /etc/init.d.  This commit
provides an archlinux rc.d script for zfs and extends the
build infrastructure to ensure it get's installed in the
correct place.

Signed-off-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Closes #322
</content>
</entry>
<entry>
<title>Implemented sharing datasets via NFS using libshare.</title>
<updated>2011-07-06T16:20:28Z</updated>
<author>
<name>Gunnar Beutner</name>
<email>gunnar@beutner.name</email>
</author>
<published>2011-07-02T19:34:05Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=46e18b3f0fc13aa0859d0fef7dc829db20491ab6'/>
<id>urn:sha1:46e18b3f0fc13aa0859d0fef7dc829db20491ab6</id>
<content type='text'>
The sharenfs and sharesmb properties depend on the libshare library
to export datasets via NFS and SMB. This commit implements the base
libshare functionality as well as support for managing NFS shares.

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