|
@@ -756,12 +756,16 @@ void rtl92d_set_fw_rsvdpagepkt(struct ieee80211_hw *hw, bool dl_finished)
|
|
|
"rtl92d_set_fw_rsvdpagepkt(): HW_VAR_SET_TX_CMD: ALL",
|
|
"rtl92d_set_fw_rsvdpagepkt(): HW_VAR_SET_TX_CMD: ALL",
|
|
|
u1RsvdPageLoc, 3);
|
|
u1RsvdPageLoc, 3);
|
|
|
skb = dev_alloc_skb(totalpacketlen);
|
|
skb = dev_alloc_skb(totalpacketlen);
|
|
|
- memcpy((u8 *) skb_put(skb, totalpacketlen), &reserved_page_packet,
|
|
|
|
|
- totalpacketlen);
|
|
|
|
|
- rtstatus = _rtl92d_cmd_send_packet(hw, skb);
|
|
|
|
|
|
|
+ if (!skb) {
|
|
|
|
|
+ dlok = false;
|
|
|
|
|
+ } else {
|
|
|
|
|
+ memcpy((u8 *) skb_put(skb, totalpacketlen),
|
|
|
|
|
+ &reserved_page_packet, totalpacketlen);
|
|
|
|
|
+ rtstatus = _rtl92d_cmd_send_packet(hw, skb);
|
|
|
|
|
|
|
|
- if (rtstatus)
|
|
|
|
|
- dlok = true;
|
|
|
|
|
|
|
+ if (rtstatus)
|
|
|
|
|
+ dlok = true;
|
|
|
|
|
+ }
|
|
|
if (dlok) {
|
|
if (dlok) {
|
|
|
RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD,
|
|
RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD,
|
|
|
"Set RSVD page location to Fw\n");
|
|
"Set RSVD page location to Fw\n");
|