diff options
author | Borislav Petkov | 2011-12-02 16:50:04 +0100 |
---|---|---|
committer | Borislav Petkov | 2011-12-14 12:46:47 +0100 |
commit | f72c1a576565a4927d650218e183ab5053ab8c3a (patch) | |
tree | 5be7538c92d77deae68e867a9a8a0f17e3e75bed /arch/x86/kernel | |
parent | dc47ce90c3a822cd7c9e9339fe4d5f61dcb26b50 (diff) |
x86, microcode, AMD: Add a vendor-specific exit function
This will be used to do cleanup work before the driver exits.
Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
Diffstat (limited to 'arch/x86/kernel')
-rw-r--r-- | arch/x86/kernel/microcode_amd.c | 4 | ||||
-rw-r--r-- | arch/x86/kernel/microcode_core.c | 5 |
2 files changed, 9 insertions, 0 deletions
diff --git a/arch/x86/kernel/microcode_amd.c b/arch/x86/kernel/microcode_amd.c index d494799aafcd..e8a68c2a4364 100644 --- a/arch/x86/kernel/microcode_amd.c +++ b/arch/x86/kernel/microcode_amd.c @@ -353,3 +353,7 @@ struct microcode_ops * __init init_amd_microcode(void) { return µcode_amd_ops; } + +void __exit exit_amd_microcode(void) +{ +} diff --git a/arch/x86/kernel/microcode_core.c b/arch/x86/kernel/microcode_core.c index 9d46f5e43b51..9302e2d0eb4b 100644 --- a/arch/x86/kernel/microcode_core.c +++ b/arch/x86/kernel/microcode_core.c @@ -563,6 +563,8 @@ module_init(microcode_init); static void __exit microcode_exit(void) { + struct cpuinfo_x86 *c = &cpu_data(0); + microcode_dev_exit(); unregister_hotcpu_notifier(&mc_cpu_notifier); @@ -580,6 +582,9 @@ static void __exit microcode_exit(void) microcode_ops = NULL; + if (c->x86_vendor == X86_VENDOR_AMD) + exit_amd_microcode(); + pr_info("Microcode Update Driver: v" MICROCODE_VERSION " removed.\n"); } module_exit(microcode_exit); |