mirror of
https://github.com/opencv/opencv.git
synced 2025-06-12 20:42:53 +08:00
ts: update valgrind suppressions
This commit is contained in:
parent
402a77e7f7
commit
bf0173bf38
@ -533,6 +533,12 @@ macro(ocv_finalize_status)
|
|||||||
execute_process(COMMAND ${CMAKE_COMMAND} -E copy_if_different "${OPENCV_BUILD_INFO_FILE}" "${OPENCV_MODULE_opencv_core_BINARY_DIR}/version_string.inc" OUTPUT_QUIET)
|
execute_process(COMMAND ${CMAKE_COMMAND} -E copy_if_different "${OPENCV_BUILD_INFO_FILE}" "${OPENCV_MODULE_opencv_core_BINARY_DIR}/version_string.inc" OUTPUT_QUIET)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(UNIX)
|
||||||
|
install(FILES "${OpenCV_SOURCE_DIR}/platforms/scripts/valgrind.supp"
|
||||||
|
"${OpenCV_SOURCE_DIR}/platforms/scripts/valgrind_3rdparty.supp"
|
||||||
|
DESTINATION "${OPENCV_OTHER_INSTALL_PATH}" COMPONENT "dev")
|
||||||
|
endif()
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
|
|
||||||
|
@ -197,7 +197,7 @@ prefilterXSobel( const Mat& src, Mat& dst, int ftzero )
|
|||||||
{
|
{
|
||||||
int x, y;
|
int x, y;
|
||||||
const int OFS = 256*4, TABSZ = OFS*2 + 256;
|
const int OFS = 256*4, TABSZ = OFS*2 + 256;
|
||||||
uchar tab[TABSZ];
|
uchar tab[TABSZ] = { 0 };
|
||||||
Size size = src.size();
|
Size size = src.size();
|
||||||
|
|
||||||
for( x = 0; x < TABSZ; x++ )
|
for( x = 0; x < TABSZ; x++ )
|
||||||
|
@ -1547,7 +1547,7 @@ static bool ocl_meanStdDev( InputArray _src, OutputArray _mean, OutputArray _sdv
|
|||||||
|
|
||||||
bool haveMask = _mask.kind() != _InputArray::NONE;
|
bool haveMask = _mask.kind() != _InputArray::NONE;
|
||||||
int nz = haveMask ? -1 : (int)_src.total();
|
int nz = haveMask ? -1 : (int)_src.total();
|
||||||
Scalar mean, stddev;
|
Scalar mean(0), stddev(0);
|
||||||
const int cn = _src.channels();
|
const int cn = _src.channels();
|
||||||
if (cn > 4)
|
if (cn > 4)
|
||||||
return false;
|
return false;
|
||||||
|
@ -37,7 +37,7 @@ if __name__ == "__main__":
|
|||||||
|
|
||||||
# Valgrind
|
# Valgrind
|
||||||
parser.add_argument("--valgrind", action="store_true", default=False, help="Run C++ tests in valgrind")
|
parser.add_argument("--valgrind", action="store_true", default=False, help="Run C++ tests in valgrind")
|
||||||
parser.add_argument("--valgrind_supp", metavar="FILE", help="Path to valgrind suppression file (example: --valgrind_supp opencv/platforms/scripts/valgrind.supp)")
|
parser.add_argument("--valgrind_supp", metavar="FILE", action='append', help="Path to valgrind suppression file (example: --valgrind_supp opencv/platforms/scripts/valgrind.supp)")
|
||||||
parser.add_argument("--valgrind_opt", metavar="OPT", action="append", default=[], help="Add command line option to valgrind (example: --valgrind_opt=--leak-check=full)")
|
parser.add_argument("--valgrind_opt", metavar="OPT", action="append", default=[], help="Add command line option to valgrind (example: --valgrind_opt=--leak-check=full)")
|
||||||
|
|
||||||
# Android
|
# Android
|
||||||
|
@ -103,10 +103,15 @@ class TestSuite(object):
|
|||||||
def wrapInValgrind(self, cmd = []):
|
def wrapInValgrind(self, cmd = []):
|
||||||
if self.options.valgrind:
|
if self.options.valgrind:
|
||||||
res = ['valgrind']
|
res = ['valgrind']
|
||||||
if self.options.valgrind_supp:
|
supp = self.options.valgrind_supp or []
|
||||||
res.append("--suppressions=%s" % self.options.valgrind_supp)
|
for f in supp:
|
||||||
|
if os.path.isfile(f):
|
||||||
|
res.append("--suppressions=%s" % f)
|
||||||
|
else:
|
||||||
|
print("WARNING: Valgrind suppression file is missing, SKIP: %s" % f)
|
||||||
res.extend(self.options.valgrind_opt)
|
res.extend(self.options.valgrind_opt)
|
||||||
return res + cmd + [longTestFilter(LONG_TESTS_DEBUG_VALGRIND)]
|
has_gtest_filter = next((True for x in cmd if x.startswith('--gtest_filter=')), False)
|
||||||
|
return res + cmd + ([longTestFilter(LONG_TESTS_DEBUG_VALGRIND)] if not has_gtest_filter else [])
|
||||||
return cmd
|
return cmd
|
||||||
|
|
||||||
def tryCommand(self, cmd):
|
def tryCommand(self, cmd):
|
||||||
|
@ -1,13 +1,203 @@
|
|||||||
{
|
{
|
||||||
IPP static init
|
OpenCV-IPP static init
|
||||||
Memcheck:Cond
|
Memcheck:Cond
|
||||||
fun:ippicvGetCpuFeatures
|
fun:ippicvGetCpuFeatures
|
||||||
fun:ippicvStaticInit
|
fun:ippicvStaticInit
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
TBB - allocate_via_handler_v3 issue
|
OpenCV-getInitializationMutex
|
||||||
Memcheck:Leak
|
Memcheck:Leak
|
||||||
fun:malloc
|
...
|
||||||
fun:_ZN3tbb8internal23allocate_via_handler_v3Em
|
fun:_ZN2cv22getInitializationMutexEv
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-getStdAllocator
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:_ZN2cv3Mat15getStdAllocatorEv
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-getOpenCLAllocator
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:_ZN2cv3ocl18getOpenCLAllocatorEv
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-getCoreTlsData
|
||||||
|
Memcheck:Leak
|
||||||
|
fun:_Znwm
|
||||||
|
fun:_ZN2cv14getCoreTlsDataEv
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-TLS-getTlsStorage
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:_ZN2cvL13getTlsStorageEv
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-TLS-getData()
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:*setData*
|
||||||
|
fun:_ZNK2cv16TLSDataContainer7getDataEv
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-parallel_for
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:_ZN2cv13ThreadManager8initPoolEv*
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-parallel_for
|
||||||
|
Memcheck:Leak
|
||||||
|
fun:_Znwm
|
||||||
|
fun:*instance*
|
||||||
|
fun:_ZN2cv21parallel_for_pthreadsERKNS_5RangeERKNS_16ParallelLoopBodyEd
|
||||||
|
fun:_ZN2cv13parallel_for_ERKNS_5RangeERKNS_16ParallelLoopBodyEd
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-parallel_for-ThreadManager::TLS
|
||||||
|
Memcheck:Leak
|
||||||
|
fun:_Znwm
|
||||||
|
fun:_ZNK2cv7TLSDataINS_13ThreadManager13work_thread_tEE18createDataInstanceEv
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-parallel_for-setNumThreads()
|
||||||
|
Memcheck:Leak
|
||||||
|
fun:_Znwm
|
||||||
|
fun:_ZN2cv13ThreadManager8instanceEv
|
||||||
|
fun:_ZN2cv33parallel_pthreads_set_threads_numEi
|
||||||
|
fun:_ZN2cv13setNumThreadsEi
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-parallel_for-getNumThreads()
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:_ZN2cv13getNumThreadsEv
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-getIPPSingelton
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:_ZN2cv3ippL15getIPPSingeltonEv
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-getGlobalMatOpInitializer
|
||||||
|
Memcheck:Leak
|
||||||
|
fun:_Znwm
|
||||||
|
fun:_ZN2cvL25getGlobalMatOpInitializerEv
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-CoreTLSData
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:_ZNK2cv7TLSDataINS_11CoreTLSDataEE3getEv
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-ThreadID
|
||||||
|
Memcheck:Leak
|
||||||
|
fun:_Znwm
|
||||||
|
fun:_ZNK2cv7TLSDataINS_12_GLOBAL__N_18ThreadIDEE18createDataInstanceEv
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-ThreadID-TLS
|
||||||
|
Memcheck:Leak
|
||||||
|
fun:_Znwm
|
||||||
|
fun:getThreadIDTLS
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-CoreTLS
|
||||||
|
Memcheck:Leak
|
||||||
|
fun:_Znwm
|
||||||
|
fun:_ZNK2cv7TLSDataINS_11CoreTLSDataEE18createDataInstanceEv
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-haveOpenCL
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:_ZN2cv3ocl10haveOpenCLEv
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-DNN-getLayerFactoryMutex
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:_ZN2cv3dnn*L20getLayerFactoryMutexEv
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-ocl::Context
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:_ZN2cv3ocl7Context10getDefaultEb
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-ocl::Device
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:_ZN2cv3ocl6Device10getDefaultEv
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-ocl::Queue
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:_ZN2cv3ocl5Queue6createERKNS0_7ContextERKNS0_6DeviceE
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-ocl::Program
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:_ZN2cv3ocl6Kernel6createEPKcRKNS0_7ProgramE
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-ocl::ProgramEntry
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:_ZNK2cv3ocl8internal12ProgramEntrycvRNS0_13ProgramSourceEEv
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-ocl::Context::getProg
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:_ZN2cv3ocl7Context7getProgERKNS0_13ProgramSourceERKNS_6StringERS5_
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-ITT
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:__itt_*create*
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCV-FFmpeg-swsscale
|
||||||
|
Memcheck:Addr16
|
||||||
|
...
|
||||||
|
fun:sws_scale
|
||||||
|
fun:_ZN20CvVideoWriter_FFMPEG10writeFrameEPKhiiiii
|
||||||
|
fun:cvWriteFrame_FFMPEG
|
||||||
}
|
}
|
||||||
|
113
platforms/scripts/valgrind_3rdparty.supp
Normal file
113
platforms/scripts/valgrind_3rdparty.supp
Normal file
@ -0,0 +1,113 @@
|
|||||||
|
{
|
||||||
|
IPP static init
|
||||||
|
Memcheck:Cond
|
||||||
|
fun:ippicvGetCpuFeatures
|
||||||
|
fun:ippicvStaticInit
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
TBB - allocate_via_handler_v3 issue
|
||||||
|
Memcheck:Leak
|
||||||
|
fun:malloc
|
||||||
|
fun:_ZN3tbb8internal23allocate_via_handler_v3Em
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
GTest
|
||||||
|
Memcheck:Cond
|
||||||
|
fun:_ZN7testing8internal11CmpHelperLEIddEENS_15AssertionResultEPKcS4_RKT_RKT0_
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCL
|
||||||
|
Memcheck:Cond
|
||||||
|
...
|
||||||
|
obj:**/libOpenCL.so*
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCL-Intel
|
||||||
|
Memcheck:Cond
|
||||||
|
...
|
||||||
|
obj:**/libigdrcl.so
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCL-Intel
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
obj:*/libigdrcl.so*
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCL
|
||||||
|
Memcheck:Param
|
||||||
|
ioctl(generic)
|
||||||
|
...
|
||||||
|
fun:clGetPlatformIDs
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
OpenCL-Init
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:clGetPlatformIDs
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
glib
|
||||||
|
Memcheck:Leak
|
||||||
|
fun:*alloc
|
||||||
|
obj:*/libglib*
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
gcrypt
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
obj:*/libgcrypt*
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
p11-kit
|
||||||
|
Memcheck:Leak
|
||||||
|
fun:*alloc
|
||||||
|
obj:*/libp11-kit*
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
gobject
|
||||||
|
Memcheck:Leak
|
||||||
|
fun:*alloc
|
||||||
|
...
|
||||||
|
obj:*/libgobject*
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
tasn
|
||||||
|
Memcheck:Leak
|
||||||
|
fun:*alloc
|
||||||
|
obj:*/libtasn*.so*
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
dl_init
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:_dl_init
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
dl_open
|
||||||
|
Memcheck:Leak
|
||||||
|
...
|
||||||
|
fun:_dl_open
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
GDAL
|
||||||
|
Memcheck:Leak
|
||||||
|
fun:*alloc
|
||||||
|
...
|
||||||
|
obj:/usr/lib/libgdal.so.1.17.1
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user