diff options
author | Borislav Petkov <borislav.petkov@amd.com> | 2011-12-02 10:50:04 -0500 |
---|---|---|
committer | Borislav Petkov <bp@amd64.org> | 2011-12-14 06:46:47 -0500 |
commit | f72c1a576565a4927d650218e183ab5053ab8c3a (patch) | |
tree | 5be7538c92d77deae68e867a9a8a0f17e3e75bed /arch/x86/kernel/microcode_core.c | |
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/microcode_core.c')
-rw-r--r-- | arch/x86/kernel/microcode_core.c | 5 |
1 files changed, 5 insertions, 0 deletions
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); | |||
563 | 563 | ||
564 | static void __exit microcode_exit(void) | 564 | static void __exit microcode_exit(void) |
565 | { | 565 | { |
566 | struct cpuinfo_x86 *c = &cpu_data(0); | ||
567 | |||
566 | microcode_dev_exit(); | 568 | microcode_dev_exit(); |
567 | 569 | ||
568 | unregister_hotcpu_notifier(&mc_cpu_notifier); | 570 | unregister_hotcpu_notifier(&mc_cpu_notifier); |
@@ -580,6 +582,9 @@ static void __exit microcode_exit(void) | |||
580 | 582 | ||
581 | microcode_ops = NULL; | 583 | microcode_ops = NULL; |
582 | 584 | ||
585 | if (c->x86_vendor == X86_VENDOR_AMD) | ||
586 | exit_amd_microcode(); | ||
587 | |||
583 | pr_info("Microcode Update Driver: v" MICROCODE_VERSION " removed.\n"); | 588 | pr_info("Microcode Update Driver: v" MICROCODE_VERSION " removed.\n"); |
584 | } | 589 | } |
585 | module_exit(microcode_exit); | 590 | module_exit(microcode_exit); |