<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/modules/zfs, branch releng/10.2</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=releng%2F10.2</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=releng%2F10.2'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2014-10-10T00:26:00Z</updated>
<entry>
<title>MFC r271802:</title>
<updated>2014-10-10T00:26:00Z</updated>
<author>
<name>Steven Hartland</name>
<email>smh@FreeBSD.org</email>
</author>
<published>2014-10-10T00:26:00Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=773befe5e26b126c3272cd63883d6c463ea291db'/>
<id>urn:sha1:773befe5e26b126c3272cd63883d6c463ea291db</id>
<content type='text'>
Add dtrace probe support for zfs SET_ERROR(..)

MFC r271873:
Fix static kernel build with options ZFS

MFC r271819:
Remove sys/types.h include as per style (9)

Sponsored by:	Multiplay
</content>
</entry>
<entry>
<title>MFC r258625: sdt: add support for solaris/illumos style DTRACE_PROBE macros</title>
<updated>2014-02-17T14:47:52Z</updated>
<author>
<name>Andriy Gapon</name>
<email>avg@FreeBSD.org</email>
</author>
<published>2014-02-17T14:47:52Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=9cadff00bf8cca995a842c09d746fa90695f911e'/>
<id>urn:sha1:9cadff00bf8cca995a842c09d746fa90695f911e</id>
<content type='text'>
Note: in head KDTRACE_HOOKS is defined in opt_global.h and thus there is
no need to explicitly include any header to check that option.
In this branch we have to include opt_kdtrace.h and, so, this commit
carries additional changes to accomodate for that difference.

Sponsored by:	HybridCluster
</content>
</entry>
<entry>
<title>opensolaris code: translate INVARIANTS to DEBUG and ZFS_DEBUG</title>
<updated>2013-08-06T15:51:56Z</updated>
<author>
<name>Andriy Gapon</name>
<email>avg@FreeBSD.org</email>
</author>
<published>2013-08-06T15:51:56Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=c319ea15f4eea35e673769f77cceaeeae5c87e00'/>
<id>urn:sha1:c319ea15f4eea35e673769f77cceaeeae5c87e00</id>
<content type='text'>
Do this by forcing inclusion of
sys/cddl/compat/opensolaris/sys/debug_compat.h
via -include option into all source files from OpenSolaris.
Note that this -include option must always be after -include opt_global.h.

Additionally, remove forced definition of DEBUG for some modules and fix
their build without DEBUG.

Also, meaning of DEBUG was overloaded to enable WITNESS support for some
OpenSolaris (primarily ZFS) locks.  Now this overloading is removed and
that use of DEBUG is replaced with a new option OPENSOLARIS_WITNESS.

MFC after:	17 days
</content>
</entry>
<entry>
<title>Switch the vm_object mutex to be a rwlock.  This will enable in the</title>
<updated>2013-03-09T02:32:23Z</updated>
<author>
<name>Attilio Rao</name>
<email>attilio@FreeBSD.org</email>
</author>
<published>2013-03-09T02:32:23Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=89f6b8632cc94bca2738b4fcc26e1189ef4f5dde'/>
<id>urn:sha1:89f6b8632cc94bca2738b4fcc26e1189ef4f5dde</id>
<content type='text'>
future further optimizations where the vm_object lock will be held
in read mode most of the time the page cache resident pool of pages
are accessed for reading purposes.

The change is mostly mechanical but few notes are reported:
* The KPI changes as follow:
  - VM_OBJECT_LOCK() -&gt; VM_OBJECT_WLOCK()
  - VM_OBJECT_TRYLOCK() -&gt; VM_OBJECT_TRYWLOCK()
  - VM_OBJECT_UNLOCK() -&gt; VM_OBJECT_WUNLOCK()
  - VM_OBJECT_LOCK_ASSERT(MA_OWNED) -&gt; VM_OBJECT_ASSERT_WLOCKED()
    (in order to avoid visibility of implementation details)
  - The read-mode operations are added:
    VM_OBJECT_RLOCK(), VM_OBJECT_TRYRLOCK(), VM_OBJECT_RUNLOCK(),
    VM_OBJECT_ASSERT_RLOCKED(), VM_OBJECT_ASSERT_LOCKED()
* The vm/vm_pager.h namespace pollution avoidance (forcing requiring
  sys/mutex.h in consumers directly to cater its inlining functions
  using VM_OBJECT_LOCK()) imposes that all the vm/vm_pager.h
  consumers now must include also sys/rwlock.h.
* zfs requires a quite convoluted fix to include FreeBSD rwlocks into
  the compat layer because the name clash between FreeBSD and solaris
  versions must be avoided.
  At this purpose zfs redefines the vm_object locking functions
  directly, isolating the FreeBSD components in specific compat stubs.

The KPI results heavilly broken by this commit.  Thirdy part ports must
be updated accordingly (I can think off-hand of VirtualBox, for example).

