mirror of
https://github.com/git/git.git
synced 2026-01-10 01:56:42 +00:00
builtin/gc: correct physical memory detection for OpenBSD / NetBSD
OpenBSD / NetBSD use HW_PHYSMEM64 to detect the amount of physical memory in a system. HW_PHYSMEM will not provide the correct amount on a system with >=4GB of memory. Signed-off-by: Brad Smith <brad@comstyle.com> Reviewed-by: Collin Funk <collin.funk1@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
committed by
Junio C Hamano
parent
7014b55638
commit
35c1d592cd
@@ -516,7 +516,7 @@ static uint64_t total_ram(void)
|
||||
total *= (uint64_t)si.mem_unit;
|
||||
return total;
|
||||
}
|
||||
#elif defined(HAVE_BSD_SYSCTL) && (defined(HW_MEMSIZE) || defined(HW_PHYSMEM))
|
||||
#elif defined(HAVE_BSD_SYSCTL) && (defined(HW_MEMSIZE) || defined(HW_PHYSMEM) || defined(HW_PHYSMEM64))
|
||||
int64_t physical_memory;
|
||||
int mib[2];
|
||||
size_t length;
|
||||
@@ -524,6 +524,8 @@ static uint64_t total_ram(void)
|
||||
mib[0] = CTL_HW;
|
||||
# if defined(HW_MEMSIZE)
|
||||
mib[1] = HW_MEMSIZE;
|
||||
# elif defined(HW_PHYSMEM64)
|
||||
mib[1] = HW_PHYSMEM64;
|
||||
# else
|
||||
mib[1] = HW_PHYSMEM;
|
||||
# endif
|
||||
|
||||
Reference in New Issue
Block a user