From deb728774249ce479316c219f77530e2af52e3bd Mon Sep 17 00:00:00 2001 From: Florent Revest Date: Thu, 28 Nov 2024 01:50:23 +0100 Subject: prog: annotate image assets with fsck logs Syscall attributes are extended with a fsck command field which lets file system mount definitions specify a fsck-like command to run. This is required because all file systems have a custom fsck command invokation style. When uploading a compressed image asset to the dashboard, syz-manager also runs the fsck command and logs its output over the dashapi. The dashboard logs these fsck logs into the database. This has been requested by fs maintainer Ted Tso who would like to quickly understand whether a filesystem is corrupted or not before looking at a reproducer in more details. Ultimately, this could be used as an early triage sign to determine whether a bug is obviously critical. --- pkg/mgrconfig/config.go | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'pkg/mgrconfig') diff --git a/pkg/mgrconfig/config.go b/pkg/mgrconfig/config.go index b475c4eed..1e499412a 100644 --- a/pkg/mgrconfig/config.go +++ b/pkg/mgrconfig/config.go @@ -192,6 +192,13 @@ type Config struct { // the output. StraceBin string `json:"strace_bin"` + // Whether to run fsck commands on file system images found in new crash + // reproducers. The fsck logs get reported as assets in the dashboard. + // Note: you may need to install 3rd-party dependencies for this to work. + // fsck commands that can be run by syz-manager are specified in mount + // syscall descriptions - typically in sys/linux/filesystem.txt. + RunFsck bool `json:"run_fsck"` + // Type of virtual machine to use, e.g. "qemu", "gce", "android", "isolated", etc. Type string `json:"type"` // VM-type-specific parameters. -- cgit mrf-deployment