OpenBSD cvs log

created 2021-06-05T18:42:10Z
begin 2021-02-20T00:00:00Z
end 2021-02-21T00:00:00Z
path src/sys
commits 11

date 2021-02-20T01:11:43Z
author dlg
files src/sys/net/if.c log diff annotate
message add a MONITOR flag to ifaces to say they're only used for watching packets.

an example use of this is when you have a span port on a switch and
you want to be able to see the packets coming out of it with tcpdump,
but do not want these packets to enter the network stack for
processing. this is particularly important if the span port is
pushing a copy of any packets related to the machine doing the
monitoring as it will confuse pf states and the stack.

ok benno@

date 2021-02-20T01:11:44Z
author dlg
files src/sys/net/if.h log diff annotate
src/sys/net/ifq.c log diff annotate
message add a MONITOR flag to ifaces to say they're only used for watching packets.

an example use of this is when you have a span port on a switch and
you want to be able to see the packets coming out of it with tcpdump,
but do not want these packets to enter the network stack for
processing. this is particularly important if the span port is
pushing a copy of any packets related to the machine doing the
monitoring as it will confuse pf states and the stack.

ok benno@

date 2021-02-20T04:35:41Z
author dlg
files src/sys/net/if_var.h log diff annotate
message give interfaces an if_bpf_mtap handler.

the network stack is now responsible for calling bpf for packets
that the interface receives, and we so far got away with using
bpf_mtap_ether for everything. this doesn't work if layer 3 input
goes through the same functions, so letting drivers specify the
appropriate bpf mtap function means they will be able to cope.

date 2021-02-20T04:37:26Z
author dlg
files src/sys/net/if.c log diff annotate
src/sys/net/ifq.c log diff annotate
message default interfaces to bpf_mtap_ether for their if_bpf_mtap handler.

call (*ifp->if_bpf_mtap) instead of bpf_mtap_ether in ifiq_input
and if_vinput.

date 2021-02-20T04:39:16Z
author dlg
files src/sys/net/if_tun.c log diff annotate
message let tun use bpf_mtap for handling input packets.

tun (not tap) input packets are written from userland in the same
format that it's bpf dlt is expecting, so we can push the packet
straight into bpf with bpf_mtap. this is more correct that using
bpf_mtap_ether for tun.

date 2021-02-20T04:55:52Z
author dlg
files src/sys/net/if.c log diff annotate
src/sys/net/if_var.h log diff annotate
message add p2p_input, like ether_input but for l3 tunnel interfaces.

the l3 protocol input to push the packet is based on a value in
m->m_pkthdr.ph_family, which tunnel drivers should set before calling
if_vinput.

add p2p_bpf_mtap to call bpf_mtap_af also using m->m_pkthdr.ph_family.

date 2021-02-20T04:58:29Z
author dlg
files src/sys/net/if_gif.c log diff annotate
message move gif from calling l3 protocol input handlers to using if_vinput.

if_vinput requires mpsafe interface counters, so gif is a bit more
mpsafe now than it was before. using if_vinput means monitor mode
works on gif now too.

date 2021-02-20T05:01:33Z
author dlg
files src/sys/net/if_gre.c log diff annotate
message move gre and mgre from calling l3 input handlers to using if_vinput.

using if_vinput factors out a lot of repeated code between tunnel
drivers, and it means monitor mode works on gre and mgre now too.

make the l2 gre interfaces do some things in the same order while
here.

date 2021-02-20T05:03:37Z
author dlg
files src/sys/net/if_mpe.c log diff annotate
src/sys/net/if_mpip.c log diff annotate
message move from calling l3 protocol input handlers to using if_vinput.

if_vinput requires mpsafe interface counters, so add those in. this
factors out some more code between drivers. monitor mode will work
on these interfaces now too.

date 2021-02-20T14:42:51Z
author visa
files src/sys/arch/octeon/dev/octeon_pcibus.c log diff annotate
message Fix disestablishing of PCI interrupt handlers.

date 2021-02-20T21:50:04Z
author jsg
files src/sys/dev/pci/drm/amd/amdgpu/amdgpu_gem.c log diff annotate
message remove warning about amdgpu userptr ioctl being unimplemented

matches radeon and i915
reported by Benjamin Baier