OpenBSD cvs log

created 2019-01-12T16:19:22Z
begin 2019-01-09T00:00:00Z
end 2019-01-10T00:00:00Z
path src/sys
commits 8

date 2019-01-09T01:14:21Z
author dlg
files src/sys/net/if.c log diff annotate
src/sys/net/if_var.h log diff annotate
message split if_enqueue up so drivers can replace ifq handling if needed

if_enqueue() still makes sure packets get handled by pf on the way
out, and seen by bridge if needed. however instead of falling through
to ifq mapping and output, it now calls a function pointer in the
ifnet struct. that pointer defaults to the ifq handling, but drivers
can override it to bypass ifq processing.

the most obvious users of the function pointer will be virtual
interfaces, eg, vlan(4). ifqs are good if you need to serialise
access to the thing that transmits packets (like hardware rings on
nics), or mitigate the number of times you do ring processing, but
neither of those things are desirable on vlan interfaces. ideally
vlan could transmit on any cpu without having packets serialised
by it's own ifq before being pushed down to an arbitrary number of
rings on the parent interface. bypassing ifqs means the driver can
push the vlan tag on concurrently and push down to the parent frmo
any cpu.

ok mpi@
no objection from claudio@

date 2019-01-09T01:17:09Z
author dlg
files src/sys/net/if_vlan.c log diff annotate
message implement an if_enqueue handler for vlan(4)

this allows vlan packets to bypass the ifq handling, which allows
packets to be encapsulated concurrently by any context. the code
falls back to ifqs if hfsc is enabled on the vlan interface, otherwise
it encaps the packet immedate and enqueues it on the parent interface.

hrove popovski has seen a performance bump in certain configurations
from this change.

ok mpi@
no objections claudio@

date 2019-01-09T11:23:32Z
author fcambus
files src/sys/dev/rasops/rasops.c log diff annotate
src/sys/dev/wsfont/wsfont.c log diff annotate
message Enable Spleen in wsfont and modify the font selection logic at runtime
in rasops(9) to allow selecting larger fonts when available.

Summary of the changes:

- Enable spleen8x16 for all architectures, replacing bold8x16_iso1.
- Enable spleen12x24 on all arches but sparc64, replacing gallant12x22.
- Enable spleen16x32 and spleen32x64 on amd64, i386, and arm64 for
GENERIC kernels.
- Modify the font selection logic in rasops(9) so the 16x32 and 32x64
fonts are selected if at least 120 columns can be displayed. Screens
with widths equal or larger than 1920px will use the 16x32 font, and
screens with widths equal or larger than 3840px the 32x64 one.

OK kettenis@, ratchov@, deraadt@

date 2019-01-09T12:10:37Z
author mpi
files src/sys/dev/usb/usb.c log diff annotate
message No need to call usbd_fill_deviceinfo() from a task, it doesn't generate I/O.

ok visa@

date 2019-01-09T12:11:38Z
author mpi
files src/sys/crypto/cryptosoft.c log diff annotate
src/sys/crypto/xform_ipcomp.c log diff annotate
message free(9) sizes.

ok visa@

date 2019-01-09T13:18:50Z
author yasuoka
files src/sys/arch/arm64/arm64/autoconf.c log diff annotate
src/sys/arch/arm64/stand/efiboot/efidev.c log diff annotate
src/sys/arch/arm64/stand/efiboot/exec.c log diff annotate
message Make arm64 efiboot can boot from partitions other than "a".

ok kettenis

date 2019-01-09T16:37:27Z
author visa
files src/sys/kern/uipc_mbuf.c log diff annotate
message Eliminate an else branch from m_extunref().

OK millert@ bluhm@

date 2019-01-09T18:11:22Z
author bluhm
files src/sys/ddb/db_examine.c log diff annotate
message Printing hex values with right adjustment makes it easier to compare
corresponding digits. So the change the ddb x/x output.
OK sashan@ deraadt@ visa@ mpi@