OpenBSD cvs log

created 2020-11-19T18:39:58Z
begin 2020-06-18T00:00:00Z
end 2020-06-19T00:00:00Z
path src/sys
commits 16

date 2020-06-18T03:53:38Z
author tb
files src/sys/net/toeplitz.c log diff annotate
message The next step is to use that we have cached the result of the matrix
multiplication H * val in stoeplitz_cache_entry(scache, val), so the
identity (H * x) ^ (H * y) == H * (x ^ y) allows us to push the calls to
the cache function down to the end of stoeplitz_hash_ip{4,6}{,port}().

The identity in question was also confirmed on amd64, sparc64 and powerpc
for all possible values of skey, x and y.

ok dlg

date 2020-06-18T05:33:17Z
author tb
files src/sys/net/toeplitz.c log diff annotate
message Now that the calls to stoeplitz_cache_entry() are out of the way, we can
ditch half of the calculations by merging the computation of hi and lo,
only splitting at the end. This allows us to leverage stoeplitz_hash_n16().

The name lo is now wrong. I kept it in order to avoid noise. I'm going to
clean this up in the next step.

ok dlg

date 2020-06-18T08:48:04Z
author fcambus
files src/sys/arch/armv7/conf/RAMDISK log diff annotate
message Enable bwfm(4) on armv7 RAMDISK for SD/MMC and USB devices.

OK patrick@

date 2020-06-18T11:06:32Z
author tb
files src/sys/net/toeplitz.c log diff annotate
message The same simplification can be done a second time: widen the type,
xor laddr and faddr and the ports together and only then fold the
32 bits into 16 bits.

ok dlg

date 2020-06-18T12:22:39Z
author tb
files src/sys/net/toeplitz.c log diff annotate
src/sys/net/toeplitz.h log diff annotate
message Introduce stoeplitz_hash_n32() and use it to simplify the hash_ip*
functions further.

ok dlg

date 2020-06-18T14:05:21Z
author mvs
files src/sys/kern/uipc_socket.c log diff annotate
message Compare `so' and `sosp' types just after `sosp' obtaining. We can't splice
sockets from different domains so there is no reason to have locking and memory
allocation in this error path. Also in this case only `so' will be locked by
solock() so we should avoid `sosp' modification.

ok mpi@

date 2020-06-18T14:20:12Z
author mvs
files src/sys/net/if_pppx.c log diff annotate
src/sys/net/pipex.c log diff annotate
src/sys/net/pipex_local.h log diff annotate
message Combine and replace duplicated code in pipex(4) and pppx(4) by new functions
listed below.

- pipex_init_session() to check request and alloc new session.
- pipex_link_session() to link session to pipex(4) layer.
- pipex_unlink_session() to unlink session from pipex(4) layer.
- pipex_rele_session() to release session and it's internal allocation.

ok mpi@

date 2020-06-18T14:52:51Z
author mpi
files src/sys/netinet/tcp_usrreq.c log diff annotate
message Refuse to set 0 or a negative value for net.inet.tcp.synbucketlimit.

Prevent a panic in syn_cache_insert() found by syzbot.

Reported-by: [email protected]

ok sashan@, anton@, millert@

date 2020-06-18T17:13:31Z
author kettenis
files src/sys/dev/pci/if_bge.c log diff annotate
message BCM5719 A1 seen in the wild.

dlg@, deraadt@, mpi@

date 2020-06-18T17:13:32Z
author kettenis
files src/sys/dev/pci/if_bgereg.h log diff annotate
message BCM5719 A1 seen in the wild.

dlg@, deraadt@, mpi@

date 2020-06-18T18:05:00Z
author kettenis
files src/sys/arch/arm64/conf/GENERIC log diff annotate
src/sys/dev/i2c/files.i2c log diff annotate
src/sys/dev/i2c/pca9548.c log diff annotate
message Add pcamux(4), a driver for the PCA8548 I2C switch.

ok patrick@

date 2020-06-18T21:52:57Z
author kettenis
files src/sys/arch/powerpc64/include/cpu.h log diff annotate
src/sys/arch/powerpc64/include/pte.h log diff annotate
src/sys/arch/powerpc64/powerpc64/genassym.cf log diff annotate
src/sys/arch/powerpc64/powerpc64/pmap.c log diff annotate
src/sys/arch/powerpc64/powerpc64/trap_subr.S log diff annotate
message Cache kernel SLB entries in per-CPU struct and restore them upon
kernel entry.

date 2020-06-18T22:51:38Z
author kettenis
files src/sys/arch/powerpc64/powerpc64/genassym.cf log diff annotate
src/sys/arch/powerpc64/powerpc64/trap.c log diff annotate
src/sys/arch/powerpc64/powerpc64/trap_subr.S log diff annotate
message AST handling.

date 2020-06-18T23:27:58Z
author dlg
files src/sys/net/bpf.c log diff annotate
src/sys/net/bpf.h log diff annotate
message extend the bpf_hdr struct to include some metadata if available.

the metadata is set if the mbuf is passed with an m_pktrhdr, and
copies the mbufs rcvif, priority, flowid. it also carries the
direction of the packet.

it also makes bpf_hdr a multiple of 4 bytes, which simplifies some
calculations a bit. it also requires no changes in userland because
libpcap just thinks the extra bytes in the header are padding and
skips over them to the payload.

this helps me verify things like whether the stack and a network
card agree about toeplitz hashes, and paves the way for doing more
interesting packet captures. being able to see where a packet came
from as it is leaving a machine is very useful.

ok mpi@

date 2020-06-18T23:29:59Z
author dlg
files src/sys/net/fq_codel.c log diff annotate
src/sys/net/fq_codel.h log diff annotate
message add $OpenBSD$ tags

date 2020-06-18T23:32:00Z
author dlg
files src/sys/net/bpf.c log diff annotate
message pass the mbuf with the data separately to the one with the pkthdr to mtap.

this lets things calling bpf_mtap_hdr and related functions also
populate the extended bpf_hdr with the rcvif and prio and stuff.