Sean:
In MdePkg.dec, gEfiFirmwareFileSystem2Guid and gEfiFirmwareFileSystem3Guid
are defined below.
gEfiFirmwareFileSystem2Guid = { 0x8c8ce578, 0x8a3d, 0x4f1c, { 0x99, 0x35,
0x89, 0x61, 0x85, 0xc3, 0x2d, 0xd3 }}
gEfiFirmwareFileSystem3Guid = { 0x5473c07a, 0x3dcb, 0x4dca, { 0xbd, 0x6f,
0x1e, 0x96, 0x89, 0xe7, 0x34, 0x9a }}
From the dump message, the root FV File System ID is
5473c07a-3dcb-4dca-bd6f-1e9689e7349a. It is FF3 file system.
Thanks
Liming
> -----Original Message-----
> From: edk2-devel [mailto:[email protected]] On Behalf Of
> Sean Brogan
> Sent: Thursday, October 20, 2016 7:09 AM
> To: [email protected]
> Subject: [edk2] question about a compressed Ffs3 file inside FFS2 filesystem
>
> We have a condition that occurs when we boot where we see the following
> message and our boot fails because of it.
> DEBUG ((EFI_D_ERROR, "Found a FFS3 formatted section in a non-FFS3
> formatted FV.\n"));
>
> Which is on line 773 of FwVol.c
> ( https://github.com/tianocore/edk2/blob/master/MdeModulePkg/Core/Pe
> i/FwVol/FwVol.c )
>
> The condition is caused by a large firmware volume (greater than 16mb) that
> is compressed and put into a smaller FV (less than 16mb). My question is
> why isn't this allowed (seems like a valid scenario). Volinfo supports this
> and
> decodes binary fine. The PI Vol 3 spec has a section 3.2.2
> EFI_FIRMWARE_FILE_SYSTEM3_GUID which says FileSystem2 doesn't
> support large files but it seems that the code is not taking into account that
> the section is compressed and therefore you can have a large file inside a
> compressed section inside a FV with File System2.
>
> Feedback/thoughts/comments/Bug?
>
> Here are some details of my scenario.
> Compressed FV has filesystem == 8c8ce578-8a3d-4f1c-9935-896185c32dd3
> (ffs3)
> Non compressed FV has filesystem == 5473c07a-3dcb-4dca-bd6f-
> 1e9689e7349a (ffs2)
>
> VolInfo dump of the Non Compressed FV showing the nested/compressed
> FV inside.
>
> Decoding
> VolInfo Version 1.0 Build Build 20909
> Signature: _FVH (4856465F)
> Attributes: 4FEFF
> EFI_FVB2_READ_DISABLED_CAP
> EFI_FVB2_READ_ENABLED_CAP
> EFI_FVB2_READ_STATUS
> EFI_FVB2_WRITE_DISABLED_CAP
> EFI_FVB2_WRITE_ENABLED_CAP
> EFI_FVB2_WRITE_STATUS
> EFI_FVB2_LOCK_CAP
> EFI_FVB2_LOCK_STATUS
> EFI_FVB2_STICKY_WRITE
> EFI_FVB2_MEMORY_MAPPED
> EFI_FVB2_ERASE_POLARITY
> EFI_FVB2_READ_LOCK_CAP
> EFI_FVB2_READ_LOCK_STATUS
> EFI_FVB2_WRITE_LOCK_CAP
> EFI_FVB2_WRITE_LOCK_STATUS
> EFI_FVB2_ALIGNMENT_16
> EFI_FVB2_ALIGNMENT_32
> EFI_FVB2_ALIGNMENT_64
> EFI_FVB2_ALIGNMENT_128
> EFI_FVB2_ALIGNMENT_4K
> EFI_FVB2_ALIGNMENT_8K
> EFI_FVB2_ALIGNMENT_16K
> EFI_FVB2_ALIGNMENT_32K
> EFI_FVB2_ALIGNMENT_1M
> EFI_FVB2_ALIGNMENT_2M
> EFI_FVB2_ALIGNMENT_4M
> EFI_FVB2_ALIGNMENT_8M
> EFI_FVB2_ALIGNMENT_256M
> EFI_FVB2_ALIGNMENT_512M
> EFI_FVB2_ALIGNMENT_1G
> EFI_FVB2_ALIGNMENT_2G
> Header Length: 0x00000048
> File System ID: 5473c07a-3dcb-4dca-bd6f-1e9689e7349a
> Revision: 0x0002
> Number of Blocks: 0x00000028
> Block Length: 0x00010000
> Total Volume Size: 0x00280000
> ==========================================================
> ==
> File Name: 9E21FD93-9C72-4C15-8C4B-E77F1DB2D792
> File Offset: 0x00000048
> File Length: 0x001F3FFD
> File Attributes: 0x00
> File State: 0xF8
> EFI_FILE_DATA_VALID
> File Type: 0x0B EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE
> ------------------------------------------------------------
> Type: EFI_SECTION_GUID_DEFINED
> Size: 0x001F3FE5
> SectionDefinitionGuid: ee4e5898-3914-4259-9d6e-dc7bd79403cf
>
> DataOffset: 0x0018
> Attributes: 0x0001
> ------------------------------------------------------------
> Type: EFI_SECTION_RAW
> Size: 0x00000FF8
> ------------------------------------------------------------
> Type: EFI_SECTION_FIRMWARE_VOLUME_IMAGE
> Size: 0x01010008
> ==========================================================
> ==
>
> Thanks
> Sean
> _______________________________________________
> edk2-devel mailing list
> [email protected]
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel