Query on Rx Frame processing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I'm trying to understand Linux Network subsystem and after
reading some documents, my broad level understanding for
Rx Path is as follows:

1: Card receives the packet.
2: Assume everything is fine, the card DMAs the frame for
the driver to process it further.
3: Driver allocate an skb buffer, adjusts the headroom.
4: Fills the buffer and pass it to the Network layer.

Now in step 4 above, driver passes this packet to the
network layer by calling netif_receive_skb()  which may return
NET_RX_DROP (packet was dropped), but most
(I checked some of the network driver code) of the network
drivers do not do this check.
Hence,
Q1: Shouldn't drivers be doing that ?

Q2: Suppose the Card keeps pushing the frames at very high rate
(10 Gig adapters are already in the market and maybe in near future
we might have even faster ethernet adapters) then how the driver
and the networking stack will handle such rapid frames arrivals?
Will NAPI, interrupt coalescing be enough ?

I'm referring kernel version 2.6.31

-Amit

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux