Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 0b21a9cf | 2024-08-17 08:45:22 | Checkpoint of work-in-progress attempt to support the FireGL-UX board. This particular sti(4) device relies upon undocumented callbacks from the kernel, and will default to iodc code otherwise. The device now initializes correctly, but writes to the frame buffer memory freeze the system due to bad interaction with the ROM even though it is disabled at the PCI level - unfortunately I'm currently out of hair to pull at the moment to make any progress on this. No functional change intended for other sti(4) devices. | ||
| db0d29d7 | 2024-08-17 08:12:46 | enable qwx(4) ext irqs earlier for suspend/resume Enable ext IRQs like the Linux driver does it, not later. I did this differently due to problems in early development that have since been fixed. Fixes an interrupt storm during resume which prevents things like key installation from working, leaving the network link dead. | ||
| 98d98fd9 | 2024-08-17 07:02:13 | avoid uninitialised var use in nfs_serv.c error paths some functions have a nfsmout label with code that assumes NDINIT has been called nfsrv_rename has two NDINIT calls, the nfsmout code assumes both are setup but is only jumped to when none/one is setup found with llvm scan-build checked by deraadt@ beck@, ok miod@ | ||
| 80bce6db | 2024-08-17 02:35:00 | whitespace | ||
| 3cdb7639 | 2024-08-17 02:31:15 | perusing drivers on other systems, there appears to be some cynism about how this chip comes out of D3 and when the RESET register is touched. Some systems were still wasn't resuming reliabily, but adding these delays has eliminated resume-hangs. ok kettenis mlarkin | ||
| c6b110bc | 2024-08-17 02:28:45 | The dwiic_init() routine is used at startup to read various chip registers, make some decisions, and then program other registers. After a resume, it is pointless, and potentially incorrect to read such registers again, which a BIOS or something may not have initialized, and we are better off using the remembered soft-state to init cleanly. So craft a custom block of chip restoration, and do it while the chip is stopped hard. ok kettenis mlarkin | ||
| 99dfaab1 | 2024-08-17 02:24:03 | dwiic_activate did not inform sub-devices with config_activate_children() calls from the correct places, so their DVACT_QUIESCE and DVACT_WAKEUP were incorrect, and led to those sub-drivers (ihidev and imt) racing against dwiic hardware re-initialization. ok kettenis mlarkin | ||
| 0fa92fe2 | 2024-08-17 02:14:20 | dwiic resume is almost exclusively a "hardware state restore", and not a "restart transaction", so the job should get done at DVACT_RESUME time. ok kettenis mlarkin | ||
| 581cc054 | 2024-08-17 01:55:03 | skip Controller Save State (CSS) and Controller Restore State (CRS) on AMD 17h/1xh xHCI avoids problem with resume after CRS was introduced in xhci.c rev 1.133 uhub0: device problem, disabling port 2 uhub1: device problem, disabling port 1 reported by brynet@ and reproduced on t495, ok kettenis@ | ||
| 3304f1bb | 2024-08-16 16:19:03 | Atomically modify `nthreads' and move proc_free() out of KERNEL_LOCK(). ok jca@ | ||
| a6d36058 | 2024-08-16 15:27:11 | whitespace | ||
| 9ec2faa3 | 2024-08-16 13:02:44 | vio(4): Don't set IPv4 checksum OK flag for rx packets. The virtio specification just address TCP/UDP checksum offloading. Thus, we have to check the IPv4 checksum in our stack. ok sf@ | ||
| a362e7cd | 2024-08-16 12:22:17 | Fix bounds checking in wsmux_getmux(). | ||
| a9c690c8 | 2024-08-16 10:49:57 | Set CONFIG_AMD_PMC. We don't have the corresponding driver just yet, but it seems that Linux is just overcautious in disabling S0 suspend when the driver isn't included in the kernel config. And we plan to implement the driver soon anyway. ok jsg@ | ||
| cc2e793a | 2024-08-16 10:46:46 | Hook up a few more bits of suspend/resume power management code. This fixes S3 suspend/resume on the Lenovo ThinCentre M715q with: amdgpu0: RAVEN GC 9.1.0 8 CU rev 0x01 and also fixes S0 suspend/resume on various laptops with AMD graphics provided we disable a few checks (which will be done in a separate commit). ok jsg@ | ||
| 8571a5a7 | 2024-08-16 10:26:20 | drm/amd: Stop evicting resources on APUs in suspend From Mario Limonciello 3a9626c816db901def438dc2513622e281186d39 in mainline linux | ||
| 60728a2f | 2024-08-16 09:20:34 | Introduce PR_MPSYSCTL flag to mark mp-safe (*pr_sysctl)() handlers and unlock both divert_sysctl() and divert6_sysctl(). Unlock them together, because they are identical and pretty simple: - DIVERTCTL_RECVSPACE and DIVERTCTL_SENDSPACE - atomically accessed integers; - DIVERTCTL_STATS - per-CPU counters; ok bluhm | ||
| fd042ffd | 2024-08-16 04:14:27 | delete disabled ACPI-related code in here, this power management is done at a different level, and nothing needs to be done here ok kettenis | ||
| b8a42cce | 2024-08-16 00:26:54 | Align more register addresses and data structures with ath12k. | ||
| aff7e5a9 | 2024-08-15 23:23:06 | Further minor cleanup for improved readability, with the major change that FW now seems to come up after providing regdb parsed out of the board file. | ||
| 27c3d914 | 2024-08-15 22:01:37 | Initial patchset on top of the qwx(4) to adjust for ath12k. Still not working yet, but it's better to continue polishing this in-tree. | ||
| 674f03e5 | 2024-08-15 17:30:40 | whitespace | ||
| 868dd50c | 2024-08-15 17:17:05 | Upon resume, restore the saved state. Newer Intel xHCI controller (e.g. those on Meteor Lake) need this, otherwise the ports are dead after resume. ok mglocker@, deraadt@ | ||
| e88074f0 | 2024-08-15 12:20:20 | add BIOCSETFNR, which is like BIOCSETF but doesnt reset the buffer or stats. from Matthew Luckie <mjl@luckie.org.nz> via tech@ deraadt@ likes it. | ||
| c20582d0 | 2024-08-15 11:26:03 | sync | ||
| 39ae9f96 | 2024-08-15 11:25:37 | Add Qualcomm WCN7850 | ||
| 0311f81d | 2024-08-15 03:24:29 | drm/radeon: Remove __counted_by from StateArray.states[] From Bill Wendling ea12dbf570ef1cbbf857dfa80fbdd66cc0e4612b in linux-6.6.y/6.6.46 2bac084468847cfe5bbc7166082b2a208514bb1c in mainline linux | ||
| 0c230191 | 2024-08-15 03:22:41 | drm/dp_mst: Skip CSN if topology probing is not done yet From Wayne Lin 28c060cd370d2718345452f4182cba115b7367e8 in linux-6.6.y/6.6.46 ddf983488c3e8d30d5c2e2b315ae7d9cd87096ed in mainline linux | ||
| f7df2f8c | 2024-08-15 03:20:40 | drm/client: fix null pointer dereference in drm_client_modeset_probe From Ma Ke d64fc94f7bb24fc2be0d6bd5df8df926da461a6d in linux-6.6.y/6.6.46 113fd6372a5bb3689aba8ef5b8a265ed1529a78f in mainline linux | ||
| 7e709411 | 2024-08-15 03:18:56 | drm/i915/gem: Adjust vma offset for framebuffer mmap offset From Andi Shyti d73de3c6447644c65ed0e9a368328713dc28fb18 in linux-6.6.y/6.6.46 1ac5167b3a90c9820daa64cc65e319b2d958d686 in mainline linux | ||
| b023b714 | 2024-08-15 03:15:06 | drm/amdgpu: Forward soft recovery errors to userspace From Joshua Ashton 0da0b06165d83a8ecbb6582d9d5a135f9d38a52a in linux-6.6.y/6.6.46 829798c789f567ef6ba4b084c15b7b5f3bd98d51 in mainline linux | ||
| 574be50d | 2024-08-15 03:12:41 | drm/amd/display: Skip Recompute DSC Params if no Stream on Link From Fangzhi Zuo 718d83f66fb07b2cab89a1fc984613a00e3db18f in linux-6.6.y/6.6.46 50e376f1fe3bf571d0645ddf48ad37eb58323919 in mainline linux | ||
| 08be9e2b | 2024-08-15 03:10:37 | drm/i915/gem: Fix Virtual Memory mapping boundaries calculation From Andi Shyti 4b09513ce93b3dcb590baaaff2ce96f2d098312d in linux-6.6.y/6.6.46 8bdd9ef7e9b1b2a73e394712b72b22055e0e26c3 in mainline linux | ||
| b50ec64d | 2024-08-15 03:08:00 | drm/amd/display: Add null checker before passing variables From Alex Hung 4cc2a94d96caeb3c975acdae7351c2f997c32175 in linux-6.6.y/6.6.46 8092aa3ab8f7b737a34b71f91492c676a843043a in mainline linux | ||
| bb30a349 | 2024-08-15 03:06:09 | drm/amd/pm: Fix the null pointer dereference for vega10_hwmgr From Bob Zhou 2e538944996d0dd497faf8ee81f8bfcd3aca7d80 in linux-6.6.y/6.6.46 50151b7f1c79a09117837eb95b76c2de76841dab in mainline linux | ||
| 6f63516c | 2024-08-15 03:04:18 | drm/amdgpu: Add lock around VF RLCG interface From Victor Skvortsov 1adb5ebe205e96af77a93512e2d5b8c437548787 in linux-6.6.y/6.6.46 e864180ee49b4d30e640fd1e1d852b86411420c9 in mainline linux | ||
| 926193d6 | 2024-08-15 03:01:36 | drm/admgpu: fix dereferencing null pointer context From Jesse Zhang 641dac64178ccdb9e45c92b67120316896294d05 in linux-6.6.y/6.6.46 030ffd4d43b433bc6671d9ec34fc12c59220b95d in mainline linux | ||
| 26f37df5 | 2024-08-15 02:59:50 | drm/amdgpu/pm: Fix the null pointer dereference in apply_state_adjust_rules From Ma Jun 3a01bf2ca9f860fdc88c358567b8fa3033efcf30 in linux-6.6.y/6.6.46 d19fb10085a49b77578314f69fff21562f7cd054 in mainline linux | ||
| 8602cf8b | 2024-08-15 02:58:13 | drm/amdgpu: Fix the null pointer dereference to ras_manager From Ma Jun b89616333979114bb0da5fa40fb6e4a2f5294ca2 in linux-6.6.y/6.6.46 4c11d30c95576937c6c35e6f29884761f2dddb43 in mainline linux | ||
| b4d93289 | 2024-08-15 02:56:22 | drm/amdgpu/pm: Fix the null pointer dereference for smu7 From Ma Jun 09544cd95c688d3041328a4253bd7514972399bb in linux-6.6.y/6.6.46 c02c1960c93eede587576625a1221205a68a904f in mainline linux | ||
| b121103b | 2024-08-15 02:53:57 | drm/amdgpu/pm: Fix the param type of set_power_profile_mode From Ma Jun 837ab17ceef90a85ddfc918935ed1f19ff60d09b in linux-6.6.y/6.6.46 f683f24093dd94a831085fe0ea8e9dc4c6c1a2d1 in mainline linux | ||
| 6a73d8cc | 2024-08-15 02:51:35 | drm/amdgpu: fix potential resource leak warning From Tim Huang bc93cfde69b7c786fcdc70463e153fdf633caff9 in linux-6.6.y/6.6.46 22a5daaec0660dd19740c4c6608b78f38760d1e6 in mainline linux | ||
| 1f67d090 | 2024-08-15 02:49:48 | drm/amd/display: Add delay to improve LTTPR UHBR interop From Michael Strauss 479ccc2132171f7e711f8154408ec6106f6e1df3 in linux-6.6.y/6.6.46 10839ee6a977ed1f7d0f4deb29f2d7e5d1f2a9dd in mainline linux | ||
| d5a984e5 | 2024-08-14 18:31:33 | Implement bounce buffering for AMD SEV in amd64 bus dma. When running as SEV guest, as indicated by variable cpu_sev_guestmode, allocate additional pages for each segment on dma map creation. These pages are mapped with the PMAP_NOCRYPT attribute, i.e. the crypt bit is not set in the PTE. Thus, these pages are shared with the hypervisor. When the map is loaded with actual pages, the address in the descriptor is replaced by the corresponding bounce buffer. Using bus_dmamap_sync(), data is copied from the encrypted pages used by guest drivers to the unencrypted bounce buffers shared with the hypervisor, and vice versa. If the kernel is not running in SEV guest mode, which means as normal host or non-SEV guest, no bounce buffers are used. from hshoexer@; based on ancient code of mickey@; OK kettenis@ | ||
| 7af15f03 | 2024-08-14 17:52:47 | Push kernel lock down to net_sysctl(). All except PF_MPLS paths are mp-safe: - net_link_sysctl() and following net_ifiq_sysctl() only return EOPNOTSUPP; - uipc_sysctl() - mp-safe atomic access to integers; - bpf_sysctl() - mp-safe atomic access to integers; - pflow_sysctl() - returns statistics from per-CPU counters; - pipex_sysctl() - mp-safe atomic access to integer; Push kernel lock down to mpls_sysctl(). sysctl_int_bounded() do copying with local variable, so context switch is safe. No need to wire memory or take `sysctl_lock' rwlock(9). Keep protocols locked as they was include pages wiring. Copying will not sleep - no network slowdown while doing it with net lock held. ok bluhm | ||
| 4bba8532 | 2024-08-14 14:40:45 | Introduce qwz(4), a work-in-progress port of the Linux ath12k driver. This driver is not working yet, it's a copy of qwx(4) which bit-by-bit will be adjusted to work on the newer generation of chips. Even though this is only a minor bump over the previous generation, the changes are large enough that bringup, debugging and long-term maintenance would suffer trying to squash them into a single driver. This can be reconsidered once we have reached a stable state. | ||
| e84aaa7e | 2024-08-14 13:54:08 | Make sysctl_int() and sysctl_int_lower() mp-safe and unlock KERN_HOSTID. The only difference between sysctl_int() and sysctl_int_bounded() is the range check, so sysctl_int() is just sysctl_int_bounded(..., INT_MIN, INT_MAX). sysctl_int() is not the fast path, so this useless check is not significant. Mp-safe sysctl_int() is meaningless for sysctl_int_lower(), so rework it in the sysctl_int_bounded() style. This time all affected paths are kernel locked, but this doesn't make sysctl_int_lower() worse. Change `hostid' type to the type of int. It only stored but never used within kernel, userland accesses it through sysctl_int(). Nothing changes, but variable becomes consistent with sysctl_int(). ok bluhm | ||
| 3f2f329f | 2024-08-14 10:54:58 | In a qcspmi_cmd_read() error case, the register is only returning the error bit, not SPMI_STATUS_DONE. Therefore, catch the error at the right place, and print the specific error type. ok patrick@ | ||
| af45b3b4 | 2024-08-13 22:32:58 | Be more aggressive about disabling interrupts in both DVACT_QUIESCE and DVACT_SUSPEND, because we are seeing false interrupts during S0 resume. Other problems remain, and ratchov has some clues he'll dig into in the coming weeks. For now, this is a good enough improvement. ok ratchov | ||
| 82ba4f82 | 2024-08-13 22:31:16 | use ACPI _WAK upon resume. Such a huge oversight it is surprising that we've never noticed it before, maybe systems which depend on _WAK are rare. Still, this may improve S3 resume on some rare machines. ok kettenis | ||
| 5f28fd1b | 2024-08-13 20:48:00 | For AMD SEV use correct command mask in ccp(4) driver. According to AMD SEV API specification, the mask for command ID is supposed to be of length 10 (Bits [25:16]), rather than length 6. This ensures that all commands are properly processed by the PSP. from Aaron Debebe; OK hshoexer@ | ||
| 657921cb | 2024-08-13 08:47:28 | Sync full virtqueue on device reset We initialize the whole virtqueue and must make sure that the device sees this even for the areas that are normally only written by the device. Otherwise there may be an assertion fail during ifconfig up, as found by bluhm@ with hshoexer@'s bounce buffer diff. OK bluhm@ | ||
| 07c8d238 | 2024-08-13 05:13:34 | drm/i915/pxp/mtl: Update pxp-firmware packet size From Alan Previn c14d446e25fe00a9fd29d317b07bd221fd6f49db in mainline linux | ||
| 2da3df3d | 2024-08-13 04:04:53 | drm/i915/mtl: Wake GT before sending H2G message From Vinay Belgaumkar 6d46d09a0d7dd412c5b76f74f89fe4448ba2117e in mainline linux | ||
| 69bddb60 | 2024-08-13 03:58:13 | drm/i915/mtl: Don't set PIPE_CONTROL_FLUSH_L3 From Vinay Belgaumkar 5fde104ea8587c547732a06d9d6473f6e7e4ac1c in mainline linux | ||
| 8e8fc6d2 | 2024-08-13 02:19:41 | drm/i915: Fix possible int overflow in skl_ddi_calculate_wrpll() From Nikita Zhandarovich 6c0473c9ac502df8d580c15f20188efe708e8394 in linux-6.6.y/6.6.45 5b511572660190db1dc8ba412efd0be0d3781ab6 in mainline linux | ||
| b3e6bcbb | 2024-08-13 02:16:08 | drm/i915/hdcp: Fix HDCP2_STREAM_STATUS macro From Suraj Kandpal 9541f99b2651adaeb1425474096999e689a60497 in linux-6.6.y/6.6.45 555069117390a5d581863bc797fb546bb4417c31 in mainline linux | ||
| 05a4d66d | 2024-08-13 02:14:36 | i915/perf: Remove code to update PWR_CLK_STATE for gen12 From Umesh Nerlige Ramappa 582b6c7dd019c49a239db5f721146139130251c4 in linux-6.6.y/6.6.45 4bc14b9cfaa2149d41baef2f2620e9f82d9847d7 in mainline linux | ||
| a9369f26 | 2024-08-13 00:58:47 | drm/i915: Prevent potential null-ptr-deref in engine_init_common From Nirmoy Das f1cdb599ce0ef909343d6c8e7d372defbaa382b9 in mainline linux | ||
| 18adfa04 | 2024-08-13 00:41:22 | sync | ||
| 78f0b30a | 2024-08-13 00:39:26 | drm/i915/mtl: Remove the 'force_probe' requirement for Meteor Lake From Radhakrishna Sripada 213c43676beb5f5a63cb27a0c8e8e71035b08445 in mainline linux | ||
| 89587ef8 | 2024-08-13 00:36:32 | force primary and console on Meteor Lake The GOP framebuffer doesn't match the PCI BAR ranges efifb tests. discussed with kettenis@ | ||
| 9d208175 | 2024-08-13 00:29:51 | drm/i915: Annotate more of the BIOS fb takeover failure paths From Ville Syrjala 074146f4578388b1b7f7832368d1581fceb1441e in mainline linux | ||
| 34c95817 | 2024-08-13 00:28:09 | drm/i915: Try to relocate the BIOS fb to the start of ggtt From Ville Syrjala a8153627520a2d468680bb7686fd404c222b13ca in mainline linux | ||
| de40a822 | 2024-08-13 00:25:13 | drm/i915: Tweak BIOS fb reuse check From Ville Syrjala ea5e150ac2cf88f586299c06244d5a4d473c041e in mainline linux | ||
| 4250d1c2 | 2024-08-13 00:23:25 | drm/i915/fbdev: Fix smem_start for LMEMBAR stolen objects From Ville Syrjala f1ee98cff3d86271491b08315fcdfa4c3f097e1e in mainline linux | ||
| fc74cf09 | 2024-08-13 00:20:08 | drm/i915: Simplify intel_initial_plane_config() calling convention From Ville Syrjala 30865e4abb799547299a9cf39c86fe943ee2913a in mainline linux | ||
| bae1469f | 2024-08-13 00:18:24 | drm/i915: Split the smem and lmem plane readout apart From Ville Syrjala 6bfdb06d1efafaa289f16ff5e5dfb4b02327525e in mainline linux | ||
| c08da79d | 2024-08-13 00:16:20 | drm/i915: s/phys_base/dma_addr/ From Ville Syrjala 27fbcaf7ca2470dbc112a5ea2759ad6408581c79 in mainline linux | ||
| 120d8f7c | 2024-08-13 00:14:48 | drm/i915: Fix MTL initial plane readout From Ville Syrjala f46fb69489f57141bb7f8308893ec3e8ba664462 in mainline linux | ||
| a413f484 | 2024-08-13 00:12:42 | drm/i915: Fix region start during initial plane readout From Ville Syrjala d74f3a930c1d075a876a22b44723556455526881 in mainline linux | ||
| e4062bcc | 2024-08-13 00:10:51 | drm/i915: Fix PTE decode during initial plane readout From Ville Syrjala 6b757e1d420cf01bc135212922906b8616b779d5 in mainline linux | ||
| 99fa8e50 | 2024-08-13 00:08:07 | drm/i915: Rename the DSM/GSM registers From Ville Syrjala f8ae1d5291c3e06d494cf59005c23d883f1afc0e in mainline linux | ||
| d684a4ca | 2024-08-13 00:06:00 | drm/i915: Disable the "binder" From Ville Syrjala be5e8dc84f61ea79f4980fe4fb74fe9a0d0d2c33 in mainline linux | ||
| 6c50df30 | 2024-08-13 00:03:54 | drm/i915: Bypass LMEMBAR/GTTMMADR for MTL stolen memory access From Ville Syrjala c08c364102d07288610734de34111a666e730ae7 in mainline linux | ||
| 762960ad | 2024-08-13 00:00:37 | drm/i915: Remove ad-hoc lmem/stolen debugs From Ville Syrjala 8f7cf0a215b34ef12b4b862f260a592b4ab37a52 in mainline linux | ||
| f327808b | 2024-08-12 23:57:43 | drm/i915: Print memory region info during probe From Ville Syrjala 2ab1fe53e298fd2ca6491c73a8d306cc042cd2f0 in mainline linux | ||
| 52571687 | 2024-08-12 23:55:26 | drm/i915: Use struct resource for memory region IO as well From Ville Syrjala 3c0fa9f4ec220d4a6fac1b80c231c38cf6d0934d in mainline linux | ||
| 122bb397 | 2024-08-12 23:52:04 | drm/i915: Enable GGTT updates with binder in MTL From Nirmoy Das 799d794f75598353c8e5854fc9c57cc46d236c4e in mainline linux | ||
| 770b54dd | 2024-08-12 23:50:01 | drm/i915: Toggle binder context ready status From Nirmoy Das a2ae29629230588d50dfcba306decad7e4f690f3 in mainline linux | ||
| 6589bdd4 | 2024-08-12 23:47:44 | drm/i915: Implement GGTT update method with MI_UPDATE_GTT From Nirmoy Das 8a7f77fabac16e284cc47191fe033770012bf48d in mainline linux | ||
| 3be56c56 | 2024-08-12 23:44:39 | drm/i915: Parameterize binder context creation From Nirmoy Das 3f5f62883631a987964102bc5044f7bf62c26323 in mainline linux | ||
| c6b3c815 | 2024-08-12 23:42:15 | drm/i915: Implement for_each_sgt_daddr_next From Nirmoy Das 0e514878486053363f8b2a806525fe67ae692827 in mainline linux | ||
| 09e4f8a5 | 2024-08-12 23:39:18 | drm/i915: Create a kernel context for GGTT updates From Nirmoy Das b352749936806c9d5ed6a6021d84c1df4d1df3da in mainline linux | ||
| 37dd9a76 | 2024-08-12 23:36:45 | drm/i915: Lift runtime-pm acquire callbacks out of intel_wakeref.mutex From Chris Wilson 4cd64e9d2c7206db05e7162d0258b455726b7ec5 in mainline linux | ||
| 0d3cf1c0 | 2024-08-12 19:32:05 | Conditionally compile kqueue poll debug printfs, mainly preventing them from being included in the ramdisk kernel. Looks sensible to deraadt@ | ||
| 85426351 | 2024-08-12 18:43:41 | other growth has happened and I'm out of current culling options, so mpi(4) gets removed from the floppy. | ||
| 6fd6d021 | 2024-08-12 17:24:58 | Revert the guts of rev 1.14. This ends up attempting to turn of power resources for devices that aren't present. And that makes us run AML that clearly hasn't been tested by the vendors. And on my test laptop this no longer seems to make a meaningful difference in the power consumption during suspend-to-idle. ok deraadt@ | ||
| 34cc435a | 2024-08-12 17:02:58 | Prepare bpf_sysctl() for upcoming net_sysctl() unlocking. Both NET_BPF_MAXBUFSIZE and NET_BPF_BUFSIZE (`bpf_maxbufsize' and `bpf_bufsize' respectively) are atomically accessed integers. No locks required to modify them. ok bluhm | ||
| fc751501 | 2024-08-12 11:25:27 | Run network protocol timer without kernel lock. Mark slow and fast protocol timeouts as MP safe. This means they run on a spearate thread without holding the kernel lock. IGMP and MLD6 cannot run in parallel, they use exclusive net lock to protect themselves. As a performance optimization global variables are used to skip igmp_fasttimo() and mld6_fasttimeo() if no multicast is active. These global variables use atomic operations and memory barriers to work lockless. IPv6 fragment timeout protects itself with a mutex. TCP timers also run without kernel lock now. The whole TCP stack holds exclusive net lock, so additional kernel lock is useless. OK mvs@ | ||
| 4ba1d670 | 2024-08-12 06:47:11 | try harder to leave a gap on the tx ring. i think before this change we could overwrite entries on the ring, which can confuse the chip and the tx completion code. i think. it's funny how much a comparison hurts my brain. ok patrick@ tested by and ok kevlo@ | ||
| d0c34296 | 2024-08-12 02:16:21 | remove unused vars in local functions | ||
| 7640cf6e | 2024-08-12 01:49:49 | use INTEL_INFO for early platform tests in inteldrm_attach() runtime IS_PLATFORM tests are not setup until inteldrm_attachhook i915_driver_probe i915_driver_early_probe intel_device_info_runtime_init_early intel_device_info_subplatform_init | ||
| 6f961ae6 | 2024-08-11 21:07:05 | Add missing refcnt.h header to fix libkvm build. Reported and ok tb. | ||
| f3825f86 | 2024-08-11 17:30:28 | delete correct ACPI_SST_WAKING, pointed out by kettenis | ||
| 16368843 | 2024-08-11 15:10:53 | Make exit1() wait sysctl(2) `allprocess' loops. Regardless on wired userland memory, KERN_FILE_BYPID and KERN_FILE_BYUID `allprocess' loops have netlock provided sleep points, so concurrent process exit(1) could crash kernel. The main exit1() problem is that process teardown begins while process is still linked to `allprocess' list, and current code doesn't allow to unlink it first. Wait for concurrent sysctl(2) `allprocess' loops between PS_EXITING bit setting and list unlinking. Both KERN_FILE_BYPID and KERN_FILE_BYUID loops do PS_EXITING check and won't deal with dying process. Concurrent exit1() thread will wait loops keeping process linked to `allprocess' list. Tested with i386 dpb(1) run. Stress tests and ok bluhm. | ||
| f43c9e49 | 2024-08-11 05:28:02 | forgot the suspend-time duplication mentioned in 1.25 | ||
| 842d3d5f | 2024-08-11 05:21:52 | put ACPI_SST_WAKING in gosleep() where kettenis asked for | ||
| d52f258d | 2024-08-11 03:27:29 | add name member to struct resource needed for newer inteldrm | ||
| 4cceae0f | 2024-08-11 01:02:10 | unbreak igc on strict alignment archs. igc (like other intel nics) only supports a limited range of rx buffer sizes, one of which is 2k like our standard mbuf clusters. however they put the ethernet packet at the start of the provided rx buffer, which means the ip header is misaligned on strict alignment archs if we use the standard 2k mbuf clusters. to avoid wasting too much memory using the next biggest cluster (4k) we have mcl2k2 clusters that pretty much exists for intel nics to use. igc (and probably some other drivers ive touched) was too clever about using mcl2k2 though, which caused panics when trying to use jumbo packets. jan@ fixed this by moving back to 2k clusters, but that broke sparc64 (and probably powerpc64). this dumbs the mcl2k2 handling down a bit so jumbos still work, but adds ETHER_ALIGN back so strict alignment archs also work again. ok bluhm@ |