aboutsummaryrefslogtreecommitdiff
path: root/sys/sys/errno.h
diff options
context:
space:
mode:
authorPoul-Henning Kamp <phk@FreeBSD.org>2002-10-07 06:25:26 +0000
committerPoul-Henning Kamp <phk@FreeBSD.org>2002-10-07 06:25:26 +0000
commitadfa3213c7af959327a91d7daa9a26703a103625 (patch)
tree12c86e8396fed513177c4639d423b328584ee616 /sys/sys/errno.h
parentdb8c52408dc1fb4b31ca391c433615e91e96f08e (diff)
downloadsrc-adfa3213c7af959327a91d7daa9a26703a103625.tar.gz
src-adfa3213c7af959327a91d7daa9a26703a103625.zip
Copyin and copyout are only possible from a process-native thread,
and therefore we need a way for ioctl handlers to run in that thread in GEOM. Rather than invent a complicated registration system to recognize which ioctl handler to use for a given ioctl, we still schedule all ioctls down the tree as bio transactions but add a special return code that means "call me directly" and have the geom_dev layer do that. Use this for all ioctls that make it as far as a diskdriver to avoid any backwards compatibility problems. Requested by: scottl Sponsored by: DARPA & NAI Labs
Notes
Notes: svn path=/head/; revision=104602
Diffstat (limited to 'sys/sys/errno.h')
-rw-r--r--sys/sys/errno.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/sys/errno.h b/sys/sys/errno.h
index 70ad24a6c0e9..2e93afd94816 100644
--- a/sys/sys/errno.h
+++ b/sys/sys/errno.h
@@ -180,6 +180,7 @@ __END_DECLS
#define ERESTART (-1) /* restart syscall */
#define EJUSTRETURN (-2) /* don't modify regs, just return */
#define ENOIOCTL (-3) /* ioctl not handled by this layer */
+#define EDIRIOCTL (-4) /* do direct ioctl in GEOM */
#endif
#endif