From owner-cvs-src-old@FreeBSD.ORG Tue Dec 21 13:46:02 2010 Return-Path: Delivered-To: cvs-src-old@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 289ED1065670 for ; Tue, 21 Dec 2010 13:46:02 +0000 (UTC) (envelope-from lstewart@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id EEE8C8FC15 for ; Tue, 21 Dec 2010 13:46:01 +0000 (UTC) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.4/8.14.4) with ESMTP id oBLDk1Rm001359 for ; Tue, 21 Dec 2010 13:46:01 GMT (envelope-from lstewart@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.4/8.14.4/Submit) id oBLDk1Js001358 for cvs-src-old@freebsd.org; Tue, 21 Dec 2010 13:46:01 GMT (envelope-from lstewart@repoman.freebsd.org) Message-Id: <201012211346.oBLDk1Js001358@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to lstewart@repoman.freebsd.org using -f From: Lawrence Stewart Date: Tue, 21 Dec 2010 13:45:29 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/conf files src/sys/kern kern_hhook.c kern_khelp.c src/sys/sys hhook.h khelp.h module_khelp.h osd.h param.h X-BeenThere: cvs-src-old@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: **OBSOLETE** CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Dec 2010 13:46:02 -0000 lstewart 2010-12-21 13:45:29 UTC FreeBSD src repository Modified files: sys/conf files sys/sys osd.h param.h Added files: sys/kern kern_hhook.c kern_khelp.c sys/sys hhook.h khelp.h module_khelp.h Log: SVN rev 216615 on 2010-12-21 13:45:29Z by lstewart - Introduce the Hhook (Helper Hook) KPI. The KPI is closely modelled on pfil(9), and in many respects can be thought of as a more generic superset of pfil. Hhook provides a way for kernel subsystems to export hook points that Khelp modules can hook to provide enhanced or new functionality to the kernel. The KPI has been designed to ensure hook points pose no noticeable overhead when no hook functions are registered. - Introduce the Khelp (Kernel Helpers) KPI. Khelp provides a framework for managing Khelp modules, which indirectly use the Hhook KPI to register their hook functions with hook points of interest within the kernel. Khelp modules aim to provide a structured way to dynamically extend the kernel at runtime in an ABI preserving manner. Depending on the subsystem providing hook points, a Khelp module may be able to associate per-object data for maintaining relevant state between hook calls. - pjd's Object Specific Data (OSD) KPI is used to manage the per-object data allocated to Khelp modules. Create a new "OSD_KHELP" OSD type for use by the Khelp framework. - Bump __FreeBSD_version to 900028 to mark the introduction of the new KPIs. In collaboration with: David Hayes and Grenville Armitage Sponsored by: FreeBSD Foundation Reviewed by: bz, others along the way MFC after: 3 months Revision Changes Path 1.1549 +2 -0 src/sys/conf/files 1.1 +457 -0 src/sys/kern/kern_hhook.c (new) 1.1 +471 -0 src/sys/kern/kern_khelp.c (new) 1.1 +156 -0 src/sys/sys/hhook.h (new) 1.1 +76 -0 src/sys/sys/khelp.h (new) 1.1 +110 -0 src/sys/sys/module_khelp.h (new) 1.4 +2 -1 src/sys/sys/osd.h 1.470 +1 -1 src/sys/sys/param.h