Page MenuHomeFreeBSD

Make blake3 work
ClosedPublic

Authored by imp on Jul 7 2022, 11:58 PM.
Tags
None
Referenced Files
Unknown Object (File)
Feb 21 2024, 7:24 AM
Unknown Object (File)
Feb 2 2024, 12:35 AM
Unknown Object (File)
Jan 25 2024, 1:47 AM
Unknown Object (File)
Jan 19 2024, 10:39 AM
Unknown Object (File)
Dec 21 2023, 10:59 PM
Unknown Object (File)
Dec 20 2023, 7:02 PM
Unknown Object (File)
Dec 20 2023, 7:17 AM
Unknown Object (File)
Dec 12 2023, 8:38 PM
Subscribers

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

imp requested review of this revision.Jul 7 2022, 11:58 PM

This should likely be marked co-authored by tsoome since I started with his patches and didn't change much except not having the blake3* files copied.

sys/contrib/openzfs/include/os/freebsd/spl/sys/types.h
81 ↗(On Diff #107899)

I think I reviewed this change for upstream, but I'm not 100% sure. It seemed awful familiar as I was making it...

sys/contrib/openzfs/include/sys/blake3.h
31 ↗(On Diff #107899)

This might be better as || defined(_STANDALONE) and leaving the #else clause unchanged.

sys/contrib/openzfs/include/sys/zfs_context.h
46 ↗(On Diff #107899)

this one is weird and I don't completely understand it, but it's needed because machine/atomic.h is now included in sys/sysmacros.h. Maybe we should include sys/atomic.h there instead, but I'm not sure that wouldn't break something.

stand/libsa/zfs/zstd_shim.c
37 ↗(On Diff #107899)

This likely can be removed since I added it to sys/zfs_context.h

38 ↗(On Diff #107899)

This was due to a bug that the types.h changes fix, and likely would hit anybody that's landing changes.

Simplify a bit still... And include the zfs_zstd.c changes.

one last set of cleanups

Rebase on changes I'm pushing to main...

Add blake3_zfs.c from tsoome's review...

It does look good, thanks! (waiting for update as noted in chat).

be extra sleezy.... and add a layer where the boot loader can interpose its .h
files to work around issues with upstream so we can bring blake3 in with
upstream files unchanged while we work to fix the warts in them...

stand/libsa/zfs/Makefile.inc
10

The zstd_shim.c -> zfs_zstd.c thing is arguably separate.

35

Adding this and this define is separate. This is what adds the layer we need.

I have this sliced up into 6 commits, but will reply here and add 'reviewed by' if people approve here.

kevans added a subscriber: kevans.

The header shims are a bit ugly, but given the context I agree that this is a reasonable stopgap...

This revision is now accepted and ready to land.Jul 8 2022, 11:33 PM