This message returns the result of the FSCTL_FILESYSTEM_GET_STATISTICS request message as a pair of structures: a generic structure, FILESYSTEM_STATISTICS, optionally followed by a file system type specific structure that can be either NTFS_STATISTICS, FAT_STATISTICS, or EXFAT_STATISTICS, depending on the underlying file system type. There is one pair of these structures for each processor.<17>

These statistics contain information about both user and metadata files. User files are available for the user. Metadata files are system files that contain information that the file system uses for its internal organization.

The statistics structures contain fields that can overflow during the server's lifetime. This is by design. When an overflow occurs, the value just wraps. For example 0xfffff000 + 0x2000 will result in 0x1000.

The structures within the output buffer MUST all start on 64-byte boundaries. The final output MUST be padded to a 64-byte boundary. Any padding bytes MUST be filled with zeros.

This message also returns a status code, as specified in [MS-ERREF] section 2.3. The status code returned directly by the function that processes this FSCTL MUST be STATUS_SUCCESS or one of the following.

Error code




The output buffer is too small to contain a FILESYSTEM_STATISTICS structure.



The output buffer was filled before all the statistics data could be returned.