Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.
6709 Discussions

ippiResizeSqrPixel_8u_C1R causes amd64 machine to crash (BSOD)

Afshin_Hosseinipour
292 Views

My kernel driver is built in DDK (ver.7600.16385.0) win7 x64 checked build environment and linked to IPP 6.1 library (em64t) with no warning or error. When the driver comes to call ippiResizeSqrPixel_8u_C1R() function it crashes with the following kernel dump:

NOTE: 32bit version of the driver runs with no hickup in 32 bit platform.

SYSTEM_THREAD_EXCEPTION_NOT_HANDLED (7e)
This is a very common bugcheck. Usually the exception address pinpoints
the driver/function that caused the problem. Always note this address
as well as the link date of the driver/image that contains this address.
Arguments:
Arg1: ffffffffc0000005, The exception code that was not handled
Arg2: fffffadfc64f8166, The address that the exception occurred at
Arg3: fffffadfc901bb70, Exception Record Address
Arg4: fffffadfc901b580, Context Record Address

Debugging Details:
------------------


EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - The instruction at "0x%08lx" referenced memory at "0x%08lx". The memory could not be "%s".

FAULTING_IP:
hornet_usb_driver!y8_ownpi_CalcBorder8plC+4a2
fffffadf`c64f8166 470fb67c1d00 movzx r15d,byte ptr [r13+r11]

EXCEPTION_RECORD: fffffadfc901bb70 -- (.exr 0xfffffadfc901bb70)
ExceptionAddress: fffffadfc64f8166 (hornet_usb_driver!y8_ownpi_CalcBorder8plC+0x00000000000004a2)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 0000000000000000
Parameter[1]: 00000000cc981e00
Attempt to read from address 00000000cc981e00

CONTEXT: fffffadfc901b580 -- (.cxr 0xfffffadfc901b580)
rax=fffffadfcd3ff020 rbx=00000000cc9823a0 rcx=0000000000000000
rdx=0000000000000000 rsi=0000000000000000 rdi=0000000000000000
rip=fffffadfc64f8166 rsp=fffffadfc901bd90 rbp=00000000cc9820d0
r8=0000000000000000 r9=fffffadfcd404a40 r10=fffffadfcd407a40
r11=00000000cc981e00 r12=0000000000000001 r13=0000000000000000
r14=0000000000000000 r15=00000000000002cf
iopl=0 nv up ei pl zr na po nc
cs=0010 ss=0018 ds=002b es=002b fs=0053 gs=002b efl=00010246
hornet_usb_driver!y8_ownpi_CalcBorder8plC+0x4a2:
fffffadf`c64f8166 470fb67c1d00 movzx r15d,byte ptr [r13+r11] ds:002b:00000000`cc981e00=??
Resetting default scope

DEFAULT_BUCKET_ID: DRIVER_FAULT

PROCESS_NAME: System

CURRENT_IRQL: 2

ERROR_CODE: (NTSTATUS) 0xc0000005 - The instruction at "0x%08lx" referenced memory at "0x%08lx". The memory could not be "%s".

EXCEPTION_PARAMETER1: 0000000000000000

EXCEPTION_PARAMETER2: 00000000cc981e00

READ_ADDRESS: 00000000cc981e00

FOLLOWUP_IP:
hornet_usb_driver!y8_ownpi_CalcBorder8plC+4a2
fffffadf`c64f8166 470fb67c1d00 movzx r15d,byte ptr [r13+r11]

BUGCHECK_STR: 0x7E

LAST_CONTROL_TRANSFER: from fffffadfc62cd96f to fffffadfc64f8166

