aboutsummaryrefslogtreecommitdiffstats
path: root/pkg/aflow/action
Commit message (Collapse)AuthorAgeFilesLines
* syz-agent: systematically show verbose error messagesDmitry Vyukov2026-03-111-2/+2
| | | | | | | | | | | | | Currently we added custom code to kernel build action, and few others to expose verbose errors from executed binaries (notably make). But lots of other binary executions missing this logic, e.g. for git failure we currently see unuseful: failed to run ["git" "fetch" "--force" "--tags" exit status 128 Instead of adding more and more custom code to do the same, remove the custom code and always add verbose output in syz-agent and tools/syz-aflow.
* pkg/aflow/action/crash: collect test coverageDmitry Vyukov2026-03-092-35/+86
| | | | | | | Collect code coverage for test programs. This is likley to be needed for #6878 and seed generation workflow. For now it's not wired into any workflow/tool and is not tested. But this should provide most of the plumbing to wire it up.
* pkg/aflow: delete SyzkallerCommitTaras Madan2026-03-042-25/+22
| | | | It is not used.
* pkg/aflow/action/crash: handle boot errors betterDmitry Vyukov2026-02-052-7/+34
| | | | Provide better errors messages on boot errors.
* pkg/aflow/action/crash: clang-format the patch diffDmitry Vyukov2026-02-021-1/+37
| | | | Fixes #6671
* pkg/aflow/action/crash: cache patch testing resultDmitry Vyukov2026-01-291-25/+42
| | | | | | | | | This caching is very handy when testing some dashboard features related to stating jobs, or handling jobs completion, or testing changes in the last steps of patching workflow. Without caching each testing takes 10 mins, with caching the whole workflow completes almost immidiatly .
* pkg/aflow/flow/patching: provide some WARNING-specific instructionsDmitry Vyukov2026-01-282-18/+27
|
* pkg/aflow/action/kernel: fix up config disablingDmitry Vyukov2026-01-271-1/+2
| | | | | | | We run the script in the source dir, so it created .config file there and made the source tree non-clean, which breaks out-of-tree builds (and does not achieve the original goal). Run it in the build dir.
* pkg/aflow/action/kernel: disable X86_X32_ABI configDmitry Vyukov2026-01-271-0/+7
| | | | | | | We don't fuzz x32 arch, and it's not very interesting, but building with this config and ld.lld fails with the following error: ld.lld: error: arch/x86/entry/vdso/vgetrandom-x32.o:(.note.gnu.property+0x0): data is too short ld.lld: error: arch/x86/entry/vdso/vgetcpu-x32.o:(.note.gnu.property+0x0): data is too short
* pkg/aflow/flow/patching: harden against empty generated patchesDmitry Vyukov2026-01-271-0/+4
| | | | | | | | Make codeeditor error on nop changes that don't actually change the code. Make patch testing error on empty patch. Perhaps we need a notion of "mandatory" tools that must be called successfully at least once... not sure yet.
* pkg/aflow/action/crash: fix the reversed res.Report/ErrorYulong Zhang2026-01-271-1/+1
| | | | | | Right now res.Report and res.Error seem reversed. The successful crash report is returned into res.Error, and interrupts the normal flow/pipeline.
* pkg/aflow/action/crash/test: implement patch testingFlorent Revest2026-01-263-77/+160
|
* pkg/aflow/action/crash: add simple testing actionDmitry Vyukov2026-01-231-0/+40
|
* pkg/aflow/action/kernel: add CheckoutScratch actionDmitry Vyukov2026-01-231-11/+40
| | | | The action checks out a temp dir for code edits and patch testing.
* pkg/aflow/action/kernel/build: fix a typoFlorent Revest2026-01-231-3/+3
| | | | | While we are at it, let's also make it a constant to make the intent clearer.
* pkg/aflow/action/kernel/build: log build errorsFlorent Revest2026-01-231-3/+3
| | | | | | | | | | | | | | | | | | Currently, when the kernel build fails, syz-aflow prints something along the line of: failed to run ["make" "KERNELVERSION=syzkaller" "KERNELRELEASE=syzkaller" "LOCALVERSION=-syzkaller" "-j" "36" "ARCH=x86_64" "CC=ccache clang" "LD=ld.lld" "O=workdir/cache/build/1c6c481ef478edbb8bf3afb9d73e9ff157b1a204" "bzImage" "compile_commands.json"]: exit status 2 Which is not particularly helpful, especially because the build directory gets immediately wiped out and the source directory does not contain the extracted .config which makes reproduction especially annoying. The -s flag makes make "silent", meaning that it only prints errors and not all successfully built compilation units, which keeps the logs more concise.
* pkg/aflow/action/crash: use object cachingDmitry Vyukov2026-01-211-31/+31
| | | | | | | | | | | Use object caching instead of file caching. This removes the need for explicit file writing/reading, and reduces amount of error handling. Also any future changes should be easier to do. Add support for flow temp dirs to implement this (repro needs temp manager workdir). Previously repro abused the cache dir for that.
* pkg/aflow/action/kernel: keep build files that codesearch will needDmitry Vyukov2026-01-201-6/+13
| | | | | We currently duplicate list of source extensions in the build action and codesearch tool. Unify the lists.
* pkg/aflow: add notion of flow errorsDmitry Vyukov2026-01-162-3/+8
| | | | | | | | | | Flow errors denote failure of the flow itself, rather than an infrastructure error. A flow errors mean an expected condition in the flow when it cannot continue, and cannot produce expected outputs. For example, if we are doing something with the kernel, but the kernel build fails. Flow errors shouldn't be flagged in Fixes #6610
* pkg/aflow/action/kernel: fix removal on unneeded build filesDmitry Vyukov2026-01-091-4/+4
| | | | | Paths passed to filepath.WalkDir are absolute (include the dir prefix), account for that. Strings returned by filepath.Ext include the dot, account for that as well.
* pkg/aflow/action/kernel: keep few more files in build outputsDmitry Vyukov2026-01-091-2/+7
| | | | | Keep vmlinux for debug info/addr2line. Keep compile_commands.json, we need it for codesearch.
* pkg/aflow/action/kernel: add build actionDmitry Vyukov2026-01-091-0/+63
|
* pkg/aflow/action/kernel: add checkout actionDmitry Vyukov2026-01-091-0/+90
|
* pkg/aflow/action/crash: add crash repro toolDmitry Vyukov2026-01-091-0/+115