Bug 1378

Summary: Coverity defect reported in rte_mempool.h : Out-of-bounds access
Product: DPDK Reporter: dmckie
Component: coreAssignee: dev
Status: UNCONFIRMED ---    
Severity: normal CC: dmckie, stephen
Priority: Normal    
Version: 22.11   
Target Milestone: ---   
Hardware: x86   
OS: Linux   
Attachments: rte_mempool coverity finding
Coverity formatted output

Description dmckie 2024-02-08 20:14:53 CET
I have searched unsuccessfully for information on this potential issue reported by coverity. 

Is this a known issue? or a false-positive coverity finding?

Category: Memory - corruptions
file: dpdk/include/rte_mempool.h

static __rte_always_inline void rte_mempool_put(struct rte_mempool *mp, void *obj)
{
    	
Out-of-bounds access (OVERRUN)
overrun-buffer-val: Overrunning buffer pointed to by &obj of 8 bytes by passing it to a function which accesses it at byte offset 463.
        rte_mempool_put_bulk(mp, &obj, 1);
Comment 1 Stephen Hemminger 2024-02-08 21:31:59 CET
Please add link to the coverity report.
Comment 2 dmckie 2024-02-08 21:55:50 CET
Created attachment 273 [details]
rte_mempool coverity finding
Comment 3 dmckie 2024-02-08 21:57:10 CET
Our Coverity is a local instance in our company and not accessible via public internet. I attached an image of the finding as best I could
Comment 4 dmckie 2024-02-08 22:24:05 CET
The attached image was from a scan of 21.11-1.el8  However, I updated to 21.11-3 and the same finding was reported during coverity static analysis.

If this is induced by our application I haven't figured out how as of yet.
Comment 5 Stephen Hemminger 2024-02-09 02:34:06 CET
I see nothing obviously wrong there.
Comment 6 dmckie 2024-02-09 15:47:34 CET
Created attachment 274 [details]
Coverity formatted output

I grabbed the html formatted coverity output for this finding.  It does include a little more detail than my previous image but I still don't see anything obvious.  If this doesn't reveal anything I will assume this is a false positive coverity finding for now.  We have seen no related operational issues or crashes in our product testing. Thank you for your time looking at this.