Please find attached source. Also the variables to detect completion are not volatile. I have checked in disassembly they are fetched from memory in the completion loop.
Regards, Arka On 12 Apr 2017 10:37 a.m., "Tian, Feng" <[email protected]> wrote: > Arka, > > Could you please share us your test code? > > Thanks > Feng > > -----Original Message----- > From: edk2-devel [mailto:[email protected]] On Behalf Of > Arka Sharma > Sent: Wednesday, April 12, 2017 12:59 PM > To: [email protected] > Subject: [edk2] NvmExpressDxe async application crash with UDK debugger > > Hi, > > I am testing async io in NvmExpressDxe. The target system is Asrock > Z97 which I have connected to host with serial port where UDK debugger is > running. So my application does following > > 1. CreateEvent > 2. Call Passthru > 3. CmdSent++; > 4. Repeat 1-3 until not ready from driver 5. while (CmdRecd < CmdSent); 4. > Close all the events. > > CmdRecvd is incremented inside EventCallback. I am allocating both CmdSent > and CmdRecvd and passing the address of CmdRecvd in CreateEvent. With this > I face WinDbg exception quite often and it says "Target encountered an > exception: Vector = 6, Error Code = 00000000". > I can share the application code for more clarity. I am building with /Od > and GenFw with --keepexceptiontable > > Regards, > Arka > _______________________________________________ > edk2-devel mailing list > [email protected] > https://lists.01.org/mailman/listinfo/edk2-devel > _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

