[wdmaudiodev] Re: Strange HLK audio errors

  • From: "Matthew van Eerde" <dmarc-noreply@xxxxxxxxxxxxx> (Redacted sender "Matthew.van.Eerde" for DMARC)
  • To: "wdmaudiodev@xxxxxxxxxxxxx" <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Tue, 21 May 2019 15:02:46 +0000

Go to gaudit_winblue.exe > Tests > Select Tests (or press the “select tests” 
button on the toolbar)
Expand the test tree to find the test you want
Select the test > Add

https://imgur.com/NZhURvi

________________________________
From: wdmaudiodev-bounce@xxxxxxxxxxxxx <wdmaudiodev-bounce@xxxxxxxxxxxxx> on 
behalf of Michael Johansen <johansen.mic@xxxxxxxxx>
Sent: Tuesday, May 21, 2019 6:01:37 AM
To: wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Re: Strange HLK audio errors

Thanks. Will do.

Tried to run gaudit_winblue.exe from the command line using the options in the 
log. It simply said that "No test cases selected".


Den man. 20. maj 2019 kl. 17.06 skrev Matthew van Eerde 
<dmarc-noreply@xxxxxxxxxxxxx<mailto:dmarc-noreply@xxxxxxxxxxxxx>>:
When I say “run the test in isolation” I mean the specific failing test case – 
which in my example was “KS 
properties\KSPROPSETID_Connection\KSPROPERTY_CONNECTION_DATAFORMAT\Invalid bit 
depth” – all by itself, without the other test cases in the same test job.

To avoid confusing multiple issues, please start a separate thread for each 
failing test case you would like help with. I may want to loop in experts on my 
side, and the experts for (say) data range intersection handlers are different 
people than the experts for APO failures.

________________________________
From: wdmaudiodev-bounce@xxxxxxxxxxxxx<mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
<wdmaudiodev-bounce@xxxxxxxxxxxxx<mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx>> on 
behalf of Michael Johansen 
<johansen.mic@xxxxxxxxx<mailto:johansen.mic@xxxxxxxxx>>
Sent: Monday, May 20, 2019 7:07:16 AM
To: wdmaudiodev@xxxxxxxxxxxxx<mailto:wdmaudiodev@xxxxxxxxxxxxx>
Subject: [wdmaudiodev] Re: Strange HLK audio errors

Regarding "Audio APO - Verify Frame Count is Valid - TestValidFrameCount" the 
problem is that in LockForProcess the first thing we do is calling
CBaseAudioProcessingObject::LockForProcess which returns 
APOERR_FORMAT_NOT_SUPPORTED during this test.
:-(

Den man. 20. maj 2019 kl. 15.32 skrev Michael Johansen 
<johansen.mic@xxxxxxxxx<mailto:johansen.mic@xxxxxxxxx>>:
If you look at some of the other failed tests you will see a couple of 
"IAudioClient::Initialize" failed (or similar).
How am I supposed to debug this?

Michael

Den man. 20. maj 2019 kl. 15.10 skrev Michael Johansen 
<johansen.mic@xxxxxxxxx<mailto:johansen.mic@xxxxxxxxx>>:
I am not testing on sysvad. I let Vincent do that ;-)

I would expect the error log and the documentation point out what it actually 
is testing and expecting. It doesn't.

You want me to log this test? You are aware of the fact that this particular 
test has 1168 different steps? This would produce a huge log.


Den man. 20. maj 2019 kl. 14.55 skrev Matthew van Eerde 
<dmarc-noreply@xxxxxxxxxxxxx<mailto:dmarc-noreply@xxxxxxxxxxxxx>>:
Can you share a screenshot of the full HLK Studio window?

SysVad is a portcls.sys miniport. ks.sys implements the 
KSPROPERTY_CONNECTION_DATAFORMAT property handler; it calls into portcls.sys; 
and portcls.sys calls into the miniport.

You can run the failing test in isolation and set breakpoints (or better, add 
ETW logging) in your code to see which of your methods are being invoked during 
the failing test.

Does this particular test case fail if you run it against SysVad?

________________________________
From: wdmaudiodev-bounce@xxxxxxxxxxxxx<mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
<wdmaudiodev-bounce@xxxxxxxxxxxxx<mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx>> on 
behalf of Michael Johansen 
<johansen.mic@xxxxxxxxx<mailto:johansen.mic@xxxxxxxxx>>
Sent: Monday, May 20, 2019 5:46:06 AM
To: wdmaudiodev@xxxxxxxxxxxxx<mailto:wdmaudiodev@xxxxxxxxxxxxx>
Subject: [wdmaudiodev] Re: Strange HLK audio errors

I don't know what is going on with HLK Studio. On "Run test" there is simply no 
tree node to open on these runs.

Talking about the error then. I did not implement 
KSPROPERTY_CONNECTION_DATAFORMAT (and neither does SYSVAD). I only implemented 
the data intersection handler, KSPROPERTY_PIN_PROPOSEDATAFORMAT and 
KSPROPERTY_PIN_PROPOSEDATAFORMAT2.

Michael

Den man. 20. maj 2019 kl. 14.34 skrev Matthew van Eerde 
<dmarc-noreply@xxxxxxxxxxxxx<mailto:dmarc-noreply@xxxxxxxxxxxxx>>:
Thanks. I uploaded a screenshot of what I did:

https://imgur.com/Ky3Er6b<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fimgur.com%2FKy3Er6b&data=02%7C01%7CMatthew.van.Eerde%40microsoft.com%7Cb35bc29f4ade4b24d77408d6ddec90d9%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636940405496177331&sdata=CBcFLtVvoZjz%2FT7zkzNZs%2FGBzdAuwLVTZydb1%2BgF4%2FY%3D&reserved=0>

If you go to the Results tab and drill into a particular failing result, you 
can see the .wtl file that has the actual failure message. In this case I 
drilled down into the “General Audio Test” log.

With the log open, you can use the “View” dropdown at the top of the window to 
choose “Failure”. That will show you all the failures in the log file, and hide 
the passing results. In this case there were two failures.

You can expand the failing test case to see the full logs for the failing test 
case. In this case General Audio Test is testing parameter validation in the 
audio driver. In particular it sends down a KSPROPERTY_CONNECTION_DATAFORMAT 
request with an intentionally invalid bit depth and expects the DeviceIoControl 
call to return a failure.

Instead, the DeviceIoControl call incorrectly returns success, which means that 
the property handler isn’t looking at the bit depth.

The key line is “DeviceIoControl Passed when expecting DeviceIoControl to Fail.”

________________________________
From: wdmaudiodev-bounce@xxxxxxxxxxxxx<mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
<wdmaudiodev-bounce@xxxxxxxxxxxxx<mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx>> on 
behalf of Michael Johansen 
<johansen.mic@xxxxxxxxx<mailto:johansen.mic@xxxxxxxxx>>
Sent: Monday, May 20, 2019 4:31:47 AM
To: wdmaudiodev@xxxxxxxxxxxxx<mailto:wdmaudiodev@xxxxxxxxxxxxx>
Subject: [wdmaudiodev] Re: Strange HLK audio errors

Sure:
https://drive.google.com/open?id=0By4j2zKwaOupSjFZa3ZtM1ZDbF9iX3BabERQdjZGR0hQY3Vn<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdrive.google.com%2Fopen%3Fid%3D0By4j2zKwaOupSjFZa3ZtM1ZDbF9iX3BabERQdjZGR0hQY3Vn&data=02%7C01%7CMatthew.van.Eerde%40microsoft.com%7Cb35bc29f4ade4b24d77408d6ddec90d9%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636940405496187345&sdata=rzxEm2TyhPEcQ8%2Fs1Ql0jMNnbsyfKn%2BrAbDwo6%2BdtCc%3D&reserved=0>

Michael

Den man. 20. maj 2019 kl. 13.27 skrev Michael Johansen 
<johansen.mic@xxxxxxxxx<mailto:johansen.mic@xxxxxxxxx>>:
Sure.

Den man. 20. maj 2019 kl. 13.12 skrev Matthew van Eerde 
<dmarc-noreply@xxxxxxxxxxxxx<mailto:dmarc-noreply@xxxxxxxxxxxxx>>:
Thanks. Can you share an .hlkx with the failing test logs?

The actual failures are typically in a .wtl log file.

________________________________
From: wdmaudiodev-bounce@xxxxxxxxxxxxx<mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx
<wdmaudiodev-bounce@xxxxxxxxxxxxx<mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx>> on 
behalf of Michael Johansen 
<johansen.mic@xxxxxxxxx<mailto:johansen.mic@xxxxxxxxx>>
Sent: Monday, May 20, 2019 1:50:39 AM
To: wdmaudiodev@xxxxxxxxxxxxx<mailto:wdmaudiodev@xxxxxxxxxxxxx>
Subject: [wdmaudiodev] Strange HLK audio errors

Hi Matthew,

Here are my failed tests. Latest filters applied and relevant playlist loaded:

Audio Codec - General Audio Test - Desktop
Cause : Task "Run test" is Marked Failed From the LogFile
Cause : Copying File 
"C:\hlk\JobsWorkingDir\Tasks\WTTJobRunD0F3BB02-B377-E911-93F0-C8D9D2136AD8\gaudit_winblue.wtl.trace"
 Fails
Cause : Cannot Find Pattern 
"C:\hlk\JobsWorkingDir\Tasks\WTTJobRunD0F3BB02-B377-E911-93F0-C8D9D2136AD8\gaudit_winblue.wtl.trace"
Cause : Task is Marked Failed as it had non-zero Fail Counts in the LogFile
Cause : The Execute Task with Commandline cmd /c gaudit_winblue.exe -c 
logo-WinBlue-GAUDIT.pro -l "s98wtt.dll" -h 
"USB\VID_1395&PID_0089&MI_03\6&2658D495&0&0003" Failed with ExitCode 1


Audio Codec - Hardware Offload of Audio Processing Test - Certification
Cause : Task "Run Test" is Marked Failed From the LogFile
Cause : Copying File 
"C:\hlk\JobsWorkingDir\Tasks\WTTJobRunD1F3BB02-B377-E911-93F0-C8D9D2136AD8\Te.wtl.trace"
 Fails
Cause : Cannot Find Pattern 
"C:\hlk\JobsWorkingDir\Tasks\WTTJobRunD1F3BB02-B377-E911-93F0-C8D9D2136AD8\Te.wtl.trace"
Cause : Task is Marked Failed as it had non-zero Fail Counts in the LogFile
Cause : The Execute Task with Commandline cmd /c te.exe /inproc HAPTest.dll 
/enablewttlogging /select:"@HCKCategory = 'Certification'" 
/p:"InstanceId=USB\VID_1395&PID_0089&MI_03\6&2658D495&0&0003" Failed with 
ExitCode 4

Watched one of the tests runing on the test machine and the log file was 
created but disappeared quickly again.

Michael

Audio Codec - KS Position Test
Cause : Task "Run Task" is Marked Failed From the LogFile
Cause : Copying File 
"C:\hlk\JobsWorkingDir\Tasks\WTTJobRunD2F3BB02-B377-E911-93F0-C8D9D2136AD8\Te.wtl.trace"
 Fails
Cause : Cannot Find Pattern 
"C:\hlk\JobsWorkingDir\Tasks\WTTJobRunD2F3BB02-B377-E911-93F0-C8D9D2136AD8\Te.wtl.trace"
Cause : Task is Marked Failed as it had non-zero Fail Counts in the LogFile
Cause : The Execute Task with Commandline cmd /c te.exe /inproc kspostst.dll 
/enablewttlogging /disableConsoleLogging 
/p:"InstanceId=USB\VID_1395&PID_0089&MI_03\6&2658D495&0&0003" Failed with 
ExitCode 1


Audio Codec - Lullaby Test - Certification - Desktop
Cause : Task "Run test" is Marked Failed From the LogFile
Cause : Copying File 
"C:\hlk\JobsWorkingDir\Tasks\WTTJobRun38DBA92C-E277-E911-93F0-C8D9D2136AD8\Lullaby2.wtl.trace"
 Fails
Cause : Cannot Find Pattern 
"C:\hlk\JobsWorkingDir\Tasks\WTTJobRun38DBA92C-E277-E911-93F0-C8D9D2136AD8\Lullaby2.wtl.trace"
Cause : Task is Marked Failed as it had non-zero Fail Counts in the LogFile
Cause : The Execute Task with Commandline cmd /c lullaby2.exe -c 
logo-WinBlue-Lullaby-Certification.pro -l "s98wtt_u.dll" -h 
"USB\VID_1395&PID_0089&MI_03\6&2658D495&0&0003" Failed with ExitCode 1


Audio APO - Verify Frame Count is Valid - TestValidFrameCount
Cause : Task "Run Test" is Marked Failed From the LogFile
Cause : Copying File 
"C:\hlk\JobsWorkingDir\Tasks\WTTJobRun79CE6ABF-E877-E911-93F0-C8D9D2136AD8\Te.wtl.trace"
 Fails
Cause : Cannot Find Pattern 
"C:\hlk\JobsWorkingDir\Tasks\WTTJobRun79CE6ABF-E877-E911-93F0-C8D9D2136AD8\Te.wtl.trace"
Cause : Task is Marked Failed as it had non-zero Fail Counts in the LogFile
Cause : The Execute Task with Commandline cmd /c TE.exe /enablewttlogging 
/appendwttlogging thirdpartyapo.unittests.dll 
/name:CApoDeviceTests::TestValidFrameCount Failed with ExitCode 1



Other related posts: