From: Boris Ostrovsky Date: Thu, 9 May 2019 15:04:38 +0000 (-0400) Subject: x86/microcode: Don't return error if microcode update is not needed X-Git-Tag: v4.1.12-124.31.3~169 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=968a818db99afe4f08694ac2045b4bfe0dae90ee;p=users%2Fjedix%2Flinux-maple.git x86/microcode: Don't return error if microcode update is not needed Commit 347b54683 ("x86/microcode: Synchronize late microcode loading") incorrectly returns -EINVAL error on all request_microcode_fw() failures in reload_store(). In fact, when update is not needed or if there is no microcode to load we don't need to treat this as an error. Orabug: 29759756 Fixes: 347b54683 ("x86/microcode: Synchronize late microcode loading") Reported-by: Jamie Iles Signed-off-by: Boris Ostrovsky Reviewed-by: Liam Merwick Reviewed-by: Jamie Iles Reviewed-by: Mihai Carabas Reviewed-by: Bhavesh Davda Reviewed-by: Konrad Rzeszutek Wilk Reviewed-by: John Haxby Signed-off-by: Brian Maly --- diff --git a/arch/x86/kernel/cpu/microcode/core.c b/arch/x86/kernel/cpu/microcode/core.c index a60cb1ada21d..5ed127679798 100644 --- a/arch/x86/kernel/cpu/microcode/core.c +++ b/arch/x86/kernel/cpu/microcode/core.c @@ -475,7 +475,7 @@ static ssize_t reload_store(struct device *dev, for_each_online_cpu(cpu) { ret = microcode_ops->request_microcode_fw(cpu, µcode_pdev->dev, true); - if (ret != UCODE_OK) { + if (ret == UCODE_ERROR) { ret = -EINVAL; goto out; }