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

            Bug ID: 251389
           Summary: linuxkpi malloc is not strictly compatible with Linux
           Product: Base System
           Version: CURRENT
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: kern
          Assignee: b...@freebsd.org
          Reporter: jhibb...@freebsd.org

Linux's kmalloc seems to provide the following guarantees:

* GPF_KERNEL returns memory in the lower 4GB physical space
* Allocations are physically contiguous

malloc(9) does not make either of these guarantees.  This ends up breaking DRM
modules on powerpc64 platforms, where even if memory happens to be contiguous
it may not be in the bottom 4GB physical address space, and it may even be in a
different NUMA domain, where NUMA domains are physically indexed at 1<<45, such
that the bottom 4GB of the second NUMA domain doesn't fit into the 40-bit PA
range accessible to Radeon GPUs.

Contiguity can be emulated with contigmalloc(9), but that's not a viable
solution for replacing all calls, as it's very possible for the size to not be
known and traceable through the lifetime of a pointer.

-- 
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
freebsd-bugs@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-bugs
To unsubscribe, send any mail to "freebsd-bugs-unsubscr...@freebsd.org"

Reply via email to