Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| fecf25f8 | 2020-07-16 23:06:43 | adjtime(2): distribute skew along arbitrary period on runtime clock The adjtime(2) adjustment is applied at up to 5000ppm/sec from tc_windup(). At the start of each UTC second, ntp_update_second() is called from tc_windup() and up to 5000ppm worth of skew is deducted from the timehands' th_adjtimedelta member and moved to the th_adjustment member. The resulting th_adjustment value is then mixed into the th_scale member and thus the system UTC time is slowly nudged in a particular direction. This works pretty well. The only issues have to do with the use of the the edge of the UTC second as the start of the ntp_update_second() period: 1. If the UTC clock jumps forward we can get stuck in a loop calling ntp_update_second() from tc_windup(). We work around this with a magic number, LARGE_STEP. If the UTC clock jumps forward more than LARGE_STEP seconds we truncate the number of iterations to 2. Per the comment in tc_windup(), we do 2 iterations instead of 1 iteration to account for a leap second we may have missed. This is an anachronism: the OpenBSD kernel does not handle leap seconds anymore. Such jumps happen during settimeofday(2), during boot when we jump the clock from zero to the RTC time, and during resume when we jump the clock to the RTC time (again). They are unavoidable. 2. Changes to adjtime(2) are applied asynchronously. For example, if you try to cancel the ongoing adjustment... struct timeval zero = { 0, 0 }; adjtime(&zero, NULL); ... it can take up to one second for the adjustment to be cancelled. In the meantime, the skew continues. This delayed application is not intuitive or documented. 3. Adjustment is deducted from th_adjtimedelta across suspends of fewer than LARGE_STEP seconds, even though we do not skew the clock while we are suspended. This is unintuitive, incorrect, and undocumented. We can avoid all of these problems by applying the adjustment along an arbitrary period on the runtime clock instead of the UTC clock. 1. The runtime clock doesn't jump arbitrary amounts, so we never get stuck in a loop and we don't need a magic number to test for this possibility. With the removal of the magic number LARGE_STEP we can also remove the leap second handling from the tc_windup() code. 2. With a new timehands member, th_next_ntp_update, we can track when the next ntp_update_second() call should happen on the runtime clock. This value can be updated during the adjtime(2) system call, so changes to the skew happen *immediately* instead of up to one second after the adjtime(2) call. 3. The runtime clock does not jump across a suspend: no skew is deducted from th_adjtimedelta for any time we are offline and unable to adjust the clock. otto@ says the use of the runtime clock should not be a problem for ntpd(8) or the NTP algorithm in general. | ||
| 604cf95e | 2020-07-16 21:49:41 | Pass the interrupt handler cookie instead of the pointer to it to intr_barrier(9). Fixes mysterious panics seen while working on intr_barrier(9) for arm64. ok jmatthew@ | ||
| 122a6b72 | 2020-07-16 21:26:18 | Rewrite loop to match what is written down in the ABI document. ok drahn@ | ||
| 0b29cb40 | 2020-07-16 21:18:29 | Access adapter softc via link->bus->sb_adapter_softc. In sparc64 autoconf access 'luns' via sb_luns and 'adapter_buswidth' via sb_adapter_buswidth. Removes last post-config uses of the copies of bus related information in scsi_link. | ||
| af856e3a | 2020-07-16 21:18:09 | Make lazy binding work. Committing on behalf of drahn@ who is a bit busy. | ||
| a37af58c | 2020-07-16 20:08:12 | Remove obsolete LOCALE_HOME code we have never used (and never will). Upstream removed it in 2004. From Jan Stary. | ||
| a79842c9 | 2020-07-16 19:48:58 | First stab at a bootloader for OpenBSD/powerpc64. Based on the same principle (and mostly copied from) the bootloader written by visa@ for OpenBSD/octeon. Needed because the petitboot environment provided by the OpenPower firmware is unsuitable for loading OpenBSD kernels properly. | ||
| b82a4de3 | 2020-07-16 19:44:19 | regen | ||
| cd75e4e9 | 2020-07-16 19:42:47 | Bootloader magic. | ||
| c93d5785 | 2020-07-16 19:42:18 | Add disk description for bootloader ramdisk. | ||
| d7917304 | 2020-07-16 19:41:03 | Add BOOT kernel config. | ||
| 210f3d83 | 2020-07-16 19:37:58 | Add a pseudo-driver to "kexec" an OpenBSD/powerpc64 kernel. Heavily based on the octboot driver that we use for octeon. To be used in the bootloader kernel. | ||
| 8c64a04e | 2020-07-16 19:10:33 | Reset firmware state upon reboot. | ||
| 0833c9ba | 2020-07-16 17:47:41 | add -T option to make time related system calls more prominent. ok deraadt | ||
| 22966de3 | 2020-07-16 17:47:09 | allow setenv LIBC_NOUSERTC to disable userland timekeeping, for ktrace. ok deraadt pirofti | ||
| 4ca7f2b6 | 2020-07-16 17:38:24 | Remove unused assignment. | ||
| c45df278 | 2020-07-16 17:16:17 | Make sure to update policy dependant SA fields after policy_lookup(). ok kn@ patrick@ | ||
| 67c3123b | 2020-07-16 14:44:55 | Access scsibus_softc info (luns, adapter, adapter_target, adapter_softc, adapter_buswidth) via link->bus rather than using copies currently residing in the link. | ||
| 79bae57a | 2020-07-16 13:41:36 | sync | ||
| 9a5dcdbb | 2020-07-16 13:03:39 | Store struct cpu_info * in arm64's interrupt wrap. intr_barrier() can already assume every cookie is wrapped and simply retrieve the pointer from it. It's a bit of a layer violation though, since only the intc should actually store that kind of information. This is good enough for now, but I'm already cooking up a diff to resolve this. ok dlg@ | ||
| 72d45bb7 | 2020-07-16 12:57:30 | To be able to have intr_barrier() on arm64, we need to be able to somehow gain access to the struct cpu_info * used to establish the interrupt. One possibility is to store the pointer in the cookie returned by the establish methods. A better way would be to ask the interrupt controller directly to do barrier. This means that all external facing interrupt establish functions need to wrap the cookie in a common way. We already do this for FDT-based interrupts. Also most PCI controllers already return the cookie from the FDT API, which is already wrapped. So arm64's acpi_intr_establish() and acpipci(4) now need to explicitly wrap it, since they call ic->ic_establish directly, which does not wrap. ok dlg@ | ||
| 41e86d54 | 2020-07-16 12:38:43 | Beef up struct scsibus_softc to hold the information needed to initialize the scsi_link's on the bus. After sucking this information out of the "prototype" link provided by the scsibus_attach_arg, no need to keep a pointer to that prototype. | ||
| 2d8fcdc3 | 2020-07-16 10:17:09 | drm/i915: Also drop vm.ref along error paths for vma construction From Chris Wilson 5e53344673fcf1df8ff52675ab0539fff26a8e29 in linux 5.7.y/5.7.9 cf1976b11372cac3b57fbae1831f66a4486355d3 in mainline linux | ||
| ee7f71c2 | 2020-07-16 10:14:13 | drm/i915: Drop vm.ref for duplicate vma on construction From Chris Wilson 98762e5b00567622d57295d2d3389aea2c37be03 in linux 5.7.y/5.7.9 42723673a193d5f8e30dba6ea9826d42262a502b in mainline linux | ||
| 28304a26 | 2020-07-16 10:11:33 | drm/amdgpu: asd function needs to be unloaded in suspend phase From Huang Rui 22ff658396b44606163ad0231e8215309a26d613 in linux 5.7.y/5.7.9 20303ec5d2165ee6344190274bc59118921f71d9 in mainline linux | ||
| 6bd9a77d | 2020-07-16 10:09:22 | drm/amdgpu: add TMR destory function for psp From Huang Rui 2c41c968c6f6480860c67210815cadc6507f5014 in linux 5.7.y/5.7.9 c564b8601ae917086751d90f464d5f19d731ece7 in mainline linux | ||
| 60ed5e11 | 2020-07-16 10:07:02 | drm/amdgpu: don't do soft recovery if gpu_recovery=0 From Marek Olsak d7915047a1d59474d06789a9dd1925064969e080 in linux 5.7.y/5.7.9 f4892c327a8e5df7ce16cab40897daf90baf6bec in mainline linux | ||
| ec9a754d | 2020-07-16 10:03:44 | drm/i915: Skip stale object handle for debugfs per-file-stats From Chris Wilson d073ed965cd908d320d49824dee02c80168f96a8 in linux 5.7.y/5.7.9 7dfbf8a07cf8c936b0d6cc810df6ae7923954d5b in mainline linux | ||
| 15914761 | 2020-07-16 10:01:41 | drm/i915/gt: Pin the rings before marking active From Chris Wilson 096b85c64987a0ef4fcc6ac0e3c3661573828df1 in linux 5.7.y/5.7.9 5a383d443b29a140094430f3ad1d02fa1acc2b80 in mainline linux | ||
| 82efeb8e | 2020-07-16 09:59:17 | drm/radeon: fix double free From Tom Rix 67e9648f20524ff6824ebeb26afea45f7d9c300d in linux 5.7.y/5.7.9 41855a898650803e24b284173354cc3e44d07725 in mainline linux | ||
| df64a991 | 2020-07-16 09:56:50 | drm: panel-orientation-quirks: Use generic orientation-data for Acer S1003 From Hans de Goede 109b3b4e2a0f5bfda023a1b91b404fac31ba6808 in linux 5.7.y/5.7.9 a05caf9e62a85d12da27e814ac13195f4683f21c in mainline linux | ||
| 86b21ffc | 2020-07-16 09:53:49 | drm: panel-orientation-quirks: Add quirk for Asus T101HA panel From Hans de Goede e64e92fea2bf85d9f33304faf973c46859afd0f7 in linux 5.7.y/5.7.9 6c22bc18a3b93a38018844636557ad02e588e055 in mainline linux | ||
| ff2b09e8 | 2020-07-16 09:50:39 | drm/ttm: Fix dma_fence refcnt leak when adding move fence From Xiyu Yang bfd4297fd74ebb18d05044e49f1ff2fedd2ece8d in linux 5.7.y/5.7.9 11425c4519e2c974a100fc984867046d905b9380 in mainline linux | ||
| 9eae3c38 | 2020-07-16 09:48:22 | drm/ttm: Fix dma_fence refcnt leak in ttm_bo_vm_fault_reserved From Xiyu Yang f5e6ec57e3cbe37cd3ef52d18de6be9953ee105a in linux 5.7.y/5.7.9 37cc4b95d13f311c04aa8e9daacca3905ad45ca7 in mainline linux | ||
| eaab1492 | 2020-07-16 09:47:16 | Since the page tables could be larger than 256MB allow for multiple segments to map them. | ||
| aff45b01 | 2020-07-16 05:45:03 | Remove the refill timeout and wait for interrupts to finish when bringing the interface down. prompted by a crash seen by Hrvoje Popovski ok dlg@ | ||
| 8014a50b | 2020-07-16 03:04:50 | use a mutex to serialise the test and set of ifp->if_link_state. this was serialised by NET_LOCK, but now i get link state change information in an interrupt context, so i shouldn't (can't) do that anymore. ok jmatthew@ | ||
| f1bd1ab1 | 2020-07-16 01:50:25 | Fix perl bugs that had me printing the wrong cert number for errors | ||
| 4e804522 | 2020-07-16 00:58:02 | sc_atq_mtx is unused, so get rid of it | ||
| b296e835 | 2020-07-16 00:52:33 | Initialize sis_ring_init() 'sis_rx_prod' and 'sis_rx_cons' to 0. ok mpi@, deraadt@ | ||
| c4e156dd | 2020-07-15 22:58:33 | Userland timecounter implementation for arm64. ok naddy@ | ||
| a03326bb | 2020-07-15 22:49:07 | ieee80211: track micfail timeout with getuptime(9) instead of ticks With input from stsp@. ok stsp@ | ||
| e44adad9 | 2020-07-15 22:46:51 | powerpc64 has the sysctl's for power control, so it can use the apmd/apm combo for -L/-H and such. (it gets all the rest of the mess too) ok kettenis | ||
| 631c607e | 2020-07-15 21:20:08 | settimeofday(2): securelevel 2: prevent root from freezing the UTC clock At securelevel 2 we prevent root from rewinding the kernel UTC clock. The rationale given in the comment is that this prevents a compromised root from setting arbitrary timestamps on files. I can't really speak to the efficacy of this mitigation, or to the efficacy of the securelevel concept in general, but the implementation of this mitigation is wrong. We need to check: timespeccmp(ts, &now, <=) instead of timespeccmp(ts, &now, <) like we do now. Time is a continuous value that is always advancing. We must prevent root from setting the kernel UTC clock to its current value in addition to prior values. Setting the UTC clock to its current value amounts to rewinding it even if we cannot actually measure the difference with a timespec. With this change, at securelevel 2, root can no longer completely freeze the UTC clock. | ||
| 1a802015 | 2020-07-15 14:47:41 | Remove unused variables | ||
| adb74705 | 2020-07-15 14:45:15 | Make CERT and CERTREQ payloads optional for public key authentication. When using certificate authentication the CERT payload is mandatory and as the name suggests is used to send a certificate containing a public key used for the authentication signature. For pubkey authentication the key is preshared and stored locally, but only the 'ca' process can read the local keys. The 'ikev2' process had to get the key from the received CERT payload to verify the authentication signature. The peer ID + raw key was then forwarded to the 'ca' process which compared the key against the contents of /etc/iked/pubkey and returned either CERTVALID or CERTINVALID. With this change a message containing only the ID may be sent from 'ikev2' to the 'ca' process if CERT was not included. In this case the CA process will try to find a local key matching the ID and return it to the 'ikev2' process. The auth verification happens after the 'ca' process has verified or found a key and returned it to the 'ikev2' process, eliminating the need for the CERT payload. Making CERTREQ optional is easier because we already have a fallback case if the CERTREQ can not be fulfilled. If no CERTREQ was received we now use this same fallback. This should fix public key authentication interoperability with *swan and other IKEv2 implementations. ok and tested by kn@ ok patrick@ | ||
| 63dbfcd1 | 2020-07-15 13:02:44 | Fix races in pppacopen() caused by malloc(9). ok mpi@ | ||
| 99ec89c2 | 2020-07-15 12:36:01 | Fix agintc(4) for non-MULTIPROCESSOR kernels. Due to the recent changes the driver expected that it can find all CPUs referenced by the interrupt controller. Since on non-MP we only spin one core up, the driver won't ever be able to find them. Relax the requirement for non-MP, since the info extracted there is only needed for MP. ok kettenis@ | ||
| 38f1be56 | 2020-07-15 11:56:29 | Add sizes to free(9) calls All of these buffers are cleared with explicit sizes before free(), so reuse the given sizes. tested and OK tobhe | ||
| 24c7ba2a | 2020-07-15 11:33:12 | Run the sxitemp(4) at IPL_SOFTCLOCK instead of IPL_VM. Prevents "panic: mtx ...: locking against myself" on Orange Pi Zero. Analysis by patrick@: "The thermal sensor framework uses its own taskq with IPL_SOFTCLOCK. sxitemp(4) calls thermal_sensor_update() from interrupt context, and sxitemp(4) is using IPL_VM (memory allocation?!) for its interrupt. IPL_VM is obviously higher than IPL_SOFTCLOCK, so it ends up being able to interrupt the taskq. Even though we're in msleep_nsec, I think we have *not yet* given up the mutex, that we are holding while looking for more work, only releasing it while sleeping. Thus, the interrupt runs task_add(), which tries to grab the taskq's mutex, even though the taskq already holds it!" ok patrick@ kettenis@ | ||
| e8b59d3c | 2020-07-15 11:03:17 | Renumber after killing windows for choose-tree. | ||
| f8fbf366 | 2020-07-15 10:19:42 | Add a forward declaration of struct cpu_info. Fixes build of RAMDISK kernels. | ||
| 5cafaabf | 2020-07-15 10:09:54 | Handle padding cells correctly when searching, GitHub issue 2301. | ||
| 34a5437d | 2020-07-15 08:34:25 | Optimize character rendering in 32bpp mode, with unrolled rows and pairwise foreground / background pixel rendering. This does double-pixel rendering for the common font widths (8, 12, 16, and 32 pixels wide), resulting in a significant speed-up. No regression noticed on 32-bit architectures. Tested by weerd@, and by abieber@ on macppc. From John Carmack, thanks! | ||
| 37390617 | 2020-07-15 08:24:29 | Use CPU_IS_PRIMARY macro on alpha and mips64. OK deraadt@, visa@ | ||
| ff0c9233 | 2020-07-15 07:50:46 | - Add [-a rounds] in ssh-keygen man page and usage() - Reorder parameters list in the first usage() case - Sentence rewording ok dtucker@ jmc@ noticed usage() missed -a flag too | ||
| 78b494b9 | 2020-07-15 07:27:07 | tmpfs_reclaim() has to make sure the VFS cache has no more locks held for the vnode. ok beck@ | ||
| 70436566 | 2020-07-15 07:15:00 | Use SENSOR_ENERGY as the type of energy sensors. | ||
| e8afce5b | 2020-07-15 07:13:56 | POWE9 CPUs provide an energy sensor that accumulates the emount of energy used by the processor chip. Although we have a SENSOR_WATTHOUR sensor type its units are not really suitable for this sensor. So add a SENSOR_ENERGY type that uses micro Joules as its unit. ok deraadt@ | ||
| b047647f | 2020-07-15 06:43:16 | Fix previous by calling the correct function. | ||
| 1751a375 | 2020-07-15 05:40:05 | start sentence with capital letter; | ||
| bea1c701 | 2020-07-15 05:36:50 | Update test to match recent change in match.c | ||
| 3190faf3 | 2020-07-15 04:55:47 | Use $OBJ to find key files. Fixes test when run on an obj directory (on OpenBSD) or out of tree (in Portable). | ||
| ca19ff74 | 2020-07-15 04:36:02 | patrick@ pointed out there was a gap in the flow group numbering. ok dlg@ | ||
| 3a1e91d3 | 2020-07-15 04:27:34 | Add default for number of rounds (-a). ok djm@ | ||
| aebafcd6 | 2020-07-15 03:49:59 | The exit code from the perl matters here | ||
| 747f195e | 2020-07-15 03:44:42 | Don't leak the X509_STORE | ||
| 11623c6a | 2020-07-15 03:32:51 | Consistently convert syndrome codes from big endian before printing them. ok dlg@ | ||
| 3d006088 | 2020-07-15 03:12:42 | Add certificate validation tests generated using the tools from bettertls.com, and a verification suite to try each certificate in the same manner as the web based tests do using X509_verify. This includes the list of "known" failures today in our validaion code so we can move forward without moving back. | ||
| e65f1ede | 2020-07-15 02:29:26 | Scott Cheloha convinces me the newly added tsleep_nsec should be tsleep, to hint we are doing the minimum scheduler sleep (and as side effect, collecting potential signal status) | ||
| 0ae95be1 | 2020-07-14 23:57:01 | allow some additional control over the use of ssh-askpass via $SSH_ASKPASS_REQUIRE, including force-enable/disable. bz#69 ok markus@ | ||
| 6ae00b2d | 2020-07-14 21:11:54 | Properly clean up and dereference 'old' policy after failed lookup. ok patrick@ | ||
| b536459a | 2020-07-14 20:52:44 | Print real/avail mem like we do on all other architectures. | ||
| 8c3334e9 | 2020-07-14 20:40:48 | Make INTx interupts work. | ||
| 68715bef | 2020-07-14 20:39:40 | Add xics(4), a driver for the OPAL virtual ICS. | ||
| c5e78cb5 | 2020-07-14 20:37:18 | Add FDT interrupt support. | ||
| af806480 | 2020-07-14 19:08:30 | Convert option handling for openssl(1) verify. ok inoguchi@, tb@ | ||
| 30342cdf | 2020-07-14 18:55:59 | Dedup the use legacy stack code. ok inoguchi@ tb@ | ||
| a759cde3 | 2020-07-14 18:47:50 | Revert the TLSv1.3 version switching fix/hack. This is no longer necessary since the TLS_method() now supports TLSv1.3. Reverts r1.211 of ssl_lib.c. ok beck@ inoguchi@ tb@ | ||
| 2520d021 | 2020-07-14 18:33:34 | Enter the certs regress directory. | ||
| fbd64e3c | 2020-07-14 18:33:00 | Add regress for X509_verify() using the new bundles. A number of these tests are known to fail due to bugs/incorrect verification implementation. | ||
| 4cfece93 | 2020-07-14 18:29:16 | Provide generated certificate bundles and roots for regress. ok beck@ tb@ | ||
| 7db2fa27 | 2020-07-14 18:27:28 | Provide tools to build certificate changes for verify regress. This provides a script that generates a variety of certificate chains and assembles them into bundles containing various permutations, which can be used to test our X.509 verification. A Go program is included to verify each of these bundles. ok beck@ tb@ | ||
| 056d7610 | 2020-07-14 18:25:22 | Use a rwlock to protect the ttylist, rather than having ttymalloc/ttyfree callers use spltty. ok kettenis | ||
| 5bc6646e | 2020-07-14 18:13:22 | Force TLSv1.2 when testing SSLv3/TLSv1.2 cipher suites. Otherwise we end up switching to TLSv1.3 and using a TLSv1.3 cipher suite. | ||
| 17e2d200 | 2020-07-14 18:11:16 | Add a -tls1_2 option so we can force TLSv1.2 for testing. | ||
| 0e7f811a | 2020-07-14 17:03:13 | Mark unmanaged kernel mappings as wired and skip them if we need to evict a mapping from the page tables. | ||
| e6e88c3f | 2020-07-14 16:54:46 | Put some debug code behin #ifdef TRAP_DEBUG. | ||
| 874055c7 | 2020-07-14 16:48:13 | Fix TIB/TCB on powerpc64. Some bright sould decided that the TCB should be 8 bytes in the 64-bit ABI just like in the 32-bit ABI. But that means there is no "spare" word in the TCB that we can use to store a pointer to our struct pthread. So we have to treat powerpc64 special. Also recognize that the thread pointer points 0x7000 bytes after the TCB. Since the TCB is 8 bytes this means that TCB_OFFSET should be 0x7008. Pointed out by guenther@; ok deraadt@ | ||
| c39afc64 | 2020-07-14 16:40:04 | getopt(3) returns an int so don't use a char to store its return value. Makes the test work on architectures where char is unsigned. ok deraadt@, millert@ | ||
| 7c59a772 | 2020-07-14 16:01:08 | Add support for routing interrupts to other CPUs in agintc(4). Most of the supporting code was already there. The driver supports establishing multiple handlers on the same pin. Make sure that a single pin can only be established on a specific core by recording the struct cpu_info * of the first establish, and returning NULL if someone tries to share the pin with a different core. For LPIs, typically used for MSIs, the routing is done by targetting an LPI to a specific "collection". We create a collection per core, indexing it by cpu_number(). For this we need to know a CPU's "processor number", unless GITS_TYPER_PTA is set. Since we now attach CPUs early, and the redistributors are not banked, we can retrieve that information early on. It's important to move this as far up as possible, as it's not as easy as on ampintc(4) to re-route LPIs. To establish an LPI on a different core, we now only have the pass the CPU's number as part of the map command which is sent to the hardware. Prompted by dlg@ ok kettenis@ | ||
| de70244e | 2020-07-14 15:52:20 | Add support for routing interrupts to other CPUs in ampintc(4). Most of the supporting code was already there. The driver supports establishing multiple handlers on the same pin. Make sure that a single pin can only be established on a specific core by recording the struct cpu_info * of the first establish, and returning NULL if someone tries to share the pin with a different core. Since the array of CPU masks, used for enabling/disabling interrupt routing to specific cores, is only populated during cpu_boot_secondary_processors(), each core will re-route the interrupts once a core read its mask. Until then, the core will not receive interrupts for that pin. While there, remove a call to ampintc_setipl(), which seems to be a no-op. It tries to set the same value that's already set. Since the function that calls it is supposed to calculate a pin's mask and do the routing, this doesn't seem to be the correct place for such a call. agintc(4) doesn't have it either. Prompted by dlg@ ok kettenis@ | ||
| d67371fd | 2020-07-14 15:42:19 | Implement pci_intr_establish_cpu() on arm64 and armv7. The function pointer in the chipset tag for establishing interrupts now takes a struct cpu_info *. The normal pci_intr_establish() macro passes NULL as ci, which indicates that the primary CPU is to be used. The PCI controller drivers can then simply pass the ci on to our arm64/armv7 interrupt establish "framework". Prompted by dlg@ ok kettenis@ | ||
| 789e88a4 | 2020-07-14 15:34:14 | Extend the interrupt API on arm64 and armv7 to be able to pass around a struct cpu_info *. From a driver point of view the fdt_intr_establish_* API now also exist same functions with a *_cpu suffix. Internally the "old" functions now call their *_cpu counterparts, passing NULL as ci. NULL will be interpreted as primary CPU in the interrupt controller code. The internal framework for interrupt controllers has been changed so that the establish methods provided by an interrupt controller function always takes a struct cpu_info *. Some drivers, like imxgpio(4) and rkgpio(4), only have a single interrupt line for multiple pins. On those we simply disallow trying to establish an interrupt on a non-primary CPU, returning NULL. Since we do not have MP yet on armv7, all armv7 interrupt controllers do return NULL if an attempt is made to establish an interrupt on a different CPU. That said, so far there's no way this can happen. If we ever gain MP support, this is a reminder that the interrupt controller drivers have to be adjusted. Prompted by dlg@ ok kettenis@ | ||
| 8bdc3b62 | 2020-07-14 14:33:03 | A pty write containing VDISCARD, VREPRINT, or various retyping cases of VERASE would perform (sometimes irrelevant) compute in the kernel which can be heavy (especially with our insufficient tty subsystem locking). Use tsleep_nsec for 1 tick in such circumstances to yield cpu, and also bring interruptability to ptcwrite() https://syzkaller.appspot.com/bug?extid=462539bc18fef8fc26cc ok kettenis millert, discussions with greg and anton | ||
| 24a3fa5d | 2020-07-14 11:22:11 | reduce the diff to linux in local versions of functions brings in changes from 'drm/ttm: stop always moving BOs on the LRU on page fault' 5d50fcbda7b0acd301bb1fc3d828df0aa29237b8 and some other minor changes ok kettenis@ | ||
| b38ea368 | 2020-07-14 09:52:46 | Remove hyphen | ||
| 53fa2216 | 2020-07-14 09:49:42 | Add single space between pem and ... | ||
| f354b939 | 2020-07-14 09:46:17 | Add manual for openssl(1) certhash ok jmc@ | ||
| 6a0dd81c | 2020-07-14 09:42:33 | Remove commented out debug printfs. |