Subject: Re: tcp/udp vector h/w checksum
To: Jonathan Stone <jonathan@dsg.stanford.edu>
From: john heasley <heas@shrubbery.net>
List: tech-net
Date: 02/05/2005 13:35:56
Sat, Feb 05, 2005 at 12:34:13PM -0800, Jonathan Stone:
> In message <1107634190.260137.8498.nullmailer@yamt.dyndns.org>,
> YAMAMOTO Takashi writes:
> >hi,
> 
> >bge doesn't have to set M_CSUM_NO_PSEUDOHDR in if_csum_flags_tx.
> >what's a problem?
> 
> D'oh! If there are separate flag spaces for Tx and Rx, then the patch
> isn't actually wrong.  <slap head> That's what I get for replying
> before my first coffee of the day; very sorry.

hey, thanks for reviewing it!  I appreciate it.

> If we also add an XXX comment to sys/sys/mbuf.h, warning that the
> flags have different interpretation in different if_csum_flags_rx
> context versus if_csum_flags_tx context, I'd be happier.
> 
> I still don't like the precedent it sets, and I think it'd be cleaner
> to allocate a separate mask bit (0x40000000?); but it's not a big deal.

Is that precedent not already set by the other flags whose meaning is
slightly different depending upon the direction of flow?

I chose not to eat another bit because it seemed like the others (differing
in the direction of flow) and I do not know what other cases may need to be
handled in the remaining available bits (granted there are ~15 left).
Perhaps that is silly?