No need to crash the system in case edac_mc_alloc() is called with
invalid arguments, just warn and return. This would cause a checkpatch
warning when touching the code later, so just fix it.

Signed-off-by: Robert Richter <rrich...@marvell.com>
---
 drivers/edac/edac_mc.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/edac/edac_mc.c b/drivers/edac/edac_mc.c
index c5240bb4c6c0..f2cbca77bc50 100644
--- a/drivers/edac/edac_mc.c
+++ b/drivers/edac/edac_mc.c
@@ -323,7 +323,9 @@ struct mem_ctl_info *edac_mc_alloc(unsigned int mc_num,
        int i, j, row, chn, n, len;
        bool per_rank = false;
 
-       BUG_ON(n_layers > EDAC_MAX_LAYERS || n_layers == 0);
+       if (WARN_ON(n_layers > EDAC_MAX_LAYERS || n_layers == 0))
+               return NULL;
+
        /*
         * Calculate the total amount of dimms and csrows/cschannels while
         * in the old API emulation mode
-- 
2.20.1

Reply via email to