From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,HTML_MESSAGE,MAILING_LIST_MULTI, RCVD_IN_DNSWL_NONE,URIBL_DBL_BLOCKED_OPENDNS,URIBL_ZEN_BLOCKED_OPENDNS autolearn=ham autolearn_force=no version=3.4.4 Received: from txout-a2-smtp.messagingengine.com (txout-a2-smtp.messagingengine.com [103.168.172.225]) by inbox.vuxu.org (Postfix) with ESMTP id 58EC327F77 for ; Sat, 3 Jan 2026 19:44:05 +0100 (CET) Received: from localhost.localdomain (phl-topicbox-02.internal [10.202.2.220]) by mailtxout.phl.internal (Postfix) with ESMTP id 0B3731C00CE for ; Sat, 3 Jan 2026 13:44:05 -0500 (EST) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=PYi6Ao0g header.a=rsa-sha256 header.s=20230601 x-bits=2048; dmarc=pass policy.published-domain-policy=none policy.published-subdomain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=none,sp=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=gmail.com; spf=pass smtp.mailfrom=rminnich@gmail.com smtp.helo=mail-lf1-f51.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (message has been altered)) (Message modified while forwarding at Topicbox) ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=mime-version:references:in-reply-to:from:date :message-id:subject:to:content-type:list-help:list-id:list-post :list-subscribe:reply-to:content-transfer-encoding :list-unsubscribe; s=sysmsg-1; t=1767465845; bh=nMUm8f8l0wUMAOsb d6zimWsg+KMItbqf/bmSDWQiHX8=; b=I9bWznGspANJE0BMmsIEPvzCmSHtqwWf Sr95xVY886WUsQKdaqiWmD7UeOV7lZ+0aMT4zCWtSQy6JXf9Clu7pSAL+s84lu0X UZMg2BFqMd+3/XbYbk5lEgxO1CRxIjCEBQgobQH16bjkJ0Hg2UXS+eP3+l5EmkmF mG99kq1n1wI= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1767465845; b=sB07obC5lBRXpFAnk6UMV28vAsOXDJOBNpT6PsJI9oNlY1i7nt BaVmMVT1w/eO3YX5Hxs99aBSpSMuSXA5SMuko2cnA49uynYgZdfkJ3FglRlz6FhS R0Q7LIf7BttoEyJo0WofL+EqUHixB8NFHFZWcY5oTFi7Lt6Z/H8BmI++A= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=PYi6Ao0g header.a=rsa-sha256 header.s=20230601 x-bits=2048; dmarc=pass policy.published-domain-policy=none policy.published-subdomain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=none,sp=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=gmail.com; spf=pass smtp.mailfrom=rminnich@gmail.com smtp.helo=mail-lf1-f51.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (message has been altered)) (Message modified while forwarding at Topicbox) X-Received-Authentication-Results: authmilter.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=PYi6Ao0g header.a=rsa-sha256 header.s=20230601 x-bits=2048; dmarc=pass policy.published-domain-policy=none policy.published-subdomain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=none,sp=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=gmail.com; iprev=pass smtp.remote-ip=209.85.167.51 (mail-lf1-f51.google.com); spf=pass smtp.mailfrom=rminnich@gmail.com smtp.helo=mail-lf1-f51.google.com; x-aligned-from=pass (Address match); x-google-dkim=pass (2048-bit rsa key) header.d=1e100.net header.i=@1e100.net header.b=OfDEKn99; x-me-sender=none; x-ptr=pass smtp.helo=mail-lf1-f51.google.com policy.ptr=mail-lf1-f51.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt4.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.3 smtp.cipher=TLS_AES_128_GCM_SHA256 smtp.bits=128/128; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h= mime-version:references:in-reply-to:from:date:message-id:subject :to:content-type:list-help:list-id:list-post:list-subscribe :reply-to:content-transfer-encoding:list-unsubscribe; s=dkim-1; t=1767465845; x=1767552245; bh=10V10M5t+ZrdtILxx/ICCyH/PPSM8fMM mfZKwmDPI44=; b=UEXCQ0iz/19xJ+aFGGSJExneCyEJsFPS8gwdGHL/4y/T0fJb qK/82C8CIaeJW+SZPg0HJWRahUKJkbIqYzvWPSYxUiaMZWzlPFuje2mFTyq9H1Nc WtuWrPo7oUmZSXNfS246jetBIn8iz/F2Mz3cIxGbfs0frN6fp+DQSJRYzhs= Received: from authmilter.topicbox.com (unknown [172.17.0.1]) by mx.topicbox.com (Postfix) with ESMTP id 1355B35CDF55 for <9fans@9fans.net>; Sat, 3 Jan 2026 13:25:06 -0500 (EST) Received: from mx.topicbox.com (172.17.0.1 [172.17.0.1]) by authmilter.topicbox.com (Authentication Milter) with ESMTP id 50C98F5A3BA; Sat, 3 Jan 2026 13:25:06 -0500 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1767464706; b=HgbMwsywfuQ9WJ4y+bVa4ELSFDzbygGn9RdNqytidOUaL6IVtG kjT8fH+aThopEApz8ZEIq+rNe0r9sMxvNGSt2vr3hQ89w733f1i3FUXATJbIbx2X B/81+DUgdyLi9bEKGeiKNetDfbYCskZtr/Im0o6SB9AYouRQI4kI7zFZlxclc+WQ TYWl5va2N/ouhszhXmhQpjUC4W9LxtfmB7618YxlnJtyzTZqEX1RlDDhSTaP0P/4 IS7CZGV8Gl9uaf4Orfn2InaWk4mU/3PoPhVN8e6XZDm9NQS2/rkYEieypN2jA3j/ fsBL7Dx2MzAxHo00KAgc4PY4E7H5fVH0qqJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=mime-version:references:in-reply-to:from:date :message-id:subject:to:content-type; s=arcseal; t=1767464706; bh=Psn2wC4ujkdQMBRCWgmvHscvbiz0fs1F7BbcOZcj/G8=; b=IS8+d+fhV7Ml OrAoLpseYeog0eQYWnzePj9Syt+yxm50hY7lAJzZNnK72l4MTAckrw0qQs3TqtDr mSdTIxrTvmxF6A8K4PIIBeJn7zNcXxBTVFAGH4M6tnIyJuq7JPv0ZcpLt/Kvdxm8 b0+OOKhk6s7+7B/+2xpQqbQsm/Dgh7NhmpM9EwXdNMTepgX1CNsLBvJ4hM8LOCF2 CANZWqPFf94p6fwV0tQ2Qx7yad1lpFqcnEuUet+gLJas+0oGyciMBgtg3gFM/8Yj uBaxLoy4asq5okeofKupcFAK4zmVd409ZbtCnGxwbyqZ0LejHR9bz47gbxuTfuPM l3mR7VwgPw== ARC-Authentication-Results: i=1; authmilter.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=PYi6Ao0g header.a=rsa-sha256 header.s=20230601 x-bits=2048; dmarc=pass policy.published-domain-policy=none policy.published-subdomain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=none,sp=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=gmail.com; iprev=pass smtp.remote-ip=209.85.167.51 (mail-lf1-f51.google.com); spf=pass smtp.mailfrom=rminnich@gmail.com smtp.helo=mail-lf1-f51.google.com; x-aligned-from=pass (Address match); x-google-dkim=pass (2048-bit rsa key) header.d=1e100.net header.i=@1e100.net header.b=OfDEKn99; x-me-sender=none; x-ptr=pass smtp.helo=mail-lf1-f51.google.com policy.ptr=mail-lf1-f51.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt4.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.3 smtp.cipher=TLS_AES_128_GCM_SHA256 smtp.bits=128/128; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgeefgedrtddtgdelvddvhecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggftfghnshhusghstghrihgsvgdp uffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftddtnecunecujfgurhepgghfjg fhfffkuffvtgesrgdtreertddtjeenucfhrhhomheprhhonhcumhhinhhnihgthhcuoehr mhhinhhnihgthhesghhmrghilhdrtghomheqnecuggftrfgrthhtvghrnheptdevgfeitd dvgeevtdevleekkeetgfeiteelieefudetgfethedvhffggeetvefhnecuffhomhgrihhn pehmkhifshdrshhhpdhtohhpihgtsghogidrtghomhenucfkphepvddtledrkeehrdduie ejrdehudenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepihhnvghtpedvtdel rdekhedrudeijedrhedupdhhvghlohepmhgrihhlqdhlfhduqdhfhedurdhgohhoghhlvg drtghomhdpmhgrihhlfhhrohhmpeeorhhmihhnnhhitghhsehgmhgrihhlrdgtohhmqedp nhgspghrtghpthhtohepuddprhgtphhtthhopeeolehfrghnsheslehfrghnshdrnhgvth eq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (gmail.com ... _spf.google.com: Sender is authorized to use 'rminnich@gmail.com' in 'mfrom' identity (mechanism 'include:_netblocks.google.com' matched)) receiver=authmilter.topicbox.com; identity=mailfrom; envelope-from="rminnich@gmail.com"; helo=mail-lf1-f51.google.com; client-ip=209.85.167.51 Received: from mail-lf1-f51.google.com (mail-lf1-f51.google.com [209.85.167.51]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sat, 3 Jan 2026 13:25:05 -0500 (EST) Received: by mail-lf1-f51.google.com with SMTP id 2adb3069b0e04-5957c929a5eso18558924e87.1 for <9fans@9fans.net>; Sat, 03 Jan 2026 10:25:05 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767464703; x=1768069503; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Psn2wC4ujkdQMBRCWgmvHscvbiz0fs1F7BbcOZcj/G8=; b=OfDEKn99QC8//h4Yz2eCHnnwP7vTrd+OWkw5KYH9WhGtlR3bartR/T/EVsFsbd7Jhj 9NXEsJXNtdtk6KezQAqfQnc0Tl7HkC4I/KJ94IMUqo5I81yzjfMnzfSKsi0cR4/74wT/ 4+FE0h61nuElLlzTz97EbdfN6U66pc/ye1mePqI4KR8Fyu/r3IQQOsrfx54DMmIZ6+lt VOkaS0kg3M+NY2LOaKOblVQMFC5OWLnedCMrWdA5FkMHxcJDi/Q3hAas4J20J8Mp/Er2 JYNXGC+TOeqVvxFgJQ67P/MOJLt3w3Tbf4EMYoKkeBleFm3JWo6hI2qsnQOQdHMaYLCM 3giA== X-Gm-Message-State: AOJu0YzWmVMnWNxDYBPB2cKCr/99si2KFrlah0+xQDICurGKvJnH07Xr LaXHDJra19nBDAlAcg0wjm0cGtv3LQRQQbf3RtrQJnWxhvZtXbpgrVQlonPb4J3trx5NvwQYJqV WUeEX+TwUiYGezjSOsL7dulf1rGxMWTsdRg== X-Gm-Gg: AY/fxX4HyY5CktCxnLGZp3rlm6Uw0jS1w/5aITto/vIcgMKloifmPv738J72/88OyKs wSrSKake/Mqpma2T+zL0J8BwIrWnR0Wh1bZlwfpyhgbe7l4L7G5nYD8EF/reNkHty/2hyYT4mGZ tPo+J1t/dGOhjdzhFgk+8x6pOWjvTrKyn82os4umPcp+VYnO53InrvEi3j1Fn4vm6H8f1byp6Un W7sskiFsajhXFB5Aw1RGNRJhPxlFbmMjcLDhWAvUPde/kgZDiy2Co+St7HUfs7391IDKdnysJdc pMBg10s= X-Google-Smtp-Source: AGHT+IEX9DTyr2MOrWjDZYY0zewOXoYi0o3I6Q/ASocua0b8cJBHYRDE1S4hDkiiJqnM/4HFZSpuRS0qTWhN2nOEjI4= X-Received: by 2002:a05:6512:ad3:b0:596:9bfa:91a4 with SMTP id 2adb3069b0e04-59a17d05979mr12626590e87.2.1767464702927; Sat, 03 Jan 2026 10:25:02 -0800 (PST) MIME-Version: 1.0 References: <3746EE9319D07AD91D8874CFAC7AEC94@eigenstate.org> In-Reply-To: <3746EE9319D07AD91D8874CFAC7AEC94@eigenstate.org> From: ron minnich Date: Sat, 3 Jan 2026 10:24:50 -0800 X-Gm-Features: AQt7F2rx7Vm-8FnEK_qJ3FU_XXbyMdKE24R3inAtjWTfPD0huNFyTMpogrURQ3w Message-ID: Subject: Re: [9fans] go floating point exception To: 9fans <9fans@9fans.net> Content-Type: multipart/alternative; boundary=000000000000c5694906477ff127 Topicbox-Policy-Reasoning: moderate: sender is a member; group holds all messages Topicbox-Message-UUID: 87d03c64-e8d1-11f0-8472-831b10c0285f Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UMjljZmUyN2VmODdlZDlkOC1NNTJmNTFhODgzNDRkY2NlZTYxMmJl?= =?UTF-8?B?Y2IzPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> Content-Transfer-Encoding: 7bit List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:522be890-2105-11eb-b15e-8d699134e1fa:M52f51a88344dccee612becb3:1:gxhwevsVwTAmpf2-Bw5b0uQtnWvqVFDxnrosyfpg6lw --000000000000c5694906477ff127 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Go will print a stack backtrace on Plan 9 (I just tried it) if given half a chance. I wonder if that suicide is sending a note or not, or it's just getting peremptorily killed. On Fri, Jan 2, 2026 at 8:59=E2=80=AFPM wrote: > > Quoth hahahahacker2009@gmail.com: > > > btw, cdid you get a stack trace from the go runtime? or just that one > > > l ine diagnostic? > > > > I only get that line. The program was cross-compiled on arm, with > > Geoff's userland (a bit different from 9legacy's userland), but it > > doesn't matter, right? > > > > Currently I can't lstk() in acid, it says ``no stack frame'' > > I don't think Go generates Plan 9 debug information, so you'd have > to poke around by hand, with an understanding of the ABI. For example, > > asm(0x215443) > > will tell you the faulting instruction, for example. The caller's PC > will be at the top of the stack frame, and I don't recall the register > locations. > > Outside of that, looking at the code for 9legacy, it seems that the > default FPU settings are set up in sys/src/9k/k10/fpu.c:489: > > m->fcw =3D RCn|PCd|P|U|D; > > where the flags have the following meanings: > > enum { /* FCW, FSW and > MXCSR */ > I =3D 0x00000001, /* > Invalid-Operation */ > D =3D 0x00000002, /* > Denormalized-Operand */ > Z =3D 0x00000004, /* Zero-Divide = */ > O =3D 0x00000008, /* Overflow */ > U =3D 0x00000010, /* Underflow */ > P =3D 0x00000020, /* Precision */ > }; > > that said, Go seems to be setting the masks it expencts, in: > > src/runtime/os_plan9.go:215: setfpmasks() > src/runtime/sys_plan9_amd64.s:220: TEXT > runtime=C2=B7setfpmasks(SB),NOSPLIT,$8 > > Which t calls with the comment: > > // Mask all SSE floating-point exceptions > // when running on the 64-bit kernel. > setfpmasks() > > Interestingly, the setfpmasks() function seems to be > a no-op on 32 bit kernels, but that shouldn't be an > issue here. Go seems to be setting this correctly, > though I have only skimmed the docs for the > LDMXCSR/STMXCSR instructions. > > When testing locally (9front), I ran: > > for(i in `{seq 1000}){ { > ./https; echo killed $i} & > sleep 0.1; kill https | rc > } > > and could not reproduce; assuming that this is what > I'd normally need to reproduce your issue, it seems > that Go is likely doing the right thing here? > > > > > > > On Fri, Jan 2, 2026 at 8:19=E2=80=AFAM ron minnich wrote: > > >> > > >> I wonder why that exception is enabled? I wonder what is enabling it? > > >> Does the go runtime turn it on? > > >> > > >> on linux, mxcsr is 0x1f80, all exceptions masked, and in particular, > 0x20 is not set -- no precision exceptions. > > >> > > >> On Fri, Jan 2, 2026 at 6:23=E2=80=AFAM = wrote: > > >>> > > >>> Hello, > > >>> I don't know go, just have it to compile some programs. > > >>> I cross-compiled this http server from arm for amd64: > > >>> https://mkws.sh/https/https.go > > >>> > > >>> Running it on 9legacy/amd64 (under qemu) will raise this error 50% = of > > >>> the time (otherwise it works pretty well): > > >>> gohttp 177: suicide: sys: fp: Precision Exception mxcsr=3D0x20 > pc=3D0x215443 > > >>> > > >>> Plan 9 > > >>> mmuinit: vmstart 0xfffffffff0000000 vmunused 0xfffffffff03cc000 > vmunmapped 0xfffffffff0400000 vmend 0xfffffffffe000000 > > >>> sys->pd 0x108003 0x108023 > > >>> l 3 0xffffff7fbfdfeff8 107023 > > >>> l 2 0xffffff7fbfdffff8 108023 > > >>> l 1 0xffffff7fbffffc00 e3 > > >>> l 1 0xffffff7fbffffc00 e3 > > >>> base 0xfffffffff03d0000 ptr 0xfffffffff03d0000 nunits 14430208 > > >>> physalloc color=3D0 base=3D0xe000000 size=3D0x71fe0000 > > >>> apic0: hz 998949300 max 9989493 min 99894 div 3 > > >>> intrenable: nil handler for 11, tbdf 0xc001800 for ether0 > > >>> #l0: virtio10: 1Gbps port 0xfe000000 irq 11: 525400123456 > > >>> 2044M memory: 2800K+220M kernel, 1822M user, 0M lost > > >>> pickmethod...read #e/nobootprompt...pickmethod done > > >>> bind #=C3=A6...bind #S...partinit...part plan9 63 67103505 > > >>> p9part /dev/sdC0/data plan9 > > >>> part 9fat 63 204863 > > >>> part nvram 204863 204864 > > >>> part fossil 204864 10573102 > > >>> part arenas 10573102 62414293 > > >>> part isect 62414293 65006353 > > >>> part bloom 65006353 65530641 > > >>> auth...mount usbd...can't open /srv/usbtime... > > >>> venti...2026/0102 11:36:29 venti: conf.../boot/venti: mem 2,236,962 > bcmem 4,473,924 icmem 6,710,886...httpd tcp!127.1!8000...init...icache > 6,710,886 bytes =3D 66,728 entries; 4 scache > > >>> sync...announce tcp!127.1!17034...serving. > > >>> fossil(#S/sdC0/fossil)...fsys: dialing venti at tcp!127.1!17034 > > >>> version...can't stat /srv/partfs.sdXX: '/srv/partfs.sdXX' file does > not exist > > >>> > > >>> init: starting /bin/rc > > >>> secstore > > >>> mkvbe: '/dev/realmode' file does not exist > > >>> aux/vga: controller not in /lib/vgadb, not vesa > > >>> 0xC0000 55 AA 4D E9 90 55 CC 00 00 00 00 00 00 00 00 00 > U.M..U.......... > > >>> 0xC0010 00 00 00 00 00 00 00 00 5C 98 00 00 00 00 49 42 > ........\.....IB > > >>> 0xC0020 4D 00 2E 8B 16 E8 98 85 D2 74 01 EE C2 02 00 84 > M........t...... > > >>> 0xC0030 C0 74 34 66 55 66 89 E5 66 53 66 89 C3 66 B8 00 > .t4fUf..fSf..f.. > > >>> 0xC0040 40 00 00 FE CB 74 37 66 0F B7 D2 66 0F B7 C9 66 > @....t7f...f...f > > >>> 0xC0050 0F AF D1 66 C1 FA 03 66 89 D0 9C 66 05 FF 1F 00 > ...f...f...f.... > > >>> 0xC0060 00 9D 25 00 E0 EB 17 0F AF CA 66 89 C8 9C 66 D1 > ..%.......f...f. > > >>> 0xC0070 E0 66 05 FF 07 00 00 9D 25 00 F8 C2 02 00 66 5B > .f......%.....f[ > > >>> 0xC0080 66 5D C2 02 00 66 55 66 89 E5 66 56 66 53 66 89 > f]...fUf..fVfSf. > > >>> 0xC0090 C6 66 89 D3 66 89 CA 67 66 8B 4D 08 67 8A 45 0C > .f..f..gf.M.g.E. > > >>> 0xC00A0 66 C1 E6 10 66 0F B7 DB 66 09 F3 66 31 F6 8E C6 > f...f...f..f1... > > >>> 0xC00B0 26 66 89 1E 0C 01 80 F9 01 74 0D 80 F9 03 74 0C > &f.......t....t. > > >>> 0xC00C0 84 C9 74 0A B0 19 EB 06 B0 0E EB 02 B0 2B 66 B9 > ..t..........+f. > > >>> 0xC00D0 40 00 00 00 8E C1 66 48 26 A2 84 00 8E C1 66 0F > @.....fH&.....f. > > >>> 0xC00E0 B6 D2 26 89 16 85 00 66 5B 66 5E 66 5D C2 02 00 > ..&....f[f^f]... > > >>> 0xC00F0 66 55 66 89 E5 66 57 66 56 66 53 66 53 66 89 C3 > fUf..fWfVfSfSf.. > > >>> aux/vga: main: vga@1024x768x1 not in /lib/vgadb > > >>> rio: can't open display: initdisplay: /dev/draw/new: no frame buffer > > >>> init: rc exit status: rio 41: display open > > >>> > > >>> init: starting /bin/rc > > >>> term% > > >>> > > >> > > >> 9fans / 9fans / see discussions + participants + delivery options > Permalink ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T29cfe27ef87ed9d8-M52f51= a88344dccee612becb3 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription --000000000000c5694906477ff127 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Go will print a stack backtrace on Plan 9 (I j= ust tried it) if given half a chance.

I wonder if that= suicide is sending a note or not, or it's just getting peremptorily ki= lled.


On Fri, Jan 2, 2026 at = 8:59 PM <ori@eigenstate.org= > wrote:

Quoth hahah= ahacker2009@gmail.com:
> > btw, cdid you get a stack trace from the go runtime? or just that= one
> > l ine diagnostic?
>
> I only get that line.  The program was cross-compiled on arm, wit= h
> Geoff's userland (a bit different from 9legacy's userland), bu= t it
> doesn't matter, right?
>
> Currently I can't lstk() in acid, it says ``no stack frame'= 9;

I don't think Go generates Plan 9 debug information, so you'd have<= br /> to poke around by hand, with an understanding of the ABI. For example,

        asm(0x215443)

will tell you the faulting instruction, for example. The caller's PC will be at the top of the stack frame, and I don't recall the register<= br /> locations.

Outside of that, looking at the code for 9legacy, it seems that the
default FPU settings are set up in sys/src/9k/k10/fpu.c:489:

        m->fcw =3D RCn|PCd|P|U|D;

where the flags have the following meanings:

        enum {           =                     &nbs= p;         /* FCW, FSW and MXCSR */
                I    &nbs= p;          =3D 0x00000001,      &n= bsp;    /* Invalid-Operation */
                D    &nbs= p;          =3D 0x00000002,      &n= bsp;    /* Denormalized-Operand */
                Z    &nbs= p;          =3D 0x00000004,      &n= bsp;    /* Zero-Divide */
                O    &nbs= p;          =3D 0x00000008,      &n= bsp;    /* Overflow */
                U    &nbs= p;          =3D 0x00000010,      &n= bsp;    /* Underflow */
                P    &nbs= p;          =3D 0x00000020,      &n= bsp;    /* Precision */
        };

that said, Go seems to be setting the masks it expencts, in:

        src/runtime/os_plan9.go:215:    setfp= masks()
        src/runtime/sys_plan9_amd64.s:220: TEXT runtime= ·setfpmasks(SB),NOSPLIT,$8

Which t calls with the comment:

        // Mask all SSE floating-point exceptions
        // when running on the 64-bit kernel.
        setfpmasks()

Interestingly, the setfpmasks() function seems to be
a no-op on 32 bit kernels, but that shouldn't be an
issue here. Go seems to be setting this correctly,
though I have only skimmed the docs for the
LDMXCSR/STMXCSR instructions.

When testing locally (9front), I ran:

        for(i in `{seq 1000}){ {
                ./https; echo kille= d $i} &
                sleep 0.1; kill htt= ps | rc
        }

and could not reproduce; assuming that this is what
I'd normally need to reproduce your issue, it seems
that Go is likely doing the right thing here?

> >
> > On Fri, Jan 2, 2026 at 8:19 AM ron minnich <rminnich@gmail.com> wro= te:
> >>
> >> I wonder why that exception is enabled? I wonder what is enab= ling it?
> >> Does the go runtime turn it on?
> >>
> >> on linux, mxcsr is 0x1f80, all exceptions masked, and in part= icular, 0x20 is not set -- no precision exceptions.
> >>
> >> On Fri, Jan 2, 2026 at 6:23 AM <hahahahacker2009@gmail.com= > wrote:
> >>>
> >>> Hello,
> >>> I don't know go, just have it to compile some program= s.
> >>> I cross-compiled this http server from arm for amd64:
> >>> https://mkws.sh/https/https.go
> >>>
> >>> Running it on 9legacy/amd64 (under qemu) will raise this = error 50% of
> >>> the time (otherwise it works pretty well):
> >>> gohttp 177: suicide: sys: fp: Precision Exception mxcsr= =3D0x20 pc=3D0x215443
> >>>
> >>> Plan 9
> >>> mmuinit: vmstart 0xfffffffff0000000 vmunused 0xfffffffff0= 3cc000 vmunmapped 0xfffffffff0400000 vmend 0xfffffffffe000000
> >>> sys->pd 0x108003 0x108023
> >>> l 3 0xffffff7fbfdfeff8 107023
> >>> l 2 0xffffff7fbfdffff8 108023
> >>> l 1 0xffffff7fbffffc00 e3
> >>> l 1 0xffffff7fbffffc00 e3
> >>> base 0xfffffffff03d0000 ptr 0xfffffffff03d0000 nunits 144= 30208
> >>> physalloc color=3D0 base=3D0xe000000 size=3D0x71fe0000 > >>> apic0: hz 998949300 max 9989493 min 99894 div 3
> >>> intrenable: nil handler for 11, tbdf 0xc001800 for ether0=
> >>> #l0: virtio10: 1Gbps port 0xfe000000 irq 11: 525400123456=
> >>> 2044M memory: 2800K+220M kernel, 1822M user, 0M lost
> >>> pickmethod...read #e/nobootprompt...pickmethod done
> >>> bind #æ...bind #S...partinit...part plan9 63 671035= 05
> >>> p9part /dev/sdC0/data plan9
> >>> part 9fat 63 204863
> >>> part nvram 204863 204864
> >>> part fossil 204864 10573102
> >>> part arenas 10573102 62414293
> >>> part isect 62414293 65006353
> >>> part bloom 65006353 65530641
> >>> auth...mount usbd...can't open /srv/usbtime...
> >>> venti...2026/0102 11:36:29 venti: conf.../boot/venti: mem= 2,236,962 bcmem 4,473,924 icmem 6,710,886...httpd tcp!127.1!8000...init...= icache 6,710,886 bytes =3D 66,728 entries; 4 scache
> >>> sync...announce tcp!127.1!17034...serving.
> >>> fossil(#S/sdC0/fossil)...fsys: dialing venti at tcp!127.1= !17034
> >>> version...can't stat /srv/partfs.sdXX: '/srv/part= fs.sdXX' file does not exist
> >>>
> >>> init: starting /bin/rc
> >>> secstore
> >>> mkvbe: '/dev/realmode' file does not exist
> >>> aux/vga: controller not in /lib/vgadb, not vesa
> >>> 0xC0000 55 AA 4D E9 90 55 CC 00 00 00 00 00 00 00 00 00&n= bsp; U.M..U..........
> >>> 0xC0010 00 00 00 00 00 00 00 00 5C 98 00 00 00 00 49 42&n= bsp; ........\.....IB
> >>> 0xC0020 4D 00 2E 8B 16 E8 98 85 D2 74 01 EE C2 02 00 84&n= bsp; M........t......
> >>> 0xC0030 C0 74 34 66 55 66 89 E5 66 53 66 89 C3 66 B8 00&n= bsp; .t4fUf..fSf..f..
> >>> 0xC0040 40 00 00 FE CB 74 37 66 0F B7 D2 66 0F B7 C9 66&n= bsp; @....t7f...f...f
> >>> 0xC0050 0F AF D1 66 C1 FA 03 66 89 D0 9C 66 05 FF 1F 00&n= bsp; ...f...f...f....
> >>> 0xC0060 00 9D 25 00 E0 EB 17 0F AF CA 66 89 C8 9C 66 D1&n= bsp; ..%.......f...f.
> >>> 0xC0070 E0 66 05 FF 07 00 00 9D 25 00 F8 C2 02 00 66 5B&n= bsp; .f......%.....f[
> >>> 0xC0080 66 5D C2 02 00 66 55 66 89 E5 66 56 66 53 66 89&n= bsp; f]...fUf..fVfSf.
> >>> 0xC0090 C6 66 89 D3 66 89 CA 67 66 8B 4D 08 67 8A 45 0C&n= bsp; .f..f..gf.M.g.E.
> >>> 0xC00A0 66 C1 E6 10 66 0F B7 DB 66 09 F3 66 31 F6 8E C6&n= bsp; f...f...f..f1...
> >>> 0xC00B0 26 66 89 1E 0C 01 80 F9 01 74 0D 80 F9 03 74 0C&n= bsp; &f.......t....t.
> >>> 0xC00C0 84 C9 74 0A B0 19 EB 06 B0 0E EB 02 B0 2B 66 B9&n= bsp; ..t..........+f.
> >>> 0xC00D0 40 00 00 00 8E C1 66 48 26 A2 84 00 8E C1 66 0F&n= bsp; @.....fH&.....f.
> >>> 0xC00E0 B6 D2 26 89 16 85 00 66 5B 66 5E 66 5D C2 02 00&n= bsp; ..&....f[f^f]...
> >>> 0xC00F0 66 55 66 89 E5 66 57 66 56 66 53 66 53 66 89 C3&n= bsp; fUf..fWfVfSfSf..
> >>> aux/vga: main: vga@1024x768x1 not in /lib/vgadb
> >>> rio: can't open display: initdisplay: /dev/draw/new: = no frame buffer
> >>> init: rc exit status: rio 41: display open
> >>>
> >>> init: starting /bin/rc
> >>> term%
> >>>
> >>
> >> 9fans / 9fans / see discussions + participants + delivery opt= ions Permalink

------------------------------------------
9fans: 9fans
Permalink: https:= //9fans.topicbox.com/groups/9fans/T29cfe27ef87ed9d8-M891079359df82b1ebbb86e= 21
Delivery options: https://9fans.topicbox.com/gro= ups/9fans/subscription
= --000000000000c5694906477ff127--