Messages in this thread Patch in this message | | | From | Arnd Bergmann <> | Subject | [PATCH] EDAC/amd64: avoid uninitialized variable use | Date | Tue, 14 Feb 2023 11:33:14 +0100 |
| |
From: Arnd Bergmann <arnd@arndb.de>
hw_info_get() tries to reserve two sibling devices, but the device IDs are no longer initialized for Fam17 CPUs:
drivers/edac/amd64_edac.c:3936:7: error: variable 'pci_id1' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized] if (!pvt->umc) ^~~~~~~~~ drivers/edac/amd64_edac.c:3943:37: note: uninitialized use occurs here ret = reserve_mc_sibling_devs(pvt, pci_id1, pci_id2); ^~~~~~~ drivers/edac/amd64_edac.c:3936:3: note: remove the 'if' if its condition is always true if (!pvt->umc) ^~~~~~~~~~~~~~ drivers/edac/amd64_edac.c:3936:7: error: variable 'pci_id2' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized] if (!pvt->umc) ^~~~~~~~~ drivers/edac/amd64_edac.c:3943:46: note: uninitialized use occurs here ret = reserve_mc_sibling_devs(pvt, pci_id1, pci_id2); ^~~~~~~ drivers/edac/amd64_edac.c:3936:3: note: remove the 'if' if its condition is always true if (!pvt->umc) ^~~~~~~~~~~~~~
Move this code into the 'else' branch where it is still possible.
Fixes: 6229235f7c66 ("EDAC/amd64: Remove PCI Function 6") Fixes: cf981562e627 ("EDAC/amd64: Remove PCI Function 0") Signed-off-by: Arnd Bergmann <arnd@arndb.de> --- I have no idea if this change makes sense, this is merely a guess based on the description of the two other commits. --- drivers/edac/amd64_edac.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/edac/amd64_edac.c b/drivers/edac/amd64_edac.c index 1c4bef1cdf28..a149cd95e806 100644 --- a/drivers/edac/amd64_edac.c +++ b/drivers/edac/amd64_edac.c @@ -3938,11 +3938,11 @@ static int hw_info_get(struct amd64_pvt *pvt) } else { pci_id1 = fam_type->f1_id; pci_id2 = fam_type->f2_id; - } - ret = reserve_mc_sibling_devs(pvt, pci_id1, pci_id2); - if (ret) - return ret; + ret = reserve_mc_sibling_devs(pvt, pci_id1, pci_id2); + if (ret) + return ret; + } read_mc_regs(pvt); -- 2.39.1
| |