On Wed, Mar 17, 2021 at 7:45 PM Mark Rutland <mark.rutl...@arm.com> wrote: > > On Thu, Mar 11, 2021 at 05:56:46PM +0100, Dmitry Vyukov wrote: > > On Thu, Mar 11, 2021 at 1:33 PM Mark Rutland <mark.rutl...@arm.com> wrote: > > > FWIW, I keep my fuzzing config fragment in my fuzzing/* branches on > > > git.kernel.org, and for comparison my fragment for v5.12-rc1 is: > > > > > > https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git/commit/?h=fuzzing/5.12-rc1&id=6d9f7f8a2514fe882823fadbe7478228f71d7ab1 > > > > > > ... I'm not sure whether there's anything in that which is novel to you. > > > > Hi Mark, > > > > I've learned about DEBUG_TIMEKEEPING which we had disabled. I am enabling > > it. > > We also have CONTEXT_TRACKING_FORCE disabled. I don't completely > > understand what it's doing. Is it also "more debug checks" type of > > config? > > Context tracking tracks user<->kernel transitions, and tries to disable > RCU when it is not needed (e.g. while a CPU is in usersspace), to avoid > the need to perturb that CPU with IPIs and so on. Normally this is not > enabled unless CPUs are set aside for NOHZ usage, as there's some > expense in doing this tracking. I haven't measured how expensive it is > in practice. > > CONTEXT_TRACKING_FORCE enables that tracking regardless of whether any > CPUs are set aside for NOHZ usage, and makes it easier to find bugs in > that tracking code, or where it is not being used correctly (e.g. missed > calls, or called in the wrong places). > > I added it to my debug fragment back when I fixed the arm64 entry code > accounting for lockdep, and I keep it around to make sure that we don't > accidentally regress any of that.
Looks like a debug config we should enable on syzbot. I am enabling it in: https://github.com/google/syzkaller/pull/2500/commits/8ebea47133e458293e3c71e1189e18052286393d Thanks > > FWIW we have more debug configs: > > https://github.com/google/syzkaller/blob/master/dashboard/config/linux/bits/debug.yml > > https://github.com/google/syzkaller/blob/master/dashboard/config/linux/bits/base.yml > > https://github.com/google/syzkaller/blob/master/dashboard/config/linux/bits/kasan.yml > > https://github.com/google/syzkaller/blob/master/dashboard/config/linux/bits/kmemleak.yml