[wdmaudiodev] Re: Strange HLK audio errors

  • From: Michael Johansen <johansen.mic@xxxxxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Tue, 21 May 2019 15:01:37 +0200

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>:

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 <wdmaudiodev-bounce@xxxxxxxxxxxxx>
on behalf of Michael Johansen <johansen.mic@xxxxxxxxx>
*Sent:* Monday, May 20, 2019 7:07:16 AM
*To:* 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>:

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>:

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>:

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 <
wdmaudiodev-bounce@xxxxxxxxxxxxx> on behalf of Michael Johansen <
johansen.mic@xxxxxxxxx>
*Sent:* Monday, May 20, 2019 5:46:06 AM
*To:* 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>:

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%7Cf83edad0d44b4b79286808d6dd2c9332%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636939580902738980&sdata=CGeRVahMWV1t5PC7pFnRSdT2IWbfehVN2OzBRo4G9ys%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 <
wdmaudiodev-bounce@xxxxxxxxxxxxx> on behalf of Michael Johansen <
johansen.mic@xxxxxxxxx>
*Sent:* Monday, May 20, 2019 4:31:47 AM
*To:* 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%7Cf83edad0d44b4b79286808d6dd2c9332%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636939580902748989&sdata=UNZM8FykbbwtIOb2EirSnb%2F3QXOD6kAReQ1cpfTeohA%3D&reserved=0>

Michael

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

Sure.

Den man. 20. maj 2019 kl. 13.12 skrev Matthew van Eerde <
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 <
wdmaudiodev-bounce@xxxxxxxxxxxxx> on behalf of Michael Johansen <
johansen.mic@xxxxxxxxx>
*Sent:* Monday, May 20, 2019 1:50:39 AM
*To:* 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: