summaryrefslogtreecommitdiff
path: root/static/netbsd/man4/bpfjit.4
diff options
context:
space:
mode:
Diffstat (limited to 'static/netbsd/man4/bpfjit.4')
-rw-r--r--static/netbsd/man4/bpfjit.4116
1 files changed, 116 insertions, 0 deletions
diff --git a/static/netbsd/man4/bpfjit.4 b/static/netbsd/man4/bpfjit.4
new file mode 100644
index 00000000..c73a14fb
--- /dev/null
+++ b/static/netbsd/man4/bpfjit.4
@@ -0,0 +1,116 @@
+.\" -*- nroff -*-
+.\"
+.\" $NetBSD: bpfjit.4,v 1.3 2024/09/07 20:33:53 rillig Exp $
+.\"
+.\" Copyright (c) 2014 Alexander Nasonov.
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\"
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in
+.\" the documentation and/or other materials provided with the
+.\" distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+.\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+.\" INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING,
+.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.Dd July 24, 2014
+.Dt BPFJIT 4
+.Os
+.Sh NAME
+.Nm bpfjit
+.Nd Just-In-Time compiler for Berkeley Packet Filter
+.Sh SYNOPSIS
+.Cd "options BPFJIT"
+.Cd "options SLJIT"
+.Sh DESCRIPTION
+The
+.Nm
+kernel interface adds
+.Sy Just-In-Time
+compilation of filter programs sent to a
+.Xr bpf 4
+device.
+Instead of being interpreted for every packet,
+these filter programs are compiled into native code
+and the code is being executed for every packet.
+.Pp
+The implementation of
+.Nm
+is based on the
+.Sy Stack-Less Just-In-Time
+library, or
+.Nm sljit
+for short.
+The library supports multiple platforms including
+.Bl -bullet -offset indent -compact
+.It
+AMD-x86 64
+.It
+ARM 32 (ARM-v5, ARM-v7 and Thumb2 instruction sets)
+.It
+Intel-x86 32
+.It
+MIPS 32 (III, R1)
+.It
+MIPS 64 (III, R1)
+.It
+PowerPC 32
+.It
+PowerPC 64
+.It
+SPARC 32
+.El
+.Pp
+.Nm
+supports all architectures listed above.
+.Pp
+.Nm
+is also available as a module in modular kernels.
+.Sh SYSCTLS
+The following sysctl is available when
+.Nm
+is enabled:
+.Bl -tag -width "XnetXbpfXjitXX"
+.It Li net.bpf.jit
+Toggle
+.Sy Just-In-Time
+compilation of new filter programs.
+Changing a value of this sysctl doesn't affect
+existing filter programs.
+.El
+.Sh SEE ALSO
+.Xr bpf 4 ,
+.Xr modload 8
+.Pp
+.Lk https://zherczeg.github.io/sljit/ sljit library
+.Sh HISTORY
+The
+.Nm
+interface first appeared in
+.Nx 7.0 .
+.Sh AUTHORS
+The
+.Nm
+code was written by
+.An Alexander Nasonov Aq Mt alnsn@NetBSD.org .
+.Pp
+The
+.Nm sljit
+library was written by
+.An Zoltan Herczeg Aq Mt hzmester@freemail.hu .