fuzz: doc: add info about afl-system-config for macOS #32175

pull brunoerg wants to merge 1 commits into bitcoin:master from brunoerg:2025-03-fuzz-afl changing 1 files +2 −0
  1. brunoerg commented at 4:17 pm on March 31, 2025: contributor

    afl-system-config adjusts the shared memory segment size limits and configures kernel parameters for better fuzzing performance. Since macOS has more conservative values on shared memory, it’s necessary to run afl-system-config, or manually adjust the values to fuzz with AFL++.

    e.g.:

    0kern.sysv.shmmax: 524288000
    1kern.sysv.shmmin: 1
    2kern.sysv.shmseg: 48
    3kern.sysv.shmall: 131072000
    
  2. DrahtBot commented at 4:17 pm on March 31, 2025: contributor

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    Code Coverage & Benchmarks

    For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/32175.

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    ACK janb84, w0xlt, Crypt-iQ

    If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

  3. DrahtBot added the label Tests on Mar 31, 2025
  4. in doc/fuzzing.md:190 in 66572c2745 outdated
    186@@ -187,6 +187,8 @@ $ cmake -B build_fuzz \
    187 $ cmake --build build_fuzz
    188 # For macOS you may need to ignore x86 compilation checks when running "cmake --build". If so,
    189 # try compiling using: AFL_NO_X86=1 cmake --build build_fuzz
    190+# Also, it might be required to run afl-system-config to adjust the shared
    


    janb84 commented at 5:59 pm on April 14, 2025:
    0# Also, it might be required to run "afl-system-config" to adjust the shared
    

    Small nit, to keep it in the same style as line 188


    brunoerg commented at 5:56 pm on April 28, 2025:
    Done. Thanks.
  5. janb84 commented at 6:02 pm on April 14, 2025: contributor

    Concept ACK 66572c2

    Small style NIT, to keep the comment in the same style as 2 lines before. Not blocking.

    Overall small addition to the documentation, provides extra valuable information, looks good to me.

  6. brunoerg force-pushed on Apr 28, 2025
  7. brunoerg commented at 5:56 pm on April 28, 2025: contributor
    Pushed 66572c27454e1464173dc318d62fdfc11d4b7832..6e026606f368d8d1139b266c382076685e76d0b2 to address #32175 (review)
  8. janb84 commented at 6:04 pm on April 28, 2025: contributor

    re ACK 6e02660

    Changes sinds last ACK:

    • Minor style change in comments to align with rest of comment style.
  9. DrahtBot added the label CI failed on Apr 29, 2025
  10. fuzz: doc: add info about `afl-system-config` for macOS 61ea5f348d
  11. brunoerg force-pushed on Apr 29, 2025
  12. DrahtBot removed the label CI failed on Apr 29, 2025
  13. janb84 commented at 6:21 pm on April 29, 2025: contributor

    reACK 61ea5f3

    Changes since last ACK:

    • none, CI related push
  14. w0xlt commented at 11:13 pm on May 8, 2025: contributor
  15. Crypt-iQ commented at 8:57 pm on May 21, 2025: contributor

    ACK 61ea5f3

    I noticed that a couple lines above, the link to “selecting the best AFL compiler…” is invalid and has instead moved to https://github.com/AFLplusplus/AFLplusplus/blob/stable/docs/fuzzing_in_depth.md#a-selecting-the-best-afl-compiler-for-instrumenting-the-target. I can open a PR to fix the doc link.

  16. brunoerg commented at 12:51 pm on May 22, 2025: contributor

    I noticed that a couple lines above, the link to “selecting the best AFL compiler…” is invalid and has instead moved to https://github.com/AFLplusplus/AFLplusplus/blob/stable/docs/fuzzing_in_depth.md#a-selecting-the-best-afl-compiler-for-instrumenting-the-target. I can open a PR to fix the doc link.

    Cool, go ahead.

  17. brunoerg commented at 11:41 am on June 13, 2025: contributor
    rfm?
  18. fanquake commented at 12:59 pm on June 13, 2025: member
    I think we just need to make sure we don’t start recreating all the AFL docs, in our own docs, especially not for macOS, given fuzzing is not well supported/seems to be constantly having issues there. IIRC the note about afl-system-config is also output by afl itself, so it’s not clear that repeating it here is needed?
  19. fanquake merged this on Jun 13, 2025
  20. fanquake closed this on Jun 13, 2025


github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2025-07-11 06:13 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me