Date: Mon, 7 Nov 2022 16:34:14 -0800 From: Mark Millard <marklmi@yahoo.com> To: Warner Losh <imp@bsdimp.com>, dev-commits-src-main@freebsd.org Cc: Alexander@leidinger.net, Li-Wen Hsu <lwhsu@freebsd.org> Subject: Re: git: 72a1cb05cd23 - main - rc(8): Add a zpoolupgrade rc.d script Message-ID: <D1769C20-614F-444B-B75A-ED8D563681DA@yahoo.com> References: <D1769C20-614F-444B-B75A-ED8D563681DA.ref@yahoo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Warner Losh <imp_at_bsdimp.com> wrote on Date: Mon, 07 Nov 2022 21:23:11 UTC : > On Mon, Nov 7, 2022 at 4:15 AM Alexander Leidinger = <Alexander@leidinger.net> > wrote: >=20 > > > . . . > > > > And this brings me to a second topic, we don't have an explicit list > > of features which are supported by the bootloader (I had a look at = the > > zfs and the boot related man pages, if I overlooked a place, then = the > > other places should reference this important part with some text). > > >=20 > There is a fixed list of features we support in the boot loader: >=20 > /* > * List of ZFS features supported for read > */ > static const char *features_for_read[] =3D { > "org.illumos:lz4_compress", > "com.delphix:hole_birth", > "com.delphix:extensible_dataset", > "com.delphix:embedded_data", > "org.open-zfs:large_blocks", > "org.illumos:sha512", > "org.illumos:skein", > "org.zfsonlinux:large_dnode", > "com.joyent:multi_vdev_crash_dump", > "com.delphix:spacemap_histogram", > "com.delphix:zpool_checkpoint", > "com.delphix:spacemap_v2", > "com.datto:encryption", > "com.datto:bookmark_v2", > "org.zfsonlinux:allocation_classes", > "com.datto:resilver_defer", > "com.delphix:device_removal", > "com.delphix:obsolete_counts", > "com.intel:allocation_classes", > "org.freebsd:zstd_compress", > "com.delphix:bookmark_written", > "com.delphix:head_errlog", As an example of a more general question (referencing a zpool feature, if I understand right): com.delphix:head_errlog in the loaders from 13.1-RELEASE? 13.1-RELEASE-p3? 12.3-RELEASE*? (The future 12.4-RELEASE?) head_errlog is an interesting example because of "man zpool-features" reporting the below --and it being fairly new: "READ-ONLY COMPATIBLE no" and: "This feature becomes active as soon as it is enabled and will never return to being enabled." I guess the loader avoids types of read activity that cause the more general "READ-ONLY COMPATIBLE no" status. (I use the example just because I've indirectly run into it before, but in a more limited context. It may not be the best of examples for the general question.) Does each RELEASE and release-update get its own, documented zpool feature list for its loaders? (There might be a question for a zfs vs. zpool feature distinction as well?) > "org.openzfs:blake3", > NULL > }; The overall list definitely goes beyond what is listed in: /usr/share/zfs/compatibility.d/openzfs-2.1-freebsd > Any feature not on this list will cause the boot loader to reject the = pool. >=20 > Whether or not it should do that by default, always, or never is an = open > question. I've thought there should be a 'shoot footing' override that = isn't > there today. =3D=3D=3D Mark Millard marklmi at yahoo.com
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?D1769C20-614F-444B-B75A-ED8D563681DA>