head buffer is only temporary available in mac802154_header_create.
So it's not necessary to put it on the heap.
Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
        struct ieee802154_addr dev_addr;
        struct mac802154_sub_if_data *priv = netdev_priv(dev);
        int pos = 2;
-       u8 *head;
+       u8 head[MAC802154_FRAME_HARD_HEADER_LEN];
        u16 fc;
 
        if (!daddr)
                return -EINVAL;
 
-       head = kzalloc(MAC802154_FRAME_HARD_HEADER_LEN, GFP_KERNEL);
-       if (head == NULL)
-               return -ENOMEM;
-
        head[pos++] = mac_cb(skb)->seq; /* DSN/BSN */
        fc = mac_cb_type(skb);
 
        head[1] = fc >> 8;
 
        memcpy(skb_push(skb, pos), head, pos);
-       kfree(head);
 
        return pos;
 }