97371ba2a9
(gpt)zfsboot will read one-time boot directives from a special ZFS pool area. The area was previously described as "Boot Block Header", but currently it is know as Pad2, marked as reserved and is zeroed out on pool creation. The new code interprets data in this area, if any, using the same format as boot.config. The area is immediately wiped out. Failure to parse the directives results in a reboot right after the cleanup. Otherwise the boot sequence proceeds as usual. zfsbootcfg writes zfsboot arguments specified on its command line to the Pad2 area of a disk identified by vfs.zfs.boot.primary_pool and vfs.zfs.boot.primary_vdev kenv variables that are set by loader during boot. Please see the manual page for more. Thanks to all who reviewed, contributed and made suggestions! There are many potential improvements to the feature, please see the review for details. Reviewed by: wblock (docs) Discussed with: jhb, tsoome MFC after: 3 weeks Relnotes: yes Differential Revision: https://reviews.freebsd.org/D7612
28 lines
820 B
Makefile
28 lines
820 B
Makefile
# @(#)Makefile 8.4 (Berkeley) 6/22/95
|
|
# $FreeBSD$
|
|
|
|
PROG= zfsbootcfg
|
|
WARNS?= 1
|
|
MAN= zfsbootcfg.8
|
|
|
|
LIBADD+=zfs
|
|
LIBADD+=nvpair
|
|
LIBADD+=umem
|
|
LIBADD+=uutil
|
|
LIBADD+=geom
|
|
|
|
CFLAGS+= -I${SRCTOP}/cddl/compat/opensolaris/include
|
|
CFLAGS+= -I${SRCTOP}/cddl/compat/opensolaris/lib/libumem
|
|
CFLAGS+= -I${SRCTOP}/cddl/contrib/opensolaris/lib/libzfs/common
|
|
CFLAGS+= -I${SRCTOP}/cddl/contrib/opensolaris/lib/libzfs_core/common
|
|
CFLAGS+= -I${SRCTOP}/cddl/contrib/opensolaris/lib/libzpool/common
|
|
CFLAGS+= -I${SRCTOP}/cddl/contrib/opensolaris/lib/libnvpair
|
|
CFLAGS+= -I${SRCTOP}/sys/cddl/compat/opensolaris
|
|
CFLAGS+= -I${SRCTOP}/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
|
|
CFLAGS+= -I${SRCTOP}/sys/cddl/contrib/opensolaris/uts/common
|
|
CFLAGS+= -I${SRCTOP}/cddl/contrib/opensolaris/head
|
|
|
|
CFLAGS+= -DNEED_SOLARIS_BOOLEAN
|
|
|
|
.include <bsd.prog.mk>
|