STACK_TEXT:
fffffadf`c901bd90 fffffadf`c62cd96f : 00000000`00000000 fffffadf`c901c630 00000000`ffffff00 fffffadf`c901c600 : hornet_usb_driver!y8_ownpi_CalcBorder8plC+0x4a2
fffffadf`c901bec0 fffffadf`c628dcf6 : 00000000`00000000 00000240`000002d0 00000000`00000000 fffffadf`cead9c20 : hornet_usb_driver!y8_ownpiResizeSP+0x7577
fffffadf`c901c600 fffffadf`c6212da8 : fffffadf`c901c8c4 00000240`000002d0 00000000`00000010 fffff800`010295d0 : hornet_usb_driver!y8_ippiResizeSqrPixel_8u_C1R+0x1e6
fffffadf`c901c7c0 fffffadf`c61f1c11 : fffffadf`cd5ab010 fffffadf`00000003 fffffadf`c901cb38 fffffadf`cd471288 : hornet_usb_driver!Stretcher_DoStretchOrShrink+0x1c98
fffffadf`c901cac0 fffffadf`c61f50d6 : fffffadf`cd471010 fffffadf`0016b454 fffffadf`00000001 fffffadf`ce7fda60 : hornet_usb_driver!GraphicsPipeline_DoStretch+0x14d1
fffffadf`c901cba0 fffffadf`c61f53f8 : fffffadf`cd471010 fffffadf`c6206f70 fffffadf`cd48c740 00000000`3d90a901 : hornet_usb_driver!GraphicsPipeline_DoFlush+0x6a6
fffffadf`c901cc10 fffffadf`c61fd0a3 : fffffadf`cd471010 fffffadf`cd48c700 00000000`ffffff00 00000000`00000000 : hornet_usb_driver!GraphicsPipeline_FlushTask+0xc8
fffffadf`c901cc50 fffffadf`c61f9bc0 : fffffadf`ce4f3780 fffffadf`ce712b9c 00000000`ffffffff 00000000`00000000 : hornet_usb_driver!TaskManager_Run+0x5e3
fffffadf`c901cce0 fffffadf`c61eecfe : fffffadf`ce712b50 fffffadf`cd471010 000007ff`7fc98f7b 00000000`00000000 : hornet_usb_driver!GraphicsPipeline_RunFunction+0x580
fffffadf`c901cd30 fffff800`0124a972 : fffffadf`ce712b50 00000000`00000000 00000000`00000000 00000000`00000000 : hornet_usb_driver!GeThread_EntryPoint+0x12e
fffffadf`c901cd70 fffff800`01020226 : fffffadf`c8a9b180 fffffadf`ce661bf0 fffffadf`c8aa3680 00000000`ffffffff : nt!PspSystemThreadStartup+0x3e
fffffadf`c901cdd0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KxStartSystemThread+0x16


SYMBOL_STACK_INDEX: 0

SYMBOL_NAME: hornet_usb_driver!y8_ownpi_CalcBorder8plC+4a2

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: hornet_usb_driver

IMAGE_NAME: hornet_usb_driver.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 4b6b34cf

STACK_COMMAND: .cxr 0xfffffadfc901b580 ; kb

FAILURE_BUCKET_ID: X64_0x7E_hornet_usb_driver!y8_ownpi_CalcBorder8plC+4a2

BUCKET_ID: X64_0x7E_hornet_usb_driver!y8_ownpi_CalcBorder8plC+4a2

0 Kudos
3 Replies
Chao_Y_Intel
Moderator
292 Views

Hello,

Which version of library you are using? and what is the size of input image and interpolation type.

There was as bug on small size image: http://software.intel.com/en-us/forums/showthread.php?t=64819

This problem was fixed in IPP 6.1 update 2 release.

Could you try how the new release work for you now?

Thanks,

Chao

0 Kudos
Afshin_Hosseinipour
292 Views

Chao,

Thanks for the reply.

I have IPP 6.1 update 1 and I'm going to upgrade it to update 3 that has just been released.

Further investigation in BSOD root cause showed that a wrong 64 bit pointer was passed into ippiResizeSqrPixel_8u_C1R as input region pointer. So it was my driver fault not this API.

Regards,

Afshin

0 Kudos
Vladimir_Dudnik
Employee
292 Views

Hi Afshin,

thanks for updating us on this issue

Regards,
Vladimir

0 Kudos
Reply