x86/microcode: Fix return value for microcode late loading
authorMihai Carabas <mihai.carabas@oracle.com>
Tue, 21 Apr 2020 19:28:38 +0000 (22:28 +0300)
committerBorislav Petkov <bp@suse.de>
Wed, 22 Apr 2020 17:55:50 +0000 (19:55 +0200)
commit9adbf3c609af92a57a73000a3cb8f4c2d307dfa3
tree8d8f27071d7eef1211226f14be9ab6626693e9e1
parent8f3d9f354286745c751374f5f1fcafee6b3f3136
x86/microcode: Fix return value for microcode late loading

The return value from stop_machine() might not be consistent.

stop_machine_cpuslocked() returns:
- zero if all functions have returned 0.
- a non-zero value if at least one of the functions returned
a non-zero value.

There is no way to know if it is negative or positive. So make
__reload_late() return 0 on success or negative otherwise.

 [ bp: Unify ret val check and touch up. ]

Signed-off-by: Mihai Carabas <mihai.carabas@oracle.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/1587497318-4438-1-git-send-email-mihai.carabas@oracle.com
arch/x86/kernel/cpu/microcode/core.c