Hello,
this sould take care of it (in that it will print the warning, but not
panic the box):
diff --git a/sys/kern/kern_malloc.c b/sys/kern/kern_malloc.c
index 46eb1c4347c..7b94ca7b880 100644
--- a/sys/kern/kern_malloc.c
+++ b/sys/kern/kern_malloc.c
@@ -618,8 +618,8 @@ void *
unsigned long osize = size;
#endif
- KASSERT((flags & M_WAITOK) == 0 || THREAD_CAN_SLEEP(),
- ("malloc(M_WAITOK) in non-sleepable context"));
+ if ((flags & M_WAITOK) != 0)
+ WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, __func__);
#ifdef MALLOC_DEBUG
va = NULL;
diff --git a/sys/vm/uma_core.c b/sys/vm/uma_core.c
index 37d78354200..2e1267ec02f 100644
--- a/sys/vm/uma_core.c
+++ b/sys/vm/uma_core.c
@@ -3355,8 +3355,8 @@ uma_zalloc_arg(uma_zone_t zone, void *udata, int flags)
uma_cache_bucket_t bucket;
uma_cache_t cache;
- KASSERT((flags & M_WAITOK) == 0 || THREAD_CAN_SLEEP(),
- ("uma_zalloc(M_WAITOK) in non-sleepable context"));
+ if ((flags & M_WAITOK) != 0)
+ WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, __func__);
/* Enable entropy collection for RANDOM_ENABLE_UMA kernel option */
random_harvest_fast_uma(, sizeof(zone), RANDOM_UMA);
On 8/17/20, mori...@mm.st wrote:
> r364323, previously I think it was just a warning from witness. Happens
> both on boot with stick already inserted, and when inserting the stick in
> booted system.
>
> Looks like my swap partition is no longer big enough for dump, translating
> from screen:
>
> umass0 numa-domain 0 on uhub4
> umass0:2:0: Attached to scbus2
> panic: malloc(M_WAITOK) in non-sleepable context
>
> vpanic()
> panic()
> malloc()
> disk_alloc()
> daregister()
> cam_periph_alloc()
> daasync()
> xpt_async_process_dev()
> xpt_async_process()
> xpt_done_process()
> xpt_done_td()
> fork_exit()
> fork_trampoline()
> ___
> freebsd-current@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
>
--
Mateusz Guzik
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"