[Bug 227116] CURRENT doesn't boot with integer divide fault in uma_startup_count
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Sat Mar 31 15:59:08 UTC 2018
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=227116
--- Comment #13 from Daniel Kolesa <daniel at octaforge.org> ---
(In reply to Konstantin Belousov from comment #11)
That's amusing, I just came to the same conclusion by isolating the code into a
standalone .c program with stubbed out variables.
---
/* Memory for the rest of startup zones, UMA and VM, ... */
if (zsize > UMA_SLAB_SIZE) {
printf("branch1\n");
pages += (zones + vm_zones) *
howmany(roundup2(zsize, UMA_BOOT_ALIGN), UMA_SLAB_SIZE);
} else {
printf("branch2\n");
printf("roundup2 %d\n", roundup2(zsize, UMA_BOOT_ALIGN));
pages += howmany(zones,
UMA_SLAB_SPACE / roundup2(zsize, UMA_BOOT_ALIGN));
}
---
---
$ ./foo
KSIZE 304
ZSIZE 3984
UMA_SLAB_SIZE 4096
sizeof uma_slab 112
UMA_SLAB_SPACE 3984
branch2
roundup2 4000
zsh: floating point exception ./foo
---
So yeah, indeed, this seems to be the source of error.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list