kernel code reading: how packet is received

Packet receive process:
1. driver receive packets, raise softirq
2. napi polling
3. call netif_receive_skb() if one packet is valid

One thing not for sure:
1. netpoll seems a fast pass for udp packets, need to check it later
kernel code reading: arp packet process
userspace code test: send arp