kernel/pvscsi: Port pvscsi(4) over to DragonFly. * Currently, MSI-X support is missing. * If loaded as a module, it has to be in loader.conf. I don't know if that is different on FreeBSD. Reported-by: Georg Bege <georg@bege.email> Tested-by: Georg Bege <georg@bege.email> (on a VPS from IONOS) Pierre-Alain TORET <pierre-alain.toret@protonmail.com> (on Linux Workstation Pro 17) myself (on Windows Workstation 17 Player)
xdisk - Link into tree, add manual page * Link the xdisk driver into the tree and add a quick manual page. The xdisk driver uses libdmsg + the hammer2 service daemon to implement remote block devices over a network. The hammer2 service daemon is the lynchpin of the system, see the section on setting up /etc/hammer2 in the hammer2 manual page for more information. * xdisk works like a dedicated block device, so is NOT like a NFS share. At any given time, a particular block device should only be open for writing by a single client. The driver needs some work w/regards to maintaining open ref counts and such across the mini-cloud. Multiple clients should not try to share the same block device. That said, filesystem performance over xdisk block devices should be very good. Since the filesystem is running on the client-side, system buffer cache, read-ahead, and write buffering may be fully employed and performance will generally be better than NFS. * Note that libdmsg has been in the tree awhile but is still considered highly experimental. It uses encrypted connections but the encryption is not considered to be robust at this time. Authentication is implemented via a combination of public/private key pairs and IP addresses. The hammer2 manual page describes the directives that may be used to create these keys.
kernel: Remove ndis(4) and associated tools and stuff. ndis(4) was a wrapper to allow running binary Windows network drivers that conformed to the Network Driver Interface Specification, i.e. NDIS. It only ever supported drivers from the days of Windows XP and Windows Server 2003 (i.e. NDIS 5.1). And even if one was actually able to extract the .sys and .inf files from the driver package and successfully convert them to a building module, which both were adventures in itself, it could be any result when trying to run it, depending on the card and driver, from resonably working to not working, even crashing. But it did work for some cards, so it had some limited merit in its time. NetBSD removed it in 2018, FreeBSD in January 2021, so let's follow suit now.
Bring in FreeBSD's wsp(4), for Wellspring touchpads on Apple laptops. This commit also removes ums(4) from the default kernel config file, because it would otherwise claim this device. It is safe to remove, and in fact FreeBSD also doesn't have it in their GENERIC, because devd(8) will properly take care of loading the appropriate modules for both ums(4) and wsp(4) and starting a moused(8). Taken-from: FreeBSD Tested-by: Patrick McDonough <~patrick/dfly@awk.is>
kernel: Remove puffs(4), putter(9) and associated libs and utilities. All of these were originally pushed and hooked into the build in non- working condition so that they would not go stale break building. The hope was that someone would pick up the work and fix the remaining issues, which never materialized. This has led to more harm than good, with people occasionally assuming that this code is functional. Also, the existence of /usr/include/fuse.h might lead configure checks into believing that we have a working implementation.
Clean up the USB driver directories, remove unbuilt source. Remove old source that has not (yet) been ported. If any of these drivers would get ported in the future, it would be from current FreeBSD source anyway. Keeping the old source around just confuses when grepping in /usr/src.
Virtio_Balloon implementation for DragonFly - Initial check-in of fbsd virtio_balloon (freebsd/freebsd@1537078) - Update virtio_balloon man page - Fix vtballoon_alloc_intrs to deal nicely with number of provided interrupts. - Use a backoff scheme when allocating vm_pages: - VM_ALLOC_NORMAL for normal (low memory presure) situation; - VM_ALLOC_SYSTEM + increased sleep timeout, for high memory presure circumstances. The latter will allow the system to swap other pages out if necessary. - Implemented suggestions made by ivadasz - Added virtio_teardown_intr handling to vtballoon_detach - Added config_change_intr handling - Fixed virtio_setup_intr - Add debug_level sysctl for tracing. - Add collection of guest memory/pagefault statistics - Completed/Updated header definitions - Don't use VM_ALLOC_INTERRUPT. Add better inflate/deflate debug output to thread_sleep function - Don't collect stats when initialially loaded (Reported by tuxillo).
Add FreeBSD's mpr(4) driver for LSI Fusion-MPT 3/3.5 SAS controllers. This commit also includes a userland utility for mps(4) and mpr(4) (mprutil(8) aka mpsutil(8)). After porting bug fixing, testing shows that it seems to be stable, therefore I have added it to our X64_64_GENERIC as well. Thanks to zrj for testing and to sephe for some porting clues. Taken-from: FreeBSD
Remove IPsec and related code from the system. It was unmaintained ever since we inherited it from FreeBSD 4.8. In fact, we had two implementations from that time: IPSEC and FAST_IPSEC. FAST_IPSEC is the implementation to which FreeBSD has moved since, but it didn't even build in DragonFly. Fixes for dports have been committed to DeltaPorts. Requested-by: dillon Dports-testing-and-fixing: zrj