Re: Panic on -current with MULTIPROCESSOR
Jason Thorpe <[email protected]>
| Newsgroups | gmane.os.netbsd.ports.alpha |
|---|---|
| Message-ID | <[email protected]> |
> On Apr 1, 2021, at 9:22 AM, Jason Thorpe <[email protected]> wrote: > > >> On Apr 1, 2021, at 9:18 AM, Jason Thorpe <[email protected]> wrote: >> >> #define SPINLOCK_BACKOFF(count) \ >> do { \ >> int __i; \ >> for (__i = (count); __i != 0; __i--) { \ >> SPINLOCK_BACKOFF_HOOK; \ >> } \ >> if ((count) < SPINLOCK_BACKOFF_MAX) \ >> (count) += (count); \ >> } while (/* CONSTCOND */ 0); > > Sorry, that’s the backoff hook … the spin hook is called in _kernel_lock() (i.e. acquiring the big lock)…. Ah, and I think this is the problem… the spin hook does not appear to be called in the spin mutex case. To close the loop on this, I sent John a patch off-list, and it appears to have fixed the problem for him. I’ve gone ahead and checked it in: http://mail-index.netbsd.org/source-changes/2021/04/03/msg128464.html Thanks for testing it, John! -- thorpej