On Thu, Aug 21, 2008 at 5:12 PM, Brian Haley <brian.haley@xxxxxx> wrote: > Julius Volz wrote: >> >> Still, I think my original interpretation was correct? It's always >> used with constant values and there are many usages similar to this: >> >> skb->protocol = __constant_htons(ETH_P_802_3); >> >> Someone feel free to correct me. > > I know it's a minor point, but look at tcp_ipv6.c: > > if (skb->protocol == htons(ETH_P_IP)) > return tcp_v4_conn_request(sk, skb); > > That's different from the code you quoted that's doing an assignment. > __constant_htons() isn't used anywhere in an if() statement, although I did > find a couple in the bonding driver that should be fixed. Ok, maybe the problem with this is more what it says before the definition of __constant_htons() in include/linux/byteorder.h? ---- /* * These helpers could be phased out over time as the base version * handles constant folding. */ --- Which is probably the reason why it shouldn't be used anymore? So although it's probably doing the right thing already, I'll just change it to htons() and everyone should be happy... Julius -- Google Switzerland GmbH -- To unsubscribe from this list: send the line "unsubscribe lvs-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html