Skip to content

MEMCHECK: ==1321== 544 bytes in 1 blocks are possibly lost in loss record #627

@JohnSmithBH84

Description

@JohnSmithBH84

I’ve scanned hnswlib with MEMCHECK and it has triggered on hnswlib/examples/cpp/example_epsilon_search.cpp line 20. I'm not sure whether this is an actual issue, or whether code of hnswlib is too sophisticated for MEMCHECK to understand. Do you guys have any idea?

Project version

hnswlib: master

Operating system

compiler: gcc (Debian 12.2.0-14) 12.2.0

Ubuntu 22.04.4 LTS
Linux 5.15.0-125-generic #135-Ubuntu SMP Fri Sep 27 13:53:58 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

I did this

Launched hnswlib/build/example_epsilon_search

I expected the following

No problem reported by MEMCHECK

I got the following

hnswlib/build/example_epsilon_search
==1321== Copyright (C) 2002-2022, and GNU GPL'd, by Julian Seward et al.
==1321== Command: hnswlib/build/example_epsilon_search
vex amd64->IR: unhandled instruction bytes: 0x62 0xF2 0xFD 0x8 0x7C 0xC0 0x49 0x89 0x45 0x0
vex amd64->IR:   REX=0 REX.W=0 REX.R=0 REX.X=0 REX.B=0
vex amd64->IR:   VEX=0 VEX.L=0 VEX.nVVVV=0x0 ESC=NONE
vex amd64->IR:   PFX.66=0 PFX.F2=0 PFX.F3=0
==1321==    at 0x10AF92: _M_set_node (usr/include/c++/12/bits/stl_deque.h:267)
==1321==    by 0x10AF92: _Deque_base (usr/include/c++/12/bits/stl_deque.h:460)
==1321==    by 0x10AF92: VisitedListPool (home/hnswlib/examples/cpp/../../hnswlib/visited_list_pool.h:44)
==1321==    by 0x10AF92: main (home/hnswlib/examples/cpp/example_epsilon_search.cpp:20)
==1321== did not recognise.  There are two possible reasons for this.
==1321==    location.  If you are running Memcheck and you just saw a
==1321== 2. The instruction is legitimate but Valgrind doesn't handle it,
==1321==    you are not sure, please let us know and we'll try to fix it.
==1321== probably kill your program.
==1321== Process terminating with default action of signal 4 (SIGILL): dumping core
==1321==    at 0x10AF92: _M_set_node (usr/include/c++/12/bits/stl_deque.h:267)
==1321==    by 0x10AF92: _Deque_base (usr/include/c++/12/bits/stl_deque.h:460)
==1321==    by 0x10AF92: VisitedListPool (home/hnswlib/examples/cpp/../../hnswlib/visited_list_pool.h:44)
==1321==    by 0x10AF92: main (home/hnswlib/examples/cpp/example_epsilon_search.cpp:20)
==1321== HEAP SUMMARY:
==1321==   total heap usage: 9 allocs, 0 frees, 5,175,392 bytes allocated
==1321== 192 (128 direct, 64 indirect) bytes in 1 blocks are definitely lost in loss record 2 of 9
==1321==    by 0x10AF2A: HierarchicalNSW (home/hnswlib/examples/cpp/../../hnswlib/hnswalg.h:132)
==1321==    by 0x10AF2A: main (home/hnswlib/examples/cpp/example_epsilon_search.cpp:20)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions