On 19/03/21(Fri) 20:15, Stuart Henderson wrote:
> Not a great report but I don't have much more to go on, machine had
> ddb.panic=0 and ddb hanged while printing the stack trace. Retyped by
> hand, may contain typos. Happened a few hours after setting up wg on it.
>
> uvm_fault(0xffffffff82204e38, 0x20, 0, 1) -> e
> fatal page fault in supervisor mode
> trap type 6 code 0 rip ffffffff81752116 cs 8 rflags 10246 cr2 20 cpl 0 rsp
> 00023b35eb0
> gsbase 0xffffffff820eaff0 kgsbase 0x0
> panic: trap type 6, code=0, pc=ffffffff81752116
> Starting stack trace...
> panic(ffffffff81ddc97a) at panic+0x11d
> kerntrap(ffff800023b35e00) at kerntrap+0x114
> alltraps_kern_meltdown() at alltraps_kern_meltdown+0x7b
> wg_index_drop(ffff8000012ae000,0) at wg_index_drop+0x96
> noise_create_initiation(
This is a NULL dereference at line 1981 of net/if_wg.c:
wg_index_drop(void *_sc, uint32_t key0)
{
...
/* We expect a peer */
peer = CONTAINER_OF(iter->i_value, struct wg_peer, p_remote);
...
}
Does that mean that `iter' is NULL and i_value' is at ofset 0x20 in that
struct?