OpenBSD cvs log

created 2019-11-17T13:43:53Z
begin 2019-11-06T00:00:00Z
end 2019-11-07T00:00:00Z
path src/sys
commits 11

date 2019-11-06T03:51:26Z
author dlg
files src/sys/net/if.c log diff annotate
src/sys/net/if_aggr.c log diff annotate
src/sys/net/if_bpe.c log diff annotate
src/sys/net/if_bridge.c log diff annotate
src/sys/net/if_bridge.h log diff annotate
src/sys/net/if_gre.c log diff annotate
src/sys/net/if_pfsync.c log diff annotate
src/sys/net/if_switch.c log diff annotate
src/sys/net/if_switch.h log diff annotate
src/sys/net/if_tpmr.c log diff annotate
src/sys/net/if_trunk.c log diff annotate
src/sys/net/if_trunk.h log diff annotate
src/sys/net/if_var.h log diff annotate
src/sys/net/if_vlan.c log diff annotate
src/sys/net/if_vxlan.c log diff annotate
src/sys/netinet/ip_carp.c log diff annotate
message replace the hooks used with if_detachhooks with a task list.

the main semantic change is that things registering detach hooks
have to allocate and set a task structure that then gets added to
the list. this means if the task is allocated up front (eg, as part
of carps softc or bridges port structure), it avoids the possibility
that adding a hook can fail. a lot of drivers weren't checking for
failure, and unwinding state in the event of failure in other parts
was error prone.

while doing this i discovered that the list operations have to be
in a particular order, but drivers weren't doing that consistently
either. this diff wraps the list ops up so you have to seriously
go out of your way to screw them up.

ive also sprinkled some NET_ASSERT_LOCKED around the list operations
so we can make sure there's no potential for the list to be corrupted,
especially while it's being run.

hrvoje popovski has tested this a bit, and some issues he discovered
have been fixed.

ok sashan@

date 2019-11-06T07:30:08Z
author mpi
files src/sys/ddb/db_command.c log diff annotate
src/sys/ddb/db_examine.c log diff annotate
src/sys/ddb/db_expr.c log diff annotate
src/sys/ddb/db_extern.h log diff annotate
src/sys/ddb/db_input.c log diff annotate
src/sys/ddb/db_interface.h log diff annotate
src/sys/ddb/db_output.c log diff annotate
src/sys/ddb/db_run.c log diff annotate
src/sys/ddb/db_run.h log diff annotate
src/sys/ddb/db_trap.c log diff annotate
message Substitute boolean_t/TRUE/FALSE by int/1/0.

ok dlg@, jasper@, anton@

date 2019-11-06T07:32:10Z
author mpi
files src/sys/arch/hppa/hppa/db_disasm.c log diff annotate
src/sys/arch/sparc64/include/db_machdep.h log diff annotate
src/sys/arch/sparc64/sparc64/db_disasm.c log diff annotate
src/sys/arch/sparc64/sparc64/db_interface.c log diff annotate
src/sys/arch/sparc64/sparc64/db_trace.c log diff annotate
message ANSIfy functions and get rid of boolean_t.

ok dlg@, jasper@

date 2019-11-06T07:34:35Z
author mpi
files src/sys/arch/amd64/amd64/db_disasm.c log diff annotate
src/sys/arch/amd64/amd64/db_interface.c log diff annotate
src/sys/arch/amd64/amd64/db_trace.c log diff annotate
src/sys/arch/i386/i386/db_disasm.c log diff annotate
src/sys/arch/i386/i386/db_interface.c log diff annotate
src/sys/arch/i386/i386/db_mp.c log diff annotate
src/sys/arch/i386/i386/db_trace.c log diff annotate
message Substitute boolean_t/TRUE/FALSE by int/1/0.

ok dlg@, jasper@

date 2019-11-06T13:55:43Z
author stsp
files src/sys/dev/pci/if_iwm.c log diff annotate
src/sys/dev/pci/if_iwn.c log diff annotate
message Raise net80211's "beacon miss" threshold to avoid frequent re-connects
to APs that are relatively far away and suffer some packet loss.

The former threshold was 7 beacons (about 700 ms).
This raises the threshold to 30 beacons (about 3 seconds).
Should still be good enough for detecting APs that have disappeared, and
makes wifi networks provided by the University of Bucharest more reliable
in the p2k19 hackroom.

While here, make 'ifconfig iwm0/iwn0 debug' print an obvious message when
we believe that the AP has disappeared.

Problem reported and fix tested by landry@ / pirofti@
ok mpi@ sthen@

date 2019-11-06T13:55:44Z
author stsp
files src/sys/net80211/ieee80211.c log diff annotate
src/sys/net80211/ieee80211_proto.c log diff annotate
src/sys/net80211/ieee80211_var.h log diff annotate
message Raise net80211's "beacon miss" threshold to avoid frequent re-connects
to APs that are relatively far away and suffer some packet loss.

The former threshold was 7 beacons (about 700 ms).
This raises the threshold to 30 beacons (about 3 seconds).
Should still be good enough for detecting APs that have disappeared, and
makes wifi networks provided by the University of Bucharest more reliable
in the p2k19 hackroom.

While here, make 'ifconfig iwm0/iwn0 debug' print an obvious message when
we believe that the AP has disappeared.

Problem reported and fix tested by landry@ / pirofti@
ok mpi@ sthen@

date 2019-11-06T14:51:22Z
author florian
files src/sys/net/rtsock.c log diff annotate
message Fix RTA_DNS checks:
Do not overwrite the address family, we need to know if this is IPv4
or IPv6 to parse the message.
Nameservers are IP addresses, not NUL-terminated strings.
Check that the length is a multiple of the length of an IP address.

OK krw

date 2019-11-06T14:52:35Z
author stsp
files src/sys/dev/pci/if_iwn.c log diff annotate
message Make iwn(4) flush remaining frames on the Tx aggregation queue when
Tx aggregation is stopped. Fixes a bug where outstanding frames on
the aggregation queue interfere with roaming to another AP.

net80211 will only roam once all outstanding frames destined for the
old AP have been sent, i.e. once that AP node's Tx refcount goes to 0.
Any outstanding frames sitting in the Tx aggregation queue, waiting to
be ACKed, will keep this refcount above zero.
To make roaming work reliably in combination with Tx aggregation, the
driver must ensure that ieee80211_release_node() gets called for each
frame on the queue when Tx aggregation is stopped.

Problem observed by tobhe@
Fix tested + ok tobhe@ jca@

date 2019-11-06T15:18:53Z
author florian
files src/sys/net/rtsock.c log diff annotate
message Pull break into ifdef; noticed by bluhm who also OK'ed the previous
commit.

date 2019-11-06T19:16:48Z
author anton
files src/sys/kern/subr_kubsan.c log diff annotate
message Use atomic operations consistently while writing to kubsan_slot.
Otherwise, reports might go by unnoticed.

Prodded by and ok visa@

date 2019-11-06T20:25:14Z
author mglocker
files src/sys/dev/usb/udl.c log diff annotate
src/sys/dev/usb/uts.c log diff annotate
message Make udl(4) and uts(4) compile again in debug mode by fixing IOCGROUP
and IOCPARM_LEN macros types.