1ba4a712dd
This bring huge amount of changes, I'll enumerate only user-visible changes: - Delegated Administration Allows regular users to perform ZFS operations, like file system creation, snapshot creation, etc. - L2ARC Level 2 cache for ZFS - allows to use additional disks for cache. Huge performance improvements mostly for random read of mostly static content. - slog Allow to use additional disks for ZFS Intent Log to speed up operations like fsync(2). - vfs.zfs.super_owner Allows regular users to perform privileged operations on files stored on ZFS file systems owned by him. Very careful with this one. - chflags(2) Not all the flags are supported. This still needs work. - ZFSBoot Support to boot off of ZFS pool. Not finished, AFAIK. Submitted by: dfr - Snapshot properties - New failure modes Before if write requested failed, system paniced. Now one can select from one of three failure modes: - panic - panic on write error - wait - wait for disk to reappear - continue - serve read requests if possible, block write requests - Refquota, refreservation properties Just quota and reservation properties, but don't count space consumed by children file systems, clones and snapshots. - Sparse volumes ZVOLs that don't reserve space in the pool. - External attributes Compatible with extattr(2). - NFSv4-ACLs Not sure about the status, might not be complete yet. Submitted by: trasz - Creation-time properties - Regression tests for zpool(8) command. Obtained from: OpenSolaris
64 lines
2.4 KiB
Makefile
64 lines
2.4 KiB
Makefile
# $FreeBSD$
|
|
|
|
.include "${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/Makefile.files"
|
|
|
|
# ZFS_COMMON_SRCS
|
|
.PATH: ${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/fs/zfs
|
|
# ZFS_SHARED_SRCS
|
|
.PATH: ${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/zfs
|
|
# KERNEL_SRCS
|
|
.PATH: ${.CURDIR}/../../../cddl/contrib/opensolaris/lib/libzpool/common
|
|
# LIST_SRCS
|
|
.PATH: ${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/os
|
|
# ATOMIC_SRCS
|
|
.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "ia64"
|
|
.PATH: ${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/atomic/${MACHINE_ARCH}
|
|
ATOMIC_SRCS= atomic.S
|
|
.else
|
|
.PATH: ${.CURDIR}/../../../sys/cddl/compat/opensolaris/kern
|
|
ATOMIC_SRCS= opensolaris_atomic.c
|
|
.endif
|
|
# UNICODE_SRCS
|
|
.PATH: ${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/unicode
|
|
|
|
LIB= zpool
|
|
|
|
ZFS_COMMON_SRCS= ${ZFS_COMMON_OBJS:C/.o$/.c/} vdev_file.c
|
|
ZFS_SHARED_SRCS= ${ZFS_SHARED_OBJS:C/.o$/.c/}
|
|
KERNEL_SRCS= kernel.c taskq.c util.c
|
|
LIST_SRCS= list.c
|
|
UNICODE_SRCS= u8_textprep.c
|
|
|
|
SRCS= ${ZFS_COMMON_SRCS} ${ZFS_SHARED_SRCS} \
|
|
${KERNEL_SRCS} ${LIST_SRCS} ${ATOMIC_SRCS} \
|
|
${UNICODE_SRCS}
|
|
|
|
CFLAGS+= -std=c99
|
|
|
|
CFLAGS+= -I${.CURDIR}/../../../sys/cddl/compat/opensolaris
|
|
CFLAGS+= -I${.CURDIR}/../../../cddl/compat/opensolaris/include
|
|
CFLAGS+= -I${.CURDIR}/../../../cddl/compat/opensolaris/lib/libumem
|
|
CFLAGS+= -I${.CURDIR}/../../../cddl/contrib/opensolaris/lib/libzpool/common
|
|
CFLAGS+= -I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/sys
|
|
CFLAGS+= -I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/fs/zfs
|
|
CFLAGS+= -I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/zfs
|
|
CFLAGS+= -I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common
|
|
CFLAGS+= -I${.CURDIR}/../../../cddl/contrib/opensolaris/head
|
|
CFLAGS+= -I${.CURDIR}/../../../cddl/lib/libumem
|
|
CFLAGS+= -I${.CURDIR}/../../../cddl/contrib/opensolaris/lib/libnvpair
|
|
# XXX: pthread doesn't have mutex_owned() equivalent, so we need to look
|
|
# into libthr private structures. That's sooo evil, but it's only for
|
|
# ZFS debugging tools needs.
|
|
CFLAGS+= -DWANTS_MUTEX_OWNED
|
|
CFLAGS+= -I${.CURDIR}/../../../lib/libpthread/thread
|
|
CFLAGS+= -I${.CURDIR}/../../../lib/libpthread/sys
|
|
CFLAGS+= -I${.CURDIR}/../../../lib/libthr/arch/${MACHINE_ARCH}/include
|
|
|
|
DPADD= ${LIBPTHREAD} ${LIBZ}
|
|
LDADD= -lpthread -lz
|
|
|
|
# atomic.S doesn't like profiling.
|
|
NO_PROFILE=
|
|
|
|
.include <bsd.lib.mk>
|