created | 2019-08-12T15:29:22Z |
---|---|
begin | 2019-08-06T00:00:00Z |
end | 2019-08-07T00:00:00Z |
path | src/sys |
commits | 12 |
date | 2019-08-06T06:56:29Z | |||
---|---|---|---|---|
author | kettenis | |||
files | src/sys/dev/ic/dwiic.c | log | diff | annotate |
src/sys/dev/ic/dwiicreg.h | log | diff | annotate | |
message |
Read the fifo depths from the appropriate configuration register and update the values if they are non-zero and smaller than the current hardcoded depths. Fixes dwiic(4) on Ampere eMAG. ok patrick@, jcs@ |
date | 2019-08-06T07:16:48Z | |||
---|---|---|---|---|
author | anton | |||
files | src/sys/dev/diskmap.c | log | diff | annotate |
message |
Resolve some minor nits in diskmapioctl(): * Favor ENOTTY for unknown ioctl commands * Return the actual error from copyinstr and copyoutstr, removes the need to initialize the local error variable * Do not use parens around return expressions consistently ok visa@ |
date | 2019-08-06T07:21:29Z | |||
---|---|---|---|---|
author | dlg | |||
files | src/sys/dev/pci/if_vmx.c | log | diff | annotate |
message | use ifiq_input so we can call if_rxr_livelocked to apply backpressure |
date | 2019-08-06T09:36:54Z | |||
---|---|---|---|---|
author | dlg | |||
files | src/sys/dev/pci/if_vmx.c | log | diff | annotate |
message |
if the rx ring gets empty and can't be filled, retry in the future there have been several reports that vmx gets stuck sometimes and only comes good after it's taken down and up again. hopefully this fixes that issue. |
date | 2019-08-06T10:09:37Z | |||
---|---|---|---|---|
author | dlg | |||
files | src/sys/dev/pci/if_vmx.c | log | diff | annotate |
message | i replaced a misplaced tab with g, not a space. make this work again. |
date | 2019-08-06T10:15:27Z | |||
---|---|---|---|---|
author | dlg | |||
files | src/sys/dev/pci/if_vmx.c | log | diff | annotate |
src/sys/dev/pci/if_vmxreg.h | log | diff | annotate | |
message |
have a go at using msi interrupts. vmx has an interesting feature where config in the hypervisor can say what type of interrupts the guest should configure for the nic, with the options of auto, msix, msi, and intx. depending on this, the driver should try to map the type specified and fall back from there. also interesting is that my guest gets "auto" from the hypervisor, which i fall through to msi with, but an msi interrupt cannot be mapped. i cannot see any msi interrupts in this guest actually. there must be something funky at the platform level that we don't like, and that prevents msi from being mapped. if msi does get mapped, we should be able to avoid a register read on every interrupt. that should probably provide a noticable performance improvement if we can ever take advantage of it. |
date | 2019-08-06T10:54:40Z | |||
---|---|---|---|---|
author | dlg | |||
files | src/sys/dev/pci/if_vmx.c | log | diff | annotate |
message | remove some debug cruft i should have removed before the last commit. |
date | 2019-08-06T18:06:32Z | |||
---|---|---|---|---|
author | kettenis | |||
files | src/sys/arch/sparc64/sparc64/ipifuncs.c | log | diff | annotate |
message |
Block interrupts while (attempting to) send an IPI on sun4v just like we do on sun4u. Appears to fix random kernel hangs (often involving fpusave_proc()) on the new ports cluster machines. ok deraadt@ |
date | 2019-08-06T19:24:45Z | |||
---|---|---|---|---|
author | bluhm | |||
files | src/sys/dev/pv/if_vio.c | log | diff | annotate |
message |
The vio(4) interface did not recover from mbuf shortage. The logic to start the rx tick did not work since we use if_rxr_get(). An easy fix is to start the rx timeout every second unconditionally. OK dlg@ |
date | 2019-08-06T22:45:02Z | |||
---|---|---|---|---|
author | bluhm | |||
files | src/sys/kern/vfs_syscalls.c | log | diff | annotate |
message | Fix white spaces. |
date | 2019-08-06T22:57:54Z | |||
---|---|---|---|---|
author | bluhm | |||
files | src/sys/net/if.c | log | diff | annotate |
src/sys/net/if_loop.c | log | diff | annotate | |
src/sys/net/netisr.h | log | diff | annotate | |
src/sys/netinet/ip_input.c | log | diff | annotate | |
message |
When we needed the kernel lock for local IP packet delivery, mpi@ introduced a queue to grab the lock for multiple packets. Now we have only netlock for both IP and protocol input. So the queue is not necessary anymore. It just switches CPU and decreases performance. So remove the inet and inet6 ip queue for local packets. To get TCP running on loopback, we have to queue once between TCP input and output of the two sockets. So use the loopback queue in looutput() unconditionally. OK visa@ |
date | 2019-08-06T22:57:55Z | |||
---|---|---|---|---|
author | bluhm | |||
files | src/sys/netinet6/ip6_input.c | log | diff | annotate |
message |
When we needed the kernel lock for local IP packet delivery, mpi@ introduced a queue to grab the lock for multiple packets. Now we have only netlock for both IP and protocol input. So the queue is not necessary anymore. It just switches CPU and decreases performance. So remove the inet and inet6 ip queue for local packets. To get TCP running on loopback, we have to queue once between TCP input and output of the two sockets. So use the loopback queue in looutput() unconditionally. OK visa@ |