struct sk_buff *_rtw_skb_alloc(u32 sz);
 struct sk_buff *_rtw_skb_copy(const struct sk_buff *skb);
-struct sk_buff *_rtw_skb_clone(struct sk_buff *skb);
 int _rtw_netif_rx(_nic_hdl ndev, struct sk_buff *skb);
 
 #define rtw_malloc(sz)                 _rtw_malloc((sz))
 #define rtw_skb_alloc(size) _rtw_skb_alloc((size))
 #define rtw_skb_alloc_f(size, mstat_f) _rtw_skb_alloc((size))
 #define rtw_skb_copy(skb)      _rtw_skb_copy((skb))
-#define rtw_skb_clone(skb)     _rtw_skb_clone((skb))
 #define rtw_skb_copy_f(skb, mstat_f)   _rtw_skb_copy((skb))
-#define rtw_skb_clone_f(skb, mstat_f)  _rtw_skb_clone((skb))
 #define rtw_netif_rx(ndev, skb) _rtw_netif_rx(ndev, skb)
 
 extern void _rtw_init_queue(struct __queue     *pqueue);
 
        return skb_copy(skb, in_interrupt() ? GFP_ATOMIC : GFP_KERNEL);
 }
 
-inline struct sk_buff *_rtw_skb_clone(struct sk_buff *skb)
-{
-       return skb_clone(skb, in_interrupt() ? GFP_ATOMIC : GFP_KERNEL);
-}
-
 inline int _rtw_netif_rx(_nic_hdl ndev, struct sk_buff *skb)
 {
        skb->dev = ndev;
 
                        if (memcmp(pattrib->dst, myid(&padapter->eeprompriv), ETH_ALEN)) {
                                if (bmcast) {
                                        psta = rtw_get_bcmc_stainfo(padapter);
-                                       pskb2 = rtw_skb_clone(pkt);
+                                       pskb2 = skb_clone(pkt, GFP_ATOMIC);
                                } else {
                                        psta = rtw_get_stainfo(pstapriv, pattrib->dst);
                                }