Page MenuHomeFreeBSD

malloc(9): Document/add aligned variants
ClosedPublic

Authored by adam_fenn.io on Jul 2 2021, 9:27 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Nov 8, 6:10 AM
Unknown Object (File)
Fri, Nov 8, 6:08 AM
Unknown Object (File)
Fri, Nov 8, 3:05 AM
Unknown Object (File)
Sun, Nov 3, 1:35 PM
Unknown Object (File)
Sep 11 2024, 8:11 PM
Unknown Object (File)
Sep 11 2024, 8:11 PM
Unknown Object (File)
Sep 5 2024, 12:06 AM
Unknown Object (File)
Sep 2 2024, 11:12 PM

Details

Summary

As per https://reviews.freebsd.org/D29733#696995 and https://reviews.freebsd.org/D29733#696995, introduce malloc_aligned() and add this and malloc_domainset_aligned() to malloc(9).

Test Plan

Tested via a version of https://reviews.freebsd.org/differential/diff/91630/ with the following modification in kvm_clock_attach():

-	sc->timeinfos = malloc_domainset_aligned(round_page(mp_ncpus *
+	sc->timeinfos = malloc_aligned(round_page(mp_ncpus *
 	    sizeof(struct pvclock_vcpu_time_info)), PAGE_SIZE, M_DEVBUF,
-	    DOMAINSET_RR(), M_WAITOK | M_ZERO);
+	    M_WAITOK | M_ZERO);

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

adam_fenn.io held this revision as a draft.
share/man/man9/malloc.9
79

You can use .Fo to avoid this long line

110

It would be useful to note that:

  • align should be non-zero and power of two
  • we only support align requests less or equal to the page size
This revision is now accepted and ready to land.Jul 3 2021, 12:21 AM
allanjude added a subscriber: allanjude.

Man page changes approved

This revision was automatically updated to reflect the committed changes.