[dpdk-dev] [PATCH v4] eal: out-of-bounds write
Panu Matilainen
pmatilai at redhat.com
Thu Jun 16 13:48:58 CEST 2016
On 06/15/2016 04:25 PM, Slawomir Mrozowicz wrote:
> Overrunning array mcfg->memseg of 256 44-byte elements
> at element index 257 using index j.
> Fixed by add condition with message information.
>
> Fixes: af75078fece3 ("first public release")
> Coverity ID 13282
>
> Signed-off-by: Slawomir Mrozowicz <slawomirx.mrozowicz at intel.com>
> ---
> lib/librte_eal/linuxapp/eal/eal_memory.c | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/lib/librte_eal/linuxapp/eal/eal_memory.c b/lib/librte_eal/linuxapp/eal/eal_memory.c
> index 5b9132c..19753b1 100644
> --- a/lib/librte_eal/linuxapp/eal/eal_memory.c
> +++ b/lib/librte_eal/linuxapp/eal/eal_memory.c
> @@ -1301,6 +1301,15 @@ rte_eal_hugepage_init(void)
> break;
> }
>
> + if (j >= RTE_MAX_MEMSEG) {
> + RTE_LOG(ERR, EAL,
> + "Failed: all memsegs used by ivshmem.\n"
> + "Current %d is not enough.\n"
> + "Please either increase the RTE_MAX_MEMSEG\n",
> + RTE_MAX_MEMSEG);
> + return -ENOMEM;
> + }
The error message is either incomplete or not coherent: "please either
increase..." or what?
Also no need for that "Failed:" because its already prefixed by
"Error:". I'm not sure how helpful it is to have an error message
suggest increasing a value that requires recomplication, but maybe
something more in the lines of:
("All memory segments exhausted by IVSHMEM. Try recompiling with larger
RTE_MAX_MEMSEG than current %d?", RTE_MAX_MEMSEG)
- Panu -
More information about the dev
mailing list