diff options
author | Borislav Petkov <borislav.petkov@amd.com> | 2011-03-29 18:10:53 +0200 |
---|---|---|
committer | Borislav Petkov <borislav.petkov@amd.com> | 2011-03-29 18:19:06 +0200 |
commit | a9f0fbe2bbf328f869fc5ee5a12c6a4118c32689 (patch) | |
tree | 819fdfb4224ac19a61cb2cd7c7f5a8907306ee82 | |
parent | 89078d572eb9ce8d4c04264b8b0ba86de0d74c8f (diff) | |
download | linux-3.10-a9f0fbe2bbf328f869fc5ee5a12c6a4118c32689.tar.gz linux-3.10-a9f0fbe2bbf328f869fc5ee5a12c6a4118c32689.tar.bz2 linux-3.10-a9f0fbe2bbf328f869fc5ee5a12c6a4118c32689.zip |
amd64_edac: Fix potential memleak
We check the pointers together but at least one of them could be invalid
due to failed allocation. Since we cannot continue if either of the two
allocations has failed, exit early by freeing them both.
Cc: <stable@kernel.org> # 38.x
Reported-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
-rw-r--r-- | drivers/edac/amd64_edac.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/edac/amd64_edac.c b/drivers/edac/amd64_edac.c index 0be30e978c8..31e71c4fc83 100644 --- a/drivers/edac/amd64_edac.c +++ b/drivers/edac/amd64_edac.c @@ -2679,7 +2679,7 @@ static int __init amd64_edac_init(void) mcis = kzalloc(amd_nb_num() * sizeof(mcis[0]), GFP_KERNEL); ecc_stngs = kzalloc(amd_nb_num() * sizeof(ecc_stngs[0]), GFP_KERNEL); if (!(mcis && ecc_stngs)) - goto err_ret; + goto err_free; msrs = msrs_alloc(); if (!msrs) |