OSDN Git Service

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)
committerDavid S. Miller <davem@davemloft.net>
Tue, 12 Feb 2019 18:37:23 +0000 (13:37 -0500)
commitfc62814d690cf62189854464f4bd07457d5e9e50
treef4764002a6cc91fdfea00ecbc690e787c9bba974
parent1ec17dbd90f8b638f41ee650558609c1af63dfa0
net/packet: fix 4gb buffer limit due to overflow check

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>
net/packet/af_packet.c