aboutsummaryrefslogtreecommitdiff
path: root/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h
diff options
context:
space:
mode:
authorXin LI <delphij@FreeBSD.org>2013-12-31 19:39:15 +0000
committerXin LI <delphij@FreeBSD.org>2013-12-31 19:39:15 +0000
commitdb2aff5f8b6178488c90f2d398f7373cf285ee9c (patch)
tree25259cca882bd57d5a1fa10b9f0e1d6a98b3554e /cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h
parent000fb817d8a243b32f4b28e14c926eff19e2e695 (diff)
parentfb6c5b06d9e366431dde1fb50a926a9fde91c4ca (diff)
MFV r242733:
3306 zdb should be able to issue reads in parallel 3321 'zpool reopen' command should be documented in the man page and help message illumos/illumos-gate@31d7e8fa33fae995f558673adb22641b5aa8b6e1 FreeBSD porting notes: the kernel part of this changeset depends on Solaris buf(9S) interfaces and are not really applicable for our use. vdev_disk.c is patched as-is to reduce diverge from upstream, but vdev_file.c is left intact. MFC after: 2 weeks
Notes
Notes: svn path=/head/; revision=260138
Diffstat (limited to 'cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h')
-rw-r--r--cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h b/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h
index 471756d75d0d..b5562c763d52 100644
--- a/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h
+++ b/cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h
@@ -778,6 +778,38 @@ extern void cyclic_remove(cyclic_id_t);
extern int cyclic_reprogram(cyclic_id_t, hrtime_t);
#endif /* illumos */
+#ifdef illumos
+/*
+ * Buf structure
+ */
+#define B_BUSY 0x0001
+#define B_DONE 0x0002
+#define B_ERROR 0x0004
+#define B_READ 0x0040 /* read when I/O occurs */
+#define B_WRITE 0x0100 /* non-read pseudo-flag */
+
+typedef struct buf {
+ int b_flags;
+ size_t b_bcount;
+ union {
+ caddr_t b_addr;
+ } b_un;
+
+ lldaddr_t _b_blkno;
+#define b_lblkno _b_blkno._f
+ size_t b_resid;
+ size_t b_bufsize;
+ int (*b_iodone)(struct buf *);
+ int b_error;
+ void *b_private;
+} buf_t;
+
+extern void bioinit(buf_t *);
+extern void biodone(buf_t *);
+extern void bioerror(buf_t *, int);
+extern int geterror(buf_t *);
+#endif
+
#ifdef __cplusplus
}
#endif