From owner-cvs-all Sun Oct 6 23:25:28 2002 Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7C7E137B401; Sun, 6 Oct 2002 23:25:27 -0700 (PDT) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3FC0A43E42; Sun, 6 Oct 2002 23:25:27 -0700 (PDT) (envelope-from phk@FreeBSD.org) Received: from freefall.freebsd.org (phk@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.6/8.12.6) with ESMTP id g976PRCo067381; Sun, 6 Oct 2002 23:25:27 -0700 (PDT) (envelope-from phk@freefall.freebsd.org) Received: (from phk@localhost) by freefall.freebsd.org (8.12.6/8.12.6/Submit) id g976PRIj067380; Sun, 6 Oct 2002 23:25:27 -0700 (PDT) Message-Id: <200210070625.g976PRIj067380@freefall.freebsd.org> From: Poul-Henning Kamp Date: Sun, 6 Oct 2002 23:25:27 -0700 (PDT) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/sys errno.h src/sys/geom geom.h geom_dev.c geom_disk.c X-FreeBSD-CVS-Branch: HEAD Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG phk 2002/10/06 23:25:27 PDT Modified files: sys/sys errno.h sys/geom geom.h geom_dev.c geom_disk.c Log: 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 Revision Changes Path 1.27 +7 -0 src/sys/geom/geom.h 1.25 +10 -18 src/sys/geom/geom_dev.c 1.23 +8 -24 src/sys/geom/geom_disk.c 1.25 +1 -0 src/sys/sys/errno.h To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message