Skip to content
Snippets Groups Projects
  1. Aug 30, 2023
  2. Aug 28, 2023
    • David Goulet's avatar
      Merge branch 'maint-0.4.8' · c8844bc9
      David Goulet authored
      c8844bc9
    • David Goulet's avatar
      3aa937dd
    • David Goulet's avatar
      Merge branch 'maint-0.4.8' · 4a1815e4
      David Goulet authored
      4a1815e4
    • Micah Elizabeth Scott's avatar
    • Micah Elizabeth Scott's avatar
      equix: Disable huge page support by default · a3e7e9bd
      Micah Elizabeth Scott authored
      Equi-X supports optionally allocating its solver memory using huge
      pages, to reduce the virtual memory subsystem overhead required to make
      the entire solver buffer live.
      
      Tor doesn't use this feature, since it seems to have no noticeable
      performance benefit at this time, but we still included code for it at
      compile time. To improve portability, this patch disables huge page
      support by default and enables it only in the cmake build system used
      for equix benchmarks.
      
      With this patch equix-bench still supports huge pages. Verified using
      strace that we're making the hugepage allocation.
      
      There's no fallback for huge pages, so Equi-X initialization will fail
      if they are requested and we don't support them for any runtime or
      compile-time reason.
      
      Addresses #40843 (NetBSD) but also prevents future porting issues
      related to huge pages.
      a3e7e9bd
    • Micah Elizabeth Scott's avatar
      hashx: Fix compiled hash function on NetBSD · 95e8ffa9
      Micah Elizabeth Scott authored
      NetBSD includes the idea of a 'maximum protection' per-region,
      and an mprotect which exceeds the max protection will be denied.
      
      If we explicitly ask for a maximum which includes execute permission, we
      can successfully swap our code buffer's permissions between read-write
      and read-execute when each hash program is compiled.
      
      With this patch, the crypto/hashx tests pass on NetBSD 9.
      This addresses bug #40844
      95e8ffa9
    • Micah Elizabeth Scott's avatar
      hashx: Avoid unused arg warning on OpenBSD and NetBSD · ee4e9f75
      Micah Elizabeth Scott authored
      This path in hashx_vm_alloc_huge() for OpenBSD and NetBSD always
      fails without checking its parameter. Fix the warning.
      ee4e9f75
    • Micah Elizabeth Scott's avatar
      equix: Add NetBSD to "huge pages not supported" path · 9cac0a85
      Micah Elizabeth Scott authored
      As suggested by @wiz on #40843, let's add an explicit check to
      hashx_vm_alloc_huge() that avoids using a Linux-style default
      on NetBSD targets.
      
      This doesn't change the questionable Linux-style default,
      but a future patch will disable this code by default so it's not a
      portability liability.
      
      (This code is in hashx's VM layer but it's actually only relevant to
      equix.)
      
      This addresses bug #40843. Another patch will disable huge pages
      by default entirely, but this patch is sufficient to fix the NetBSD
      build.
      9cac0a85
    • Mike Perry's avatar
      Changes file for bug40842 · 888da057
      Mike Perry authored
      888da057
  3. Aug 25, 2023
  4. Aug 23, 2023
Loading