net: mvpp2: Don't use dynamic allocs for local variables
authorMaxime Chevallier <maxime.chevallier@bootlin.com>
Mon, 26 Mar 2018 13:34:23 +0000 (15:34 +0200)
committerDavid S. Miller <davem@davemloft.net>
Tue, 27 Mar 2018 14:47:23 +0000 (10:47 -0400)
commit0c6d9b44145d8134ebe4e9ebfa02e0dd23744723
tree396d887c6726d2fe71bcf38c20e9b9e7b2996e87
parent47e0e14eb1a688c0868385e02db263093d2df6db
net: mvpp2: Don't use dynamic allocs for local variables

Some helper functions that search for given entries in the TCAM filter
on PPv2 controller make use of dynamically alloced temporary variables,
allocated with GFP_KERNEL. These functions can be called in atomic
context, and dynamic alloc is not really needed in these cases anyways.

This commit gets rid of dynamic allocs and use stack allocation in the
following functions, and where they're used :
 - mvpp2_prs_flow_find
 - mvpp2_prs_vlan_find
 - mvpp2_prs_double_vlan_find
 - mvpp2_prs_mac_da_range_find

For all these functions, instead of returning an temporary object
representing the TCAM entry, we simply return the TCAM id that matches
the requested entry.

Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/marvell/mvpp2.c