diff --git a/drivers/staging/wilc1000/coreconfigurator.c b/drivers/staging/wilc1000/coreconfigurator.c index 875b769d95a9..8b56b92b5503 100644 --- a/drivers/staging/wilc1000/coreconfigurator.c +++ b/drivers/staging/wilc1000/coreconfigurator.c @@ -644,13 +644,11 @@ s32 ParseSurveyResults(u8 ppu8RcvdSiteSurveyResults[][MAX_SURVEY_RESULT_FRAG_SIZ } } - pstrSurveyResults = kmalloc_array(u32SurveyResultsCount, - sizeof(wid_site_survey_reslts_s), GFP_KERNEL); + pstrSurveyResults = kcalloc(u32SurveyResultsCount, + sizeof(wid_site_survey_reslts_s), GFP_KERNEL); if (!pstrSurveyResults) return -ENOMEM; - memset((void *)(pstrSurveyResults), 0, u32SurveyResultsCount * sizeof(wid_site_survey_reslts_s)); - u32SurveyResultsCount = 0; for (i = 0; i < u32RcvdSurveyResultsNum; i++) {