OvmfPkg/VirtioFsDxe: implement the wrapper function for FUSE_STATFS

Add the VirtioFsFuseStatFs() function, for sending the FUSE_STATFS command
to the Virtio Filesystem device.

Cc: Ard Biesheuvel <ard.biesheuvel@arm.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Philippe Mathieu-Daudé <philmd@redhat.com>
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3097
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Message-Id: <20201216211125.19496-29-lersek@redhat.com>
Acked-by: Ard Biesheuvel <ard.biesheuvel@arm.com>
This commit is contained in:
Laszlo Ersek
2020-12-16 22:11:05 +01:00
committed by mergify[bot]
parent c09441c321
commit ba1184630a
4 changed files with 127 additions and 0 deletions

View File

@@ -119,6 +119,7 @@ typedef enum {
VirtioFsFuseOpUnlink = 10,
VirtioFsFuseOpRmDir = 11,
VirtioFsFuseOpOpen = 14,
VirtioFsFuseOpStatFs = 17,
VirtioFsFuseOpRelease = 18,
VirtioFsFuseOpFsync = 20,
VirtioFsFuseOpFlush = 25,
@@ -233,6 +234,22 @@ typedef struct {
UINT32 Padding;
} VIRTIO_FS_FUSE_OPEN_RESPONSE;
//
// Header for VirtioFsFuseOpStatFs.
//
typedef struct {
UINT64 Blocks;
UINT64 Bfree;
UINT64 Bavail;
UINT64 Files;
UINT64 Ffree;
UINT32 Bsize;
UINT32 Namelen;
UINT32 Frsize;
UINT32 Padding;
UINT32 Spare[6];
} VIRTIO_FS_FUSE_STATFS_RESPONSE;
//
// Header for VirtioFsFuseOpRelease and VirtioFsFuseOpReleaseDir.
//