This is my first post here so please forgive any unintended transgression.
Our upper-level driver has worked well with the now ‘legacy’ 1394bus and ohci1394 drivers for a number of years under XP and Vista. Our driver now works well most of the time with the 1394ohci driver, new with Win 7. But, occasionally, it hits a problem; a STATUS_ACCESS_DENIED error is set for the IRP’s IO_STATUS_BLOCK.Status member.
I have enabled autotrace on the 1394ohci driver, following instructions given by Don Miller in a separate thread in this Forum. I have the trace in a .etl file.
Can anyone recommend a free or inexpensive viewer/reader of ETL files?
Is anyone on the Win 7 Product/Engineering Team interested in seeing the trace? I should mention that it took significantly longer to reproduce the error condition with autotrace on 1394ohci enabled.
Thanks a bunch in advance.
-S.Neoh
Depending on the providers assigned to the tracing session for which you have created the ETL file (ETW-Classic, ETW-Crimson, ETW-WPP) there are different tools that are best viewers
.
For WPP
tracerpt.exe -of CSV -tp .etl -o Trace_csv.txt
tracefmt.exe .etl -p -o Trace_fmt.txt
For Crimson/Classic, I would get xperf.exe from this packaget.
http://msdn.microsoft.com/en-us/library/cc305187.aspx
Just a follow-up -
I tried all three viewers mentioned by Ivan and in all cases, I see a lot of numbers in the text output generated by the viewer but I am unable to decipher anything ‘telling’ from them.
More to the point now -
Our upper-level driver occasionally reads IRP’s IoStatus.Status as set to STATUS_ACCESS_DENIED after completion is signalled (waiting using KeWaitForSingleObject) following a REQUEST_ISOCH_FREE_BANDWIDTH operation. The error is reproducible after 300 to 1000 allocate and deallocate bandwidth ‘cycles’.
Are we making an error in the set-up of the IRB which can cause this error? What are the situations that can cause an ACCESS_DENIED error from REQUEST_ISOCH_FREE_BANDWIDTH operation?
We are not setting the IRB_FLAG_ALLOW_REMOTE_FREE flag, nor are we setting the IRB_FLAG_USE_PRE_CALCULATE_VALUE flag. We are using SPEED_FLAGS_400 for Speed Flag.
We see this ACCESS_DENIED error with the 1394ohci driver (v.6.1.7600.16385) but never with the legacy 1394bus & ohci1394 drivers (also v.6.1.7600.16385).
I have the 1394ohci auto-trace file (ETL format) just in case anyone over at MSFT wants to take a look at it.
Thanks all.
-S.Neoh
Hi S.Neoh,
Please send me the etl file at donmil at microsoft dot com. This is most likely a known issue but will need to log to make sure.
thanks,
-Don
Thanks Don for your prompt response!
I just sent you the zipped ETL file.
Regards,
S.Neoh