Date: Tue, 21 Dec 2010 13:45:29 +0000 (UTC) From: Lawrence Stewart <lstewart@FreeBSD.org> To: cvs-src-old@freebsd.org 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 Message-ID: <201012211346.oBLDk1Js001358@repoman.freebsd.org>
index | next in thread | raw e-mail
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 <dahayes at swin edu au> and
Grenville Armitage <garmitage at swin edu au>
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
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201012211346.oBLDk1Js001358>
