blob: 81ba1ecf765b28a4e1ce796734051bad92d7f653 [file] [log] [blame] [raw]
Make using libzfs.h from user space easier.
diff -ru --exclude-from freebsd-src-diff-exclude-names /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/ddt.h freebsd-11.1/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/ddt.h
--- /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/ddt.h 2017-07-21 07:42:01.000000000 +0800
+++ freebsd-11.1/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/ddt.h 2020-06-28 16:29:40.869941777 +0800
@@ -101,6 +101,7 @@
DDT_PHYS_TYPES
};
+#ifdef _KERNEL
/*
* In-core ddt entry
*/
@@ -134,6 +135,7 @@
ddt_object_t ddt_object_stats[DDT_TYPES][DDT_CLASSES];
avl_node_t ddt_node;
};
+#endif
/*
* In-core and on-disk bookmark for DDT walks
diff -ru --exclude-from freebsd-src-diff-exclude-names /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu.h freebsd-11.1/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu.h
--- /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu.h 2017-07-21 07:42:01.000000000 +0800
+++ freebsd-11.1/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu.h 2020-06-28 16:29:40.873941882 +0800
@@ -44,7 +44,9 @@
* dmu_spa.h.
*/
+#ifdef _KERNEL
#include <sys/zfs_context.h>
+#endif
#include <sys/cred.h>
#include <sys/fs/zfs.h>
#include <sys/zio_priority.h>
@@ -505,6 +507,7 @@
typedef void dmu_buf_evict_func_t(void *user_ptr);
+#ifdef _KERNEL
/*
* A DMU buffer user object may be associated with a dbuf for the
* duration of its lifetime. This allows the user of a dbuf (client)
@@ -645,6 +648,7 @@
* Tells if the given dbuf is freeable.
*/
boolean_t dmu_buf_freeable(dmu_buf_t *);
+#endif /* _KERNEL */
/*
* You must create a transaction, then hold the objects which you will
diff -ru --exclude-from freebsd-src-diff-exclude-names /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h freebsd-11.1/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h
--- /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h 2017-07-21 07:42:01.000000000 +0800
+++ freebsd-11.1/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h 2020-06-28 16:29:40.873941882 +0800
@@ -31,7 +31,9 @@
#define _SYS_SPA_H
#include <sys/avl.h>
+#ifdef _KERNEL
#include <sys/zfs_context.h>
+#endif
#include <sys/nvpair.h>
#include <sys/sysmacros.h>
#include <sys/types.h>
@@ -700,8 +702,10 @@
extern void spa_sync(spa_t *spa, uint64_t txg); /* only for DMU use */
extern void spa_sync_allpools(void);
+#ifdef _KERNEL
/* spa namespace global mutex */
extern kmutex_t spa_namespace_lock;
+#endif
/*
* SPA configuration functions in spa_config.c
@@ -746,6 +750,7 @@
#define SCL_ALL ((1 << SCL_LOCKS) - 1)
#define SCL_STATE_ALL (SCL_STATE | SCL_L2ARC | SCL_ZIO)
+#ifdef _KERNEL
/* Pool configuration locks */
extern int spa_config_tryenter(spa_t *spa, int locks, void *tag, krw_t rw);
extern void spa_config_enter(spa_t *spa, int locks, void *tag, krw_t rw);
@@ -762,6 +767,7 @@
/* Pool vdev state change lock */
extern void spa_vdev_state_enter(spa_t *spa, int oplock);
extern int spa_vdev_state_exit(spa_t *spa, vdev_t *vd, int error);
+#endif
/* Log state */
typedef enum spa_log_state {
@@ -771,6 +777,7 @@
SPA_LOG_GOOD, /* log(s) are good */
} spa_log_state_t;
+#ifdef _KERNEL
extern spa_log_state_t spa_get_log_state(spa_t *spa);
extern void spa_set_log_state(spa_t *spa, spa_log_state_t state);
extern int spa_offline_log(spa_t *spa);
@@ -919,6 +926,7 @@
}
extern int spa_mode_global; /* mode, e.g. FREAD | FWRITE */
+#endif
#ifdef __cplusplus
}
diff -ru --exclude-from freebsd-src-diff-exclude-names /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_ioctl.h freebsd-11.1/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_ioctl.h
--- /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_ioctl.h 2017-07-21 07:42:01.000000000 +0800
+++ freebsd-11.1/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_ioctl.h 2020-06-28 16:29:40.873941882 +0800
@@ -32,8 +32,10 @@
#include <sys/cred.h>
#include <sys/dmu.h>
#include <sys/zio.h>
+#ifdef _KERNEL
#include <sys/dsl_deleg.h>
#include <sys/spa.h>
+#endif
#include <sys/zfs_stat.h>
#ifdef _KERNEL
diff -ru --exclude-from freebsd-src-diff-exclude-names /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h freebsd-11.1/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h
--- /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h 2017-07-21 07:42:00.000000000 +0800
+++ freebsd-11.1/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h 2020-06-28 16:29:40.873941882 +0800
@@ -30,9 +30,13 @@
#define _ZIO_H
#include <sys/zio_priority.h>
+#ifdef _KERNEL
#include <sys/zfs_context.h>
+#endif
#include <sys/spa.h>
+#ifdef _KERNEL
#include <sys/txg.h>
+#endif
#include <sys/avl.h>
#include <sys/kstat.h>
#include <sys/fs/zfs.h>
@@ -415,6 +419,7 @@
#define ZIO_TRIM_STAT_BUMP(stat) \
ZIO_TRIM_STAT_INCR(stat, 1);
+#ifdef _KERNEL
struct zio {
/* Core information about this I/O */
zbookmark_phys_t io_bookmark;
@@ -652,6 +657,8 @@
int zbookmark_compare(uint16_t dbss1, uint8_t ibs1, uint16_t dbss2,
uint8_t ibs2, const zbookmark_phys_t *zb1, const zbookmark_phys_t *zb2);
+#endif /* _KERNEL */
+
#ifdef __cplusplus
}
#endif
diff -ru --exclude-from freebsd-src-diff-exclude-names /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio_impl.h freebsd-11.1/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio_impl.h
--- /usr/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio_impl.h 2017-07-21 07:42:01.000000000 +0800
+++ freebsd-11.1/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio_impl.h 2020-06-28 16:29:40.873941882 +0800
@@ -30,7 +30,9 @@
#ifndef _ZIO_IMPL_H
#define _ZIO_IMPL_H
+#ifdef _KERNEL
#include <sys/zfs_context.h>
+#endif
#include <sys/zio.h>
#ifdef __cplusplus
@@ -246,8 +248,10 @@
ZIO_STAGE_DVA_CLAIM | \
ZIO_STAGE_VDEV_IO_START)
+#ifdef _KERNEL
extern void zio_inject_init(void);
extern void zio_inject_fini(void);
+#endif
#ifdef __cplusplus
}