Currently ofw_real_bounce_alloc() is requesting memory, using WAITOK, holding a
non-sleepable locks, called 'OF Bounce Page'.
Since the request is inside the a lock, it should not sleep and return
immediately using the NOWAIT flag.
If you enable witness option, you see:
vmem_alloc with the following non-sleepable locks held:
exclusive sleep mutex OF Bounce Page (OF Bounce Page) r = 0 (0xc0000000016f0d28) locked @ /root/kernel/freebsd/sys/powerpc/ofw/ofw_real.c:212
stack backtrace:
#0 0xc0000000006a1db0 at ??+0
#1 0xc0000000006a4448 at ??+0
#2 0xc00000000069ee6c at ??+0
#3 0xc00000000094db00 at ??+0
#4 0xc00000000094de80 at ??+0
#5 0xc0000000005fbcb0 at ??+0
#6 0xc00000000099ae98 at ??+0
#7 0xc0000000005adf14 at ??+0
#8 0xc000000000102744 at ??+0
vmem_xalloc with the following non-sleepable locks held:
exclusive sleep mutex OF Bounce Page (OF Bounce Page) r = 0 (0xc0000000016f0d28) locked @ /root/kernel/freebsd/sys/powerpc/ofw/ofw_real.c:212
stack backtrace:
#0 0xc0000000006a1db0 at ??+0
#1 0xc0000000006a4448 at ??+0
#2 0xc00000000069e4a4 at ??+0
#3 0xc00000000069eef8 at ??+0
#4 0xc00000000094db00 at ??+0
#5 0xc00000000094de80 at ??+0
#6 0xc0000000005fbcb0 at ??+0
#7 0xc00000000099ae98 at ??+0
#8 0xc0000000005adf14 at ??+0
#9 0xc000000000102744 at ??+0