Subject: Re: [PATCH v2] include/linux/skbuff.h: using '(u16) ~0U' instead of '~0U'

From: Chen Gang <[email-masked]>
Date: Mon, 03 Jun 2013 19:46:08 +0800

On 06/03/2013 07:34 PM, Andy Shevchenko wrote:
>> --- a/include/linux/skbuff.h
>> > +++ b/include/linux/skbuff.h
>> > @@ -40,6 +40,8 @@
>> >  #define CHECKSUM_COMPLETE 2
>> >  #define CHECKSUM_PARTIAL 3
>> >
>> > +#define SKB_HEADER_UNSET_16    ((unsigned short) ~0U)
> Isn't better to use the same type as used in the structure description?
> 

It sounds reasonable, I will wait 1 days, if no additional suggestions
or completions, I will send patch v3.

>> > --- a/net/core/skbuff.c
>> > +++ b/net/core/skbuff.c
>> > @@ -200,7 +200,8 @@ struct sk_buff *__alloc_skb_head(gfp_t gfp_mask, int node)
>> >         atomic_set(&skb->users, 1);
>> >
>> >  #ifdef NET_SKBUFF_DATA_USES_OFFSET
>> > -       skb->mac_header = (__u16) ~0U;
>> > +       skb->mac_header = SKB_HEADER_UNSET_16;
>> > +       skb->transport_header = SKB_HEADER_UNSET_16;
> Is it correct to assign transport_header here as well?

At least, it is correct: they are in the same structure, and almost a
neighbor with each other.

Hmm... I guess that may be useless currently which will waste one
instruction.

But I still suggest to add it, it can avoid the new mistakes in the future.

Welcome another members to provide their suggestions for it.

Thanks.
-- 
Chen Gang

Asianux Corporation