created | 2021-11-21T19:44:12Z |
---|---|
begin | 2021-10-13T00:00:00Z |
end | 2021-10-20T00:00:00Z |
path | src/sys |
commits | 17 |
date | 2021-10-13T13:08:58Z | |||
---|---|---|---|---|
author | bluhm | |||
files | src/sys/arch/amd64/amd64/aesni.c | log | diff | annotate |
src/sys/arch/amd64/amd64/via.c | log | diff | annotate | |
src/sys/arch/arm64/arm64/cryptox.c | log | diff | annotate | |
src/sys/arch/i386/i386/via.c | log | diff | annotate | |
src/sys/arch/i386/pci/glxsb.c | log | diff | annotate | |
src/sys/arch/octeon/dev/octcrypto.c | log | diff | annotate | |
src/sys/crypto/crypto.c | log | diff | annotate | |
src/sys/crypto/cryptodev.h | log | diff | annotate | |
src/sys/crypto/cryptosoft.c | log | diff | annotate | |
src/sys/dev/pci/Attic/hifn7751.c | log | diff | annotate | |
src/sys/dev/pci/Attic/safe.c | log | diff | annotate | |
src/sys/dev/pci/Attic/ubsec.c | log | diff | annotate | |
message |
The kernel crypto framework sometimes returned an error, sometimes the callback was called, and sometimes both. So the caller of that API could not release resources correctly. A bunch of errors can or should not happen, replace them with an assert. Remove redundant checks. crypto_invoke() should not return the error, but pass it via callback. Some old hardware drivers keep part of their inconsistency as I cannot test them. OK mpi@ |
date | 2021-10-13T14:36:31Z | |||
---|---|---|---|---|
author | bluhm | |||
files | src/sys/netinet/ip_ah.c | log | diff | annotate |
src/sys/netinet/ip_esp.c | log | diff | annotate | |
src/sys/netinet/ip_ipcomp.c | log | diff | annotate | |
src/sys/netinet/ip_ipip.c | log | diff | annotate | |
src/sys/netinet/ip_ipip.h | log | diff | annotate | |
src/sys/netinet/ip_ipsp.c | log | diff | annotate | |
src/sys/netinet/ip_ipsp.h | log | diff | annotate | |
src/sys/netinet/ipsec_output.c | log | diff | annotate | |
src/sys/netinet/tcp_subr.c | log | diff | annotate | |
message |
The function ipip_output() was registered as .xf_output() xform function. But was is never called via this pointer. It would have immediatley crashed as mp is always NULL when called via .xf_output(). Do not set .xf_output to ipip_output. This allows to pass only the parameters which are actually needed and the control flow is clearer. OK mpi@ |
date | 2021-10-13T22:43:44Z | |||
---|---|---|---|---|
author | bluhm | |||
files | src/sys/crypto/crypto.c | log | diff | annotate |
src/sys/crypto/cryptodev.h | log | diff | annotate | |
src/sys/dev/softraid_crypto.c | log | diff | annotate | |
src/sys/dev/softraid_raid1c.c | log | diff | annotate | |
src/sys/netinet/ip_ah.c | log | diff | annotate | |
src/sys/netinet/ip_esp.c | log | diff | annotate | |
src/sys/netinet/ip_ipcomp.c | log | diff | annotate | |
src/sys/netinet/ipsec_input.c | log | diff | annotate | |
src/sys/netinet/ipsec_output.c | log | diff | annotate | |
message |
The function crypto_dispatch() never returns an error. Make it void and remove error handling in the callers. OK patrick@ mvs@ |
date | 2021-10-13T22:49:11Z | |||
---|---|---|---|---|
author | bluhm | |||
files | src/sys/netinet/ipsec_input.c | log | diff | annotate |
message |
Remove redundant NULL checks in IPsec which are never reached. ok mvs@ |
date | 2021-10-14T08:46:01Z | |||
---|---|---|---|---|
author | mpi | |||
files | src/sys/kern/sys_generic.c | log | diff | annotate |
message |
Implement select(2) and pselect(2) on top of kqueue. The given set of fds are converted to equivalent kevents using EV_SET(2) and passed to the scanning internals of kevent(2): kqueue_scan(). Those events are lazily deleted to reduce the overhard of freeing/allocating them when select(2) is called in a loop. ktrace(1) will now output the converted kevents on top of the usuals set bits to be able to find possible error in the convertion. This switch implies that select(2) and pselect(2) will now query the underlying kqfilters instead of the *_poll() routines. An increase in latency is visible, especially with UDP sockets and NET_LOCK()-contended subsystems and will be addressed in a next step. The various *_poll() routines could be removed as soon as poll(2) and ppoll(2) are also converted. Based on similar work done on DragonFlyBSD with inputs from from visa@, millert@, anton@, cheloha@, thanks! ok claudio@, bluhm@ |
date | 2021-10-14T17:39:42Z | |||
---|---|---|---|---|
author | bluhm | |||
files | src/sys/netinet6/ip6_forward.c | log | diff | annotate |
message |
ip6_output_ipsec_send() may change the route embeded in struct ro during path MTU discovery. ip6_forward() has to update its rt variable to the new route in ro. Otherwise it could operate on a freed route. from markus@ |
date | 2021-10-14T23:05:10Z | |||
---|---|---|---|---|
author | mvs | |||
files | src/sys/kern/uipc_socket.c | log | diff | annotate |
src/sys/kern/uipc_usrreq.c | log | diff | annotate | |
message |
Release solock() before call unp_externalize(). A little step forward to make UNIX domain sockets locking fine grained. The closest goal is to introduce the new rwlock(9) and use it to protect garbage collector data. This leaves existing `unp_lock' rwlock(9) which cowers the whole layer for per-socket data only and allows to replace it with per-socket `so_lock' with further diffs. Except file descriptor table unp_externalize() operates with the garbage collector data only such as `unp_rights', `unp_msgcount' directly and `unp_deferred' through unp_discard(). I want to introduce the new garbage collector rwlock(9) with the separate diff, so `unp_lock' is still taken within unp_externalize() around garbage collector data access. But right now M_WAITOK allocation removed from rwlock(9). Also useless M_WAITOK allocation and fdplock()/fdpunlock() dances removed from the error path. The `unp_lock' and fdplock() are not taken together within unp_externalize() but unp_internalize() still enforces `unp_lock' -> fdplock() lock order. This rests the only place and will be changed with the upcoming unp_internalize() and garbage collector rwlock(9) diffs. ok bluhm@ |
date | 2021-10-15T06:30:06Z | |||
---|---|---|---|---|
author | semarie | |||
files | src/sys/kern/spec_vnops.c | log | diff | annotate |
src/sys/kern/vfs_default.c | log | diff | annotate | |
src/sys/kern/vfs_sync.c | log | diff | annotate | |
src/sys/miscfs/deadfs/dead_vnops.c | log | diff | annotate | |
src/sys/miscfs/fifofs/fifo_vnops.c | log | diff | annotate | |
src/sys/ntfs/ntfs_vnops.c | log | diff | annotate | |
src/sys/sys/vnode.h | log | diff | annotate | |
src/sys/ufs/mfs/mfs_vnops.c | log | diff | annotate | |
message |
vnode: remove vop_generic_{,is,un}lock stub functions These functions are only stubs (returning 0). Replace them with nullop function (same behaviour). There is no intented behaviour changes. While here, reorder some vop_islocked member in structs to be next others vop_{,un}lock members. ok visa@ |
date | 2021-10-15T06:59:57Z | |||
---|---|---|---|---|
author | mpi | |||
files | src/sys/kern/sys_generic.c | log | diff | annotate |
message |
Revert "Implement select(2) and pselect(2) on top of kqueue." It introduced a regression exposed by the ssh tests. Reported by anton@ |
date | 2021-10-15T13:38:10Z | |||
---|---|---|---|---|
author | stsp | |||
files | src/sys/dev/pci/if_iwx.c | log | diff | annotate |
src/sys/dev/pci/if_iwxvar.h | log | diff | annotate | |
message |
Add initial 40MHz support to the iwx(4) driver. Tested: ax200: jmc, phessler, kevlo, hrvoje, sdk, fkr, stsp, Mark Patruck ax201: jcs, stsp, Fredrik Engberg, Eric Auge |
date | 2021-10-16T17:14:41Z | |||
---|---|---|---|---|
author | kettenis | |||
files | src/sys/dev/fdt/bcm2711_pcie.c | log | diff | annotate |
message |
Bail out early if the PCIe controller hasn't been initialized by the firmware. ok jsg@ |
date | 2021-10-17T10:59:45Z | |||
---|---|---|---|---|
author | jsg | |||
files | src/sys/dev/pci/drm/amd/amdgpu/gmc_v10_0.c | log | diff | annotate |
src/sys/dev/pci/drm/amd/amdgpu/gmc_v9_0.c | log | diff | annotate | |
message |
drm/amdgpu: fix gart.bo pin_count leak From Leslie Shi 621ddffb70db824eabd63d18ac635180fe9500f9 in linux 5.10.y/5.10.74 66805763a97f8f7bdf742fc0851d85c02ed9411f in mainline linux |
date | 2021-10-17T11:39:40Z | |||
---|---|---|---|---|
author | patrick | |||
files | src/sys/uvm/uvm_page.c | log | diff | annotate |
message |
km_alloc(9) needs to be passed a size that is a multiple of PAGE_SIZE. ok mpi@ |
date | 2021-10-19T06:09:39Z | |||
---|---|---|---|---|
author | semarie | |||
files | src/sys/miscfs/deadfs/dead_vnops.c | log | diff | annotate |
message |
vnode: deadfs: do not call v_op->vop_lock directly, use VOP_LOCK() wrapper ok mpi@ visa@ (as part of larger diff) |
date | 2021-10-19T06:11:45Z | |||
---|---|---|---|---|
author | semarie | |||
files | src/sys/isofs/cd9660/cd9660_node.c | log | diff | annotate |
src/sys/nfs/nfs_node.c | log | diff | annotate | |
src/sys/ufs/ufs/ufs_ihash.c | log | diff | annotate | |
message |
vnode: do not manipulate vnode lock directly use VOP_LOCK / VOP_UNLOCK wrappers. VOP_LOCK() is prefered over vn_lock() here in order to keep equivalent code. ok mpi@ visa@ (as part of larger diff) |
date | 2021-10-19T06:26:08Z | |||
---|---|---|---|---|
author | semarie | |||
files | src/sys/kern/vfs_subr.c | log | diff | annotate |
message |
vnode: remove VLOCKSWORK and check locking when vop_islocked != nullop This flag is currently used to mark or unmark a vnode to actively check vnode locking semantic (when compiled with VFSLCKDEBUG). Currently, VLOCKSWORK flag isn't properly set for several FS implementation which have full locking support. This commit enable proper checking for them too (cd9660, udf, fuse, msdosfs, tmpfs). Instead of using a particular flag, it directly check if v_op->vop_islocked is nullop or not to activate or not the vnode locking checks. ok mpi@ |
date | 2021-10-19T06:26:09Z | |||
---|---|---|---|---|
author | semarie | |||
files | src/sys/kern/vfs_vops.c | log | diff | annotate |
src/sys/nfs/nfs_node.c | log | diff | annotate | |
src/sys/sys/vnode.h | log | diff | annotate | |
src/sys/ufs/ext2fs/ext2fs_subr.c | log | diff | annotate | |
src/sys/ufs/ffs/ffs_subr.c | log | diff | annotate | |
src/sys/ufs/ffs/ffs_vfsops.c | log | diff | annotate | |
src/sys/uvm/uvm_vnode.c | log | diff | annotate | |
message |
vnode: remove VLOCKSWORK and check locking when vop_islocked != nullop This flag is currently used to mark or unmark a vnode to actively check vnode locking semantic (when compiled with VFSLCKDEBUG). Currently, VLOCKSWORK flag isn't properly set for several FS implementation which have full locking support. This commit enable proper checking for them too (cd9660, udf, fuse, msdosfs, tmpfs). Instead of using a particular flag, it directly check if v_op->vop_islocked is nullop or not to activate or not the vnode locking checks. ok mpi@ |