Sponsored by:	EMC / Isilon storage division
Reviewed by:	jeff
Reviewed by:	pjd (ZFS specific review)
Discussed with:	alc
Tested by:	pho
</content>
</entry>
<entry>
<title>Add TRIM support.</title>
<updated>2012-09-23T19:40:58Z</updated>
<author>
<name>Pawel Jakub Dawidek</name>
<email>pjd@FreeBSD.org</email>
</author>
<published>2012-09-23T19:40:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=bcb77be2b7972fa2935bccf5a3eaa8365ac25f5e'/>
<id>urn:sha1:bcb77be2b7972fa2935bccf5a3eaa8365ac25f5e</id>
<content type='text'>
The code builds a map of regions that were freed. On every write the
code consults the map and eventually removes ranges that were freed
before, but are now overwritten.

Freed blocks are not TRIMed immediately. There is a tunable that defines
how many txg we should wait with TRIMming freed blocks (64 by default).

There is a low priority thread that TRIMs ranges when the time comes.
During TRIM we keep in-flight ranges on a list to detect colliding
writes - we have to delay writes that collide with in-flight TRIMs in
case something will be reordered and write will reached the disk before
the TRIM. We don't have to do the same for in-flight writes, as
colliding writes just remove ranges to TRIM.

Sponsored by:	multiplay.co.uk

This work includes some important fixes and some improvements obtained
from the zfsonlinux project, including TRIMming entire vdevs on pool
create/add/attach and on pool import for spare and cache vdevs.

Obtained from:	zfsonlinux
Submitted by:	Etienne Dechamps &lt;etienne.dechamps@ovh.net&gt;
</content>
</entry>
<entry>
<title>Introduce "feature flags" for ZFS pools (bump SPA version to 5000).</title>
<updated>2012-06-11T11:35:22Z</updated>
<author>
<name>Martin Matuska</name>
<email>mm@FreeBSD.org</email>
</author>
<published>2012-06-11T11:35:22Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=2d9cf57e18654edda53bcb460ca66641ba69ed75'/>
<id>urn:sha1:2d9cf57e18654edda53bcb460ca66641ba69ed75</id>
<content type='text'>
Add first feature "com.delphix:async_destroy" (asynchronous destroy
of ZFS datasets).
Implement features support in ZFS boot code.

Illumos revisions merged:
13700:2889e2596bd6
13701:1949b688d5fb
2619 asynchronous destruction of ZFS file systems
2747 SPA versioning with zfs feature flags

References:
https://www.illumos.org/issues/2619
https://www.illumos.org/issues/2747

Obtained from:	illumos (issue #2619, #2747)
MFC after:	1 month
</content>
</entry>
<entry>
<title>Don't look for includes in userland directories. There is no need for it</title>
<updated>2011-10-25T16:22:43Z</updated>
<author>
<name>Pawel Jakub Dawidek</name>
<email>pjd@FreeBSD.org</email>
</author>
<published>2011-10-25T16:22:43Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=664015e27ae38f981d6f8c9ebffb74241f228abc'/>
<id>urn:sha1:664015e27ae38f981d6f8c9ebffb74241f228abc</id>
<content type='text'>
and it breaks building the kernel without userland sources.

Reported by:	andre, imp
MFC after:	3 days
</content>
</entry>
<entry>
<title>Fix misuse of TARGET_ARCH. This should be MACHINE_ARCH.</title>
<updated>2011-03-01T20:51:41Z</updated>
<author>
<name>Nathan Whitehorn</name>
<email>nwhitehorn@FreeBSD.org</email>
</author>
<published>2011-03-01T20:51:41Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=f1321be28478979ce17fe49717ab6f2546bc2f8e'/>
<id>urn:sha1:f1321be28478979ce17fe49717ab6f2546bc2f8e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Finally... Import the latest open-source ZFS version - (SPA) 28.</title>
<updated>2011-02-27T19:41:40Z</updated>
<author>
<name>Pawel Jakub Dawidek</name>
<email>pjd@FreeBSD.org</email>
</author>
<published>2011-02-27T19:41:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=10b9d77bf1ccf2f3affafa6261692cb92cf7e992'/>
<id>urn:sha1:10b9d77bf1ccf2f3affafa6261692cb92cf7e992</id>
<content type='text'>
Few new things available from now on:

- Data deduplication.
- Triple parity RAIDZ (RAIDZ3).
- zfs diff.
- zpool split.
- Snapshot holds.
- zpool import -F. Allows to rewind corrupted pool to earlier
  transaction group.
- Possibility to import pool in read-only mode.

MFC after:	1 month
</content>
</entry>
<entry>
<title>Simplify atomic selection</title>
<updated>2010-09-13T07:29:02Z</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2010-09-13T07:29:02Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=80dfae5fe2432fd72dead5aebe4a1592aaf39281'/>
<id>urn:sha1:80dfae5fe2432fd72dead5aebe4a1592aaf39281</id>
<content type='text'>
</content>
</entry>
</feed>
