git: 1ae20f7c70ea - main - kern: malloc: fix panic on M_WAITOK during THREAD_NO_SLEEPING()

Li-Wen Hsu lwhsu at freebsd.org
Tue Mar 9 15:38:15 UTC 2021


On Tue, Mar 9, 2021 at 7:18 PM Kyle Evans <kevans at freebsd.org> wrote:
>
> The branch main has been updated by kevans:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=1ae20f7c70ea16fa8b702e409030e170df4f5c13
>
> commit 1ae20f7c70ea16fa8b702e409030e170df4f5c13
> Author:     Kyle Evans <kevans at FreeBSD.org>
> AuthorDate: 2021-03-08 06:16:27 +0000
> Commit:     Kyle Evans <kevans at FreeBSD.org>
> CommitDate: 2021-03-09 11:16:39 +0000
>
>     kern: malloc: fix panic on M_WAITOK during THREAD_NO_SLEEPING()
>
>     Simple condition flip; we wanted to panic here after epoch_trace_list().
>
>     Reviewed by:    glebius, markj
>     MFC after:      3 days
>     Differential Revision:  https://reviews.freebsd.org/D29125
> ---
>  sys/kern/kern_malloc.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/sys/kern/kern_malloc.c b/sys/kern/kern_malloc.c
> index 48383358e3ad..0d6f9dcfcab7 100644
> --- a/sys/kern/kern_malloc.c
> +++ b/sys/kern/kern_malloc.c
> @@ -537,7 +537,7 @@ malloc_dbg(caddr_t *vap, size_t *sizep, struct malloc_type *mtp,
>  #ifdef EPOCH_TRACE
>                         epoch_trace_list(curthread);
>  #endif
> -                       KASSERT(1,
> +                       KASSERT(0,
>                             ("malloc(M_WAITOK) with sleeping prohibited"));
>                 }
>         }

I guess this reveals a bug in gmirror?  Now the test case
sys/geom/class/mirror/8_test:main panics:

https://ci.freebsd.org/job/FreeBSD-main-amd64-test/17779/console
https://ci.freebsd.org/job/FreeBSD-main-i386-test/11831/console

Li-Wen


More information about the dev-commits-src-main mailing list