[Bug 212639] kernel/386: i386_set_ldt/i386_ldt_grow run out of LDT, because M_ZERO missing in user_ldt_alloc?

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Tue Sep 13 03:19:08 UTC 2016


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=212639

            Bug ID: 212639
           Summary: kernel/386: i386_set_ldt/i386_ldt_grow run out of LDT,
                    because M_ZERO  missing in user_ldt_alloc?
           Product: Base System
           Version: CURRENT
          Hardware: i386
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: kern
          Assignee: freebsd-bugs at FreeBSD.org
          Reporter: wheelcomplex at gmail.com
                CC: freebsd-i386 at FreeBSD.org
                CC: freebsd-i386 at FreeBSD.org

Go compiler crash with "signal: trace/BPT trap" when running testing
concurrently(and lead to heavy load).

Core-dump and kernel debug log telling that it is trigger by
i386_set_ldt/i386_ldt_grow run out of LDT.

Fix by change kmem_malloc flags from "M_WAITOK" to "M_WAITOK | M_ZERO" in
user_ldt_alloc 
(https://github.com/freebsd/freebsd/blob/master/sys/i386/i386/sys_machdep.c#L441)

More detail:
https://github.com/golang/go/issues/16950

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-bugs mailing list