- for (i=0; i<ETH_ALEN; i++)
- id |= (u64)dev->dev_addr[i] << (8*(ETH_ALEN-1 - i));
- b.bridge_id = cpu_to_be64(id);
+ /* First two bytes are the priority, which we should skip. This comes
+ * from struct bridge_id in br_private.h, which is unavailable to us.
+ */
+ memcpy((u8 *)&b.bridge_id + 2, dev->dev_addr, ETH_ALEN);