Share via


File IO Tests

This automated test verifies basic file I/O on the driver stack.

You can use the test to verify the following information:

  • The context in which the test or variation ran (for example, x86, file system, local/remote, language, build number)

  • Pass, fail, and variation count numbers

  • If failed, information that can help determine the cause of failure

The test can run the following isolated variations:

  • To run the FileIO regression test, at a command prompt, type Runkarr x: e: (where x is the test drive and e is a local auxiliary drive, and both are not the system drives).

  • To run the FileIO build verification test (BVT) with more debug information, at a command prompt, type Runkarr x: e: -bvt:f -v (where x is the test drive and e is a local auxiliary drive, and both are not the system drives).

  • To run an individual variation, at a command prompt, type Runkarr x: e: -t 1,2,3,5:10,12 (where x is the test drive and e is a local auxiliary drive, and both are not the system drives). This runs variations 1, 2, 3, 5, 10, and 12.

  • To turn on debugging information, at a command prompt, type Runkarr x: e: -t 1,2,3,5:10,12 -v (where x is the test drive and e is a local auxiliary drive, and both are not the system drives).

For more information about the behavior of file systems, see File System Behavior in the Microsoft Windows Environment.

Test details

Associated requirements

Filter.Driver.AntiVirus.MiniFilter Filter.Driver.FileSystem.Functionality Filter.Driver.FileSystem.MiniFilter

See the filter hardware requirements.

Platforms

Windows 8 (x64) Windows 8 (x86) Windows Server 2012 (x64) Windows 8.1 x64 Windows 8.1 x86 Windows Server 2012 R2

Expected run time

~300 minutes

Categories

Certification

Type

Automated

 

Running the test

For more information about requirements, see File System Testing Prerequisites.

In addition, this test requires extra hard drive space for four simple 2,048-megabyte (MB) partitions and two simple 1,024-MB partitions.

Before you run the test, you must add the following partitions to the test computer.

Label File system Size Expected drive letter

NTFS

NTFS

2,048 MB

g:

CNTFS

NTFS (compressed)

2,048 MB

i:

FAT

FAT16

1,024 MB

k:

FAT32

FAT32

1,024 MB

l:

ExFAT

ExFAT

2,048 MB

m:

UDF

UDF

2,048 MB

n:

REFS

REFS

10240mb

o:

 

RunFileIO.cmd contains references to environment variables that you can change to allow for skipping of certain file systems.

Troubleshooting

For general troubleshooting information, see Troubleshooting File System Testing.

This test returns Pass or Fail. To review test details, review the test log from Windows Hardware Certification Kit (Windows HCK) Studio.

The test uses Ntlog for logging the test results. Any failure is logged with the Win32® GetLastError() code.

