sing-box/service
世界 00a2704ecf
usbip: defer darwin RET_UNLINK until completion; route VHCI through primary; close lease-consume race
Three independent correctness bugs that all violated "decide before
publishing": each surface (wire reply, sysfs path, broadcast state)
committed to a state the code later had to contradict.

darwin: switch IOUSBHostPipe abort to IOUSBHostAbortOptionSynchronous and
add the EP-0 path via abortDeviceRequestsWithOption (previously a silent
no-op for control transfers). After abort returns, await a per-pending
drained channel before writing RET_UNLINK so the late RetSubmit
suppression in finishSubmit has actually taken effect — the drained
channel is allocated lazily by markSubmitUnlinked, so the hot submit
path is unchanged.

linux: collapse the per-controller VHCI abstraction. The kernel exposes
attach/detach/status/status.N only on vhci_hcd.0 with globally unique
port numbers; the previous code wrote vhci_hcd.N/attach for N>0 and
silently failed past the primary controller's port range. Glob status*
on the primary, key reservations on bare port int, and carry the
status-suffix as a diagnostic-only secondary index for Description().

export_ledger: ConsumeLeaseAndReserve no longer publishes busy=true and
then conditionally rolls it back. Read seq under fast first, then make
every decision (including the lease.Generation check) inside one slow
critical section before any busy mutation. This removes the window
where a concurrent BroadcastIfChanged could observe transient busy and
poison l.state with no corrective broadcast on rollback.
2026-05-15 17:32:30 +08:00
..
acme Fix lint errors 2026-05-15 07:58:46 +08:00
ccm Fix lint errors 2026-05-13 23:39:27 +08:00
derp Refactor: HTTP clients, unified HTTP2/QUIC options, Apple engines 2026-05-14 21:56:20 +08:00
ocm Fix lint errors 2026-05-13 23:39:27 +08:00
oomkiller Fix lint errors 2026-05-15 07:58:46 +08:00
origin_ca Fix lint errors 2026-05-15 07:58:46 +08:00
resolved dns: Add preferred_by rule item 2026-05-15 07:43:29 +08:00
ssmapi ssm-api: Fix save cache 2025-11-04 11:00:43 +08:00
usbip usbip: defer darwin RET_UNLINK until completion; route VHCI through primary; close lease-consume race 2026-05-15 17:32:30 +08:00