net/packet: fix 4gb buffer limit due to overflow check
authorKal Conley <kal.conley@dectris.com>
Sun, 10 Feb 2019 08:57:11 +0000 (09:57 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 27 Feb 2019 09:07:00 +0000 (10:07 +0100)
commit3b70317bf9298f50511ce77857ccccb7a7ddf000
tree965de08eca2e5360d4cb7537ed9086169e92d60a
parentaf9a0dba3a879ea466a3b9b9ed39dd01267081ee
net/packet: fix 4gb buffer limit due to overflow check

[ Upstream commit fc62814d690cf62189854464f4bd07457d5e9e50 ]

When calculating rb->frames_per_block * req->tp_block_nr the result
can overflow. Check it for overflow without limiting the total buffer
size to UINT_MAX.

This change fixes support for packet ring buffers >= UINT_MAX.

Fixes: 8f8d28e4d6d8 ("net/packet: fix overflow in check for tp_frame_nr")
Signed-off-by: Kal Conley <kal.conley@dectris.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/packet/af_packet.c