Use PHYSMEM64 on NetBSD

I realize we should use PHYSMEM64 on NetBSD. So we can not share code with FreeBSD.
This commit is contained in:
Andreas T Jonsson
2024-04-22 10:15:52 +02:00
parent 1b15d8b453
commit 384137d4e9

View File

@@ -250,6 +250,14 @@ gb_internal void report_ram_info() {
if (sysctl(mibs, 2, &ram_amount, &val_size, NULL, 0) != -1) {
gb_printf("%lld MiB\n", ram_amount / gb_megabytes(1));
}
#elif defined(GB_SYSTEM_NETBSD)
uint64_t ram_amount;
size_t val_size = sizeof(ram_amount);
int mibs[] = { CTL_HW, HW_PHYSMEM64 };
if (sysctl(mibs, 2, &ram_amount, &val_size, NULL, 0) != -1) {
gb_printf("%lu MiB\n", ram_amount / gb_megabytes(1));
}
#elif defined(GB_SYSTEM_OPENBSD)
uint64_t ram_amount;
size_t val_size = sizeof(ram_amount);
@@ -258,7 +266,7 @@ gb_internal void report_ram_info() {
if (sysctl(mibs, 2, &ram_amount, &val_size, NULL, 0) != -1) {
gb_printf("%lld MiB\n", ram_amount / gb_megabytes(1));
}
#elif defined(GB_SYSTEM_FREEBSD) || defined(GB_SYSTEM_NETBSD)
#elif defined(GB_SYSTEM_FREEBSD)
uint64_t ram_amount;
size_t val_size = sizeof(ram_amount);