Hello, 
 One of the possible policies for skb->ip_summed is  CHECKSUM_HW.

In this case the device can perform checksums in hardware.


According to Linux Device Drivers 3,  an example of a such network card is 
 the SPARC HME interface.

I looked a bit at the code (it's in /drivers/net/sunhme.c)

I want to understans something:

When I transmit a packet with a card like this, which support
calculating checksome in hardware, I do it by happy_meal_start_xmit()
method of the network card (because the hard_start_xmit() method of
the device is
set to happy_meal_start_xmit() in the init method of the card ).


But until it gets to there , it passes many stages in the kernel net stack:  
in dev_queue_xmit() of dev.c, in ip_finish_output,in 
ip_finish_output, in ip_send()...

How does it know NOT to perform such a calculation of checksum in that
long way ?
such a calculation will be not redunsdant if I understand it right.

And in case it does such an unneedded calculation of checksum - is there a way 
to prevent it so it will perform it only in the network card level , in HW? 

TIA,
John
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to