diff --git a/net/ipv4/arp.c b/net/ipv4/arp.c
index 8cae791a7acedb02a4265e0edac1e9eceb71a985..3a393c508a6226d1b07c8198337b3ab20b02116d 100644
--- a/net/ipv4/arp.c
+++ b/net/ipv4/arp.c
@@ -318,6 +318,10 @@ static void arp_send_dst(int type, int ptype, __be32 dest_ip,
 		return;
 
 	skb_dst_set(skb, dst_clone(dst));
+	/* Set the ARP requests generated by CPU to the highest priority since it fails to do this
+	 * from the user space utilities. In order to make this work on Intel platform, a queue with
+	 * "--priority 1 --map 1" must be created. */
+	skb->priority = 7;
 	arp_xmit(skb);
 }