IABSD.fr/src/sys

Branch :


Log

Author Commit Date CI Message
c00e5c15 2021-11-28 14:10:32 Spacing
dcbbabc2 2021-11-28 13:57:37 utvfu(4) only has one frame size, either for PAL or NTSC. Therefore return EINVAL after the first frame size has been returned in the VIDIOC_ENUM_FRAMESIZES ioctl. ok mpi@
6303db42 2021-11-28 09:25:02 Align with the recent memory allocation changes we did for the other USB HC drivers; M_DEVBUF -> M_USBHC. ok kettenis@
378d0f97 2021-11-27 16:25:40 previous commit causes gcc to perform an unaligned access to the tcphdr (at least on sparc64) since it accesses the bitfield using an "int sized" instructions, rather than the minimally sized byte instruction. This is permitted by the language laywers who probably prefer we change the tcphdr in every packet. It is not clear how to convince gcc to avoid this behaviour, and a week of futzing hasn't found fast path solutions yet. In the meantime the tree may not be broken.
f2e52126 2021-11-27 11:22:26 Let iwm(4) use per-Tx-queue interface timers to ensure that the interface watchdog will trigger a device timeout if a particular Tx queue gets stuck while other Tx queues keep working. The Linux driver is using a similar workaround for "stuck queues". I have only observed this problem on iwx(4) hardware but it won't hurt to add this workaround to iwm(4) as well.
fee0938b 2021-11-27 06:14:10 free() with nullptr is OK, but not if the size is unitialized, and the fail label is reachable before the sizes are known.
9d3ff0b4 2021-11-27 04:32:32 drm/amdgpu: fix set scaling mode Full/Full aspect/Center not works on vga and dvi connectors From hongao 04c586a601dc0acb8e739205db350ab660dffc4f in linux 5.10.y/5.10.82 bf552083916a7f8800477b5986940d1c9a31b953 in mainline linux
90d1a473 2021-11-27 04:29:00 drm/i915/dp: Ensure sink rate values are always valid From Imre Deak 47901b77bf7dc801a084a0b377aee5974d9bc4ce in linux 5.10.y/5.10.82 6c34bd4532a3f39952952ddc102737595729afc4 in mainline linux
d121ed5e 2021-11-27 04:26:18 drm/amd/display: Update swizzle mode enums From Alvin Lee 3d68d6ee83144044f610d67304cc194c2af7d0c5 in linux 5.10.y/5.10.82 58065a1e524de30df9a2d8214661d5d7eed0a2d9 in mainline linux
2b7c1a53 2021-11-27 00:49:21 stop building kernels with -Wno-uninitialized on clang archs this hides real problems that could be found at build time ok kettenis@ visa@, ok sashan@ on amd64/i386
164527d7 2021-11-26 19:24:41 Put a mutex assert locked into puttdb_locked(). OK tobhe@
acf1bec5 2021-11-26 16:16:35 Replace TDBF_DELETED flag with check if tdb was already unlinked. Protect tdb_unlink() and puttdb() for SADB_UPDATE with tdb_sadb_mutex. Tested by Hrvoje Popovski ok bluhm@ mvs@
b9702ae5 2021-11-26 15:21:26 The IORT table usually only contains single mappings. While on the LX2K there is a non-single mapping for the networking subsystem, we don't yet have support for it and apparently Linux has trouble with it as well. So for now we can remove the code, because it uses an uninitialized variable and there's no easy way to fix it without re-thinking the concept. The code got there in the first place because it's a copy of the same pattern in our other IOMMU code. ok jsg@
7a1c7215 2021-11-26 14:59:42 avoid clang -Wsometimes-uninitialized warning when DDB is not defined ok kettenis@ visa@
bc1aed81 2021-11-26 14:45:13 avoid clang -Wsometimes-uninitialized warning when MULTIPROCESSOR is not defined feedback from millert@, ok kettenis@, mips64 diff from and ok visa@
f702326e 2021-11-26 11:44:01 Add interfaces to enable all power domains for a node. ok patrick@, visa@
e8161590 2021-11-26 04:42:13 Mark exit1() and sigexit() as non-returning The late 1990s reasons for avoiding __dead with exit1() should not apply with the current compilers. This fixes compiler warnings about uninitialized variables in trap.c on mips64. Discussed with guenther@ and miod@
26e84031 2021-11-25 23:03:05 move label to fix RAMDISK
cf8183f3 2021-11-25 20:31:24 revert recent change, breakage reported by dv@
1fb03427 2021-11-25 14:51:26 Prepare iwx(4) for using new firmware (API version -67) in the future. Bump command versions array size as required for -67 firmware. Ignore new TLVs found in -67 images. Add room for another ucode section needed for -67 on AX201 devices.
4b0e5db3 2021-11-25 13:46:02 Implement reference counting for IPsec tdbs. Not all cases are covered yet, more ref counts to come. The timeouts are protected, so the racy tdb_reaper() gets retired. The tdb_policy_head, onext and inext lists are protected. All gettdb...() functions return a tdb that is ref counted and has to be unrefed later. A flag ensures that tdb_delete() is called only once. Tested by Hrvoje Popovski; OK sthen@ mvs@ tobhe@
2b3e5a55 2021-11-25 06:25:32 Assert that at least one report id is claimed during multiple report ids attachment. Should prevent uhidev drivers from doing the wrong thing in their corresponding match routine.
0c1e16a8 2021-11-24 22:03:05 Spacing and remove an unused macro.
7826e0f1 2021-11-24 21:57:56 Spacing
0712c17e 2021-11-24 21:47:14 Fix panic when running utvfu(4) on xhci(4). tested and ok ian@
6d361195 2021-11-24 18:48:33 When sending ICMP packets for IPsec path MTU discovery, the first ICMP packet could be wrong. The mtu was taken from the loopback interface as the tdb mtu was copied to the route too late. Without crypto task, ipsp_process_packet() returns the EMSGSIZE error earlier. Immediately update tdb and route mtu. IPv4 part from markus@; OK tobhe@
6bbcc068 2021-11-24 13:17:37 Fix type of count.
5c8bc909 2021-11-24 13:16:00 Simplify arithmetics on the main path.
b275c9b3 2021-11-24 12:40:40 Remove unneeded <sys/stdarg.h>. OK guenther@
dd434a6a 2021-11-24 10:40:15 Refactor postsig_done(). Pass the catchmask and signal reset flag to the function. This will make unlocking cursig() & postsig() a bit easier. OK mpi@
27e443ca 2021-11-24 10:28:55 Minor code cleanup. Move a comment to the right place, move a function to get a better order of functions. Also reduce the size of sigprop to NSIG from NSIG+1. NSIG is defined as 33 and so includes the extra element for this array. OK mpi@
7720a192 2021-11-24 09:47:49 Add a few dt(4) TRACEPOINTS to SMR. Should help to better understand what goes on in SMR. OK mpi@
e0790d6d 2021-11-23 19:13:45 Use system uptime not UTC time to calculate PPPoE session duration Systems without RTC are likely to boot with wrong time, but pppoe(4) used microtime(9) anyway to remember when a new session began. (In)adequately, ifconfig(8) used gettimeofday(2) and calculated the difference between two absoloute dates to infer the PPPoE session duration. This goes off the rails if the wall clock jumps in between, e.g. due to NTP kicking in. Use getmicrouptime(9) and clock_gettime(2)/CLOCK_BOOTTIME instead to rely on the monotonically increasing system uptime instead to fix this. Reported and tested by Peter J. Philipp <pjp AT delphinusdns DOT org> on some octeon box without RTC. I've seen this on a Edgerouter 4 as well (2m uptime, 19d session). OK claudio
67d345de 2021-11-23 01:44:44 Fix mbuf leaks after reception error in rge_rxeof(). Being that rge(4) is derived from re(4) it looks like it has the same issues as fixed in re(4) rev 1.211. From Brad ok gnezdo@
c3d6fcc7 2021-11-23 01:03:35 limit a variable to the scope inside #ifdef where it is used
2e1b133b 2021-11-23 00:17:59 avoid clang -Wsometimes-uninitialized warnings in fms(4) feedback and ok millert@
6169a18d 2021-11-22 22:12:37 use ISC license for ubcmtp
c0d00c5b 2021-11-22 20:25:50 Enable iicmux(4) and pcyrtc(4).
4d87e1c9 2021-11-22 20:20:20 Add pcyrtc(4), a driver for the NXP PCF85063A/TP RTC chips. ok patrick@
3ff7e2da 2021-11-22 20:19:23 Remove unused header files and make some cosmetic changes. ok patrick@
f1f10f33 2021-11-22 19:22:59 Hack alert! Apple M1 systems still don't work with an MP kernel. In order to make progress (and protect myself from things dumping cores left and right when I run sysupgrade) abuse the hw.smt mechanism to only schedule processes on the primary CPU. ok deraadt@, patrick@
8296614e 2021-11-22 17:15:05 Revert poll(2) back to the original implementation The translation to and from kqueue still has major shortcomings. Discussed with deraadt@
1cc89e63 2021-11-22 14:59:03 Translate POLLNVAL in ppollcollect() This makes the kqueue-based poll(2) behave more similarly to the old code when a monitored file descriptor is closed by another thread. OK mpi@
adec12fb 2021-11-22 14:57:17 Let futex_wait() run without kernel lock The KERNEL_LOCK() is no longer necessary with rwsleep() and PCATCH because the sleep machinery now does the locking internally. OK mpi@
7a97ce60 2021-11-22 14:00:52 avoid uninitialised variable use in igc(4) read icr reg before testing bit in result add missing block in rxeof from ix ok kevlo@ patrick@
a380976c 2021-11-22 13:47:10 Copy code from ip_forward() to ip6_forward() to fix Path MTU discovery in IPsec IPv6 tunnel. Implement sending ICMP6 packet too big messages. Also implement the pf error case in ip6_forward(). While there, do some cleanup and make the IPv4 and IPv6 code look similar. OK tobhe@
ac7c051c 2021-11-22 12:56:04 move PFR_TFLAG_CONST test, missed in rev 1.138 prompted by uninitialised var found by bluhm@ running regress on sparc64 ok sashan@
2ba07590 2021-11-22 12:55:40 vmm(4): copyout guest state on VM_EXIT_NONE Partly related to a bug reported by kn@. We should be copying out the guest exit state (including registers) when we succesfully return from the vcpu run loop even if we don't require an emulation assist from userland/vmd(8). This condition was introduced when I removed the use of yield() and instead exit the kernel if the scheduler says we've hogged the cpu. ok mlarkin@
3dfa0d79 2021-11-22 11:46:11 M_USB -> M_USBHC
3286dae3 2021-11-22 11:30:16 Drop the old problematic claim multiple report ids logic now that all uhidev drivers have been fixed.
36b6d2a9 2021-11-22 11:29:17 Add missing claim multiple report ids conditionals to uhidev drivers.
ba873ce1 2021-11-22 11:01:12 Make iwx(4) update an Rx BA session's last_rx timestamp when a frame is received which matches the session. Same change as just made in iwm(4).
b2741758 2021-11-22 11:00:50 Make iwm(4) update an Rx BA session's last_rx timestamp when a frame is received which matches the session. Tested by myself and bket@
08f56582 2021-11-22 10:54:36 Let iwx(4) use per-Tx-queue interface timers to ensure that the interface watchdog will trigger a device timeout if a particular Tx queue gets stuck while other Tx queues keep working. The Linux driver is using a similar workaround for "stuck queues". Tested by myself and jmc@
16385fb6 2021-11-22 10:47:55 In iwx(4), fix off-by-one errors during TID value bounds checks. The TID is used as an array index and, according to the Linux driver, must be smaller than IWX_MAX_TID_COUNT (8). The AP might request an Rx aggregation session using TID 8. Our driver uses the TID as an index into an array of IEEE80211_NUM_TID (16) elements, and hence would not crash. However, the index is exposed to firmware which could potentially crash or raise an assertion failure for values >= 8. ok kettenis@
34d6c773 2021-11-22 10:31:58 Fix iwx(4) Tx ring array size which was one entry too short. Fortunately, this bug was harmless. The last Tx agg queue is never used because ieee80211_classify() only returns TID values in the range 0 - 3. And iterations over the txq array use nitems() to find the upper bound. The possiblity of shrinking the txq array by 4 elements to get rid of unused Tx agg queues could be investigated later. For now, just fix the off-by-one error. ok kettenis@
aa0dbe02 2021-11-22 10:23:42 Let iwm(4) resume directly in DVACT_WAKEUP instead of running the init task. Same change as made for iwx(4) some time ago. tested by myself and bket@
8985a220 2021-11-22 10:17:14 Align memory allocation for USB device drivers and USB HC drivers: * USB device drivers use M_USBDEV instead of M_DEVBUF. * USB HC drivers use M_USBHC instead of M_DEVBUF. In a vanilla setup, this enlarges the USB memory pool. ok anton@
d3bc19d9 2021-11-22 03:30:20 avoid clang -Wsometimes-uninitialized warning with SMALL_KERNEL
c9989a63 2021-11-21 23:07:11 correct the vnd-on-vnd dev_t test, and avoid leaking a cred in an obscure condition ok tb
6b86e016 2021-11-21 16:17:48 Add the new `ipsec_exctdb' ipsec(4) counter to count and expose to the userland the TDBs which exceeded hard limit. Also the `ipsec_notdb' counter description in header doesn't math to netstat(1) description. We never count `ipsec_notdb' and the netstat(1) description looks more appropriate so it's used to avoid confusion with the new counter. ok bluhm@
c625d62f 2021-11-21 11:02:21 Add iicmux(4), a driver that switches between I2C busses connected to a single I2C controller by using the pin muxing facilities of an SoC. ok visa@
cc17cd85 2021-11-21 11:00:40 Register i2c bus. ok jsg@
4fef9ed3 2021-11-21 02:54:56 Fix whitespace and long lines.
e6eeb55a 2021-11-19 15:58:36 Make futexes work in shared anonymous memory. ok mpi@
f28d0cfa 2021-11-19 13:05:19 Fix monitor mode on iwm(4) and iwx(4). Set sc->ns_nstate when bypassing the driver's newstate handler while bringing the interface down. Otherwise, if the interface was already running, the INIT->RUN transition which kicks off monitor mode will appear as a RUN->RUN transition to the driver's newstate handler, and the handler will do nothing. Monitor mode did not work as a result.
7f3e0614 2021-11-19 07:58:34 whitespace tweaks. no functional change. a lot more knf could be sprinkled in this file...
e219843c 2021-11-19 07:56:53 let CH340 chips keep working in 8N1 mode. they get confused if you try to configure them and don't work at all otherwise. CH341 seems fine otherwise. from miod tested by me and Felix Kronlage-Dam
e39a0fa5 2021-11-19 04:00:53 Correct the CPUID() and CPUID_LEAF() macros to not include a trailing semicolon ok deraadt@
d47dcf0f 2021-11-19 03:22:29 drm/plane-helper: fix uninitialized variable reference From Alex Xu 2e548581fe5b48730d814916bd6bb8f8d8b5375a in linux 5.10.y/5.10.80 7be28bd73f23e53d6e7f5fe891ba9503fc0c7210 in mainline linux
0e3f96a8 2021-11-19 03:19:13 drm/amdgpu/gmc6: fix DMA mask from 44 to 40 bits From Alex Deucher ae1f588ca1b0c9e2f82c14479e408759a786f701 in linux 5.10.y/5.10.80 403475be6d8b122c3e6b8a47e075926d7299e5ef in mainline linux
d458d8d3 2021-11-19 03:17:33 drm/amdgpu: fix warning for overflow check From Arnd Bergmann 375150b3aaf8cf7d01f6f0b582e264dd2fded814 in linux 5.10.y/5.10.80 335aea75b0d95518951cad7c4c676e6f1c02c150 in mainline linux
650de766 2021-11-19 03:12:48 drm/ttm: stop calling tt_swapin in vm_access From Matthew Auld cbbf816cb7f9a84696b1f6277fee85c67a1c590c in linux 5.10.y/5.10.80 f5d28856b89baab4232a9f841e565763fcebcdf9 in mainline linux
1a0f1eba 2021-11-19 03:10:49 drm/amd/display: dcn20_resource_construct reduce scope of FPU enabled From Anson Jacob 6f038b1a941e87886f6bbced0a65aea343a9859e in linux 5.10.y/5.10.80 bc39a69a2ac484e6575a958567c162ef56c9f278 in mainline linux
e971b903 2021-11-19 03:08:23 drm/amdkfd: fix resume error when iommu disabled in Picasso From Yifan Zhang 832fad367cac9ca075a1aff92e21dc77ea308e96 in linux 5.10.y/5.10.80 6f4b590aae217da16cfa44039a2abcfb209137ab in mainline linux
924fe604 2021-11-19 03:06:01 drm/amdgpu: Fix MMIO access page fault From Andrey Grodzovsky 2114f80889d89f96e65e0f8a74bd0ecf10b658f5 in linux 5.10.y/5.10.80 c03509cbc01559549700e14c4a6239f2572ab4ba in mainline linux
5f425d60 2021-11-19 03:03:57 drm/panel-orientation-quirks: add Valve Steam Deck From Simon Ser 7987f31e54a2a453c54bdc516fe7a48035fddf03 in linux 5.10.y/5.10.80 9eeb7b4e40bfd69d8aaa920c7e9df751c9e11dce in mainline linux
d0f61c30 2021-11-19 03:01:48 drm: panel-orientation-quirks: Add quirk for the Samsung Galaxy Book 10.6 From Hans de Goede 509ae4a4f0745bff108723e5d9a61b1113ea89fe in linux 5.10.y/5.10.80 88fa1fde918951c175ae5ea0f31efc4bb1736ab9 in mainline linux
5f285dbf 2021-11-19 02:59:07 drm: panel-orientation-quirks: Add quirk for KD Kurio Smart C15200 2-in-1 From Hans de Goede 62b90d7eeb6deb0124dcfe1b12f41c1524d26352 in linux 5.10.y/5.10.80 a53f1dd3ab9fec715c6c2e8e01bf4d3c07eef8e5 in mainline linux
9bbdab88 2021-11-19 02:56:07 drm: panel-orientation-quirks: Update the Lenovo Ideapad D330 quirk (v2) From Hans de Goede 780fff2c75f096f3bc46855b105b83b4cec5cba7 in linux 5.10.y/5.10.80 820a2ab23d5eab4ccfb82581eda8ad4acf18458f in mainline linux
ff949892 2021-11-19 02:53:39 drm: panel-orientation-quirks: Add quirk for GPD Win3 From Mario Risoldi 7d1fb5c12cc0c88159ebf946385141ed3019f009 in linux 5.10.y/5.10.80 61b1d445f3bfe4c3ba4335ceeb7e8ba688fd31e2 in mainline linux
e61f6ebf 2021-11-19 02:51:05 drm: panel-orientation-quirks: Add quirk for Aya Neo 2021 From Bryant Mairs bc3e73ebb79b01abc121703669c65f54f0023cfe in linux 5.10.y/5.10.80 def0c3697287f6e85d5ac68b21302966c95474f9 in mainline linux
a6e3a783 2021-11-18 16:57:59 vndsetcred: don't a reference to credentials in error path. ok deraadt
fdab00c0 2021-11-18 11:04:10 printing udpencap_port in ddb requires ntohs not ntohl. use better format string. help claudio@ ok bluhm@
d320ed92 2021-11-17 22:56:19 When unp_connect() releases both solock() and vnode(9) locks the socket we were connected could be closed by concurrent thread. Check connection state and return ECONNREFUSED if the connection was lost. ok bluhm@
97bcf35f 2021-11-17 18:00:24 Display DNS information from sppp(4) in ifconfig(8) Behaviour is similar to that of umb(4). OK kn@
3c78a55b 2021-11-17 15:15:32 Disable active scanning on iwm(4) 9260 and 9560. For some reason, if we send a scan command that actively scans for a particular SSID with probe requests, the device will occasionally lock up after associating to the AP, with no interrupts, totally dead. The symptom of this is an interface that shows as "active" in ifconfig but does not receive or transmit any packets. Observed by kmos@ for some time already, and myself while testing new Intel wifi firmware versions on iwm(4) 9560. This problem was also observed on AX200 by me with old firmware. We had the same workaround in place for iwx(4) for some time, until we upgraded that driver to use newer firmware which uses a different scan command. Workaround tested by kmos@ and myself.
e7f3461c 2021-11-17 06:22:14 uhidpp does claim multiple report ids
0339b960 2021-11-17 06:21:23 ucc does not claim multiple report ids
5331a82c 2021-11-17 06:20:30 Fix a double free in uhidev_close() caused by a race between uhidev_open() and uhidev_close(). In uhidev_close() the UHIDEV_OPEN flag is cleared early on but the same thread can end up sleeping while closing the input or output pipe. This allows another thread to enter uhidev_open() but only to fail opening either the input or output pipe since they are already open for exclusive use. The uhidev_open() error path frees the input buffer but leaves a dangling pointer around; causing uhidev_close() to free the same buffer. This can at least happen on xhci(4) which can end up sleeping in xhci_pipe_close(). Reported by and ok gnezdo@
999a6f61 2021-11-16 20:51:30 move memory allocations in pfr_add_addrs() outside of NET_LOCK()/PF_LOCK() scope. feedback by bluhm@ OK bluhm@
50eb7ec0 2021-11-16 13:53:14 To debug IPsec and tdb refcounting it is useful to have "show tdb" and "show all tdbs" in ddb. tested by Hrvoje Popovski; OK mvs@
ebddda04 2021-11-16 13:48:23 Use nowake when poll/select has empty fd set When the fd set is empty, the code waits for a signal or timeout. Wakeups from the kqueue are neither expected nor wanted. OK cheloha@, millert@, anton@, mpi@
683b6242 2021-11-16 12:56:11 fix typo in an error message printed by iwx_phy_ctxt_update()
9ba1a80d 2021-11-16 12:55:50 fix typo in an error message printed by iwm_phy_ctxt_update()
e6a8b72f 2021-11-16 10:20:52 hilkbd(4): Fix swedish keyboard layout botch on non-PS/2 style keyboards introduced in 1.7 and preventing `o' and `p' keys from working as intended. Reported by Anders Gustafsson. From miod@
7429db10 2021-11-16 08:56:19 Move UNIX domain sockets garbage collector out of `unp_lock. Except `unp_ino' this leaves only per-socket data protected by `unp_lock'. The `unp_ino' protection is not the big deal and will be done with mutex(9) in the future diff. The garbage collector flags moved from from `unp_flags' to unp_gcflags'. The two new locks introduced to protect garbage collector data. The `unp_gc_lock' rwlock(9) protects `unp_defer', `unp_gcing', `unp_gcflags' and `unp_link' list. The `unp_df_lock' protects `ud_link' list. We need to simultaneously lock `unp_gc_lock' and `unp_lock'. When we perform unp_attach() or unp_detach() we link PCB to `unp_link' list with `unp_lock' held. But when unp_gc() does `unp_link' list walkthrough with the `unp_gc_lock' lock held it should lock socket while performs `so_rcv' buffer scan and the lock order should be the opposite. In the future diff `unp_lock' will be replaced by per-socket `so_lock' so it's better to enforce `unp_gc_lock' -> `unp_lock' (solock()) lock order and release `unp_lock' in the unp_attach() and unp_detach() paths. The previously committed diffs made this safe. The `unp_df_lock' introduced because the `unp_lock' and `unp_gc_lock' state are unknown when unp_discard() called. Since it touches only `ud_link' list the re-lock dances are unwanted in this path. Also this keeps M_WAITOK allocation outside rwlock(9) when unp_discard() called from unp_externalize() error path. ok bluhm@
215f4190 2021-11-15 17:14:51 Copy p_p->ps_pledge into a local variable (called pledge) in every function which checks PLEDGE_* bits more than once. Some functions are called without locking, and this avoids misinterpreting bits which have some coupled behaviour. ok cheloha kettenis
11ff4ff1 2021-11-15 15:48:54 Revert to eager removal of poll/select knotes This should prevent a panic that bluhm@ has reported.
befafe11 2021-11-15 15:38:08 Third attempt to solve the claim multiple report ids conflict. Using the report id to signal that multiple ones should be claimed by the match routines does not work. All valid report ids 1-255 cannot of course be used and 0 which is reserved by the USB HID specification is internally used to represents devices lacking an explicit report id. Therefore, use presence of the claimed array to signal that multiple report ids can be claimed. Tested by gnezdo@