<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/lib/libbe, branch release/12.3.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=release%2F12.3.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=release%2F12.3.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2020-11-14T15:26:18Z</updated>
<entry>
<title>MFC r366819: libbe(3): const'ify a couple arguments</title>
<updated>2020-11-14T15:26:18Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2020-11-14T15:26:18Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=fbeb1ad7f01e63101b6d9cc7ab1d5927e8f991b7'/>
<id>urn:sha1:fbeb1ad7f01e63101b6d9cc7ab1d5927e8f991b7</id>
<content type='text'>
libbe will never need to mutate these as we either process them into a local
buffer or we just don't touch them and write to a separate out argument.
</content>
</entry>
<entry>
<title>MFC r366820-r366821: libbe(3) documentation improvements</title>
<updated>2020-11-14T15:21:20Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2020-11-14T15:21:20Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=1a672d9c1e76675ce28342ac4740e3446231fe04'/>
<id>urn:sha1:1a672d9c1e76675ce28342ac4740e3446231fe04</id>
<content type='text'>
r366820:
libbe(3): document be_snapshot()

While toying around with lua bindings for libbe(3), I discovered that I
apparently never documented this, despite having documented
be_is_auto_snapshot_name that references it.

r366821:
libbe(3): install MLINKS for all of the functions provided
</content>
</entry>
<entry>
<title>MFC r363409: libbe: annotate lbh as __unused in be_is_auto_snapshot_name</title>
<updated>2020-08-06T04:54:59Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2020-08-06T04:54:59Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=a5816e62c36ab9bd5aa37749e8b746b90e996929'/>
<id>urn:sha1:a5816e62c36ab9bd5aa37749e8b746b90e996929</id>
<content type='text'>
lbh is included for consistency with other functions and in case
future work needs to use it, but it is currently unused. Mark it,
and a post-OpenZFS-import world will be able to raise WARNS of
libbe to the default (pending some minor changes to openzfs libzfs).
</content>
</entry>
<entry>
<title>MFC r357067: Drop "All Rights Reserved" from all libbe/bectl files</title>
<updated>2020-02-07T21:57:27Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2020-02-07T21:57:27Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=1d1ed1a5d73fd91fb6dfbd4dda0ae2f22593c9cf'/>
<id>urn:sha1:1d1ed1a5d73fd91fb6dfbd4dda0ae2f22593c9cf</id>
<content type='text'>
</content>
</entry>
<entry>
<title>MFC r356876-r356877: add zfs_mount_at</title>
<updated>2020-01-22T22:51:55Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2020-01-22T22:51:55Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=ea3031df6333f509fc51940e0d53c00fe694b39d'/>
<id>urn:sha1:ea3031df6333f509fc51940e0d53c00fe694b39d</id>
<content type='text'>
r356876:
libzfs: add zfs_mount_at

This will be used in libbe in place of the internal zmount(); libbe only
wants to be able to mount a dataset at an arbitrary mountpoint without
altering dataset/pool properties. The natural way to do this in a portable
way is by creating a zfs_mount_at() interface that's effectively zfs_mount()
+ a mountpoint parameter. zfs_mount() is now a light wrapper around the new
method.

The interface and implementation have already been accepted into ZFS On
Linux, and the next commit to switch libbe() over to this new interface will
solve the last compatibility issue with ZoL.  The next sysutils/openzfs
rebase against ZoL should be able to build libbe/bectl with only minor
adjustments to build glue.

r356877:
libbe: use the new zfs_mount_at()

More background is available in r356876, but this new interface is more
portable across ZFS implementations and cleaner for what libbe is attempting
to achieve anyways.
</content>
</entry>
<entry>
<title>MFC r356279: libbe(3): promote dependent clones when destroying a BE</title>
<updated>2020-01-10T03:37:52Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2020-01-10T03:37:52Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=a8b7e8cd3ce219e10b39c07d6bbd93c6be1d8d4f'/>
<id>urn:sha1:a8b7e8cd3ce219e10b39c07d6bbd93c6be1d8d4f</id>
<content type='text'>
When removing a boot environment iterate over the dependents and process the
snapshots by grabbing any clones. Promote the clones we found and then
remove the target environment.

This fixes the ability to destroy a boot environment when it has been used
to spawn one or more other boot environments.

PR:		242592
</content>
</entry>
<entry>
<title>Add Makefile.depend.options</title>
<updated>2019-12-19T04:58:11Z</updated>
<author>
<name>Simon J. Gerraty</name>
<email>sjg@FreeBSD.org</email>
</author>
<published>2019-12-19T04:58:11Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=387f2740cab1168555efc6076159d2a66f018a58'/>
<id>urn:sha1:387f2740cab1168555efc6076159d2a66f018a58</id>
<content type='text'>
Leaf directories that have dependencies impacted
by options need a Makefile.depend.options file
to avoid churn in Makefile.depend

DIRDEPS for cases such as OPENSSL, TCP_WRAPPERS etc
can be set in local.dirdeps-options.mk
which can add to those set in Makefile.depend.options

See share/mk/dirdeps-options.mk

Also update affected Makefile.depend files.

MFC of r355616 and r355617

Reviewed by:	 bdrewery
Sponsored by:   Juniper Networks
Differential Revision:  https://reviews.freebsd.org/D22469
</content>
</entry>
<entry>
<title>MFC r355460: libbe: fix build against sysutils/openzfs, part 1</title>
<updated>2019-12-12T18:53:45Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2019-12-12T18:53:45Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=90681a6fdc6fa80b64e14f8f8891e65d82fcd512'/>
<id>urn:sha1:90681a6fdc6fa80b64e14f8f8891e65d82fcd512</id>
<content type='text'>
This is the half of the changes required that work as-is with both in-tree
ZFS and the new hotness, sysutils/openzfs.  Highlights are less dependency
on header pollution (from somewhere) and using 'mnttab' instead of
'extmnttab'.   In the in-tree ZFS, the latter is a #define for the former,
but in the port extmnttab is actually a distinct struct that's a super-set
of mnttab.  We really want mnttab here anyways, so just use it.
</content>
</entry>
<entry>
<title>MFC r354116, r354120</title>
<updated>2019-11-09T02:26:01Z</updated>
<author>
<name>Alan Somers</name>
<email>asomers@FreeBSD.org</email>
</author>
<published>2019-11-09T02:26:01Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=5158363458881b10f4c4d322b417ea9e0f7ddd84'/>
<id>urn:sha1:5158363458881b10f4c4d322b417ea9e0f7ddd84</id>
<content type='text'>
r354116:
MFZoL:  Avoid retrieving unused snapshot props

This patch modifies the zfs_ioc_snapshot_list_next() ioctl to enable it
to take input parameters that alter the way looping through the list of
snapshots is performed. The idea here is to restrict functions that
throw away some of the snapshots returned by the ioctl to a range of
snapshots that these functions actually use. This improves efficiency
and execution speed for some rollback and send operations.

Reviewed-by: Tom Caputi &lt;tcaputi@datto.com&gt;
Reviewed-by: Brian Behlendorf &lt;behlendorf1@llnl.gov&gt;
Reviewed by: Matt Ahrens &lt;mahrens@delphix.com&gt;
Signed-off-by: Alek Pinchuk &lt;apinchuk@datto.com&gt;
Closes #8077
zfsonlinux/zfs@4c0883fb4af0d5565459099b98fcf90ecbfa1ca1

r354120:
Commit missing file from r354116

Pointy-hat-to:	Me
Reported by:	Dan Mack
MFC-With:	354116
</content>
</entry>
<entry>
<title>MFC r353644, r353646, r353663: bectl(8) origin auto-destroy</title>
<updated>2019-10-20T22:05:57Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2019-10-20T22:05:57Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=8eec5cf12da527935343bc1b4fbb58885ba7f357'/>
<id>urn:sha1:8eec5cf12da527935343bc1b4fbb58885ba7f357</id>
<content type='text'>
r353644:
libbe(3): add needed bits for be_destroy to auto-destroy some origins

New BEs can be created from either an existing snapshot or an existing BE.
If an existing BE is chosen (either implicitly via 'bectl create' or
explicitly via 'bectl create -e foo bar', for instance), then bectl will
create a snapshot of the current BE or "foo" with be_snapshot, with a name
formatted like: strftime("%F-%T") and a serial added to it.

This commit adds the needed bits for libbe or consumers to determine if a
snapshot names matches one of these auto-created snapshots (with some light
validation of the date/time/serial), and also a be_destroy flag to specify
that the origin should be automatically destroyed if possible.

A future commit to bectl will specify BE_DESTROY_AUTOORIGIN by default so we
clean up the origin in the most common case, non-user-managed snapshots.

r353646:
bectl(8): destroy: use BE_DESTROY_AUTOORIGIN if -o is not specified

-o will force the origin to be destroyed unconditionally.
BE_DESTROY_AUTOORIGIN, on the other hand, will only destroy the origin if it
matches the format used by be_snapshot. This lets us clean up the snapshots
that are clearly not user-managed (because we're creating them) while
leaving user-created snapshots in place and warning that they're still
around when the BE created goes away.

r353663:
libbe(3): Fix destroy of imported BE w/ AUTOORIGIN

Imported BE, much like the activated BE, will not have an origin that we can
fetch/examine for destruction. be_destroy should not return BE_ERR_NOORIGIN
for failure to get the origin property for BE_DESTROY_AUTOORIGIN, because
we don't really know going into it that there's even an origin to be
destroyed.

BE_DESTROY_NEEDORIGIN has been renamed to BE_DESTROY_WANTORIGIN because only
a subset of it *needs* the origin, so 'need' is too strong of verbiage.

This was caught by jenkins and the bectl tests, but kevans failed to run the
bectl tests prior to commit.
</content>
</entry>
</feed>
