freebsd-dev/sys/cddl/boot/zfs
Toomas Soome 2c55d0903d Add SHA512, skein, large blocks support for loader zfs.
Updated sha512 from illumos.
Using skein from freebsd crypto tree.
Since loader itself is using 64MB memory for heap, updated zfsboot to
use same, and this also allows to support zfs large blocks.

Note, adding additional features does increate zfsboot code, therefore
this update does increase zfsboot code to 128k, also I have ported gptldr.S
update to zfsldr.S to support 64k+ code.

With this update, boot1.efi has almost reached the current limit of the size
set for it, so one of the future patches for boot1.efi will need to
increase the limit.

Currently known missing zfs features in boot loader are edonr and gzip support.

Reviewed by:	delphij, imp
Approved by:	imp (mentor)
Obtained from:	sha256.c update and skein_zfs.c stub from illumos.
Differential Revision:	https://reviews.freebsd.org/D7418
2016-08-18 00:37:07 +00:00
..
blkptr.c MFV r267565: 2014-07-01 06:43:15 +00:00
fletcher.c Add SHA512, skein, large blocks support for loader zfs. 2016-08-18 00:37:07 +00:00
lz4.c Use netinet/in.h to avoid include/arpa dependency for DIRDEPS_BUILD. 2016-05-26 23:20:17 +00:00
lzjb.c
README MFV r267565: 2014-07-01 06:43:15 +00:00
sha256.c Add SHA512, skein, large blocks support for loader zfs. 2016-08-18 00:37:07 +00:00
skein_zfs.c Add SHA512, skein, large blocks support for loader zfs. 2016-08-18 00:37:07 +00:00
zfsimpl.h Add SHA512, skein, large blocks support for loader zfs. 2016-08-18 00:37:07 +00:00
zfssubr.c Add SHA512, skein, large blocks support for loader zfs. 2016-08-18 00:37:07 +00:00
zle.c

$FreeBSD$

This directory contains various files derived from CDDL sources that
are used by the ZFS bootstrap:

    fletcher.c			checksum support
    sha256.c			checksum support
    lz4.c			compression support
    lzjb.c			compression support
    blkptr.c			ZFS embedded-data block pointers support
    zfssubr.c			checksum, compression and raidz support
    zfsimpl.h			mostly describing the physical layout

The files fletcher.c, lzjb.c, lz4.c, sha256.c and blkptr.c are largely identical
to the ZFS base code (with write support removed) and could be shared but that
might complicate future imports from Illumos.