To interpret the log, follow these steps:

  1. +Call+ 291; Call 1 to AKRNFIL2 SdkCompletionPorts (test #131); verlevel=3 pcnt=100 seed=19890

  2. +TEST_PARAMETERS+ NO Parameters

  3. +Test_Case+ 6 SdkCompletionPorts: TestCancelAsyncFileIo I/O.

  4. +VER_RESULT+ SEV2 ConfirmLock: ReadFile failed when it should not. nBytesRead: 0 bRet: 0 GLE=33.

  5. +VER_RESULT+ SEV2 CheckCompletionIo: Failed in ConfirmLock.

  6. Search for variations that are marked as BLOCK or SEV.

  7. Determine the API that failed (for example, ReadFile).

  8. Determine the parameters that were passed into the API, if any.

  9. Determine the returned value of the API (for example, bRet: 0).

  10. Determine the value of GetLastError() (for example, GLE=33). This will provide useful information about what is wrong, such as ERROR_INVALID_HANDLE or ERROR_NETNAME_DELETED.

More information

Command syntax

Command option Description

runkarr %DRIVE_1% %DRIVE_2% -bvt

Requires two drive letters and the -bvt parameter.

 

Note  

For command-line help for this test binary, type /h.

 

File list

File Location

Ntlog.dll

<[testbinroot]>\nttest\CommonTest\Ntlog\

Ntlogger.ini

<[testbinroot]>\nttest\CommonTest\Ntlog\

Betacomp.exe

<[testbinroot]>\nttest\CommonTest\Rats\

Dups.exe

<[testbinroot]>\nttest\CommonTest\Rats\

Entry.exe

<[testbinroot]>\nttest\CommonTest\Rats\

GetDoc.exe

<[testbinroot]>\nttest\CommonTest\Rats\

LOG.dll

<[testbinroot]>\nttest\CommonTest\Rats\

Parse.exe

<[testbinroot]>\nttest\CommonTest\Rats\

Rats.exe

<[testbinroot]>\nttest\CommonTest\Rats\

Rats.ini

<[testbinroot]>\nttest\CommonTest\Rats\

Ratsutil.dll

<[testbinroot]>\nttest\CommonTest\Rats\

Ratsshr.exe

<[testbinroot]>\nttest\CommonTest\Rats\

RATS_ENG.dll

<[testbinroot]>\nttest\CommonTest\Rats\

Shrmem.dll

<[testbinroot]>\nttest\CommonTest\Rats\

Statw32.dll

<[testbinroot]>\nttest\CommonTest\Rats\

Timerw32.dll

<[testbinroot]>\nttest\CommonTest\Rats\

Tshrmem.exe

<[testbinroot]>\nttest\CommonTest\Rats\

Wrap0.exe

<[testbinroot]>\nttest\CommonTest\Rats\

Wrap1.exe

<[testbinroot]>\nttest\CommonTest\Rats\

Wrap3.exe

<[testbinroot]>\nttest\CommonTest\Rats\

Wrapinline.exe

<[testbinroot]>\nttest\\CommonTest\Rats\

Wrapit.exe

<[testbinroot]>\nttest\CommonTest\Rats\

Wtscript.dll

<[testbinroot]>\nttest\CommonTest\Rats\

Dbcsstrs.dll

<[testbinroot]>\nttest\NTTest\CommonTest\dbcsstrs\

Detoured.dll

<[testbinroot]>\nttest\BaseTest\Core_File_Services\Shared_Tools\Detours\

Rats2wtt.dll

<[testbinroot]>\nttest\BaseTest\Core_File_Services\Shared_Tools\Detours\

Setdll.exe

<[testbinroot]>\nttest\\BaseTest\Core_File_Services\Shared_Tools\Detours\

Withdll.exe

<[testbinroot]>\nttest\BaseTest\Core_File_Services\Shared_Tools\Detours\

AKRNFIL2.dll

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Attribex.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Attribs.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Cdsetup.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Charmap.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Chinf.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Chldread.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Chldsize.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Copyfile.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Crdirex.exe

<[testbinroot]>\nttest\\BVTBIN\Win32FilBVT\[WTT\Processor]\

Crutil.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Cutil.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Delf.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Dirent.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Eautil.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Expath.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Findex.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Fssortkey.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Fstype.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Genrdwr.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Getdrive.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Getdtype.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Getfree.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Getftype.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Getinf.exe

<[testbinroot]>\nttest\Win32FilBVT\[WTT\Processor]\

Getres.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Getset.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Getshort.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Getsize.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Gettime.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Getvol.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Growpage.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Longname.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Lotsdir.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Lotsfile.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Names.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Parselog.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Rasync.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Readch.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Rother.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Runiorat.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Runkarr.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Setfp.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Settime.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Setvol.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Srchpath.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Tempfile.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Wasync.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Wother.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Writech.exe

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\[WTT\Processor]\

Allwin32filbvt.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Cdfs.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Cdfs.nam

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Cdhct.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Cdrom1.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Davbvt.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Example.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Fat.nam

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Fatlong.nam

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Filcdfs.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Filcdfs.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Fildblsp.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Fildblsp.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Fileio.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Fileio.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Fileio_2.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Filesysdrives.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Filesysdrives.vbs

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

File_io.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

File_iog.cmd

<[testbinroot]>\nttest\\BVTBIN\Win32FilBVT\common\

Filidw.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Filsdk.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Filst1.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Hctcd.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Hctcd.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Hctdrive.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Hctdrive.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Hctflop.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Hctflop.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Hcttest.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Hlink.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Hlinkidw.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Hlinksdk.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Hlinkst1.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Hpfs.nam

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Maphctc.rat

<[testbinroot]>\nttest\\BVTBIN\Win32FilBVT\common\

Maphctd.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Maphcte.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Maphctf.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Maphctg.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Maphcth.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Maphcti.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Netware.nam

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Nfs.nam

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Nfsbvt.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Nfsio.rat

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Novell.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Ntfs.nam

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Nwclong.nam

<[testbinroot]>\nttest\\BVTBIN\Win32FilBVT\common\

Nwcompat.nam

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Recomp.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Runtestfilbvtllu.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Run_fileio_bvt_new.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Sc-rats.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Setfio.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

Trydrive.cmd

<[testbinroot]>\nttest\BVTBIN\Win32FilBVT\common\

RunFileIO.cmd

<[testbinroot]>\nttest\BASETEST\Core_File_Services\FilterManager\TestSuite\Scripts\FileSystems\

WrapFileIO.cmd

[WTT\TestBinRoot]\NTTest\BASETEST\Core_File_Services\FilterManager\TestSuite\Scripts\FileSystems

filbvt.rat

[WTT\TestBinRoot]\NTTest\BVTBIN\Win32FilBVT\common

IsREFSSupported.vbs

[WTT\TestBinRoot]\NTTest\BASETEST\Core_File_Services\FilterManager\TestSuite\Scripts\FileSystems

 

 

 

Send comments about this topic to Microsoft