Staging: batman-adv: fix crash when new OGM is generated
If aggregation is not enabled the local translation table can grow much bigger and expects to fill a full ethernet packet. Reported-by: Sam Yeung <sam.cwyeung@gmail.com> Signed-off-by: Marek Lindner <lindner_marek@yahoo.de> Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
24fb009bae
commit
15f00687e3
|
@ -123,8 +123,14 @@ static void new_aggregated_packet(unsigned char *packet_buff, int packet_len,
|
|||
return;
|
||||
}
|
||||
|
||||
forw_packet_aggr->skb = dev_alloc_skb(MAX_AGGREGATION_BYTES +
|
||||
sizeof(struct ethhdr));
|
||||
if ((atomic_read(&bat_priv->aggregation_enabled)) &&
|
||||
(packet_len < MAX_AGGREGATION_BYTES))
|
||||
forw_packet_aggr->skb = dev_alloc_skb(MAX_AGGREGATION_BYTES +
|
||||
sizeof(struct ethhdr));
|
||||
else
|
||||
forw_packet_aggr->skb = dev_alloc_skb(packet_len +
|
||||
sizeof(struct ethhdr));
|
||||
|
||||
if (!forw_packet_aggr->skb) {
|
||||
if (!own_packet)
|
||||
atomic_inc(&bat_priv->batman_queue_left);
|
||||
|
|
Loading…
Reference in New Issue