[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20150228.150830.1726900309943339124.davem@davemloft.net>
Date: Sat, 28 Feb 2015 15:08:30 -0500 (EST)
From: David Miller <davem@...emloft.net>
To: eyal.birger@...il.com
Cc: willemb@...gle.com, edumazet@...gle.com, shmulik.ladkani@...il.com,
linux-bluetooth@...r.kernel.org, marcel@...tmann.org,
netdev@...r.kernel.org
Subject: Re: [PATCH net-next v2 4/7] net: packet: use skb->dev as storage
for skb orig len instead of skb->cb[]
From: Eyal Birger <eyal.birger@...il.com>
Date: Sat, 28 Feb 2015 21:39:34 +0200
> On Sat, Feb 28, 2015 at 9:21 PM, David Miller <davem@...emloft.net> wrote:
>> From: Eyal Birger <eyal.birger@...il.com>
>> Date: Thu, 26 Feb 2015 21:07:01 +0200
>>
>>> As part of an effort to move skb->dropcount to skb->cb[], 4 bytes
>>> of additional room are needed in skb->cb[] in packet sockets.
>>>
>>> Store the skb original length in skb->dev instead of skb->cb[] for
>>> this purpose.
>>>
>>> Signed-off-by: Eyal Birger <eyal.birger@...il.com>
>>
>> I'm a little confused, why is this even needed?
>>
>> packet_skb_cb is 24 bytes by my calculations, which is much
>> smaller than the cb[] size which is 48 bytes.
>
> Note the BUILD_BUG_ON in packet_rcv().
>
> packet_skb_cb may contain an address as large as MAX_ADDR_LEN (32)
> Therefore the required space is sizeof(packet_skb_cb) + MAX_ADDR_LEN - 8
> which is 48 bytes before this change.
So let's take a step back.
What link layer we support has 32-byte hardware addresses?
If the answer is lower than 32, we should use that value instead.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists