Return-path: Received: from mail-ot0-f193.google.com ([74.125.82.193]:41773 "EHLO mail-ot0-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751170AbeCIPmE (ORCPT ); Fri, 9 Mar 2018 10:42:04 -0500 MIME-Version: 1.0 In-Reply-To: <1520602169.26370.1.camel@perches.com> References: <1520601833-4952-1-git-send-email-andreaschristofo@gmail.com> <1520602169.26370.1.camel@perches.com> From: Rosen Penev Date: Fri, 9 Mar 2018 07:42:02 -0800 Message-ID: (sfid-20180309_164251_508111_EB27690F) Subject: Re: [PATCH] drivers: net: wireless: ath: ath9k: dfs: remove VLA usage To: Joe Perches Cc: Andreas Christoforou , keescook@chromium.org, kernel-hardening@lists.openwall.com, QCA ath9k Development , Kalle Valo , linux-wireless@vger.kernel.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Sender: linux-wireless-owner@vger.kernel.org List-ID: On Fri, Mar 9, 2018 at 5:29 AM, Joe Perches wrote: > On Fri, 2018-03-09 at 15:23 +0200, Andreas Christoforou wrote: >> The kernel would like to have all stack VLA usage removed. >> This is the correct patch. > [] >> diff --git a/drivers/net/wireless/ath/ath9k/dfs.c b/drivers/net/wireless/ath/ath9k/dfs.c > [] >> @@ -101,7 +101,7 @@ static bool ath9k_check_chirping(struct ath_softc *sc, u8 *data, >> int datalen, bool is_ctl, bool is_ext) >> { >> int i; >> - int max_bin[FFT_NUM_SAMPLES]; >> + int max_bin[NUM_DIFFS + 1]; >> struct ath_hw *ah = sc->sc_ah; >> struct ath_common *common = ath9k_hw_common(ah); >> int prev_delta; > > why not just change FFT_NUM_SAMPLES to a #define > or get rid if FFT_NUM_SAMPLES altogether? > I did the former yesterday. Never submitted. > $ git grep -w FFT_NUM_SAMPLES > drivers/net/wireless/ath/ath9k/dfs.c:static const int FFT_NUM_SAMPLES = (NUM_DIFFS + 1); > drivers/net/wireless/ath/ath9k/dfs.c: int max_bin[FFT_NUM_SAMPLES]; > drivers/net/wireless/ath/ath9k/dfs.c: if (num_fft_packets < (FFT_NUM_SAMPLES)) { > drivers/net/wireless/ath/ath9k/dfs.c: for (i = 0; i < FFT_NUM_SAMPLES; i++) > drivers/net/wireless/ath/ath9k/dfs.c: if (num_fft_packets < (FFT_NUM_SAMPLES)) { > drivers/net/wireless/ath/ath9k/dfs.c: for (i = 0; i < FFT_NUM_SAMPLES; i++)