Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Runtime page size detection #20511

Draft
wants to merge 122 commits into
base: master
Choose a base branch
from
Draft

Commits on Aug 10, 2024

  1. Configuration menu
    Copy the full SHA
    9a6c72c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    15fef8c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    6144094 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    4bc2c93 View commit details
    Browse the repository at this point in the history
  5. audit usage of comptime page_size in std (1)

    debug.zig
    heap/PageAllocator.zig
    mem.zig
    mem/Allocator.zig
    archbirdplus committed Aug 10, 2024
    Configuration menu
    Copy the full SHA
    e6b7398 View commit details
    Browse the repository at this point in the history
  6. audit usage of comptime page_size in std (2)

    heap/general_purpose_allocator.zig
    archbirdplus committed Aug 10, 2024
    Configuration menu
    Copy the full SHA
    e28817c View commit details
    Browse the repository at this point in the history
  7. audit usage of comptime page_size in std (3/3)

    Thread.zig
    c.zig
    dynamic_library.zig
    heap.zig
    heap/sbrk_allocator.zig
    os/plan9.zig
    packed_int_array.zig
    posix.zig
    start.zig
    archbirdplus committed Aug 10, 2024
    Configuration menu
    Copy the full SHA
    3f52399 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    91edac2 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    dadd255 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    8a600a7 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    7faaf32 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    43994e1 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    9398e16 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    ae8412c View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    a482c43 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    4f9cc2a View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    3086cc5 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    a12a62c View commit details
    Browse the repository at this point in the history

Commits on Aug 11, 2024

  1. Configuration menu
    Copy the full SHA
    d934a03 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f0d6c20 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    6df23f3 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    df66e0f View commit details
    Browse the repository at this point in the history
  5. Add 'page_size's for Tier 1/2/3 support targets

    Including some variants of these architectures.
    Excluding Lanai.
    
    This information was found primarily through Kconfig and
    page.h in the Linux source tree. Alternatively, from
    Wikipedia pages or Zig's own libc headers.
    archbirdplus committed Aug 11, 2024
    Configuration menu
    Copy the full SHA
    f703843 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    a3d6e80 View commit details
    Browse the repository at this point in the history
  7. Complete 'page_size_cap's for Tier 1/2/3 targets

    I used the same sources as before. I accept any non-huge
    page size up to 256 KiB. I make an exception for Hexagon,
    which references 1 MiB pages in its Linux Kconfig.
    archbirdplus committed Aug 11, 2024
    Configuration menu
    Copy the full SHA
    0abcf0a View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    93a902f View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    45b403f View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    19b5263 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    8b71e50 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    6b7c653 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    fe14be0 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    6c69b04 View commit details
    Browse the repository at this point in the history
  15. page size: fix fmt

    archbirdplus committed Aug 11, 2024
    Configuration menu
    Copy the full SHA
    e69d50a View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    149dc4f View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    8631308 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    b92a295 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    3611c50 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    d111a0d View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    699574f View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    67a35c4 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    c05d576 View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    3ac8fdf View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    e881e6f View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    d1b238b View commit details
    Browse the repository at this point in the history
  27. Configuration menu
    Copy the full SHA
    de62bae View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    f01270b View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    a808666 View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    31842ad View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    4a202dc View commit details
    Browse the repository at this point in the history
  32. Configuration menu
    Copy the full SHA
    33cc3bb View commit details
    Browse the repository at this point in the history
  33. Configuration menu
    Copy the full SHA
    8215cba View commit details
    Browse the repository at this point in the history
  34. page size: remove redundant libc check on MacOS

    As explained in Target.zig:
    /// On Darwin, we always link libSystem which contains libc.
    archbirdplus committed Aug 11, 2024
    Configuration menu
    Copy the full SHA
    7ffb76e View commit details
    Browse the repository at this point in the history
  35. Configuration menu
    Copy the full SHA
    db02ad3 View commit details
    Browse the repository at this point in the history
  36. page size: fix fmt

    archbirdplus committed Aug 11, 2024
    Configuration menu
    Copy the full SHA
    4063002 View commit details
    Browse the repository at this point in the history

Commits on Aug 13, 2024

  1. page size: remove windows version limit

    First of all, this check is unnecessary for all formally
    supported users.
    Second of all, this check is too strict anyways, since
    these values of page_size apply to versions of Windows
    before XP, and maybe even before NT.
    archbirdplus committed Aug 13, 2024
    Configuration menu
    Copy the full SHA
    273215d View commit details
    Browse the repository at this point in the history

Commits on Aug 14, 2024

  1. Configuration menu
    Copy the full SHA
    89cbb91 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f5000bf View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    a986a71 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    7b6f064 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    36ecd39 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    39083d4 View commit details
    Browse the repository at this point in the history

Commits on Aug 16, 2024

  1. Configuration menu
    Copy the full SHA
    d7a6a6d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    6c54dfb View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    05bab5b View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    682088e View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    8a9c813 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    901fd56 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    174ea97 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    40ca175 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    0b22cd8 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    0bfd338 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    331f683 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    0d9fd9b View commit details
    Browse the repository at this point in the history

