[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: How to detect the amount of RAM on non-EFI platforms?
From: |
Cyan Yang |
Subject: |
Re: How to detect the amount of RAM on non-EFI platforms? |
Date: |
Tue, 11 Jul 2023 21:37:15 +0800 |
Hi again,
On 2023/7/11 10:08, Cyan via Grub-devel wrote:
> static int
> traverse_mmap_hook (grub_uint64_t addr, grub_uint64_t size,
> grub_memory_type_t type,
> void *data __attribute__ ((unused)))
> {
> total_mem_bytes += size;
> }
>
I discovered a huge problem in my hook function: missing a return at the end of
the hook function.
Without this return the hook function will execute only once.
And, regions with type GRUB_MEMORY_RESERVED should be skipped. So the hook
function body should look like this:
if (type != GRUB_MEMORY_RESERVED) {
total_mem_bytes += size;
}
return GRUB_ERR_NONE;
After this change the result looks fine.
Regards,
Cinhi