<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/57783>57783</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Control file parsing error during libfuzzer merge.
</td>
</tr>
<tr>
<th>Labels</th>
<td>
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
kobrineli
</td>
</tr>
</table>
<pre>
Hi! I was trying to merge corpus with libfuzzer's `-merge=1` and faced the following problem.
During corpus merging libfuzzer gave this error on every attempt it tried to merge:
MERGE-OUTER: attempt 17539
INFO: Running with entropic power schedule (0xFF, 100).
INFO: Seed: 1716583057
INFO: Loaded 1 modules (234270 inline 8-bit counters): 234270 [0x2380230, 0x23b954e),
INFO: Loaded 1 PC tables (234270 PCs): 234270 [0x1ab3e28,0x1e47008),
INFO: -max_len is not provided; libFuzzer will not generate inputs larger than 1048576 bytes
MERGE-INNER: using the control file '/tmp/libFuzzerTemp.Merge14.txt'
MERGE: failed to parse the control file (unexpected error)
And this error was continuing to popup until all attempts were expired.
Steps to reproduce the error:
1. Build docker container from here: https://github.com/ispras/oss-sydr-fuzz/tree/master/projects/capstone
sudo docker build -t oss-sydr-fuzz-capstone .
2. Run built docker container:
sudo docker run --rm -v `pwd`:/fuzz -it oss-sydr-fuzz-capstone /bin/bash
3. Make directory for new corpus and run corpus merging:
mkdir /new_corpus
/fuzz_disasmnext -merge=1 /new_corpus /corpusnext
By the way, if we make corpus smaller, for example, consisting of 300 files, merge succeeds with the very first attempt.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyFVdtyozgQ_Rr80gUFyBj84IfcvJuqTWZqLs8pAY2tjUCUJGJ7vn67wU7sGmfWD9iyus_py-mmNPVh9bcK0gQeYScdeHtQ3Qa8gRbtBqEyth8c7JTfglZlM_z6hTZIcwfBIg5Hm0DcJ3QA2dXQyApr8FuExmhtdozVW1NqbKMgvg_im_vB8p9HXAbg4zs0bOQbEoBygNYaC6YDfEN7AOk9tr0H5SlIxSzHGANxM0FPTzh-nh6-_fUQfvn54-EbWby7J3kmlpeWj8_rL2zybeg6DmZMFjtvTa8q6M2OwnLVFutBIwRpEe_X6yC9gySOg3QZXQf7jljzd5Ini6wQcZZft_vHyJqSSaA1jO_oiihSMU_zGFSnVYdQhCVlXZmh82gdcbLj0STIbuN9Koo4FTEHxYdymc2Rzej8P6xf78DLknk_WL_eXeNIZCkwLQiTfuM8j-PijxRhK_cvGjugVnbGswzeVM1FueV2r6d275TW4_UGO7TSI-XcD96BltRaS0qQHRV6XmT5AsqDHws0fq51-_H5eer24EYVb1nA3EgNjRqblwfp2rc9Pd9j-EG6iJ5YSck88nvPRr9jM2ojCWQUXi-tw2v4xdDhvsfKk90oYK7RmTpvuvpc3TxyjKC64Th2vemHHqjTSoOk2hx1SyOIFoGwlcU6Oof87rF37GqRalwP1RTYxH45G0kEt4PSNdSmeqXqMrUkhVlorGlhSxSc59b73rFrSjpfb2gchjKqTEsH5XorSR5r41zoDrUNeW65qBZJcutWOs8LYk2h_EtlYNNK9s6bDq9NqRtqc4qmHEMLPVxghyd3uMg6jXheRx__WzqfrIRzMkvOYWhbCN94lfW7mp5TzswKofo0DjIpVcdP6bbnPCKCJ_mKUFOPKm9oaTXU4w53p3XHK5KJL7ffJ9G2r4TDZATwMnlcGhxDfamVk64l3Xn42MiXjnyafrHZOdvtYVTLTh54lFVDOoOWkzg6upZUyB29G5PBvWx7jXykajvlPOvWNCDieJwBx1fTu8MNVUVb8Pj2YJZxkTfKOn_SdTTDVbJYCCEKIdJZvRL1UizlzCuvcXV3Plw8c0w2TU49vUc-XhwjZzQbrF79Qb9av52-wqNER1W7gSNfZ3leiNl2JaSUcVOVZbYQpaCVL8q8LIrFspD1PEvSmZYlareizRhk9zO1SuM0jZfJIpmnmUgjFGXTxBKzIm-KpsiCeYwtbY-IiSNjNzO7GmMoh42jS02FdB-X0jm16RBP-HLwW2NXr6akpFGr2Rjwaoz2P_C_bcU">