On Wed, Mar 02, 2022 at 05:59:59AM -0800, Andy Lutomirski wrote: > > /sys/devices/system/cpu/ifs/reload > > Writing "1" to this file will reload the tests from > > /lib/firmware/intel/ifs/{ff-mm-ss}.scan > > IMO this interface is wrong. /lib/firmware is for firmware (or > ucode, etc) files that should be provided by a distribution and loaded, > as needed, by a driver so the hardware can function. This is not at > all what IFS does. For IFS, an administrator wants to run a specific > test, and the test blob is part of the instruction to run the test. > The distribution should not be involved, and this should work even on > systems where /lib/firmware is immutable. "so the hardware can function" Data center customers want to know which aging systems in their data centers are not functioning correctly. So this is not just a random test that people might run when they suspect they have a problem. It is expected that every core will run this test periodically (period dependent on paranoia level of the system owner ... maybe daily ... perhaps even more often). This is so that the data centre can function. > > So either the blob should be written to a file in sysfs or it should > be supplied by write or ioctl to a device node. I don't see the drive to create a new mechanism for the kernel to load from a file when the firmware loader already exists. If the problem is just immuatbility of /lib ... then make an immutable symlink from /lib/firmware/intel/ifs to some other place in the file system (which is what some OS vendors already do for microcode). -Tony