| From 1b22b4b28fd5fbc51855219e3238b3ab81da8466 Mon Sep 17 00:00:00 2001 |
| From: Colin Ian King <colin.king@canonical.com> |
| Date: Thu, 22 Feb 2018 17:50:12 +0000 |
| Subject: MIPS: ath25: Check for kzalloc allocation failure |
| |
| From: Colin Ian King <colin.king@canonical.com> |
| |
| commit 1b22b4b28fd5fbc51855219e3238b3ab81da8466 upstream. |
| |
| Currently there is no null check on a failed allocation of board_data, |
| and hence a null pointer dereference will occurr. Fix this by checking |
| for the out of memory null pointer. |
| |
| Fixes: a7473717483e ("MIPS: ath25: add board configuration detection") |
| Signed-off-by: Colin Ian King <colin.king@canonical.com> |
| Cc: Ralf Baechle <ralf@linux-mips.org> |
| Cc: linux-mips@linux-mips.org |
| Cc: <stable@vger.kernel.org> # 3.19+ |
| Patchwork: https://patchwork.linux-mips.org/patch/18657/ |
| Signed-off-by: James Hogan <jhogan@kernel.org> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| arch/mips/ath25/board.c | 2 ++ |
| 1 file changed, 2 insertions(+) |
| |
| --- a/arch/mips/ath25/board.c |
| +++ b/arch/mips/ath25/board.c |
| @@ -135,6 +135,8 @@ int __init ath25_find_config(phys_addr_t |
| } |
| |
| board_data = kzalloc(BOARD_CONFIG_BUFSZ, GFP_KERNEL); |
| + if (!board_data) |
| + goto error; |
| ath25_board.config = (struct ath25_boarddata *)board_data; |
| memcpy_fromio(board_data, bcfg, 0x100); |
| if (broken_boarddata) { |