On Tue, Sep 24, 2013 at 12:44 AM, Simon Horman <ho...@verge.net.au> wrote: > Move segmentation compatibility code out of netdev_send and into > rpl_dev_queue_xmit(), a compatibility function used in place > of dev_queue_xmit() as necessary. > > As suggested by Jesse Gross. > > Some minor though verbose implementation notes: > > * This rpl_dev_queue_xmit() endeavours to return a valid error code or > zero on success as per dev_queue_xmit(). The exception is that when > dev_queue_xmit() is called in a loop only the status of the last call is > taken into account, thus ignoring any errors returned by previous calls. > This is derived from the previous calls to dev_queue_xmit() in a loop > where netdev_send() ignores the return value of dev_queue_xmit() > entirely. > > * netdev_send() continues to ignore the value of dev_queue_xmit(). > So the discussion of the return value of rpl_dev_queue_xmit() > above is has no bearing on run-time behaviour. > > * The return value of netdev_send() may differ from the previous > implementation in the case where segmentation is performed before > calling the real dev_queue_xmit(). This is because previously in > this case netdev_send() would return the combined length of the > skbs resulting from segmentation. Whereas the current code > always returns the length of the original skb. > > Signed-off-by: Simon Horman <ho...@verge.net.au>
Also applied - this is much nicer. I made one small change to the error path of netdev_send(). It's not necessarily better but it matches the upstream version now. _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev