since panic was changed to a print, add \n and return to prevent double unlock (or lock discoherence). Reference: /n/atom/patch/applied2013/adrbadfree Date: Thu Aug 22 22:40:19 CES 2013 Signed-off-by: quanstro@quanstro.net --- /sys/src/nix/k10/adr.c Thu Aug 22 22:39:46 2013 +++ /sys/src/nix/k10/adr.c Thu Aug 22 22:39:47 2013 @@ -310,7 +310,8 @@ m = adrlook(base, len); if(m == nil || m->use == Mfree){ unlock(&adr); - print("should panic: bad adrfree %#P %#P", base, len); + print("should panic: bad adrfree %#P %#P\n", base, len); + return; } m->use = Mfree; m->memflags = 0;