staging: rtl8723au: Add GFP argument to rtw_alloc_stainfo23a()
No need to allocate GFP_ATOMIC when we don't need to. Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
2ad7c3d940
commit
6e8bc71df6
|
@ -1049,7 +1049,9 @@ int rtw_check_beacon_data23a(struct rtw_adapter *padapter, u8 *pbuf,
|
||||||
/* alloc sta_info for ap itself */
|
/* alloc sta_info for ap itself */
|
||||||
psta = rtw_get_stainfo23a(&padapter->stapriv, pbss_network->MacAddress);
|
psta = rtw_get_stainfo23a(&padapter->stapriv, pbss_network->MacAddress);
|
||||||
if (!psta) {
|
if (!psta) {
|
||||||
psta = rtw_alloc_stainfo23a(&padapter->stapriv, pbss_network->MacAddress);
|
psta = rtw_alloc_stainfo23a(&padapter->stapriv,
|
||||||
|
pbss_network->MacAddress,
|
||||||
|
GFP_KERNEL);
|
||||||
if (!psta)
|
if (!psta)
|
||||||
return _FAIL;
|
return _FAIL;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1510,7 +1510,8 @@ void rtw_createbss_cmd23a_callback(struct rtw_adapter *padapter,
|
||||||
pnetwork->MacAddress);
|
pnetwork->MacAddress);
|
||||||
if (!psta) {
|
if (!psta) {
|
||||||
psta = rtw_alloc_stainfo23a(&padapter->stapriv,
|
psta = rtw_alloc_stainfo23a(&padapter->stapriv,
|
||||||
pnetwork->MacAddress);
|
pnetwork->MacAddress,
|
||||||
|
GFP_KERNEL);
|
||||||
if (!psta) {
|
if (!psta) {
|
||||||
RT_TRACE(_module_rtl871x_cmd_c_, _drv_err_,
|
RT_TRACE(_module_rtl871x_cmd_c_, _drv_err_,
|
||||||
("\nCan't alloc sta_info when "
|
("\nCan't alloc sta_info when "
|
||||||
|
|
|
@ -1014,7 +1014,8 @@ rtw_joinbss_update_stainfo(struct rtw_adapter *padapter,
|
||||||
psta = rtw_get_stainfo23a(pstapriv, pnetwork->network.MacAddress);
|
psta = rtw_get_stainfo23a(pstapriv, pnetwork->network.MacAddress);
|
||||||
if (!psta)
|
if (!psta)
|
||||||
psta = rtw_alloc_stainfo23a(pstapriv,
|
psta = rtw_alloc_stainfo23a(pstapriv,
|
||||||
pnetwork->network.MacAddress);
|
pnetwork->network.MacAddress,
|
||||||
|
GFP_ATOMIC);
|
||||||
|
|
||||||
if (psta) { /* update ptarget_sta */
|
if (psta) { /* update ptarget_sta */
|
||||||
DBG_8723A("%s\n", __func__);
|
DBG_8723A("%s\n", __func__);
|
||||||
|
@ -1379,7 +1380,8 @@ void rtw_stassoc_event_callback23a(struct rtw_adapter *adapter, const u8 *pbuf)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
psta = rtw_alloc_stainfo23a(&adapter->stapriv, pstassoc->macaddr);
|
psta = rtw_alloc_stainfo23a(&adapter->stapriv, pstassoc->macaddr,
|
||||||
|
GFP_KERNEL);
|
||||||
if (!psta) {
|
if (!psta) {
|
||||||
RT_TRACE(_module_rtl871x_mlme_c_,_drv_err_,
|
RT_TRACE(_module_rtl871x_mlme_c_,_drv_err_,
|
||||||
("Can't alloc sta_info when "
|
("Can't alloc sta_info when "
|
||||||
|
|
|
@ -916,7 +916,7 @@ OnAuth23a(struct rtw_adapter *padapter, struct recv_frame *precv_frame)
|
||||||
/* allocate a new one */
|
/* allocate a new one */
|
||||||
DBG_8723A("going to alloc stainfo for sa ="MAC_FMT"\n",
|
DBG_8723A("going to alloc stainfo for sa ="MAC_FMT"\n",
|
||||||
MAC_ARG(sa));
|
MAC_ARG(sa));
|
||||||
pstat = rtw_alloc_stainfo23a(pstapriv, sa);
|
pstat = rtw_alloc_stainfo23a(pstapriv, sa, GFP_ATOMIC);
|
||||||
if (!pstat) {
|
if (!pstat) {
|
||||||
DBG_8723A(" Exceed the upper limit of supported "
|
DBG_8723A(" Exceed the upper limit of supported "
|
||||||
"clients...\n");
|
"clients...\n");
|
||||||
|
|
|
@ -107,7 +107,8 @@ u32 _rtw_free_sta_priv23a(struct sta_priv *pstapriv)
|
||||||
return _SUCCESS;
|
return _SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct sta_info *rtw_alloc_stainfo23a(struct sta_priv *pstapriv, u8 *hwaddr)
|
struct sta_info *
|
||||||
|
rtw_alloc_stainfo23a(struct sta_priv *pstapriv, u8 *hwaddr, int gfp)
|
||||||
{
|
{
|
||||||
struct list_head *phash_list;
|
struct list_head *phash_list;
|
||||||
struct sta_info *psta;
|
struct sta_info *psta;
|
||||||
|
@ -116,7 +117,7 @@ struct sta_info *rtw_alloc_stainfo23a(struct sta_priv *pstapriv, u8 *hwaddr)
|
||||||
int i = 0;
|
int i = 0;
|
||||||
u16 wRxSeqInitialValue = 0xffff;
|
u16 wRxSeqInitialValue = 0xffff;
|
||||||
|
|
||||||
psta = (struct sta_info *)kmalloc(sizeof(struct sta_info), GFP_ATOMIC);
|
psta = (struct sta_info *)kmalloc(sizeof(struct sta_info), gfp);
|
||||||
if (!psta)
|
if (!psta)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
|
@ -382,7 +383,7 @@ u32 rtw_init_bcmc_stainfo23a(struct rtw_adapter* padapter)
|
||||||
u32 res = _SUCCESS;
|
u32 res = _SUCCESS;
|
||||||
unsigned char bcast_addr[6] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff};
|
unsigned char bcast_addr[6] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff};
|
||||||
|
|
||||||
psta = rtw_alloc_stainfo23a(pstapriv, bcast_addr);
|
psta = rtw_alloc_stainfo23a(pstapriv, bcast_addr, GFP_KERNEL);
|
||||||
if (psta == NULL) {
|
if (psta == NULL) {
|
||||||
res = _FAIL;
|
res = _FAIL;
|
||||||
RT_TRACE(_module_rtl871x_sta_mgt_c_, _drv_err_,
|
RT_TRACE(_module_rtl871x_sta_mgt_c_, _drv_err_,
|
||||||
|
|
|
@ -365,7 +365,7 @@ static inline u32 wifi_mac_hash(const u8 *mac)
|
||||||
u32 _rtw_init_sta_priv23a(struct sta_priv *pstapriv);
|
u32 _rtw_init_sta_priv23a(struct sta_priv *pstapriv);
|
||||||
u32 _rtw_free_sta_priv23a(struct sta_priv *pstapriv);
|
u32 _rtw_free_sta_priv23a(struct sta_priv *pstapriv);
|
||||||
|
|
||||||
struct sta_info *rtw_alloc_stainfo23a(struct sta_priv *pstapriv, u8 *hwaddr);
|
struct sta_info *rtw_alloc_stainfo23a(struct sta_priv *pstapriv, u8 *hwaddr, int gfp);
|
||||||
u32 rtw_free_stainfo23a(struct rtw_adapter *padapter, struct sta_info *psta);
|
u32 rtw_free_stainfo23a(struct rtw_adapter *padapter, struct sta_info *psta);
|
||||||
void rtw_free_all_stainfo23a(struct rtw_adapter *padapter);
|
void rtw_free_all_stainfo23a(struct rtw_adapter *padapter);
|
||||||
struct sta_info *rtw_get_stainfo23a(struct sta_priv *pstapriv, const u8 *hwaddr);
|
struct sta_info *rtw_get_stainfo23a(struct sta_priv *pstapriv, const u8 *hwaddr);
|
||||||
|
|
Loading…
Reference in a new issue