Bug 222199 - zfs command crashed with option checksum=skein
Summary: zfs command crashed with option checksum=skein
Status: Closed FIXED
Alias: None
Product: Base System
Classification: Unclassified
Component: bin (show other bugs)
Version: 11.1-STABLE
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-fs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-09-10 16:51 UTC by Yavuz Tanrıverdi
Modified: 2019-01-21 21:49 UTC (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Yavuz Tanrıverdi 2017-09-10 16:51:41 UTC
Hi 

My FreeBSD version is:
FreeBSD ... 11.1-RELEASE-p1 FreeBSD 11.1-RELEASE-p1 #0: Wed Aug  9 11:55:48 UTC 2017     root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC  amd64

i want to to test zfs's skein checksum option

in man page ( man 8 zfs )
"The sha512, and skein checksum algorithms require enabling the appropriate features on the pool."

The feature is enabled i think

# zpool get feature@skein
NAME   PROPERTY       VALUE          SOURCE
zroot  feature@skein  enabled        local

when i want to create a test dataset with the command
# zfs create -o checksum=skein zroot/test
 internal error: Result too large
 Abort (core dumped)

trying create a dataset and set property is not work either
# zfs create zroot/test
# zfs set checksum=skein zroot/test
cannot set property for 'zroot/test': property setting is not allowed on root pools

and 

# zfs set checksum=skein zroot
Cannot set property for 'zroot': property setting is not allowed on root pools

am i doing something wrong or is this a bug ?
Can you help?
Comment 1 Allan Jude freebsd_committer 2017-09-16 01:18:16 UTC
Can you share the output of:
uname -K
and
uname -U
Comment 2 Allan Jude freebsd_committer 2017-09-16 17:05:45 UTC
The protection in case for the latter examples is on purpose. The boot loader does not support skein, so setting that property will make your system unbootable.

I will investigate the crash caused by the error message handling in the 'zfs create' case though.
Comment 3 Yavuz Tanrıverdi 2017-09-17 10:39:42 UTC
> Can you share the output of:
> uname -K
> and
> uname -U

Hi Allan

my
uname -K
1101001

and

uname -U
1101001

Thanks for interest,
Comment 4 Yuri Pankov 2017-12-06 03:41:52 UTC
Reported upstream: https://www.illumos.org/issues/8898
Comment 5 commit-hook freebsd_committer 2018-01-22 00:02:14 UTC
A commit references this bug:

Author: mav
Date: Mon Jan 22 00:01:37 UTC 2018
New revision: 328234
URL: https://svnweb.freebsd.org/changeset/base/328234

Log:
  MFV r328233:
  8898 creating fs with checksum=skein on the boot pools fails ungracefully

  illumos/illumos-gate@9fa2266d9a78b8366e1cd2d5f050e8b5e37d558c

  https://www.illumos.org/issues/8898:
  # zfs create -o checksum=skein rpool/test
  internal error: Result too large
  Abort (core dumped)

  Not a big deal per se, but should be handled correctly.

  Reviewed by: Toomas Soome <tsoome@me.com>
  Reviewed by: Andy Stormont <astormont@racktopsystems.com>
  Approved by: Dan McDonald <danmcd@joyent.com>
  Author: Yuri Pankov <yuri.pankov@nexenta.com>

  PR:		222199

Changes:
_U  head/cddl/contrib/opensolaris/
  head/cddl/contrib/opensolaris/cmd/zfs/zfs.8
_U  head/cddl/contrib/opensolaris/lib/libzfs/
  head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c
Comment 6 iron.udjin 2018-02-08 18:50:55 UTC
I have exactly the same issue on 11-STABLE r328996.
Boot loader support of sha512 and skein was merged in r328866 to 11-STABLE.
checksum=sha512 can be set for dataset or pool, but "skein" is still unavailable.
Comment 7 commit-hook freebsd_committer 2018-02-18 00:23:39 UTC
A commit references this bug:

Author: mav
Date: Sun Feb 18 00:23:13 UTC 2018
New revision: 329489
URL: https://svnweb.freebsd.org/changeset/base/329489

Log:
  MFC r328234: MFV r328233:
  8898 creating fs with checksum=skein on the boot pools fails ungracefully

  illumos/illumos-gate@9fa2266d9a78b8366e1cd2d5f050e8b5e37d558c

  https://www.illumos.org/issues/8898:
  # zfs create -o checksum=skein rpool/test
  internal error: Result too large
  Abort (core dumped)

  Not a big deal per se, but should be handled correctly.

  Reviewed by: Toomas Soome <tsoome@me.com>
  Reviewed by: Andy Stormont <astormont@racktopsystems.com>
  Approved by: Dan McDonald <danmcd@joyent.com>
  Author: Yuri Pankov <yuri.pankov@nexenta.com>

  PR:             222199

Changes:
_U  stable/11/
  stable/11/cddl/contrib/opensolaris/cmd/zfs/zfs.8
  stable/11/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c
Comment 8 Oleksandr Tymoshenko freebsd_committer freebsd_triage 2019-01-21 21:49:32 UTC
There is a commit referencing this PR, but it's still not closed and has been inactive for some time. Closing the PR as fixed but feel free to re-open it if the issue hasn't been completely resolved.

Thanks