It is expected that bloblists are stored in high memory beyond 2 GiB.
We must not use int as data type for these addresses but phys_addr_t.

Fixes: f9ef9fb033d5 ("bloblist: Handle alignment with a void entry")
Signed-off-by: Heinrich Schuchardt <[email protected]>
---
 common/bloblist.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/common/bloblist.c b/common/bloblist.c
index 6e4f020d7c4..d5fa62249a9 100644
--- a/common/bloblist.c
+++ b/common/bloblist.c
@@ -149,7 +149,8 @@ static int bloblist_addrec(uint tag, int size, int 
align_log2,
 {
        struct bloblist_hdr *hdr = gd->bloblist;
        struct bloblist_rec *rec;
-       int data_start, aligned_start, new_alloced;
+       phys_addr_t data_start, aligned_start;
+       phys_size_t new_alloced;
 
        if (!align_log2)
                align_log2 = BLOBLIST_BLOB_ALIGN_LOG2;
-- 
2.50.1

Reply via email to