Recently, I am analyzing the network device driver source code and have some questions not to understand.Fistly, Ethernet Driver how to determine the length of the packet recieved when the interrupt signal occur.In the Linux PCI device driver, It does use the PCI DMA to transfer between the driver and device, the following kernel interfaces to handle this procedure
ci_map_single()and pci_unmap_single. the last one is the Ethernet device recieve the packet at a time that itself judge whether the packet recieved is completed ethernet format frame.