On 07/05/18 19:59, John Baldwin wrote:
You misunderstand. /usr/local/sys/modules would hold module sources so that they can be recompiled when building a kernel without having to rebuild the package or reinstall the package. Binary modules would continue to be installed in /boot/modules.
This is very similar to the approach that many Linux distributions take with DKMS. The kernel sources for out-of-tree modules are kept around, and every time a kernel is installed, its new header files are used to re-compile the out-of-tree module. Similarly, when you install a package containing a kernel module, it is re-compiled and installed for every installed kernel. One thing that was tangentially brought up is that the ability to compile out-of-tree modules requires keeping the kernel-headers around. So we may need to identify all the headers that a module might need, and install them in /boot/$KERNEL/sys or some-such. This would be needed if, for example, we wanted to install a new Nvidia or Virtual Box module and have it work for older installed kernel versions too (eg, across ABI breaking changes in -current). This would certainly make life easier for people running -current. This system works quite well on Linux. For comparison, I used an Ubuntu based desktop with Nvidia graphics at a previous employers, and a FreeBSD-current desktop w/Nvidia graphics now. I've been left w/o graphics accidentally much more often on FreeBSD than I ever had been on Ubuntu, even when compiling my own kernels from git.. Drew _______________________________________________ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"