Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 1d970828 | 2024-01-24 19:23:38 | clockintr: switch from callee- to caller-allocated clockintr structs Currently, clockintr_establish() calls malloc(9) to allocate a clockintr struct on behalf of the caller. mpi@ says this behavior is incompatible with dt(4). In particular, calling malloc(9) during the initialization of a PCB outside of dt_pcb_alloc() is (a) awkward and (b) may conflict with future changes/optimizations to PCB allocation. To side-step the problem, this patch changes the clockintr subsystem to use caller-allocated clockintr structs instead of callee-allocated structs. clockintr_establish() is named after softintr_establish(), which uses malloc(9) internally to create softintr objects. The clockintr subsystem is no longer using malloc(9), so the "establish" naming is no longer apt. To avoid confusion, this patch also renames "clockintr_establish" to "clockintr_bind". Requested by mpi@. Tweaked by mpi@. Thread: https://marc.info/?l=openbsd-tech&m=170597126103504&w=2 ok claudio@ mlarkin@ mpi@ | ||
| 13f2f00f | 2024-01-24 12:25:50 | Remove atomic_store_64(), misleading and now unused The function was actually performing an OR instead of a store. ok kettenis@ | ||
| 2f86a7c6 | 2024-01-24 07:36:52 | Add iwm(4) to arm64 GENERIC, as follow up of 1.280 ok mlarkin@ | ||
| 2d1127bb | 2024-01-24 00:17:01 | tag packets going out a sec interface to prevent route/encap loops. sec(4) was already looking for this mbuf tag so it could drop packets that had already been sent out on the same interface, but i forgot the code that adds the tag. this was reported by jason tubnor who experienced spins/lockups when using sec and a physical interface was disconnected. rather than being a locking problem like we initially assumed, it turned out that unplugging a physical interface caused a route for ipsec encapsulated traffic to go out over sec(4), causing the packet to loop in the stack. the fix was also tested and verified by jason. sorry for taking so long to look at it. | ||
| 84aa31c6 | 2024-01-23 19:51:10 | T-Head implemented a page attribute extension that violates the RISC-V specification. The default attributes result in memory being uncached which makes the system perform like a slug. So implement a workaround that is designed to make implementation of the Svpbmt extension that is part of the latest published RISC-V specification. This gets us a bit further booting OpenBSD on an Allwinner D1 SoC. ok mlarkin@, jca@ | ||
| aa95fb55 | 2024-01-23 17:57:21 | Introduce pipex_iterator(), the special thing to perform `pipex_session_list' foreach walkthrough with `pipex_list_mtx' mutex(9) relocking. It inserts special item after acquired `session' and keeps it linked until `session' release. Only owner can unlink it's own item, so the LIST_NEXT(session) is always valid even the `session' was unlinked. The iterator skips special items at the `session' acquisition time, as all other foreach loops where `pipex_list_mtx' mutex(9) is not relocked. ok yasuoka | ||
| 65b7de8d | 2024-01-23 16:57:52 | Remove `pipex_rd_head6' and `ps6_rn[2]'. They are not used. ok yasuoka | ||
| 44a5d259 | 2024-01-23 15:56:01 | drm: apple: Fix/remove log messages From Janne Grunau 37a0cddeede0a715d137838a88c61e0c53c8d6cd in jannau's bits/200-dcp | ||
| 48fd60f3 | 2024-01-23 15:48:28 | drm: apple: backlight: force backlight update after resume From Mark Kettenis fcad9f366ba0c934f877662ee8199051b636d2e1 in jannau's bits/200-dcp | ||
| f0633749 | 2024-01-23 14:46:51 | Sync with userland | ||
| 172aa44c | 2024-01-23 14:30:13 | drm/apple: spelling fixes From Jonathan Gray cee29f9bcbf9574ce1ae19e586728a9d85c3db05 in jannau's bits/200-dcp | ||
| 9bf77b47 | 2024-01-23 14:27:26 | drm: apple: use strscpy() in place of strlcpy() From Arnd Bergmann 2501a971dbec631932aba9aba55b7b61b7c3c390 in jannau's bits/200-dcp | ||
| a5620f7a | 2024-01-23 14:25:07 | drm: apple: mark local functions static From Arnd Bergmann c23a90c49c665bfb61f0200e966cef042063e364 in jannau's bits/200-dcp | ||
| 8f15cb74 | 2024-01-23 14:18:11 | Pick up some fixup commits that add #include <linux/bitfield.h> from https://github.com/jannau/linux/tree/bits/200-dcp | ||
| c7248f90 | 2024-01-23 13:02:15 | Delete unused labels which cause error in making kernel. ok miod@ | ||
| ce1c5f87 | 2024-01-23 11:51:53 | explicitly disable Energy-Efficient Ethernet (EEE) on Marvell E151x The Energy Detect feature is part of EEE and it defaults to off on both hardware and software reset to enter "normal 10/100/1000 Mbps operation." This change makes it explicit, as for the other PHYs in that family. Note that, if EEE was actually enabled, an errata applies which requires a certain sequence of magic register writes. ok stsp@ kettenis@ | ||
| cbab2262 | 2024-01-23 08:48:12 | Change default duplex setting and simplify the setup of srrctl.BSIZEPKT. During media selection through ifconfig one might not specify the duplex setting through the mediaopt flag. In that case the igc(4) would default to full-duplex. The problem with this approach is that em(4) defaults to half-duplex. Because of that if one connects both NICs and sets media to e.g. 100baseTX on both of them no carrier will be found. Fix that by matching igc(4) behaviour with what em(4) does. Adapted from FreeBSD commits 3b8d04f845b416d29a258658b8a48d1afb4a2e81 and 0eb8cd1de26849cbaefaf3bc59aa9612fa0dfa52 respectively. ok mbuhl@ | ||
| c96eac12 | 2024-01-23 04:47:13 | move more defines out of kernel.h | ||
| 943ab0fa | 2024-01-23 03:31:45 | move CONCATENATE() to args.h to match linux | ||
| 5dd0baa8 | 2024-01-22 18:54:01 | Add apldcp(4) and apldrm(4). Together these drivers provide KMS functionality on Apple Silicom machines. At this point the drivers provide significant power savings when the display is blanked (and during suspend) and backlight control. Some support for HDMI output is also included, but for now only when HDMI is used as the primary output. In the future this should also provide displayport support. This is a port of the the Asahi Linux drivers which can be found at https://github.com/AsahiLinux/linux/tree/asahi-wip Note that this branch gets rebased from time to time. These drivers do *not* bring us GPU accelerated graphics. But there are reports that things run "smoother". There are some known bugs with backlight control: the backlight level may not be restored properly after the display has been blanked, and changing the backlight quickly un succession may break the backlight control. ok jsg@ | ||
| 45851319 | 2024-01-22 04:38:32 | make a note about when to remove overly verbose logging for pinsyscall violations | ||
| c1e59e83 | 2024-01-22 03:20:08 | drm/amd/display: Pass pwrseq inst for backlight and ABM From Lewis Huang 71be0f674070a5ad54a1c4fb112bb2923b28ea50 in linux-6.6.y/6.6.13 b17ef04bf3a4346d66404454d6a646343ddc9749 in mainline linux | ||
| 65dd6bd2 | 2024-01-22 03:16:43 | drm/crtc: fix uninitialized variable use From Jani Nikula 7e881af7fb3c2ddc0c29b249250606fbe004f353 in linux-6.6.y/6.6.13 6e455f5dcdd15fa28edf0ffb5b44d3508512dccf in mainline linux | ||
| 2d4ce006 | 2024-01-22 03:15:16 | drm/amd/display: get dprefclk ss info from integration info table From Charlene Liu a5ba95c226b5c25cd5c8b9df29a1953c85a1531e in linux-6.6.y/6.6.13 51e7b64690776a9981355428b537af9048308a95 in mainline linux | ||
| ade20291 | 2024-01-22 03:12:06 | drm/amd/display: Add case for dcn35 to support usb4 dmub hpd event From Wayne Lin 18562b1691e2280858f291d00678468cf70bda5a in linux-6.6.y/6.6.13 989824589f793120833bef13aa4e21f5a836a707 in mainline linux | ||
| d29bf3de | 2024-01-22 03:09:50 | drm/amdkfd: svm range always mapped flag not working on APU From Philip Yang bd443910debf71a1c0140c148ffb4f048fff3c2b in linux-6.6.y/6.6.13 ebab8c3eb6a6515dc14cd93fc29dd287709da6d3 in mainline linux | ||
| 1cd3f143 | 2024-01-22 03:07:51 | drm/crtc: Fix uninit-value bug in drm_mode_setcrtc From Ziqi Zhao ff89e507b231a3afbddc2972a850947b73247a3b in linux-6.6.y/6.6.13 3823119b9c2b5f9e9b760336f75bc989b805cde6 in mainline linux | ||
| ee587e46 | 2024-01-22 03:05:55 | drm/amdgpu: Add NULL checks for function pointers From Lijo Lazar fb26de4a86e19711880e7e845505505f01d2eb82 in linux-6.6.y/6.6.13 81577503efb49f4ad76af22f9941d72900ef4aab in mainline linux | ||
| 41450e38 | 2024-01-22 03:03:39 | drm/amd/display: Add monitor patch for specific eDP From Ivan Lipski 7fc3d8ea1a675eae9ee57dca894a9c4fb0e0d8b5 in linux-6.6.y/6.6.13 3d71a8726e05a35beb9de394e86ce896d69e563f in mainline linux | ||
| b86be1f1 | 2024-01-22 03:01:25 | Revert "drm/prime: Unexport helpers for fd/handle conversion" From Felix Kuehling 379af079c42738fa3f33de5912931a7865887c62 in linux-6.6.y/6.6.13 0514f63cfff38a0dcb7ba9c5f245827edc0c5107 in mainline linux | ||
| 37a8a5b2 | 2024-01-22 02:57:26 | drm/amdgpu: Use another offset for GC 9.4.3 remap From Lijo Lazar 941887dc5ed4ef85ad06f3e76bcd444d9d5bc839 in linux-6.6.y/6.6.13 ed6e4f0a27ebafffbd12bf3878ab004787685d8a in mainline linux | ||
| 1aef8867 | 2024-01-22 02:55:58 | drm/amdkfd: Free gang_ctx_bo and wptr_bo in pqm_uninit From ZhenGuo Yin ccba042816400a82ed5d3d2f7b4ed79403d20c4c in linux-6.6.y/6.6.13 72838777aa38352e20301e123b97110c456cd38e in mainline linux | ||
| 41d7f58f | 2024-01-22 02:54:33 | drm/amdgpu: Fix cat debugfs amdgpu_regs_didt causes kernel null pointer From Lu Yao 61dfdb779048332546358ac1847f0bbb07367162 in linux-6.6.y/6.6.13 2161e09cd05a50d80736fe397145340d2e8f6c05 in mainline linux | ||
| 3e94d207 | 2024-01-22 02:52:31 | drm/amd/display: update dcn315 lpddr pstate latency From Dmytro Laktyushkin 6396b551f28668aa376e281993ff0790bc8e7b9e in linux-6.6.y/6.6.13 c92da0403d373c03ea5c65c0260c7db6762013b0 in mainline linux | ||
| 68002fc8 | 2024-01-22 02:50:19 | drm/amdkfd: Use common function for IP version check From Mukul Joshi 867ecd8970d33ae4e269a7f24d037c35dcc79290 in linux-6.6.y/6.6.13 2f86bf79b63dbe6963ebc647b77a5f576a906b40 in mainline linux | ||
| ae6bd6c5 | 2024-01-22 02:48:42 | drm/amdgpu: Do not issue gpu reset from nbio v7_9 bif interrupt From Hawking Zhang 541cb7618a15674ccad4d6878f65fa3241009cb6 in linux-6.6.y/6.6.13 884e9b0827e889a8742e203ccd052101fb0b945d in mainline linux | ||
| 83cbdf3a | 2024-01-21 17:21:55 | workaround for the static non-PIE instbin "instbin" program on the install media is no longer needed, due to fix in libc/dlfcn/init.c thanks kettenis and gkoehler | ||
| 6bffaeed | 2024-01-21 16:59:15 | For minherit(MAP_INHERIT_ZERO) upon readonly memory return EPERM. ok kettenis | ||
| 114aad19 | 2024-01-21 16:57:06 | madvise(2) and msync(2) have some memory/mapping destructive ops which should not be allowed upon immutable memory, instead return EPERM. Some of these ops are not destructive in OpenBSD, but they are destructive on other systems, so we take the "all ops" are illegal approach. Related to this, it should not be allowed to minherit(MAP_INHERIT_ZERO) immutable regions, or vice versa, calling mimmutable() upon MAP_INHERIT_ZERO regions, because such a range will be zero'd post-fork in the child. These now also return EPERM. Adjusting the madvise / msync behaviour upon immutable memory brings us closer to the behaviour of the mimmutable clone "mseal" being proposed by google for inclusion in Linux. ok kettenis | ||
| 5fde6622 | 2024-01-21 13:36:40 | Add support for multiple matches in the component code. ok jsg@ | ||
| e1497126 | 2024-01-21 07:46:55 | sync with userland | ||
| 555b046e | 2024-01-21 07:35:28 | sync with userland | ||
| b4f91ba2 | 2024-01-21 07:17:06 | Print raw battery information if KB3310_DEBUG, not DEBUG. NFC | ||
| e3a7b014 | 2024-01-21 01:17:20 | Assert that inpcb table has correct address family. Since inpcb tables for UDP and Raw IP have been split into IPv4 and IPv6, assert that INP_IPV6 flag is correct instead of checking it. While there, give the table variable a nicer name. OK sashan@ mvs@ | ||
| 1b9db5f2 | 2024-01-21 00:26:14 | oops, brain scrambled trying to squeeze the ifdef into bad place | ||
| c6f8eb87 | 2024-01-21 00:23:29 | some bizzare glitch related to ramdisk instbin static binaries, their mutable mapping is not working right, so temporarily bring back the RW -> R *only* for ramdisk kernels | ||
| b780d22e | 2024-01-20 20:11:24 | vmm(4)/vmd(8)/vmctl(8): increase max VM mem size. MAXDSIZ was cranked to 128GB back in April 2023, but vmd(8) was limiting VM RAM size to the old value (32GB). | ||
| 38558285 | 2024-01-20 13:19:37 | Early during mimmutable(2) development, we had a big problem with the chrome v8_flags variable's placement in bss, and as a workaround made it possible to demote a mimmutable mapping's permissions from RW to R. Further mimmutable-related work in libc's malloc created the same problem, which led to a better design: objects could be placed into .openbsd.mutable region, and then at runtime their permission and immutability could be manipulated better. So the RW to R demotion logic is no longer being used, and now this semantic is being deleted. ok kettenis | ||
| e7a417af | 2024-01-20 12:16:55 | AEXECVE can be removed, because pinsyscall SYS_execve detection has been deleted. | ||
| b4036ef4 | 2024-01-20 11:22:46 | There are several DART variants; print some more details such that we can distinguish between them. Pay attention to the apple,dma-range property that tells us the desired DVA window. Add support for a new BUS_DMA_FIXED that allows use of bus_dmamap_load_raw(9) to map things at a pre-determined DVA. This last change is needed for the upcoming Apple KMS driver. Hopefully that is the only driver that will need this, so don't attempt to turn this into an MI feature. ok patrick@ | ||
| df725a82 | 2024-01-20 08:00:59 | Fetch touchpad dimensions from firmware here as well. ok mlarkin@, tobhe@ | ||
| baaa8a4a | 2024-01-19 22:12:24 | Implement extent_alloc_region_with_descr(9) which is the equivalent of extent_alloc_region(9) that uses a pre-allocated region descriptor. ok patrick@ | ||
| 0d348804 | 2024-01-19 21:20:35 | remove the guts of pinsyscall(2), it just returns 0 now. It has been made redundant by the introduction of pinsyscalls(2) which handles all system calls, rather than just 1. | ||
| a6ae7c73 | 2024-01-19 18:58:17 | ugly whitespace | ||
| fb432fad | 2024-01-19 18:38:16 | Implement Multiple Message MSI support on amd64. This is experimental code to assist qwx(4) development. We may remove this code again at some point in the future. Multiple Message MSI has some serious design flaws, especially when combined with the APIC interrupt controller architecture. It was superseded by MSI-X. Unfortunately qwx(4) does not implement MSI-X. ok stsp@, deraadt@ | ||
| aa99957f | 2024-01-19 17:51:15 | Rename WSDISPLAY_TYPE_RKDRM to WSDISPLAY_TYPE_KMS such that we can use it for other generic KMS drivers. ok jsg@, matthieu@ | ||
| 59674edd | 2024-01-19 06:59:10 | add iwn(4) to arm64 GENERIC ok kettenis | ||
| e13f7248 | 2024-01-19 03:46:14 | consolidate pci and cardbus detach code, and have it detach kstats. this solves one probably with an re(4) going away. | ||
| 8a756155 | 2024-01-19 03:25:13 | Add TSO support. Previous commit fixed up a bug that could only be triggered with TCP socket splicing and TSO, and with that fixed, it works reliably. tested by hrvoje, jan@, mbuhl@, bluhm@, feedback from jan@ and bluhm@, ok jan@ mbuhl@ bluhm@ | ||
| a342f0b4 | 2024-01-19 02:24:07 | Unify inpcb API for inet and inet6. Many functions for IPv4 call their IPv6 counterpart if INP_IPV6 is set at the socket's pcb. By using the generic API consistently, the logic is not in the caller it gets more readable. OK mvs@ | ||
| 470ec98d | 2024-01-19 01:43:26 | Backout priterator() for walking allprocess list. This approach does not work as LIST_NEXT() of a removed element does not return NULL. I causes a crash in syzcaller and triggers kernel diagnostic assertion "vp->v_uvcount == 0" in sys/kern/kern_unveil.c line 845 during reboot. Unfortunately the backout brings back the race in fill_file() and fstat(1) may crash the kernel. Reported-by: syzbot+54fba1c004d7383d5e85@syzkaller.appspotmail.com | ||
| bd2b9f52 | 2024-01-18 11:03:16 | Move the rtable_exists() check into in_pcbset_rtableid(). OK bluhm@ mvs@ | ||
| c74c9f56 | 2024-01-18 08:50:27 | reduce diff to linux | ||
| 920715aa | 2024-01-18 08:48:32 | Use solock() instead of netlock within fill_file(). This makes all socket types protected. The netlock is still used while fill_file() called through *table.inpt_queue walkthroughs, but this is the inet sockets case. ok bluhm | ||
| 4bd216ef | 2024-01-18 08:46:41 | Use `nowake' as tsleep_nsec(9) ident. It has no corresponding wakeup(9). ok bluhm | ||
| 7d75b92a | 2024-01-18 07:52:37 | remove duplicate defines, merge error from local patches | ||
| 44d1888f | 2024-01-18 06:24:03 | remove duplicate steam deck block, merge error from local patches | ||
| 266d9df0 | 2024-01-18 05:01:52 | Instead of skipping the call to hdcp_destroy(), use NULL for the kobject argument. Unused in the function itself as we define away sysfs_remove_bin_file(). | ||
| e7a40e26 | 2024-01-17 22:22:25 | Fix core file writing when a file map into memory has later been truncated to be smaller than the mapping. Record which memory segments are backed by vnodes while walking the uvm map and later suppress EFAULT errors caused by the underlying file being truncated. okay miod@ | ||
| 3f6663fc | 2024-01-17 18:56:13 | Since pinsyscalls(2) applies to all system calls and does a more precise check earlier, the pinsyscall(SYS_execve mechanism has become redundant. It needs to be removed delicately since ld.so and static binaries use it. As a first step, neuter the checking code in sys_execve(). Further steps will follow slowly. ok kettenis | ||
| 514d4a64 | 2024-01-17 06:28:15 | unstub i915_driver_hw_remove() | ||
| f005ef32 | 2024-01-16 23:37:50 | update drm to linux 6.6.12 Thanks to the OpenBSD Foundation for sponsoring this work. | ||
| f0efa6a8 | 2024-01-16 19:05:00 | The kernel will now read pinsyscall tables out of PT_OPENBSD_SYSCALLS in the main program or ld.so, and accept a submission of that information for libc.so from ld.so via pinsyscalls(2). At system call invocation, the syscall number is matched to the specific address it must come from. ok kettenis, gnezdo, testing of variations by many people | ||
| e34dbedb | 2024-01-16 12:21:02 | Fix clang warning about possible unaligned access on arm64. ok stsp@ | ||
| 2f2026fd | 2024-01-15 16:57:31 | Add support for bringing up RTKit while !cold. ok tobhe@ | ||
| d221342b | 2024-01-15 15:47:37 | Introduce priterator(), the `ps_list' iterator. Some of `allprocess' list walkthroughs have context switch within, so make exit1() wait until the last reference released. Reported-by: syzbot+0e9dda76c42c82c626d7@syzkaller.appspotmail.com ok bluhm claudio | ||
| 3082766e | 2024-01-15 13:27:20 | Fetch touchpad dimensions from firmware instead of hardcoding the values for the original 13" M1 MacBook. ok mlarkin@ | ||
| a84df9b3 | 2024-01-15 11:58:45 | We can't call kstat_create(9) when bringing up the secondary CPUs as it uses an rwlock and curproc isn't initialized yet for these CPUs at this point. As a result we hit a "locking against myself" panic if there is any lock contention. Fix this by adding a new ci_midr member to struct cpu_info which gets initialized when we identify the CPUs and use that to attach the kstat stuff. ok tobhe@, dlg@ | ||
| 8490bd92 | 2024-01-15 08:56:45 | The maximum number of ring slots a tx packet can use is 32, which is indicated by writing 0 to the 5 bit 'BD count' field in the first slot. Accordingly, mask the value we're writing there. Each packet uses one slot for offload information and then one per DMA segment, which means the maximum number of DMA segments must be 31 rather than 32. Trying to send a packet using 33 slots makes the nic firmware very upset. ok dlg@ | ||
| e6a428ab | 2024-01-15 02:35:23 | vio(4): poll device status after issuing device reset. The virtio spec says a driver "should" wait for a device to report a clear device status after performing a reset. In some hypervisors, this doesn't matter as the vcpu's io instruction emulation and virtio network device emulation happen serially in the same thread. In hypervisors like vmd(8), device reset happens asynchronously and the driver can't assume the device is ready. This race condition results in mbuf pool corruption, causing panics. Bug reported and reproduced by bluhm@. Root cause found and diff from sf@. ok dv@ and committed on sf@'s behalf with his permission. | ||
| 89b5be12 | 2024-01-15 01:15:37 | clockintr: move CLST_IGNORE_REQUESTS from cl_flags to cq_flags In the near future, we will add support for destroying clockintr objects. When this happens, it will no longer be safe to dereference the pointer to the expired clockintr during the dispatch loop in clockintr_dispatch() after reentering cq_mtx. This means we will not be able to safely check for the CLST_IGNORE_REQUESTS flag. So replace the CLST_IGNORE_REQUESTS flag in cl_flags with the CQ_IGNORE_REQUESTS flag in cq_flags. The semantics are the same. Both cl_flags and cq_flags are protected by cq_mtx. Note that we cannot move the CLST_IGNORE_REQUESTS flag to cr_flags in struct clockrequest: that member is owned by the dispatching CPU and is not mutated with atomic operations. | ||
| b533a222 | 2024-01-14 17:23:56 | sys/sched.h: conceal <sys/queue.h> inclusion from userspace Nothing outside of the _KERNEL guard in <sys/sched.h> needs <sys/queue.h>, so move its inclusion under _KERNEL. Requested by claudio@. Link: https://marc.info/?l=openbsd-tech&m=169937494818685&w=2 ok claudio@ | ||
| 065d92b5 | 2024-01-14 17:11:55 | sys/sched.h: conceal struct schedstate_percpu definition from userspace struct schedstate_perpcu contains struct clockintr pointers. struct clockintr is not defined in userspace, so move schedstate_percpu into the _KERNEL guard to hide it from userspace. Nothing in base userspace uses schedstate_percpu. Thread: https://marc.info/?l=openbsd-tech&m=169861224916185&w=2 ok claudio@ millert@ | ||
| cefff6e5 | 2024-01-13 10:00:27 | Provide a more complete implementation of the "component" APIs. Also tweak the "platform" interfaces to stash away the bits of fdt_attach_args that we need later on instead of referencing it directly. This makes those interfaces usable after attach time. ok jsg@ | ||
| 3f214701 | 2024-01-12 22:29:04 | add license; ok kettenis@ | ||
| 2d01bf8a | 2024-01-12 10:48:03 | Send UDP packets in parallel. Sending UDP packets via datagram socket is MP safe now. Same applies to raw IPv4 and IPv6, and divert sockets. Switch sosend() from exclusive net lock to shared net lock in combination with per socket lock. TCP and GRE still use exclusive net lock. tested by otto@ and florian@ OK mvs@ | ||
| 58a52142 | 2024-01-12 08:47:46 | nfssvc: When the client disconnects, close the socket before sleeping. If the server doesn't close the socket immediately and starts waiting for the client to reconnect, then the TCP connection will remain open. The client will have to wait for the connection to be closed in order to reconnect with the same source port; this never happens, resulting in a freeze until the file system is umounted. This change fixes Linux NFS clients freezing after 5 min of inactivity. ok miod, help from claudio | ||
| 82f13a27 | 2024-01-11 19:16:26 | Since no system call takes more than 6 arguments, and no more than one off_t argument, there is no need to process more than 6 arguments on 64-bit platforms and 8 on 32-bit platforms. Make the syscall argument gathering code simpler by removing never-used code to fetch more arguments from the stack, and local argument arrays when pointing to the trap frame does the job. ok guenther@ jsing@ | ||
| 3aa75afe | 2024-01-11 17:13:48 | fix build with VMM_DEBUG option ok dv@ | ||
| 66bd633e | 2024-01-11 14:15:11 | Use domain name for socket lock. Syzkaller with witness complains about lock ordering of pf lock with socket lock. Socket lock for inet is taken before pf lock. Pf lock is taken before socket lock for route. This is a false positive as route and inet socket locks are distinct. Witness does not know this. Name the socket lock like the domain of the socket, then rwlock name is used in witness lo_name subtype. Make domain names more consistent for locking, they were not used anyway. Regardless of witness problem, unique lock name for each socket type make sense. Reported-by: syzbot+34d22dcbf20d76629c5a@syzkaller.appspotmail.com Reported-by: syzbot+fde8d07ba74b69d0adfe@syzkaller.appspotmail.com OK mvs@ | ||
| 6285ef23 | 2024-01-11 13:49:49 | Fix white spaces in TCP. | ||
| a9f6aa33 | 2024-01-11 09:52:19 | handle MHI M1->M2 state transitions in qwx(4) When the device signals transition to state M1, the MHI driver may set the device into M2 state to save power. The MHI device will be woken up again by the driver ringing the wake doorbell register before doing PCI reads/writes, which qwx(4) already implements. | ||
| 1ef7e4b4 | 2024-01-10 16:44:30 | Split UDP PCB table into IPv4 and IPv6. Having two hash tables instead of a common one, reduces table size and contention on the per table lock. The address family is always known in advance. The lookups and loops are more specific. OK sashan@ | ||
| 9a5ce850 | 2024-01-10 05:06:00 | If bringing up a queue fails, only tear down the ones that we set up successfully, rather than trying to tear them all down and crashing. tested by hrvoje, who can make queue setup fail sometimes ok bluhm@ | ||
| cc847d2a | 2024-01-10 04:13:59 | vmm/vmd: add io instruction length to exit information. Add the instruction length to the vm exit information to allower vmd(8) to manipulate the instruction pointer after io emulation. This is preparation for emulating string-based io instructions. Removes the instruction pointer update from the kernel (vmm(4)) as well as the instruction length checks, which were overly restrictive anyways based on the way prefixes work in x86 instructions. ok mlarkin@ | ||
| ad6c4bdc | 2024-01-09 19:57:00 | Convert some struct inpcb parameter to const pointer. OK millert@ | ||
| 6354f724 | 2024-01-09 07:10:00 | remove unused of_device_get_match_data() prototype | ||
| d99c73b1 | 2024-01-09 05:49:44 | inline -> static inline ; fixes sparc64 build | ||
| 6e06fbf9 | 2024-01-09 04:32:29 | remove needless comment | ||
| 34df0755 | 2024-01-09 04:29:46 | If there are still mbufs on a ring when we're freeing it, it'd be a good idea to free them too. ok dlg@ |