On Tue, Oct 22, 2019 at 7:12 AM Gleb Smirnoff <[email protected]> wrote: > > Author: glebius > Date: Mon Oct 21 23:12:14 2019 > New Revision: 353876 > URL: https://svnweb.freebsd.org/changeset/base/353876 > > Log: > Assert that any epoch tracker belongs to the thread stack. > > Reviewed by: kib > > Modified: > head/sys/kern/subr_epoch.c > > Modified: head/sys/kern/subr_epoch.c > ============================================================================== > --- head/sys/kern/subr_epoch.c Mon Oct 21 21:21:34 2019 (r353875) > +++ head/sys/kern/subr_epoch.c Mon Oct 21 23:12:14 2019 (r353876) > @@ -366,9 +366,13 @@ _epoch_enter_preempt(epoch_t epoch, epoch_tracker_t et > struct thread *td; > > MPASS(cold || epoch != NULL); > - INIT_CHECK(epoch); > MPASS(epoch->e_flags & EPOCH_PREEMPT); > td = curthread; > + MPASS((vm_offset_t)et >= td->td_kstack && > + (vm_offset_t)et + sizeof(struct epoch_tracker) < > + td->td_kstack + td->td_kstack_pages * PAGE_SIZE); > + > + INIT_CHECK(epoch); > #ifdef EPOCH_TRACE > epoch_trace_enter(td, epoch, et, file, line); > #endif
Hello Gleb, RISC-V boot panics with this message: panic: Assertion (vm_offset_t)et >= td->td_kstack && (vm_offset_t)et + sizeof(struct epoch_tracker) < td->td_kstack + td->td_kstack_pages * PAGE_SIZE failed at /workspace/src/sys/kern/subr_epoch.c:373 Full log: https://ci.freebsd.org/job/FreeBSD-head-riscv64-test/12334/console Can you help check this? Thanks, Li-Wen _______________________________________________ [email protected] mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "[email protected]"
