Skip to content

Gaussian Blur with type CV_32FC1 causes invalid memory access inside IPP code #11303

@good12guy

Description

@good12guy

I have a reproducible bug which fails in libippiw. This seems to be not open source, but a binary library.
I was not aware that "open" cv meant mostly open. Is there source that can be used to debug this problem? Here is a gdb stack trace.

Stack trace example (gdb) bt #0 0x00007fffb629e0ab in icv_l9_ownFilterGaussianRow_MemCom_32f_C1 () from /tmp/cinelerra-5.1/bin/plugins/exotic/findobj.plugin #1 0x00007fffb62b460f in icv_l9_ownFilterGaussianRow_Brd_32f_C1 () from /tmp/cinelerra-5.1/bin/plugins/exotic/findobj.plugin #2 0x00007fffb62b263e in icv_l9_ownFilterGaussianRowCom_Brd_32f_C1 () from /tmp/cinelerra-5.1/bin/plugins/exotic/findobj.plugin #3 0x00007fffb62c16be in icv_l9_ippiFilterGaussian_32f_C1R_L () from /tmp/cinelerra-5.1/bin/plugins/exotic/findobj.plugin #4 0x00007fffb53ed91d in llwiFilterGaussian_Process (pSrc=0x7ffd57e6cdc8, srcStep=7448, pDst=0x7ffd1875a088, dstStep=7448, roi=..., border=51, pBorderVal=0x7fff76811b40, pSpec=0x7fff157f96e0) at /tmp/cinelerra-5.1/thirdparty/opencv/build/3rdparty/ippicv/ippiw_lnx/src/iw_image_filter_gaussian.c:393 #5 0x00007fffb53ee094 in llwiFilterGaussian_ProcessWrap (pSrcImage=pSrcImage@entry=0x7fff157f95d0, pDstImage=pDstImage@entry=0x7fff157f9630, border=, pBorderVal=pBorderVal@entry=0x7fff76811b40, pTile=pTile@entry=0x0, pSpec=pSpec@entry=0x7fff157f96e0) at /tmp/cinelerra-5.1/thirdparty/opencv/build/3rdparty/ippicv/ippiw_lnx/src/iw_image_filter_gaussian.c:358 #6 0x00007fffb53edb59 in llwiFilterGaussian_ProcessWrap (pSrcImage=pSrcImage@entry=0x7fff76811dc0, pDstImage=pDstImage@entry=0x7fff76811e30, border=, border@entry=ippBorderMirror, pBorderVal=pBorderVal@entry=0x7fff76811b40, pTile=pTile@entry=0x7fff157f99a0, pSpec=pSpec@entry=0x7fff157f96e0) at /tmp/cinelerra-5.1/thirdparty/opencv/build/3rdparty/ippicv/ippiw_lnx/src/iw_image_filter_gaussian.c:249 #7 0x00007fffb53ee7d0 in iwiFilterGaussian (pSrcImage=0x7fff76811dc0, pDstImage=0x7fff76811e30, kernelSize=, sigma=, pAuxParams=pAuxParams@entry=0x7fff157f9980, border=ippBorderMirror, pBorderVal=0x7fff76811b40, pTile=0x7fff157f99a0) at /tmp/cinelerra-5.1/thirdparty/opencv/build/3rdparty/ippicv/ippiw_lnx/src/iw_image_filter_gaussian.c:121 #8 0x00007fffb4d1575f in ipp::iwiFilterGaussian (tile=..., border=..., auxParams=..., sigma=, kernelSize=, dstImage=..., srcImage=...) at /tmp/cinelerra-5.1/thirdparty/opencv/build/3rdparty/ippicv/ippiw_lnx/include/iw++/iw_image_filter.hpp:290 #9 cv::ipp_gaussianBlurParallel::operator() (this=0x7fff76811ea0, range=...) at /tmp/cinelerra-5.1/thirdparty/opencv/modules/imgproc/src/smooth.cpp:3397 #10 0x00007fffb4ba2df3 in (anonymous namespace)::ParallelLoopBodyWrapper::operator() (this=0x7fff76811970, sr=...) at /tmp/cinelerra-5.1/thirdparty/opencv/modules/core/src/parallel.cpp:276 #11 0x00007fffb4ba36d1 in cv::ParallelJob::execute (this=this@entry=0x7ffd5474c420, is_worker_thread=is_worker_thread@entry=true) at /tmp/cinelerra-5.1/thirdparty/opencv/modules/core/src/parallel_impl.cpp:333 #12 0x00007fffb4ba3f85 in cv::WorkerThread::thread_body (this=0x7fff607b9b30) at /tmp/cinelerra-5.1/thirdparty/opencv/modules/core/src/parallel_impl.cpp:447 #13 0x00007fffb4ba4059 in cv::WorkerThread::thread_loop_wrapper (thread_object=) at /tmp/cinelerra-5.1/thirdparty/opencv/modules/core/src/parallel_impl.cpp:273 #14 0x00007ffff64fe50b in start_thread () from /lib64/libpthread.so.0 #15 0x00007ffff408d16f in clone () from /lib64/libc.so.6

Yes, it is a reproducible bug. If there is a new version of libippiw, or a convenient way to submit a bug to someone who has the source code, I will be happy to describe the build and test procedure.

gg

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions