net: mvpp2: cls: Check RSS table index validity when creating a context
authorMaxime Chevallier <maxime.chevallier@bootlin.com>
Mon, 27 May 2019 11:52:01 +0000 (13:52 +0200)
committerDavid S. Miller <davem@davemloft.net>
Tue, 28 May 2019 18:18:44 +0000 (11:18 -0700)
Make sure we don't use an out-of-bound index for the per-port RSS
context array.

As of today, the global context creation in mvpp22_rss_context_create
will prevent us from reaching this case, but we should still make sure
we are using a sane value anyway.

Reported-by: kbuild test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/marvell/mvpp2/mvpp2_cls.c

index cd0daad011cefeea8e1879a9aecc441bf9650386..bd19a910dc902263ead50e2a83f2e152884e97ee 100644 (file)
@@ -1466,6 +1466,9 @@ int mvpp22_port_rss_ctx_create(struct mvpp2_port *port, u32 *port_ctx)
                        break;
        }
 
+       if (i == MVPP22_N_RSS_TABLES)
+               return -EINVAL;
+
        port->rss_ctx[i] = rss_ctx;
        *port_ctx = i;