
27 Dec
2023
27 Dec
'23
11:17 a.m.
[...]
- @chksum: checksum for the entire bloblist allocated area. Since any of the
- blobs can be altered after being created, this checksum is only valid
- when the bloblist is finalised before jumping to the next stage of boot.
*/
- This is the value needed to make all checksummed bytes sum to 0
struct bloblist_hdr { u32 magic;
- u32 version;
- u32 hdr_size;
- u32 flags;
- u32 size;
- u8 chksum;
- u8 version;
- u8 hdr_size;
- u8 align_log2; u32 alloced;
- u32 size;
- u32 flags; u32 spare;
- u32 chksum;
};
Aren't fields still missing from the current version? e.g max_size and reserved?
/** diff --git a/test/bloblist.c b/test/bloblist.c index e6070041d3..a083259d0c 100644 --- a/test/bloblist.c +++ b/test/bloblist.c @@ -78,7 +78,7 @@ static int bloblist_test_init(struct unit_test_state *uts) ut_asserteq(-EPROTONOSUPPORT, bloblist_check(TEST_ADDR, TEST_BLOBLIST_SIZE));
- ut_asserteq(-ENOSPC, bloblist_new(TEST_ADDR, 0x10, 0));
- ut_asserteq(-ENOSPC, bloblist_new(TEST_ADDR, 0xc, 0)); ut_asserteq(-EFAULT, bloblist_new(1, TEST_BLOBLIST_SIZE, 0)); ut_assertok(bloblist_new(TEST_ADDR, TEST_BLOBLIST_SIZE, 0));
@@ -272,8 +272,8 @@ static int bloblist_test_cmd_info(struct unit_test_state *uts) run_command("bloblist info", 0); ut_assert_nextline("base: %lx", (ulong)map_to_sysmem(hdr)); ut_assert_nextline("size: 400 1 KiB");
- ut_assert_nextline("alloced: 58 88 Bytes");
- ut_assert_nextline("free: 3a8 936 Bytes");
- ut_assert_nextline("alloced: 50 80 Bytes");
- ut_assert_nextline("free: 3b0 944 Bytes"); ut_assert_console_end(); ut_unsilence_console(uts);
-- 2.25.1