On non-arm architectures, _image_binary_end is defined as a ulong and not a
char[]. Dereference it when accessing it, which is correct for both.

Fixes: 1b8a1be1a1f ("spl: spl_legacy: Fix spl_end address")
Signed-off-by: Sean Anderson <sean...@gmail.com>
---

 common/spl/spl_legacy.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/common/spl/spl_legacy.c b/common/spl/spl_legacy.c
index 095443c63d8..e9564e5c2a5 100644
--- a/common/spl/spl_legacy.c
+++ b/common/spl/spl_legacy.c
@@ -19,7 +19,7 @@
 static void spl_parse_legacy_validate(uintptr_t start, uintptr_t size)
 {
        uintptr_t spl_start = (uintptr_t)_start;
-       uintptr_t spl_end = (uintptr_t)_image_binary_end;
+       uintptr_t spl_end = (uintptr_t)&_image_binary_end;
        uintptr_t end = start + size;
 
        if ((start >= spl_start && start < spl_end) ||
-- 
2.37.1

Reply via email to