net/sfc/base: check size of memory to read sensors data to
Size of provided memory should be consistent with specified size.
Fixes: dfb3b1ce15
("net/sfc/base: import monitors access via MCDI")
Cc: stable@dpdk.org
Signed-off-by: Martin Harvey <mharvey@solarflare.com>
Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
This commit is contained in:
parent
0c52235b43
commit
252faf84f4
@ -194,6 +194,12 @@ efx_mcdi_read_sensors(
|
||||
uint8_t payload[MAX(MC_CMD_READ_SENSORS_EXT_IN_LEN,
|
||||
MC_CMD_READ_SENSORS_EXT_OUT_LEN)];
|
||||
uint32_t addr_lo, addr_hi;
|
||||
efx_rc_t rc;
|
||||
|
||||
if (EFSYS_MEM_SIZE(esmp) < size) {
|
||||
rc = EINVAL;
|
||||
goto fail1;
|
||||
}
|
||||
|
||||
req.emr_cmd = MC_CMD_READ_SENSORS;
|
||||
req.emr_in_buf = payload;
|
||||
@ -211,6 +217,11 @@ efx_mcdi_read_sensors(
|
||||
efx_mcdi_execute(enp, &req);
|
||||
|
||||
return (req.emr_rc);
|
||||
|
||||
fail1:
|
||||
EFSYS_PROBE1(fail1, efx_rc_t, rc);
|
||||
|
||||
return (rc);
|
||||
}
|
||||
|
||||
static __checkReturn efx_rc_t
|
||||
|
Loading…
Reference in New Issue
Block a user