IABSD.fr/src/sys

Branch :


Log

Author Commit Date CI Message
96f00877 2022-01-04 11:01:24 remove files missed when sgi was removed ok visa@
9bef9860 2022-01-04 06:48:46 remove unused file
4d544115 2022-01-04 06:32:39 Add `ipsec_flows_mtx' mutex(9) to protect `ipsp_ids_*' list and trees. ipsp_ids_lookup() returns `ids' with bumped reference counter. original diff from mvs ok mvs
d405dcaf 2022-01-04 05:50:43 Remove commented out gtp from amd64 GENERIC It has long been irrelevant as pointed out by Crystal Kolipe kolipe.c AT exoticsilicon.com ok mlarkin
91aad4ce 2022-01-03 15:50:16 SOCs -> SoCs
329157c6 2022-01-03 12:01:32 the prism54 domain is long abandoned don't give any traffic to whoever registered it afterwards ok claudio@ stsp@
f790b53d 2022-01-03 09:48:41 ansi
fe0d117c 2022-01-03 03:06:49 Don't use != 0 to check whether a pointer is non-NULL.
244d81b5 2022-01-03 02:10:57 reuse gcu(4) comment from GENERIC fixing spelling
950d978d 2022-01-03 00:44:30 happend -> happened
f59bdad6 2022-01-02 23:39:48 approprate -> appropriate
a89e9613 2022-01-02 23:34:15 Resore -> Restore
36467ff3 2022-01-02 23:31:10 firmare -> firmware
4162249a 2022-01-02 23:29:12 excuted -> executed
1b0e8792 2022-01-02 23:14:26 Prism54 (only full-mac varients) -> Prism54 Full-MAC
df8d9afd 2022-01-02 22:36:03 spelling ok jmc@ reads ok tb@
ed6bb786 2022-01-02 21:01:20 immediatly -> immediately
2fef1223 2022-01-02 20:10:24 Grab kernel lock when required. ok patrick@
f9b35d7e 2022-01-02 20:00:21 Don't use != 0 to check whether a pointer is non-NULL.
4b0a6a04 2022-01-02 17:26:14 Stop writing big-endian checksums into the little-endian GPT header fields gh_csum and gh_part_csum. Constrain kernel to accepting only correct little-endian checksums. Temporarily allow fdisk(8) to read either endian GPTs so that big-endian GPTs can be made correct by a simple 'fdisk -e' && 'w'. Fixes inter-architecture, inter-OS GPT portability and GPT fdisk(8) on big-endian architectures. Broken since initial GPT implementation. Suggestions and ok kettenis@
bb7ff1e6 2022-01-02 06:16:08 priviledged -> privileged
66286566 2022-01-02 05:59:53 priveledged -> privileged
d4881cea 2022-01-02 05:49:50 convension -> convention
38d1ccf7 2022-01-02 05:40:06 Nummber -> Number
7a01c7d3 2022-01-02 05:37:19 numers -> numbers
5e505ec9 2022-01-02 05:32:00 contoller -> controller
b487db00 2022-01-02 05:30:07 phsyaddr -> physaddr
a08b077f 2022-01-02 05:00:28 spelling
a7c97ccf 2022-01-02 03:41:08 addres -> address
48cd9f46 2022-01-02 02:31:08 unhandle -> unhandled
be1b22fc 2022-01-02 02:26:50 slignment -> alignment
b040ff10 2022-01-02 02:13:33 preferense -> preference
7fcada35 2022-01-02 01:59:42 plaform -> platform
1d46a334 2022-01-02 01:01:04 establush -> establish
ec0f1ad6 2022-01-01 23:47:14 Add ENTRY_NB() macro for doing an ASM function entry without setting the binding to global (NB == "no binding"), as clang 13 is now warning about changing the binding from global to weak. This first pass does amd64 and sparc64 and pulls DEFS.h out of the per-arch directory to a common directory; others to follow ok kettenis@
05d7ee9d 2022-01-01 18:54:09 Revert the hack for Apple M1 systems. ok patrick@
b83a19dd 2022-01-01 18:52:36 Rewrite the kernel FPU handling code. The new code saves the FPU state in cpu_switch() instead of at the kernel edge and gets rid of the FPU state tracking in struct cpu_info and struct pcb. This fixes the random crashes seen with SMP kernels on Apple M1. ok patrick@
f2e739fd 2022-01-01 18:52:26 Use correct defines for random seed magic/length. Spotted by Andreas Schnebinger
685fac69 2022-01-01 14:18:39 Remove unused function prototype.
05284820 2022-01-01 11:45:35 Add missing locking to pmap_extract(9) and pmap_unwire(9). ok patrick@, mpi@
2360386f 2022-01-01 07:00:57 copyright++;
d3677684 2021-12-31 23:19:50 spelling ok ratchov@
86dca86f 2021-12-31 11:24:24 Interrups -> Interrupts
a8cbffb4 2021-12-31 11:21:45 Add missing locking to pmap_extract(9) and pmap_unwire(9). ok patrick@, mpi@
12781e74 2021-12-31 10:44:05 avaialble -> available
4039a24b 2021-12-31 10:40:30 specifed -> specified
2e962c76 2021-12-31 09:24:18 Newer Apple firmware on chipsets without a hardware RNG require the host to provide a buffer of random bytes to the device on initialization.
093575dd 2021-12-31 08:15:47 Fix up handling of IFF_ALLMULTI and call uaq_iff() from uaq_init(). from Brad
54a76c43 2021-12-30 15:09:49 Add Xiaomi MiniWif to list of devices supported by mtw(4). Works for me on amd64. ok hastings@
7945134b 2021-12-30 14:25:39 Use a distinct variable while iterating the list of existing devices. ok mvs@ Reported-by: syzbot+e2d1df67f742a5a47938@syzkaller.appspotmail.com Reported-by: syzbot+72298724beda82ec8e7f@syzkaller.appspotmail.com
61c8c0f0 2021-12-30 06:55:11 Prevent a double free by assigning the new keymap and corresponding size after the allocation and initialization is done. Otherwise, a race is possible if malloc ends up sleeping. ok sashan@ Reported-by: syzbot+7f8224e9f1a3487caf25@syzkaller.appspotmail.com
188a0a69 2021-12-30 00:49:41 Prevent concurrent access to incomplete or dying `sc' caused by sleep points in pppacopen() and pppacclose() paths. Use the same "sc_ready" logic we use for 'pppx_if' structure. Reported-by: syzbot+a7ac144b48f7f471f689@syzkaller.appspotmail.com ok anton@ dlg@
ca9c4ded 2021-12-30 00:25:41 combine ifdef blocks from Ted Bullock
18725a33 2021-12-29 20:22:06 Consistently name page argument `pg'. Reduce differences with NetBSD, no functional changes.
fe414f1d 2021-12-29 18:48:45 PHYs that we want to talk to over SGMII need to be switched into SGMII mode for the link to go up. This is relevant on RJ45 SFPs. ok sthen@
7c37e3a5 2021-12-29 18:40:48 Enable ohci(4) and ehci(4) at acpi(4).
0aed1edf 2021-12-29 18:40:19 Allow ohci(4) and ehci(4) to attach to acpi(4). ok kettenis@
f11bc372 2021-12-29 17:52:22 acpi_intr_disestablish() is available on all our ACPI platforms which support interrupts via ACPI, so there's need for an ifdef around it. ok kettenis@
982627fc 2021-12-29 07:15:13 Do not allow send/receive of kcov descriptors as the file descriptor can be kept alive longer than expected causing syzkaller to no longer being able to enable remote coverage. ok visa@ Reported-by: syzbot+ab2016d729cda7b0d003@syzkaller.appspotmail.com
5bac415b 2021-12-28 23:13:20 whitespace tweak, no functional change.
02cdd809 2021-12-28 23:10:58 it doesnt make sense to configure a vport as a span port.
6b7aaaa8 2021-12-28 23:10:30 move away from using the M_PROTO1 flag to prevent loops with vports if a vlan interface is configured on a vport interface, vlan(4) will take the packet away from ether_input before the veb bridge input handler gets to clear M_PROTO1. this leaves the flag on the mbuf as it goes through the l3 stacks. if it goes back out a vport into a veb, the presence of M_PROTO1 means the packet ends up getting dropped, which is unexpected. this diff specialises vport handling by veb even more to avoid the problem the flag was handling. vports get their own bridge input handler that skips veb processing completely because a packet being received on a vport can only occur if a veb has decided to forward it there and has already processed it. when the stack sends a packet out a vport interface, then we do actual veb bridge input handling. bug reported on misc@ and the fix tested by Simon Baker
81a83fa0 2021-12-28 17:50:10 The initial kd_lookup() in kcovopen() is redundant as kcov is a cloning device. Turn it into an assertion instead to better state the expected semantics of D_CLONE. Prompted after a discussion with visa@
abf872b8 2021-12-28 16:29:59 Now that -A prints -- markers as it is supposed to filter them out when doing the consistency check for locore.o; ok millert@
576d8c2b 2021-12-28 13:16:28 Unlock bottom part of the fault handler. Tested by many during the past months, thanks! ok sthen@
8bad4727 2021-12-27 17:56:03 Not only BCM4378, but all PCIe core revisions >= 64 need to be accessed using the new sets of registers.
bb818c30 2021-12-27 17:32:14 Map the chip ids used on Apple M1 Pro/Max and Apple T2 Macs to firmware names.
ea92f6c3 2021-12-27 17:12:34 Support reading OTP information from a few more chips, necessary to learn firmare names on Apple M1 Pro/Max and Apple T2 Macs.
48b3e30f 2021-12-27 15:38:25 Yet another errno correction.
0813c1e9 2021-12-27 14:31:15 Fix off-by-one in blob download, where in the case that the blob is evenly divisible by 1400, the last chunk isn't marked with an end flag. ok tobhe@
64be38ba 2021-12-27 14:28:13 BCM4387 needs the D11 cores to be held in reset by us, the firmware will take care of releasing them, as otherwise initialization would fail some of the time. That chip also contains 3 of these, so make sure we reset all of them. Necessary on Apple M1 Pro/Max.
da5a4af2 2021-12-27 13:54:39 Send TxCap and WiFi calibration blobs to the chip.
92fbeeb7 2021-12-27 12:03:59 Switch module codename retrieval to use the newly proposed device tree bindings.
5ea0cc51 2021-12-27 10:59:20 Handle trailing odd-sized 1024 byte blocks when calculating TCM RAM size.
1c0efb8b 2021-12-27 10:56:55 Bump rxpost and rxcomplete ring size to 1024 for newer chips.
e82b5ebc 2021-12-26 23:41:41 Rework garbage collector for unix(4) sockets. This time unix(4) sockets garbage collector always destroys any socket with positive "fp->f_count == unp->unp_msgcount" equation. This is wrong because unix(4) sockets within SCM_RIGHTS message but closed on sender side also have this equation positive. Such sockets are not in the loop, and if garbage collector kill them before they are received, we get kernel panic. FreeBSD already has garbage collector reworked to fix this issue [1]. The logic is pretty simple so import it to our garbage collector. 1. https://reviews.freebsd.org/D23142 ok bluhm@
8db7132f 2021-12-26 20:50:17 Add information about TCM rambase and how to check the SR capability for a few more chips.
5a50f165 2021-12-26 14:04:29 DIOCHANGERRULE ioctl must set pointer to ruleset in rule it inserts. Reported-by: syzbot+7718c5f69c595f76b298@syzkaller.appspotmail.com OK bluhm@, OK jmatthew@
a5d79199 2021-12-26 13:55:36 Add address locators for the ACPI "bus" and use these to fix the order of the com(4) devices to match the traditional order one the ISA bus. ok patrick@, anton@
840840b0 2021-12-26 01:00:32 make 'set skip on ...' in pf.conf dynamic This is an old issue in pf(4): whenever new interface appears in IP stack, we must reload pf.conf to apply 'set skip on ...' to newly plumbed network interfaces. Time has come to fix it. The idea is to also create pfi_kif for interfaces, which are referred by 'set skip on ...'. Such pfi_kif instances are created/destroyed by pfi_set_flags()/pfi_clear_flags(). claudio@ dragged my attention to this in Gouveia. Also his feedback helped me to put change into shape. OK claudio@
98e6f338 2021-12-25 13:35:17 For a long time ip_ours() and ip6_ours() are calling ip_deliver() without kernel lock. Unlock the two callers in ip6_input_if() that have been forgotten. OK mvs@ kn@
ce1591e9 2021-12-25 11:04:58 kqueue: Invalidate revoked vnodes' knotes on the fly When a tty device is revoked, the associated knotes should be invalidated. Otherwise the user processes can keep on receiving events from the device. It appears tricky to do the invalidation as part of revocation in a way that does not allow unwanted event registration or clutter the tty code. For now, make the knotes invalid lazily before delivery. OK mpi@
66c5d4ea 2021-12-25 01:25:51 Sync DF_1_* flag definitions with llvm 13, including support in readelf -d for displaying them. (lld 13 sets DF_1_PIE on most our binaries) ok jsg@
acaa8857 2021-12-24 06:53:18 Support more mtw(4) devices. ASUS USB-N10 v2, D-Link DWA-127 rev B1, Edimax EW-7711UAn v2, various Ralink/MediaTek ids. ok stsp@
57eca428 2021-12-24 06:50:16 Make poll/select version of filt_solisten() more similar to soo_poll(). OK mpi@
9d2191b7 2021-12-24 06:19:24 regen
2f4c4673 2021-12-24 06:18:11 Add some more mtw(4) devices. ASUS USB-N10 v2, D-Link DWA-127 rev B1, Edimax EW-7711UAn v2, various Ralink/MediaTek ids. ok stsp@
3e05440b 2021-12-24 00:01:39 Add apliic(4), a driver for the I2C controller found on various Apple SoCs. ok kettenis@
c068f513 2021-12-23 22:35:11 Remove unused variables and assignments in ah and esp output. found by clang 13; OK tobhe@
64dd1569 2021-12-23 20:48:24 Fix endless loop in the interrupt handler. When iterating over each GPIO base register we must not replace the iterator variable with the index of the pin inside the register. ok kettenis@
779f7ba5 2021-12-23 18:50:59 sync
1d60349d 2021-12-23 18:50:31 Roll the syscalls that have an off_t argument to remove the explicit padding. Switch libc and ld.so to the generic stubs for these calls. WARNING: reboot to updated kernel before installing libc or ld.so! Time for a story... When gcc (back in 1.x days) first implemented long long, it didn't (always) pass 64bit arguments in 'aligned' registers/stack slots, with the result that argument offsets didn't match structure offsets. This affected the nine system calls that pass off_t arguments: ftruncate lseek mmap mquery pread preadv pwrite pwritev truncate To avoid having to do custom ASM wrappers for those, BSD put an explicit pad argument in so that the off_t argument would always start on a even slot and thus be naturally aligned. Thus those odd wrappers in lib/libc/sys/ that use __syscall() and pass an extra '0' argument. The ABIs for different CPUs eventually settled how things should be passed on each and gcc 2.x followed them. The only arch now where it helps is landisk, which needs to skip the last argument register if it would be the first half of a 64bit argument. So: add new syscalls without the pad argument and on landisk do that skipping directly in the syscall handler in the kernel. Keep compat support for the existing syscalls long enough for the transition. ok deraadt@
5ee194bc 2021-12-23 12:21:48 IPsec is not MP safe yet. To allow forwarding in parallel without dirty hacks, it is better to protect IPsec input and output with kernel lock. Not much is lost as crypto needs the kernel lock anyway. From here we can refine the lock later. Note that there is no kernel lock in the SPD lockup path. Goal is to keep that lock free to allow fast forwarding with non IPsec traffic. tested by Hrvoje Popovski; OK tobhe@
ad8c1ddc 2021-12-23 12:14:15 Get rid of unused next battery level argument.
3b2c6ff4 2021-12-23 10:17:01 Use TAILQ_FOREACH to traverse the disk list in sysctl_diskinit(). OK anton@
41a45098 2021-12-23 10:09:16 Disk lock was held when returning to userland. Add a missing unlock in vnd ioctl error path. Reported-by: syzbot+6dde3fda33074a256318@syzkaller.appspotmail.com OK jsg@ anton@
bbae10a0 2021-12-23 10:04:14 Template for option WITNESS is in the architecture GENERIC.MP file if it is supported. Remove it from the global GENERIC config. OK visa@ claudio@
a76718dd 2021-12-23 02:12:52 make array bounds in unix2dosfn() prototype match function missed when unix2dosfn() was changed with msdosfs_conv.c rev 1.15 in 2012
81e5db3b 2021-12-23 01:39:44 give et_setmulti() more chance of working ok claudio@
278923c0 2021-12-22 22:20:13 While malloc sleeps, the disk list could change during sysctl. Then allocated memory could be too short for the list of disks. Retry allocating enough space until it did not change. The disk list and duid memory are protected by kernel lock. Use asserts to mark this explicitly. Reported-by: syzbot+807423f6868bbfb836bc@syzkaller.appspotmail.com OK anton@ mpi@