Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 3830ce0b | 2022-01-16 11:34:05 | modernise pcn_start with m_defrag and the "new" ifq pattern. aside from getting rid of a use of the ifq_deq_begin/commit/rollback stuff, it simplifies the code a lot. im also sick of having the diff in my tree. | ||
| c8b9beef | 2022-01-16 06:27:14 | activate/notify waiting kq kevents from bpf_wakeup directly. this builds on the mpsafe kq/kevent work visa has been doing. normally kevents are notified by calling selwakeup, but selwakeup needs the KERNEL_LOCK. because bpf runs from all sorts of contexts that may or may not have the kernel lock, the call to selwakeup is deferred to the systq which already has the kernel lock. while this avoids spinning in bpf for the kernel lock, it still adds latency between when the buffer is ready for a program and when that program gets notified about it. now that bpf kevents are mpsafe and bpf_wakeup is already holding the necessary locks, we can avoid that latency. bpf_wakeup now checks if there are waiting kevents and notifies them immediately. if there are no other things to wake up, bpf_wakeup avoids the task_add (and associated reference counting) to defer the selwakeup call. selwakeup can still try to notify waiting kevents, so this uses the hint passed to knote() to differentiate between the notification from bpf_wakeup and selwakeup and returns early from the latter. ok visa@ | ||
| 585c4a5a | 2022-01-15 11:04:16 | Don't reset the controller on each transaction. Remove unecessary polling loop and adjust another polling loop. This makes accessing the cs42l83 audio codec work. Probably removing the reset is enough to fix this but the other changes bring us in line with the Linux driver which had some decent RE done to it recently. ok patrick@ | ||
| c7f72189 | 2022-01-15 04:10:01 | bring back spelling fix from rev 1.138 lost in rev 1.140 pointed out by Brad | ||
| 36ce76ee | 2022-01-14 15:00:16 | We don't have 64-bit atomics on powerpc, but we don't really need them. So don't provide atomic64_cmpxchg() on powerpc and on other architectures make its implementation similar to atomic64_xchg(). This makes the tree build again on macppc. suggested by & ok jsg@ | ||
| 5ca02815 | 2022-01-14 06:52:58 | update drm to linux 5.15.14 new hardware support includes Intel ehl/Elkhart Lake (embedded) jsl/Jasper Lake (atom) rkl/Rocket Lake (desktop) AMD van gogh APU (gfx1033) yellow carp / rembrandt APU (gfx1035?) Ryzen 6000 APU navy flounder / navi 22 (gfx1031) RX 6700, RX 6700 XT, RX 6700M, RX 6800M, RX 6850M XT dimgrey cavefish / navi 23 (gfx1032) Pro W6600, Pro W6600M, RX 6600, RX 6600 XT, RX 6600M, RX 6600S, RX 6650M, RX 6650M XT, RX 6700S, RX 6800S beige goby / navi 24 (gfx1034) RX 6500 XT, RX 6400, RX 6500M, RX 6300M Thanks to the OpenBSD Foundation for sponsoring this work niklas@ for helping with ttm and amdgpu and patrick@ for adapting rockchip drm. | ||
| 422efc16 | 2022-01-13 14:15:27 | Make bpf event filter MP-safe Use bd_mtx to serialize bpf knote handling. This allows calling the event filter without the kernel lock. OK mpi@ | ||
| 1c4e6f78 | 2022-01-13 14:12:02 | Return an error if bpfilter_lookup() fails in bpfkqfilter() The lookup should not fail because the kernel lock should prevent simultaneous detaching on the vnode layer. However, most other device kqfilter routines check the lookup's outcome anyway, which is maybe a bit more forgiving. OK mpi@ | ||
| a5505455 | 2022-01-13 08:59:10 | Implement powerdown. This involves writing a magic bit somewhere in the address space of the SPMI PMU to prevent the machine from immediately starting up again. The implementaton makes aplpmu(4) provide powerdownfn(), which sets the magic bit and then chains into cpuresetfn(). It also makes aplsmc(4) provide cpuresetfn() to reset the machine via the SMC. Resetting via the watchdog works as well (and will powerdown the machine if the magic bit is set) but letting the SMC handle things might do some other required steps. ok patrick@ | ||
| 78a2c979 | 2022-01-12 20:17:08 | fixup previous refactoring OK stsp@ (without assuming any responsibility for NFS) | ||
| 5e6f4d12 | 2022-01-12 19:55:12 | Extend the verbose logging. | ||
| 240c1448 | 2022-01-12 15:05:38 | toggle hw.power based on the ACDI SMR key if available ok kettenis@ | ||
| 7171b1ef | 2022-01-12 13:08:06 | add three new SMC sensors to get information about the power supply status and remaining time to battery full and empty and feed these values to apm(4) ok kettenis@ | ||
| a761f9ad | 2022-01-12 11:42:17 | Fix array index. Spotted by robert@ | ||
| 4582e297 | 2022-01-12 11:18:30 | Make acpi_getpropint() return uint64_t, as ACPI integers are in fact that wide and some _DSD properties depend on it. ok kettenis@ | ||
| 7c94704c | 2022-01-12 08:29:27 | Remove ieee80211_find_node_for_beacon(). The original purpose of ieee80211_find_node_for_beacon() was to avoid storing duplicate nodes with the same source MAC address in a hash table. Later on, our node table data structure was changed from a hash table to an RB tree. The RB tree can only store a single node per MAC address. However, find_node_for_beacon() was kept regardless, now documented to serve a different purpose. Its new purpose is to tell apart different nodes which happen to use the same MAC address and hence cannot both be stored in the RB tree. The idea is to filter such duplicate nodes out during a scan. But colliding nodes are told apart by RSSI and channel, and either may change over time. So this does not really prevent duplicate MAC addresses from causing issues. The code which decides which node is "better" can erroneously match an AP against itself, in case the AP uses a hidden SSID. This caused workarounds for hidden SSID to pile up over time. Just a bit further down, the code looks up the same node again and performs all of the intended node state updates. Simply skipping the ieee80211_find_node_for_beacon() check makes such state updates work. ok tobhe@ | ||
| ef6635ad | 2022-01-12 01:19:24 | maxumum -> maximum | ||
| 3efcb5c6 | 2022-01-12 00:58:48 | Remove -target riscv64-unknown-openbsd from CMACHFLAGS. ok kettenis@ deraadt@ | ||
| 2d7f2af4 | 2022-01-11 23:59:55 | spelling | ||
| e471ee1c | 2022-01-11 23:10:11 | spelling | ||
| 548b81c5 | 2022-01-11 21:41:15 | Jasper Lake eMMC needs the same 0V quirk as Apollo Lake and Gemini Lake fixes accessing eMMC on Acer Swift 1 SF114-34 problem reported and fix tested by Sven Wolf | ||
| b845e54d | 2022-01-11 20:34:22 | Make sure 'out' is initialized to 0 before adding flags. ok dv@ mlarkin@ | ||
| b1dcd106 | 2022-01-11 16:54:58 | Bump KVA space up to 512MB (and a bit). ok phessler@, deraadt@, miod@ | ||
| c44af5cb | 2022-01-11 11:51:14 | add Synopsys Degisnware UART (dw-apb-uart) support To fix Allwinner H6's UART problem, need to add dw-apb-uart special code. ok kettenis@ | ||
| a76e37e6 | 2022-01-11 10:34:13 | Remove KASSERT(0) and default switch case. No other sc_ncm_format switch has a default case and umb_ncm_setup_format() ensures that only 16 and 32bit formats are accepted. Fixes build error without DIAGNOSTIC set. Found by and OK robert@ | ||
| 33d99505 | 2022-01-11 10:23:17 | fix RSB_DMCR_DEVICE_MODE_DATA value to enter RSB mode correctly ok kettenis@ patrick@ | ||
| d771b0cb | 2022-01-11 09:21:34 | spelling | ||
| 6c51f7d8 | 2022-01-11 09:00:17 | move allocations in DIOCSADDRULE and DIOCHANGERULE outside of locks. this diff lets pf_rule_copyin() to be called outside of PF_LOCK()/NET_LOCK(). OK bluhm@ | ||
| 6e6e940f | 2022-01-11 08:10:03 | regen | ||
| af35a2fc | 2022-01-11 08:09:14 | Unlock getpeername(2). For inet and unix sockets it follows the code which was unlocked with accept(2) unlocking. For key management and route domain sockets it just copies the read-only data. ok bluhm@ | ||
| 62aa2271 | 2022-01-11 07:31:50 | move kern_unveil.c to use DPRINTF() Changes the way printf debug is done in kern_unveil.c Currently, each printf() is enclosed in #ifdef DEBUG_UNVEIL. It moves to using DPRINTF(), and reduces the number of #ifdef inside the file. Also changes some strings to use __func__ instead of using the function name verbatim. ok visa@ | ||
| f76f04e2 | 2022-01-11 06:35:03 | Remove dead store to f and avoid use of unvalidated fd. Found by LLVM scan-build. OK millert@ deraadt@ | ||
| 1de6044a | 2022-01-11 06:23:05 | Add temporary verbose logging when remote coverage fails to attach. In the hopes of tracking down a rare bug seen on syzkaller. | ||
| c1a72b65 | 2022-01-11 06:00:41 | In revision 1.43 of kcov.c, the redundant conditional of checking for an exising kcov descriptor with the given device minor was removed since kcov is a cloning device; i.e. the device minor should always be unique. However, there's one edge case to still consider in which one thread have tracing enabled while another thread closes the same kcov descriptor. The kcov descriptor is kept alive until thread with tracing enabled exits to prevent usage after free. This does however cause the spec file layer above to flag the device minor as unused. Any subsequent open of /dev/kcov would trip on the assertion in kcovopen() until the thread with tracing enabled exits. Therefore unconditionally remove the kcov descriptor from the global list of active descriptors which is fine since the same kcov descriptor will later be freed in kcov_exit(). I have never seen this in the wild but realized while hunting another bug. | ||
| 0d297f47 | 2022-01-11 03:13:58 | spelling ok jmc@ | ||
| d6969a1f | 2022-01-11 00:37:23 | match on Intel Jasper Lake cavs/hda is pci class multimedia subclass audio so not automatically matched by azalia but confirmed to work after matched tested by Sven Wolf on Acer Swift 1 SF114-34 with Pentium Silver N6000 | ||
| caa2e0aa | 2022-01-10 23:41:12 | regen | ||
| 4707620c | 2022-01-10 23:40:37 | add Intel Jasper Lake devices from Intel Pentium Silver and Intel Celeron Processors Datasheet 633935 | ||
| 91654044 | 2022-01-10 18:23:39 | Return ENOMEM on malloc errors to prevent use of uninitialized stack memory. Cleanup error handling while here. ok stsp@ visa@ | ||
| 45294497 | 2022-01-10 16:21:19 | Initialize variables that are touched in the error path. Reminded by LLVM scan-build. | ||
| 46428121 | 2022-01-10 14:07:59 | Use NULL instead of 0 for pointers. OK bluhm@ | ||
| 305314f4 | 2022-01-10 09:20:27 | In pmap_enter(9), only perform a TLB flush if we actually changed a PTE. To make this intent more obvious, group the call to the TLB flush function togther with the call that inserts/updates/removes a PTE. Remove an incorrect comment related to this. ok patrick@ | ||
| d80548ac | 2022-01-10 09:07:28 | Add aplsmc(4), a driver for the SMC found on Apple M1 SoCs. The SMC implements a lot of functionality. For now the driver only implements a bunch of sensors. This is a small subset of the sensors that are made available by the SMC as we don't know what measurments are provided for most sensors. ok patrick@ | ||
| 6a44dfb4 | 2022-01-10 04:47:53 | provide access to the hardware counters (MIB counters in the doc) via kstat | ||
| f86fe765 | 2022-01-10 04:11:13 | handle the status ring entries as 64bit words instead of a struct. the status ring entries are 8 bytes/64bit, and depending on the type of entry it has fields all over the place. this loads the descriptor with a single 64bit read, and then shifts and masks the bits out of it depending on the type of descriptor. this looks cleaner for the tx completions in particular. | ||
| 4c58e589 | 2022-01-09 23:28:19 | Simplify igc_rxrinfo() to improve consistency and appease Coverity. CID 1510483 ok kevlo@ | ||
| da03a6df | 2022-01-09 13:27:47 | Indicate that mvpxa(4) depends on sdhc code. OK deraadt@ phessler@ | ||
| bac17e2c | 2022-01-09 13:26:08 | Add attribute for indicating sdhc dependency. OK deraadt@ phessler@ | ||
| 2abaea44 | 2022-01-09 10:28:07 | Add an UNVEIL_USERSET flag which is set when a unveil node is added via unveil(2). It is not set for nodes that are added as a result of a file being added via unveil(2). Use this flag to test if backtracking should be done or not. Also introduce UNVEIL_MASK which checks if any user flags are set and is used to properly return EACCES vs ENOENT. This fixes a problem where unveil("/", "r") & unveil("/usr/bin/id", "rx") cause an error when read accessing "/usr/bin". It also makes sure that unveil(path, "") will return ENOENT for any access of anything under path. Reported by and OK semarie@ | ||
| 4b1a56af | 2022-01-09 05:42:36 | spelling feedback and ok tb@ jmc@ ok ratchov@ | ||
| 64eea40c | 2022-01-08 22:54:49 | __LDPGSZ hasn't been used here since rev 1.23 (2013). Delete comment referring to it ok jsg@ | ||
| 238a9a18 | 2022-01-08 15:30:46 | Remove apldwusb(4). This driver is now unused. | ||
| c9b8d2f6 | 2022-01-08 15:23:42 | Oops, missed a compatible string in the previous commit. | ||
| da1599e9 | 2022-01-08 05:40:19 | Remove verbose PCI and USB device info from BOOT BOOT kernels do not print kernel messages, and currently there is no way to change this at runtime. Remove the verbose device information to save some space. | ||
| 6b5c68f6 | 2022-01-08 05:34:54 | Adjust debug printfs after pcitag_t type change. | ||
| 9a56c644 | 2022-01-08 00:20:10 | Apply mpsafe changes from dwge(4) to dwxe(4): Rework the tx path to use the consumer and producer positions to work out the number of slots available, and to put packets on the ring until fewer than DWXE_NTXSEGS slots are left, making dwxe_start() and dwxe_txeof() work independently. While here, only write to DWXE_TX_CTL1 once per call to dwxe_start() rather than once per packet. Adjust the rx interrupt path to check the number of slots in use and return slots once per interrupt. Add interrupt and ifq barriers before taking the interface down. With all of this done, we can mark dwxe(4) mpsafe. tested on arm64 (a64 sopine) by mlarkin@ and armv7 (h2+) by me ok dlg@ | ||
| 86f87525 | 2022-01-07 19:03:57 | Add code to initialize the PCIe host bridge hardware. We currently rely on U-Boot to initialize the hardware for us, but it is better if we can cope with this ourselves. ok patrick@ | ||
| 232f2bf6 | 2022-01-07 16:39:18 | SIOCSIFXFLAGS drops into the SIOCSIFFLAGS to perform auto-up of the interface. If this operation fails (probably due to missing firmware), we must undo changes to the SIOCSIFXFLAGS xflags. ok stsp. | ||
| 304da644 | 2022-01-07 13:56:54 | .glue_7 is used for arm code calling thumb code, and .glue_7t is used for thumb code calling arm code, no need to put these input sections at the text output section. ok jsg@ kettenis@ | ||
| 2875187d | 2022-01-07 10:48:59 | Add missing dependency. | ||
| d4f6d54d | 2022-01-07 09:08:15 | fix aac build after -Wno-uninitialized was removed | ||
| 8cae4923 | 2022-01-07 02:47:06 | hibernate_clear_signature() is only used by hibernate_resume(), so pass in the already read hibernate_info instead of reading it again. ok deraadt@ | ||
| 3fed8fd5 | 2022-01-07 02:26:53 | Extract the slice from the zeroth swap device instead of assuming it's the 'b' slice and (sanity) check against the partition count. Also, make the "is union hibernate_info too large?" a compile time check. ok deraadt@ | ||
| 387a8b5b | 2022-01-06 15:41:53 | Use a 64-bit integer for pcitag_t and define PCITAG_NODE and PCITAG_OFFSET macros to make kernel build again, same diff as armv7. ok kettenis visa | ||
| 919fac9d | 2022-01-06 08:46:50 | Use a 64-bit integer for pcitag_t and define PCITAG_NODE and PCITAG_OFFSET macros to make armv7 build again. ok deraadt@ | ||
| ede0c0b9 | 2022-01-06 06:19:41 | regen | ||
| 762450b1 | 2022-01-06 06:19:11 | ati 0x15e7 confirmed to be barcelo, 2022 ryzen 5000 apus uses the same green sardine firmware as cezanne | ||
| 2bb0cdd1 | 2022-01-06 01:40:19 | drm/amdgpu: add support for IP discovery gc_info table v2 From Alex Deucher b8553330a07749e488d143b5704adf1042fd7c0a in linux 5.10.y/5.10.90 5e713c6afa34c0fd6f113bf7bb1c2847172d7b20 in mainline linux | ||
| ec2bd244 | 2022-01-06 01:37:46 | drm/amdgpu: When the VCN(1.0) block is suspended, powergating is explicitly enabled From chen gong 28863ffe21ff711d5109e3c208676258bdec3a1f in linux 5.10.y/5.10.90 b7865173cf6ae59942e2c69326a06e1c1df5ecf6 in mainline linux | ||
| 64094178 | 2022-01-06 01:14:15 | unstub amdgpu_gem_force_release() | ||
| 3852484d | 2022-01-05 18:54:20 | Use "bus-range" property to initialize the bus number configuration of the bridge when present on FDT platforms. Needed on platforms like the Apple M1 to make sure the PCI bus numbers match the IOMMU setup required by the device tree. ok patrick@ | ||
| 1ae6df2b | 2022-01-05 17:53:44 | Remove kbind(2)'s restriction that a target buffer not cross page boundaries: hppa has 8-byte PLT entries that sometimes do that. ok kettenis@ | ||
| 4b907771 | 2022-01-05 17:06:20 | Remove unused function arguments in iwm/iwx interrupt handlers. pointed out by + ok millert@ | ||
| 22060bbf | 2022-01-05 16:46:11 | Compensate for i386 pcitag_t union ok jsg kettenis | ||
| 60a617df | 2022-01-05 16:33:42 | In iwx(4), fix wrong pointer assignment in iwx_bar_frame_release(). This bug caused the driver to read block ack request information sent by firmware from the wrong offset. The driver flushes buffered frames and moves its Rx block ack window based on this information. Possible consequences of this bug are packet loss or even stalled traffic if the Rx BA window gets out of sync between driver and firmware. Though this effect might get cancelled out when the driver re-syncs the BA window in its regular Rx code path. Spotted by Christian Ehrhardt. | ||
| 38f7444c | 2022-01-05 05:19:22 | add NSH and NHRP ethertypes, mostly for tcpdump stuff. ok deraadt@ | ||
| 83aa0ba6 | 2022-01-05 05:18:24 | rename ETHERTYPE_PAE to ETHERTYPE_EAPOL. everyone else seems to use ETHERTYPE_EAPOL, and as a bonus it also appears to be more correct. ok deraadt@ stsp@ | ||
| 331b91e4 | 2022-01-05 03:53:26 | use the index provided by the txcompletion descriptor in txeof. this replaces the use of a register in txeof to figure out how much of the ring has been completed by the hardware. that register isn't reset when an interface is taken down and brought up again, which messes with the calculations of free slots on the ring, which in turn messes up the ability to transmit packets. this means the watchdog can't know where the hardware is up to anymore, so just restartthe chip if the watchdog fires. it seems to be important to start the tx ring in msk_init on the 0th ring entry that we use to reset the high address value to 0. we still fill the 0th descriptor, but we let the first msk_start call post it for us when a packet goes on the ring. a slight tweak and ok jmatthew@ | ||
| 3276931a | 2022-01-05 03:32:43 | Add mpfclock(4), a driver for the PolarFire SoC MSS clock controller. OK kettenis@ | ||
| bcf979e4 | 2022-01-04 20:55:48 | Future-proof by adding some proposed compatible strings to match on. | ||
| 6543b26c | 2022-01-04 20:43:44 | struct pci_matchid is useful an upcoming userland program that wants to includes pcivar.h because it inspects vid/pid tables | ||
| f56b290d | 2022-01-04 20:41:42 | hide more things behind _KERNEL, in case userland manages to include this file | ||
| 21a11680 | 2022-01-04 18:13:31 | Use the device we read the hibernate signature from for the entire resume. This fixes setups where a umass device no longer attaching at resume results in a softraid device being renumbered so the hibernate-time device is no longer correct ok mlarkin@ jsing@ | ||
| fae5bdc0 | 2022-01-04 16:15:28 | Restrict the pci(4) ioctl interface to devices detected by the kernel. This fixes issues on the M1 Macs where the PCI probe done by Xorg breaks the WiFi chip. ok patrick@ | ||
| 0df2aed8 | 2022-01-04 15:55:28 | fix length boundary checks for incoming packets in iwm/iwx The minimum length and the maximum length required were both too low, due to an error in accounting for the 4-byte packet length+flags header. Patch by Christian Ehrhardt | ||
| a048bec5 | 2022-01-04 15:53:57 | fix Rx Block Ack session validity checks in iwm(4) and iwx(4) I ported a NULL pointer check from iwlwifi rxmq.c which cannot happen in our version of this code. Instead we need to check the BA session ID to determine whether a BA session is valid. Patch by Christian Ehrhardt. | ||
| 8a93f6f8 | 2022-01-04 13:40:58 | acpi_getprop() needs to actually make sure that we're looking at the correct property. While there adjust acpi_getpropint() as well to increase similarity with acpi_getprop(). ok kettenis@ | ||
| 7797d4a0 | 2022-01-04 11:31:42 | remove the last part of driver for aic-6250 scsi on aviion | ||
| 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 |