Skip to contentSkip to conversation

return values for hard_start_xmit and dev_queue_xmit

DISCUSSION Ben Greear 1 participant 2 messages Oct 13, 2004

Subsystems (2)
lore
Share & tools
lore

Ben Greear

author
#0 lore raw

While trying to get pktgen to effectively use VLANs to send traffic, I noticed that the vlan code always returns 0 from it's hard_start_xmit method. Since it calls dev_queue_xmit inside that method, I tried returning the value that dev_queue_xmit returns. It seems that the return values have different meanings because this causes crashes due to freeing skbs when I shouldn't be...

The dev_queue_xmit method is fairly well documented in dev.c, but there are zero comments in the netdevice.h file to explain what the acceptable return values for hard_start_xmit are.

Does anyone know if there is a definative guide to the return values for hard_start_xmit?

Thanks,
Ben

Signature · 2 lines
Ben Greear <[email protected]>
Candela Technologies Inc  http://www.candelatech.com
author
#1 lore raw
Quoted 3 lines · Ben Greear

The dev_queue_xmit method is fairly well documented in dev.c, but there are zero comments in the netdevice.h file to explain what the acceptable return values for hard_start_xmit are.

Actually, looks like I'm wrong here. The comments in dev.c say that error codes are < 0, but in fact, this can easily return NET_XMIT_DROP which is a positive value (1).

Maybe the truth is that any non-zero return value from dev_queue_xmit is an error?

Ben

Signature · 2 lines
Ben Greear <[email protected]>
Candela Technologies Inc  http://www.candelatech.com