Commits on Aug 17, 2024

  1. Configuration menu
    Copy the full SHA
    eea9f3b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    140ed95 View commit details
    Browse the repository at this point in the history
  3. remove runtime check on guaranteed page size

    This served as a nice backup check to inform the user
    if their page size was unexpected, but it will take
    extra work to maintain.
    archbirdplus committed Aug 17, 2024
    Configuration menu
    Copy the full SHA
    6d16164 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    d59d1e9 View commit details
    Browse the repository at this point in the history

Commits on Aug 18, 2024

  1. page size: add uefi

    archbirdplus committed Aug 18, 2024
    Configuration menu
    Copy the full SHA
    297bc81 View commit details
    Browse the repository at this point in the history
  2. page size: add freebsd

    archbirdplus committed Aug 18, 2024
    Configuration menu
    Copy the full SHA
    949ca0c View commit details
    Browse the repository at this point in the history
  3. page size: add netbsd

    archbirdplus committed Aug 18, 2024
    Configuration menu
    Copy the full SHA
    d6af44a View commit details
    Browse the repository at this point in the history
  4. page size: add dragonfly

    archbirdplus committed Aug 18, 2024
    Configuration menu
    Copy the full SHA
    05a2f74 View commit details
    Browse the repository at this point in the history
  5. page size: add openbsd

    These page sizes are mostly empty for now because
    I cannot find a good source for these numbers.
    archbirdplus committed Aug 18, 2024
    Configuration menu
    Copy the full SHA
    a35632c View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    53ccb57 View commit details
    Browse the repository at this point in the history
  7. page size: update uefi

    archbirdplus committed Aug 18, 2024
    Configuration menu
    Copy the full SHA
    3133d5a View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    1ecaa8e View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    26c87c5 View commit details
    Browse the repository at this point in the history
  10. page size: remove minix

    archbirdplus committed Aug 18, 2024
    Configuration menu
    Copy the full SHA
    5c4a7aa View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    e86a30b View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    4918357 View commit details
    Browse the repository at this point in the history
  13. page size: add wasi "query"

    This allows the queryPageSize smoke test to pass
    zig test -fwasmtime. This way CI passes for me,
    but notifies x86 users of new OS'es of the missing
    _SC declaration.
    archbirdplus committed Aug 18, 2024
    Configuration menu
    Copy the full SHA
    37aca94 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    a69a5db View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    d59eab1 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    c0eeb84 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    c593c54 View commit details
    Browse the repository at this point in the history
  18. replace unnecessary min_page_size with 4096

    Just in case someone wants to use fifo on mips-freestanding.
    archbirdplus committed Aug 18, 2024
    Configuration menu
    Copy the full SHA
    178c859 View commit details
    Browse the repository at this point in the history

Commits on Aug 19, 2024

  1. Configuration menu
    Copy the full SHA
    d184a0b View commit details
    Browse the repository at this point in the history

Commits on Aug 21, 2024

  1. Configuration menu
    Copy the full SHA
    c91c0ef View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b7a9206 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    5e0e98d View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    cffb587 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    934504a View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    cc7e22f View commit details
    Browse the repository at this point in the history

Commits on Aug 22, 2024

  1. page size: fix fuchsia

    archbirdplus committed Aug 22, 2024
    Configuration menu
    Copy the full SHA
    b9f68a5 View commit details
    Browse the repository at this point in the history

Commits on Aug 23, 2024

  1. Configuration menu
    Copy the full SHA
    ba4d716 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    94e70e6 View commit details
    Browse the repository at this point in the history
  3. page size: add hurd

    archbirdplus committed Aug 23, 2024
    Configuration menu
    Copy the full SHA
    0304565 View commit details
    Browse the repository at this point in the history
  4. page size: add wasm-freestanding

    Doctests seem to depend on this behavior, and that is valid.
    archbirdplus committed Aug 23, 2024
    Configuration menu
    Copy the full SHA
    2b3ffad View commit details
    Browse the repository at this point in the history

Commits on Aug 24, 2024

  1. page size: add plan9

    archbirdplus committed Aug 24, 2024
    Configuration menu
    Copy the full SHA
    cec9e5a View commit details
    Browse the repository at this point in the history
  2. page size: add ps4, ps5

    archbirdplus committed Aug 24, 2024
    Configuration menu
    Copy the full SHA
    f3c997c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    dd7227d View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a9eeea9 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    be36505 View commit details
    Browse the repository at this point in the history

Commits on Aug 25, 2024

  1. fix typos

    archbirdplus committed Aug 25, 2024
    Configuration menu
    Copy the full SHA
    a8b0073 View commit details
    Browse the repository at this point in the history

Commits on Aug 26, 2024

  1. Configuration menu
    Copy the full SHA
    6695d1c View commit details
    Browse the repository at this point in the history

Commits on Aug 27, 2024

  1. page size: remove wasm from query

    There really is no query for wasm (or I don't care to add it
    until it's necessary). In the meantime, the test that checks
    for an existing method to query page sizes is not useful for
    wasm, so I add a test skip there.
    archbirdplus committed Aug 27, 2024
    Configuration menu
    Copy the full SHA
    98d13e6 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d72ab31 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    05d4fff View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    321a923 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    4c2eea1 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    b014b05 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    45307b9 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    e4d6e27 View commit details
    Browse the repository at this point in the history