Commit 803c63d9 authored by Lee Jones's avatar Lee Jones Committed by Greg Kroah-Hartman
Browse files

staging: r819xU_phy: Remove some local variables from the stack



Fixes the following W=1 kernel build warning(s):

 drivers/staging/rtl8192u/r819xU_phy.c: In function ‘rtl8192_phy_SwChnlStepByStep’:
 drivers/staging/rtl8192u/r819xU_phy.c:1328:1: warning: the frame size of 1096 bytes is larger than 1024 bytes [-Wframe-larger-than=]

Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Michael Straube <straube.linux@gmail.com>
Cc: linux-staging@lists.linux.dev
Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
Link: https://lore.kernel.org/r/20210414181129.1628598-6-lee.jones@linaro.org


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 52ee2c7c
Loading
Loading
Loading
Loading
+39 −9
Original line number Original line Diff line number Diff line
@@ -1185,14 +1185,32 @@ static u8 rtl8192_phy_SwChnlStepByStep(struct net_device *dev, u8 channel,
				       u8 *stage, u8 *step, u32 *delay)
				       u8 *stage, u8 *step, u32 *delay)
{
{
	struct r8192_priv *priv = ieee80211_priv(dev);
	struct r8192_priv *priv = ieee80211_priv(dev);
	struct sw_chnl_cmd   PreCommonCmd[MAX_PRECMD_CNT];
	struct sw_chnl_cmd   *PreCommonCmd;
	u32		   PreCommonCmdCnt;
	u32		   PreCommonCmdCnt;
	struct sw_chnl_cmd   PostCommonCmd[MAX_POSTCMD_CNT];
	struct sw_chnl_cmd   *PostCommonCmd;
	u32		   PostCommonCmdCnt;
	u32		   PostCommonCmdCnt;
	struct sw_chnl_cmd   RfDependCmd[MAX_RFDEPENDCMD_CNT];
	struct sw_chnl_cmd   *RfDependCmd;
	u32		   RfDependCmdCnt;
	u32		   RfDependCmdCnt;
	struct sw_chnl_cmd  *CurrentCmd = NULL;
	struct sw_chnl_cmd  *CurrentCmd = NULL;
	u8		   e_rfpath;
	u8		   e_rfpath;
	bool		   ret;

	PreCommonCmd = kzalloc(sizeof(*PreCommonCmd) * MAX_PRECMD_CNT, GFP_KERNEL);
	if (!PreCommonCmd)
		return false;

	PostCommonCmd = kzalloc(sizeof(*PostCommonCmd) * MAX_POSTCMD_CNT, GFP_KERNEL);
	if (!PostCommonCmd) {
		kfree(PreCommonCmd);
		return false;
	}

	RfDependCmd = kzalloc(sizeof(*RfDependCmd) * MAX_RFDEPENDCMD_CNT, GFP_KERNEL);
	if (!RfDependCmd) {
		kfree(PreCommonCmd);
		kfree(PostCommonCmd);
		return false;
	}


	RT_TRACE(COMP_CH, "%s() stage: %d, step: %d, channel: %d\n",
	RT_TRACE(COMP_CH, "%s() stage: %d, step: %d, channel: %d\n",
		 __func__, *stage, *step, channel);
		 __func__, *stage, *step, channel);
@@ -1201,7 +1219,8 @@ static u8 rtl8192_phy_SwChnlStepByStep(struct net_device *dev, u8 channel,
		/* return true to tell upper caller function this channel
		/* return true to tell upper caller function this channel
		 * setting is finished! Or it will in while loop.
		 * setting is finished! Or it will in while loop.
		 */
		 */
		return true;
		ret = true;
		goto out;
	}
	}
	/* FIXME: need to check whether channel is legal or not here */
	/* FIXME: need to check whether channel is legal or not here */


@@ -1227,7 +1246,8 @@ static u8 rtl8192_phy_SwChnlStepByStep(struct net_device *dev, u8 channel,
			RT_TRACE(COMP_ERR,
			RT_TRACE(COMP_ERR,
				 "illegal channel for Zebra 8225: %d\n",
				 "illegal channel for Zebra 8225: %d\n",
				 channel);
				 channel);
			return true;
			ret = true;
			goto out;
		}
		}
		rtl8192_phy_SetSwChnlCmdArray(RfDependCmd, RfDependCmdCnt++,
		rtl8192_phy_SetSwChnlCmdArray(RfDependCmd, RfDependCmdCnt++,
					      MAX_RFDEPENDCMD_CNT,
					      MAX_RFDEPENDCMD_CNT,
@@ -1246,7 +1266,8 @@ static u8 rtl8192_phy_SwChnlStepByStep(struct net_device *dev, u8 channel,
			RT_TRACE(COMP_ERR,
			RT_TRACE(COMP_ERR,
				 "illegal channel for Zebra 8256: %d\n",
				 "illegal channel for Zebra 8256: %d\n",
				 channel);
				 channel);
			return true;
			ret = true;
			goto out;
		}
		}
		rtl8192_phy_SetSwChnlCmdArray(RfDependCmd, RfDependCmdCnt++,
		rtl8192_phy_SetSwChnlCmdArray(RfDependCmd, RfDependCmdCnt++,
					      MAX_RFDEPENDCMD_CNT,
					      MAX_RFDEPENDCMD_CNT,
@@ -1262,7 +1283,8 @@ static u8 rtl8192_phy_SwChnlStepByStep(struct net_device *dev, u8 channel,


	default:
	default:
		RT_TRACE(COMP_ERR, "Unknown RFChipID: %d\n", priv->rf_chip);
		RT_TRACE(COMP_ERR, "Unknown RFChipID: %d\n", priv->rf_chip);
		return true;
		ret = true;
		goto out;
	}
	}


	do {
	do {
@@ -1281,7 +1303,8 @@ static u8 rtl8192_phy_SwChnlStepByStep(struct net_device *dev, u8 channel,
		if (CurrentCmd->cmd_id == CMD_ID_END) {
		if (CurrentCmd->cmd_id == CMD_ID_END) {
			if ((*stage) == 2) {
			if ((*stage) == 2) {
				(*delay) = CurrentCmd->ms_delay;
				(*delay) = CurrentCmd->ms_delay;
				return true;
				ret = true;
				goto out;
			}
			}
			(*stage)++;
			(*stage)++;
			(*step) = 0;
			(*step) = 0;
@@ -1324,7 +1347,14 @@ static u8 rtl8192_phy_SwChnlStepByStep(struct net_device *dev, u8 channel,


	(*delay) = CurrentCmd->ms_delay;
	(*delay) = CurrentCmd->ms_delay;
	(*step)++;
	(*step)++;
	return false;
	ret = false;

out:
	kfree(PreCommonCmd);
	kfree(PostCommonCmd);
	kfree(RfDependCmd);

	return ret;
}
}


/******************************************************************************
/******************************************************************************