diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index a696183b..1af6797c 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -3,6 +3,7 @@ ### 1.0.0-rc.164 This is an UNSTABLE release. It includes many experimental features, as well as many AI generated fixes. We recommend using rc.152 for production use. +* The PCIe driver DKMS package builds for the kernel it is being installed for instead of the running one, so a module built while a kernel update is being applied loads after the reboot. * The PCIe driver builds on RHEL 9.5 and later, and on their CentOS Stream, Rocky and AlmaLinux equivalents, where the `vm_flags` kernel interface was backported into the 5.14 kernel. * rugnux: `--export-unmerged` writes the integrated observations as `_unmerged.mtz`, an unmerged MTZ readable by aimless, pointless, careless and `iotbx.merging_statistics`, in `--mode mx` and `--mode scale` alike; each rotation reflection's partials are summed into one full, and `--export-unmerged-partials` writes one row per image instead. Lattice-centring absences are not written; screw and glide absences are. diff --git a/fpga/pcie_driver/Makefile b/fpga/pcie_driver/Makefile index 83163f60..6affa551 100644 --- a/fpga/pcie_driver/Makefile +++ b/fpga/pcie_driver/Makefile @@ -7,11 +7,16 @@ cflags-m=-std=c99 jfjoch-y := jfjoch_drv.o jfjoch_ioctl.o jfjoch_memory.o jfjoch_pcie_setup.o jfjoch_function.o jfjoch_miscdev.o jfjoch_sysfs.o jfjoch_int.o jfjoch_i2c.o jfjoch_cmac.o +# Kernel to build against. DKMS builds for a kernel that need not be the running +# one and passes its build directory in, so this has to stay overridable. +KVER ?= $(shell uname -r) +KDIR ?= /lib/modules/$(KVER)/build + all: - make -C /lib/modules/$(shell uname -r)/build M=$(CURDIR) modules + $(MAKE) -C $(KDIR) M=$(CURDIR) modules install: - make -C /lib/modules/$(shell uname -r)/build M=$(CURDIR) modules_install + $(MAKE) -C $(KDIR) M=$(CURDIR) modules_install clean: - make -C /lib/modules/$(shell uname -r)/build M=$(CURDIR) clean + $(MAKE) -C $(KDIR) M=$(CURDIR) clean diff --git a/fpga/pcie_driver/dkms.conf b/fpga/pcie_driver/dkms.conf index 6967eb65..5534ee13 100644 --- a/fpga/pcie_driver/dkms.conf +++ b/fpga/pcie_driver/dkms.conf @@ -5,6 +5,6 @@ DEST_MODULE_LOCATION=/extra BUILT_MODULE_NAME=jfjoch BUILT_MODULE_LOCATION=src/ -MAKE="'make' -C src/ all" -CLEAN="'make' -C src/ clean" +MAKE="make -C src/ KDIR=${kernel_source_dir} all" +CLEAN="make -C src/ KDIR=${kernel_source_dir} clean" AUTOINSTALL="yes"