OpenBSD cvs log

created 2021-06-05T18:44:25Z
begin 2021-02-21T00:00:00Z
end 2021-02-22T00:00:00Z
path src/sys
commits 8

date 2021-02-21T02:37:38Z
author dlg
files src/sys/net/toeplitz.c log diff annotate
src/sys/net/toeplitz.h log diff annotate
message add stoeplitz_eaddr, for getting a hash value from an ethernet address.

date 2021-02-21T03:26:46Z
author dlg
files src/sys/conf/files log diff annotate
src/sys/net/if_etherbridge.c log diff annotate
src/sys/net/if_etherbridge.h log diff annotate
message add etherbridge, the guts of a learning bridge that can be reused.

this allows for the factoring out of the learning bridge code i
wrote in bpe and nvme, and should be reusable for other drivers
needing a mac learning bridge.

the core data structures are an etherbridge struct to represent the
learning bridge, eb_entry structs for each mac address entry that
the bridge knows about, and an etherbridge_ops struct that drivers
fill in so that they can use this code.

eb_entry structs are stored in a hash table made up of SMR_TAILQs
to support lookups of entries quickly and concurrently in the
forwarding path. they are also stored in a locked red-black tree
to help manage the uniqueness of the mac address in the table.

the etherbridge_ops handlers mostly deal with comparing and testing
the "ports" associated with mac address table entries. the "port"
that a mac address entry is associated with is opaque to the
etherbridge code, which allows for this code to be used by nvgre
and bpe which map mac addresses inside the bridge to addresses in
their underlay networks. it also supports traditional bridges where
"ports" are actual interfaces.

ok patrick@ jmatthew@

date 2021-02-21T03:35:17Z
author dlg
files src/sys/conf/files log diff annotate
src/sys/net/if_bpe.c log diff annotate
message cut bpe(4) over to using the common etherbridge code.

it's pretty straightforward since etherbridge was mostly based on
this code in the first place. the etherbridge_ops that bpe provides
to etherbridge set entries up to point at mac addresses in the
underlay network.

ok patrick@ jmatthew@

date 2021-02-21T03:46:34Z
author dlg
files src/sys/conf/files log diff annotate
src/sys/net/if_gre.c log diff annotate
message cut nvgre(4) over to use common etherbridge code.

the "ports" that nvgre provides to etherbridge are ip addresses
used in the underlay network.

ok patrick@ jmatthew@

date 2021-02-21T13:14:47Z
author kettenis
files src/sys/arch/arm64/arm64/locore.S log diff annotate
src/sys/arch/arm64/include/hypervisor.h log diff annotate
message One CPUs that implement the VHE extension and have the E2H bit set, keep
running the kernel in EL2.

ok patrick@

date 2021-02-21T14:55:16Z
author tobhe
files src/sys/arch/arm64/arm64/aesv8-armx.S log diff annotate
src/sys/arch/arm64/arm64/autoconf.c log diff annotate
src/sys/arch/arm64/arm64/cpu.c log diff annotate
message Add cryptox(4), a driver for armv8 cryptographic extensions.
The driver currently only supports AES-CBC mode but can easily
be extended to other algorithms and modes.
The aesv8-armx.S file was generated from the CRYPTOGAMS project.

Asked to commit by and ok patrick@

date 2021-02-21T14:55:17Z
author tobhe
files src/sys/arch/arm64/arm64/cryptox.c log diff annotate
src/sys/arch/arm64/conf/files.arm64 log diff annotate
message Add cryptox(4), a driver for armv8 cryptographic extensions.
The driver currently only supports AES-CBC mode but can easily
be extended to other algorithms and modes.
The aesv8-armx.S file was generated from the CRYPTOGAMS project.

Asked to commit by and ok patrick@

date 2021-02-21T15:56:25Z
author deraadt
files src/sys/net/toeplitz.h log diff annotate
message how about sticking to standard C.