From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from relay5-d.mail.gandi.net ([217.70.183.197]) by ewsd; Sun Jan 19 06:57:51 EST 2020 X-Originating-IP: 185.198.110.254 Received: from coeus.antares-labs.eu (unknown [185.198.110.254]) (Authenticated sender: rgl@antares-labs.eu) by relay5-d.mail.gandi.net (Postfix) with ESMTPSA id 5AAFD1C0003 for <9front@9front.org>; Sun, 19 Jan 2020 11:57:45 +0000 (UTC) Message-ID: <05BD54870460905C09A17B38B8866BF3@antares-labs.eu> Date: Sun, 19 Jan 2020 12:57:39 +0100 From: rgl@antares-labs.eu To: 9front@9front.org Subject: Re: [9front] panic with newer kernels in the apu2 In-Reply-To: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="upas-mwkqzdrxhfdlnsfwzacbxtwaox" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: extended hypervisor-aware STM browser This is a multi-part message in MIME format. --upas-mwkqzdrxhfdlnsfwzacbxtwaox Content-Disposition: inline Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit this is the ktrace (thanks qwx!) --upas-mwkqzdrxhfdlnsfwzacbxtwaox Content-Disposition: attachment; filename=coeus.9front.panic.ktrace Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit cpu% ktrace /amd64/9pc64 0xffffffff8011757e 0xffffffff800495a0 <606 callwithureg(_dumpstack); 607 } 608 609 static void 610 debugexc(Ureg *ureg, void *) 611 { acid: acid: /sys/src/9/port/devcons.c:239 234 splx(s); 235 prflush(); 236 dumpstack(); 237 238 /* reboot cpu servers and headless machines when not debugging */ >239 if(getconf("*debug") == nil) 240 if(cpuserver || !conf.monitor) 241 exit(1); 242 243 /* otherwise, just hang */ 244 while(islo()) idlehands(); acid: acid: /sys/src/9/pc64/trap.c:717 712 if(n < 0){ 713 if(!user){ 714 dumpregs(ureg); 715 panic("fault: %#p", addr); 716 } >717 checkpages(); 718 sprint(buf, "sys: trap: fault %s addr=%#p", 719 read ? "read" : "write", addr); 720 postnote(up, 1, buf, NDebug); 721 } 722 if(!user) poperror(); acid: acid: /sys/src/9/pc64/trap.c:358 353 } 354 if(ctl->isr) 355 ctl->isr(vno); 356 for(v = ctl; v != nil; v = v->next){ 357 if(v->f) >358 v->f(ureg, v->a); 359 } 360 if(ctl->eoi) 361 ctl->eoi(vno); 362 363 if(ctl->isintr){ acid: acid: /sys/src/9/pc64/l.s:964 959 PUSHQ SP 960 CALL trap(SB) 961 962 TEXT _intrr(SB), 1, -4 963 _intrestore: >964 POPQ AX 965 966 POPQ AX 967 POPQ BX 968 POPQ CX 969 POPQ DX acid: acid: acid: /sys/src/9/port/devtls.c:326 321 break; 322 } 323 perm = 0444; 324 if(TYPE(q) == Qclonus) 325 perm = 0555; >326 devdir(c, q, tlsnames[TYPE(q)], 0, eve, perm, dp); 327 return 1; 328 } 329 s -= 3; 330 if(s >= tdhiwat) 331 return -1; acid: acid: /sys/src/9/port/page.c:372 367 ptealloc(void) 368 { 369 Pte *new; 370 371 new = smalloc(sizeof(Pte)); >372 new->first = &new->pages[PTEPERTAB]; 373 new->last = new->pages; 374 return new; 375 } 376 377 void acid: acid: /sys/src/9/port/fault.c:168 163 panic("fault"); 164 return -1; 165 166 case SG_TEXT: /* Demand load */ 167 if(pagedout(*pg)) >168 pio(s, addr, soff, pg); 169 170 mmuphys = PPN((*pg)->pa) | PTERONLY | PTECACHED | PTEVALID; 171 (*pg)->modref = PG_REF; 172 break; 173 acid: acid: /sys/src/9/port/fault.c:320 315 if((attr & SG_TYPE) == SG_PHYSICAL){ 316 mapphys(s, addr, attr); 317 break; 318 } 319 >320 if(fixfault(s, addr, read) == 0) 321 break; 322 323 splhi(); 324 switch(up->procctl){ 325 case Proc_exitme: acid: acid: /sys/src/9/pc64/trap.c:712 707 up->insyscall = insyscall; 708 splx(s); 709 nexterror(); 710 } 711 n = fault(addr, ureg->pc, read); >712 if(n < 0){ 713 if(!user){ 714 dumpregs(ureg); 715 panic("fault: %#p", addr); 716 } 717 checkpages(); acid: acid: /sys/src/9/pc64/trap.c:358 353 } 354 if(ctl->isr) 355 ctl->isr(vno); 356 for(v = ctl; v != nil; v = v->next){ 357 if(v->f) >358 v->f(ureg, v->a); 359 } 360 if(ctl->eoi) 361 ctl->eoi(vno); 362 363 if(ctl->isintr){ acid: acid: /sys/src/9/pc64/l.s:964 959 PUSHQ SP 960 CALL trap(SB) 961 962 TEXT _intrr(SB), 1, -4 963 _intrestore: >964 POPQ AX 965 966 POPQ AX 967 POPQ BX 968 POPQ CX 969 POPQ DX acid: acid: acid: acid: acid: --upas-mwkqzdrxhfdlnsfwzacbxtwaox--