Commit a4c30fa4 authored by Jithu Joseph's avatar Jithu Joseph Committed by Borislav Petkov
Browse files

platform/x86/intel/ifs: Remove image loading during init



IFS test image is unnecessarily loaded during driver initialization.
Drop image loading during ifs_init() and improve module load time. With
this change, user has to load one when starting the tests.

As a consequence, make ifs_sem static as it is only used within sysfs.c

Suggested-by: default avatarHans de Goede <hdegoede@redhat.com>
Signed-off-by: default avatarJithu Joseph <jithu.joseph@intel.com>
Signed-off-by: default avatarBorislav Petkov <bp@suse.de>
Reviewed-by: default avatarTony Luck <tony.luck@intel.com>
Reviewed-by: default avatarSohil Mehta <sohil.mehta@intel.com>
Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
Link: https://lore.kernel.org/r/20221117035935.4136738-4-jithu.joseph@intel.com
parent f4e209e9
Loading
Loading
Loading
Loading
+1 −5
Original line number Diff line number Diff line
@@ -51,12 +51,8 @@ static int __init ifs_init(void)
	ifs_device.misc.groups = ifs_get_groups();

	if ((msrval & BIT(ifs_device.data.integrity_cap_bit)) &&
	    !misc_register(&ifs_device.misc)) {
		down(&ifs_sem);
		ifs_load_firmware(ifs_device.misc.this_device);
		up(&ifs_sem);
	    !misc_register(&ifs_device.misc))
		return 0;
	}

	return -ENODEV;
}
+0 −2
Original line number Diff line number Diff line
@@ -229,6 +229,4 @@ void ifs_load_firmware(struct device *dev);
int do_core_test(int cpu, struct device *dev);
const struct attribute_group **ifs_get_groups(void);

extern struct semaphore ifs_sem;

#endif
+1 −1
Original line number Diff line number Diff line
@@ -13,7 +13,7 @@
 * Protects against simultaneous tests on multiple cores, or
 * reloading can file while a test is in progress
 */
DEFINE_SEMAPHORE(ifs_sem);
static DEFINE_SEMAPHORE(ifs_sem);

/*
 * The sysfs interface to check additional details of last test