OpenBSD cvs log

created 2022-12-04T15:00:39Z
begin 2022-11-26T00:00:00Z
end 2022-11-27T00:00:00Z
path src/sys
commits 17

date 2022-11-26T06:20:18Z
author anton
files src/sys/dev/wscons/wsdisplay.c log diff annotate
message While emulating the bell, wsdisplay could end up sleeping when reaching
down to wsmux. This does not work since we're in interrupt context, as
pointed out by witness.

Instead, defer the work to a task which in turn will execute in process
context.

Problem reported by beck@

ok visa@

date 2022-11-26T06:26:14Z
author anton
files src/sys/dev/usb/uhidpp.c log diff annotate
message Rename type argument to buf in hidpp10_get_type(), no functional change.

date 2022-11-26T06:26:51Z
author anton
files src/sys/dev/usb/uhidpp.c log diff annotate
message Stop printing the device serial number during attach, it's not that
useful after all.

date 2022-11-26T06:27:48Z
author anton
files src/sys/dev/usb/uhidpp.c log diff annotate
message Reduce indentation, no functional change.

date 2022-11-26T06:28:08Z
author anton
files src/sys/dev/usb/uhidpp.c log diff annotate
message Take note of the needed feature indices already in
uhipp_device_features().

date 2022-11-26T06:28:34Z
author anton
files src/sys/dev/usb/uhidpp.c log diff annotate
message Pass a uhidpp_device to hidpp20_battery_get_capability() and
hidpp20_battery_get_level_status().

date 2022-11-26T06:28:50Z
author anton
files src/sys/dev/usb/uhidpp.c log diff annotate
message Group function and response defines.

date 2022-11-26T06:29:07Z
author anton
files src/sys/dev/usb/uhidpp.c log diff annotate
message Stop checking the link status upon receiving connect notifications as
the Bolt receiver uses another bit for this which I haven't been able to
identify.

date 2022-11-26T06:29:24Z
author anton
files src/sys/dev/usb/uhidpp.c log diff annotate
message Pave the way for checking presence of more features in
uhidpp_device_features().

date 2022-11-26T06:29:50Z
author anton
files src/sys/dev/usb/uhidpp.c log diff annotate
message Shove more battery feature logic down to hidpp20_battery_get_level_status().
In preparation for supporting the unified battery feature.

date 2022-11-26T06:30:08Z
author anton
files src/sys/dev/usb/uhidpp.c log diff annotate
message Remove unused battery fields.

date 2022-11-26T09:05:32Z
author kettenis
files src/sys/arch/arm64/conf/GENERIC log diff annotate
message Enable aplpwm(4) and pwmleds(4).

date 2022-11-26T17:23:15Z
author tobhe
files src/sys/arch/arm64/arm64/acpi_machdep.c log diff annotate
src/sys/arch/arm64/arm64/machdep.c log diff annotate
src/sys/arch/arm64/dev/aplsmc.c log diff annotate
src/sys/arch/arm64/include/cpu.h log diff annotate
message Add arm64 lid_action sysctl for Apple Silicon laptops.

ok kettenis@

date 2022-11-26T17:50:26Z
author mvs
files src/sys/net/if_pppx.c log diff annotate
message Next step of netlock pressure decreasing in pppx(4).

The kernel lock is still taken when we access pppx(4) layer through
device node. Since pipex(4) layer doesn't rely on netlock anymore, and we
don't acquire it when we access pipex(4) from pppx(4) layer, kernel lock
is enough to protect pppx(4) data. Such data doesn't accessed from packet
processing path, so there is no reason to block it by netlock acquiring.

Assume kernel lock as protection for `pxd_pxis' lists and `pppx_ifs' tree.
The search in `pppx_ifs' tree has no context switch. There is no context
switch between the `pxi' free unit search and tree insertion.

Use reference counters to make `pxi' dereference safe, instead of holding
netlock. Now pppx_if_find() returns `pxi' with reference counter bumped,
and newly introduced pppx_if_rele() used for release this `pxi'.

Introduce pppx_if_find_locked() which returns `pxi' but doesn't bump
reference counter. pppx_if_find_locked() and pppx_if_find() both called
with kernel lock held, but keep existing notation where _locked()
function returned data with non bumped counter.

Mark dying `pxi' by setting `pxi_ready' to null, so concurrent thread
can't receive it by pppx_if_find().

The netlock is left around modification of associated ifnet's
`if_description'. This is unwanted because `if_description' never accessed
within packet processing path, but this require ifnet locking
modification, so keep this to the following diffs.

ok bluhm@

date 2022-11-26T17:51:18Z
author mvs
files src/sys/kern/uipc_usrreq.c log diff annotate
src/sys/sys/unpcb.h log diff annotate
message Merge uipc_bind() with unp_bind(). Unlike other unp_*() functions,
unp_bind() has the only uipc_bind() caller. In the uipc_usrreq() times,
it made sense to have dedicated unp_bind() for prevent tne code mess
within giant switch(), but now it doesn't.

ok bluhm@

date 2022-11-26T17:52:35Z
author mvs
files src/sys/sys/protosw.h log diff annotate
src/sys/sys/socketvar.h log diff annotate
message Turn sowriteable(), sballoc() and sbfree() macro to inline functions.

soreadable() is already presented as inline function, but corresponding
sowriteable() is still macro. Also it's no reason to keep sballoc() and
sbfree() as macro.

The first argument of sballoc() and sbfree() is not used, but keep it for
a while.

ok kn@ bluhm@

date 2022-11-26T21:35:22Z
author kettenis
files src/sys/arch/arm64/dev/apldma.c log diff annotate
message Adjust for changes in the device tree bindings. Since it is relatively
easy to support both the "official" and "preliminary" bindings, we support
both. Support for the "preliminary" bindings will be removed at some point
in the future.

ok tobhe@