From bounce.mM15ec62c316baf8b49043cae2.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Fri Aug 20 11:03:06 2021 Return-Path: Received: from tb-ob0.topicbox.com (tb-ob0.topicbox.com [64.147.108.117]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17KB35Yc013192 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Fri, 20 Aug 2021 11:03:06 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob0.topicbox.com (Postfix) with ESMTP id EFB3B395E1 for ; Fri, 20 Aug 2021 06:57:26 -0400 (EDT) (envelope-from bounce.mM15ec62c316baf8b49043cae2.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id E9CF6325CCB1; Fri, 20 Aug 2021 06:57:26 -0400 (EDT) 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=M4rYzzkS header.a=rsa-sha256 header.s=20161025 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=ole.hjalmar.kristensen@gmail.com smtp.helo=mail-lj1-f175.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body 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=1629457046; bh=Nn8Z8DW/E2uSb/HR WlnTeVgJM1TeLE7YUkBioKmkubU=; b=WxGVicr8+PIgSWrtza1cjq0S6y9iJTZ/ s/72anBfUSbogXaS1VN9lK6LoabmaobTf+01u8FSAhBGTFeYc7PJaXMgbAzl8OID 7fnm6ODw3yxi4/26IZoXDdccKrPLh9P5wtoCyey2OIwitzlScmloIP6HIlUZ3CUe YpjmVaHKbS0= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629457046; b=ka1u/R7oEFdRijzDGESrYU9UXvh+LnQgQe4Dw055Vk/S66eSo3 z8eBvp9INAxQcSBat0qjsosom7EDKu41bI+sZHjw26Etbb4JHnA0epcPAYLpUZKs hDBMaa2p/jfenDTXenUNMjUF1hs29tdi6rzVg04D1+A7IpyMEc99C/frY= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=M4rYzzkS header.a=rsa-sha256 header.s=20161025 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=ole.hjalmar.kristensen@gmail.com smtp.helo=mail-lj1-f175.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) X-Received-Authentication-Results: tb-mx1.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=M4rYzzkS header.a=rsa-sha256 header.s=20161025 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.208.175 (mail-lj1-f175.google.com); spf=pass smtp.mailfrom=ole.hjalmar.kristensen@gmail.com smtp.helo=mail-lj1-f175.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=dVg8yaDB; x-me-sender=none; x-ptr=pass smtp.helo=mail-lj1-f175.google.com policy.ptr=mail-lj1-f175.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt4.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,alt2.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; 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; bh=oq75yTzxXLYxTS9jnOvgtl2yCPTp6OFB1B+B426yAG8=; b=qhSoXlxOCNZV 9PHHsi3tAadmFQqy8WEesYQfmJV4Pwhs8lWlA6kXaf5DJU5LTSSEwSDb5sXrYfCo hbrx6odQakEWVDC7bc+RFDKK8KWc7VTBYNyrCdM6CD80b1cjvUTHK+MqeBcDFfQD iWueRQLlEfRhnwphMEAwnlNyI8Yjhhc= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id 40FAB325C08D for <9fans@9fans.net>; Fri, 20 Aug 2021 06:56:02 -0400 (EDT) (envelope-from ole.hjalmar.kristensen@gmail.com) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id F5EE69BB06E; Fri, 20 Aug 2021 06:56:02 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629456962; b=pcsw/nKM/wBDw8VOHcIgyeZLcq4vykIN7ivcjMFwhlnfugPbsd 3fzp9fEAgWw/RGgCD/CtwwJix+18GPwZEEA1BH7mJYPAqWh/yM1mgG5Cm8iwXK7D QDC+mT/OzuTOLQIUdUlBP+Q032TTIqPOue04S2+xirp4l/Qp32HRqysc2ElmHd/z f37ZBVcnUM5bwUETXqQumfs8q10aBWoFjPiQWOvbGq9FVtJ6hQef4jsll3yXpBB8 cyOui+LxVIthZnmLPvubZNsOlF+eyv8m3HbkaFLhHLnSZ0u8VYssspHZo4rMYORk b3XVRV5FTXLZDHWwAOUcn2EqjENzeH16MtOQ== 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=1629456962; bh=UFpAMArD+xHIlWac51ux6aW+wYfo+7ce0hmx6N9izN4=; b=HHAouqLHC3ch vjXK+m7oiw74iffWsW71i16xtVlEvaD4Y/V3nDK0ye0z9GaMYoDQon/8Ky0kaMm7 Y1f3acoJfJVFZNTLdb9Noz+tdmLvdeTwtBLCf+Dl7797OFrwdwmLgOFDjlkSY8YQ SlZQSUBKbhBE+V9CdxSW9yTX2GZ86XF2dxns/1PrDxERqnMhi/eVl9B/uRwKxmQd iHQeBxnBdtpmtAJqVAeQutTaPHoUW3g75svf0re9JFVdnZIRJVC/suFMM/4W+64d 9QkJoVQ2ymg5m42beD90LFp2ckYm/F7qJKmv2FTHc5g0G034jjgPvzomrzOTCFx6 B7J7rxZhrg== ARC-Authentication-Results: i=1; tb-mx1.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=M4rYzzkS header.a=rsa-sha256 header.s=20161025 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.208.175 (mail-lj1-f175.google.com); spf=pass smtp.mailfrom=ole.hjalmar.kristensen@gmail.com smtp.helo=mail-lj1-f175.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=dVg8yaDB; x-me-sender=none; x-ptr=pass smtp.helo=mail-lj1-f175.google.com policy.ptr=mail-lj1-f175.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt4.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,alt2.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddrleelgddvheculddtuddrgeduledrtddtmd cutefuodetggdotefrodftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggftfghn shhusghstghrihgsvgdpuffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftddtne cunecujfgurhepgghfjgfhfffkuffvtgesrgdtreertddtjeenucfhrhhomhepqfhlvgdq jfhjrghlmhgrrhcumfhrihhsthgvnhhsvghnuceoohhlvgdrhhhjrghlmhgrrhdrkhhrih hsthgvnhhsvghnsehgmhgrihhlrdgtohhmqeenucggtffrrghtthgvrhhnpedvheeguedv ffeggfektdekheegudefueetteegfeegfffgudejhfeltdetveejfeenucffohhmrghinh eplhgrnhhgshgvrhhvvghrrdhorhhgpdhkrhhishhtvghnshgvnhdqrghtqdhgmhgrihhl rdgtohhmpdgsvghnghhhrghntghotghkrdgtohhmpdhtohhpihgtsghogidrtghomhenuc fkphepvddtledrkeehrddvtdekrddujeehnecuvehluhhsthgvrhfuihiivgeptdenucfr rghrrghmpehinhgvthepvddtledrkeehrddvtdekrddujeehpdhhvghlohepmhgrihhlqd hljhduqdhfudejhedrghhoohhglhgvrdgtohhmpdhmrghilhhfrhhomhepoeholhgvrdhh jhgrlhhmrghrrdhkrhhishhtvghnshgvnhesghhmrghilhdrtghomheq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (gmail.com ... _spf.google.com: Sender is authorized to use 'ole.hjalmar.kristensen@gmail.com' in 'mfrom' identity (mechanism 'include:_netblocks.google.com' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="ole.hjalmar.kristensen@gmail.com"; helo=mail-lj1-f175.google.com; client-ip=209.85.208.175 Received: from mail-lj1-f175.google.com (mail-lj1-f175.google.com [209.85.208.175]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Fri, 20 Aug 2021 06:56:01 -0400 (EDT) (envelope-from ole.hjalmar.kristensen@gmail.com) Received: by mail-lj1-f175.google.com with SMTP id f2so16663628ljn.1 for <9fans@9fans.net>; Fri, 20 Aug 2021 03:56:01 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=UFpAMArD+xHIlWac51ux6aW+wYfo+7ce0hmx6N9izN4=; b=dVg8yaDBcX9NBDoW3bEGrsNr1k1BtIteRu+x+3CxtdakdUct96KTGyNm/dyNMyXXkK oU+ncMXRIv/cfkCHyn3iNL2EiD5ddmQXCjCPLfSPIbfe7j3VXsuuCwK0+JdBJ+pPehEm 9uGymag4AItJccjMGsB/ddGNX3WGPs8nL6WAUANfghUBIF22mH6tBGa1aTEtnj4k9Yov lo3gkJXGBHFptxzc13RGAvulIqnWfJErGL4cvz72Ut8hIQdyxgDr1j7J6/HNX83HPPNo IC/r6BUkwd3fQOk5xw75JBBJC1+ZGoYwWgB9oHU3U3RKH90eBeZ6dnkpxYlL0hcnQpKX YV2A== X-Gm-Message-State: AOAM533llTxOTWg5IDPSnsIfpTMSCSxjRPsj3mGJhk+HfY+qz1hHjAVu f+m9DBTc8Ui+V3LCLIYB7AQWAxVTEnvbhU6kPelrjKvRZQE= X-Google-Smtp-Source: ABdhPJxgo6UC4/a+d4WqPOhYIwg3XPB2Gus98LJKHV/ly3OGDp+ktlASk/9s++e9MMzNuGnwpG8HP8I46XmwSdMZ80Y= X-Received: by 2002:a2e:95c1:: with SMTP id y1mr15480816ljh.71.1629456960023; Fri, 20 Aug 2021 03:56:00 -0700 (PDT) MIME-Version: 1.0 References: <848-1629345074-357948@sneakemail.com> In-Reply-To: <848-1629345074-357948@sneakemail.com> From: Ole-Hjalmar Kristensen Date: Fri, 20 Aug 2021 12:55:49 +0200 Message-ID: Subject: Re: [9fans] Codebase navigation and using tags files in acme To: 9fans <9fans@9fans.net> Content-Type: multipart/alternative; boundary="00000000000047713a05c9fb83ae" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 38ffccf2-01a5-11ec-9c31-e1300ed88767 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UZjhjZWFjMTJkZjlkYTY3NC1NMTVlYzYyYzMxNmJhZjhiNDkwNDNj?= =?UTF-8?B?YWUyPg==?= 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:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M15ec62c316baf8b49043cae2:1:cjErWlvaEQ2UNkv6cvnV5txfnmn7n3HbOe-1w-gcmlk --00000000000047713a05c9fb83ae Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable I use clangd. Works very well in general. Using it is simple, you launch clangd via acme-lsp like this: acme-lsp -server '(\.h)|(\.cc)$:/home/ole/bin/clangd_10.0.0/bin/clangd --clang-tidy --background-index --cross-file-rename' -workspaces /home/ole/xcomtest On Thu, Aug 19, 2021 at 5:51 AM <6o205zd02@sneakemail.com> wrote: > I had never heard of acme-lsp and LSP (except as a Microsoft internal > thing) until gabi mentioned it earlier in the thread. I'm interesting in > playing with acme-lsp for C++. Which LSP server do you use for C/C++ (I > see several listed at https://langserver.org/)? > > thanks, > Peter > > On 2021-08-18 02:26, Ole-Hjalmar Kristensen > ole.hjalmar.kristensen-at-gmail.com |9fans| wrote: > > On linux, you can run ctags -x and postprocess the file to append the line > number to the file name instead of having i as a separate field. That way, > you can locate the symbol in the tags file, and right-click on the > file:linenumber. > > Also, on linux, we have acme-lsp, which in principle works with any LSP > server. I have tested it with go and C/C++. > > On Tue, Aug 17, 2021 at 10:22 PM Ben Hancock wrote: > >> Hello 9fans, >>=20 >> I've just recently started using the acme editor and am really enjoying >> it, and trying to get the hang of the "acme way" of doing things. One >> bit of functionality that I'm familiar with from other editors is the >> ability to easily look up a function or symbol definition within a >> codebase. In Emacs and vi, this is done by generating tags files (etags >> or ctags), which those editors can parse and allow you to easily jump to >> a definition of the symbol under the point/cursor. >>=20 >> What's the preferred method or workflow for achieving this in acme? I >> have tried passing a selected symbol to 'g -n' in the window's tag, >> using the Mouse-2 + Mouse-1 chord. That gets me part of the way there >> but isn't effective if the file where the symbol is defined happens to >> be in another directory. I feel like I'm missing something. >>=20 >> Many thanks! >>=20 >> - Ben >>=20 >> -- >> Ben Hancock >> www.benghancock.com > > *9fans * / 9fans / see discussions > + participants > + delivery options > Permalink > > ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tf8ceac12df9da674-M15ec6= 2c316baf8b49043cae2 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription --00000000000047713a05c9fb83ae Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I use clangd. Works very well in general. Usin= g it is simple, you launch clangd via acme-lsp like this: 
acme-ls= p -server '(\.h)|(\.cc)$:/home/ole/bin/clangd_10.0.0/bin/clangd --clang= -tidy --background-index --cross-file-rename' -workspaces /home/ole/xco= mtest

On Thu, Aug 19, 2021 at 5:51 AM <6o205zd02@sneakemail.com> wrote:
I had never heard of acme-lsp and LSP (except as a Microsoft internal thing) until gabi mentioned it earlier in the thread.  I&= #39;m interesting in playing with acme-lsp for C++.  Which LSP server do you use for C/C++ (I see several listed at https://langserver.org/)?

    thanks,
    Peter

On 2021-08-18 02:26, Ole-Hjalm= ar Kristensen ole.hjalmar.kristensen-at-gmail.com |9fans| wrote:
=
On linux, you can run ctag= s -x and postprocess the file to append the line number to the file name instead of having i as a separate field. That way, you can locate the symbol in the tags file, and right-click on the file:linenumber<= /a>.

Also, on linux, we have acme-lsp, which in pr= inciple works with any LSP server. I have tested it with go and C/C++. 

Hello 9fans,

I've just recently started using the acme editor and am really enjoying
it, and trying to get the hang of the "acme way" of doi= ng things. One
bit of functionality that I'm familiar with from other editors is the
ability to easily look up a function or symbol definition within a
codebase. In Emacs and vi, this is done by generating tags files (etags
or ctags), which those editors can parse and allow you to easily jump to
a definition of the symbol under the point/cursor.

What's the preferred method or workflow for achieving this in acme? I
have tried passing a selected symbol to 'g -n' in the win= dow's tag,
using the Mouse-2 + Mouse-1 chord. That gets me part of the way there
but isn't effective if the file where the symbol is defined happens to
be in another directory. I feel like I'm missing something.
Many thanks!

- Ben

--
Ben Hancock
www.benghancock.com

------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Tf8ceac12df9da674-M693d75f3d4f4= ad66ecaa27e0
Delivery options: https://9fans.topicb= ox.com/groups/9fans/subscription
<= br />
= --00000000000047713a05c9fb83ae-- From 9front-bounces@1ess.inri.net Fri Aug 20 12:03:06 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17KC355s021374 for ; Fri, 20 Aug 2021 12:03:05 GMT Received: from mail-ej1-f47.google.com ([209.85.218.47]) by 1ess; Fri Aug 20 07:54:05 -0400 2021 Received: by mail-ej1-f47.google.com with SMTP id bt14so19738763ejb.3 for <9front@9front.org>; Fri, 20 Aug 2021 04:53:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=JL72F6DKB+LbVvM5KmfG298mW/IvH0356iM6d5abpgI=; b=ujXKwKS+q1Vj8ScKS/q2KzvFy2vIZkqqy63GAt8U4hsMZfVQ1OSdekrPuL+yISY27W hn+cmULFMnyGZ/c8f2chdbDHrD2lXy1bJVLefX5ajnChTc1cvrgsmwBLkjjO36uZjVmC alojsTIcVzFTOhh1E7rOcQO2GPkH26ymyJZA3osCuAEL3lrTHgFtB3gX+nG8mZ3GxObV sxp8HP0n0Wlp7AMs4AVWoJiLL4wqfiyPSxY14VPN8t31P/DgnMoKWy5ATCG7MraeKAlT 7rgVXTdGhf61RW0H51rl6/iyfRg1BlktAZj3nO2UnqHAm/h0iMjq5YPZb+jDhkgyTRut jmIQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=JL72F6DKB+LbVvM5KmfG298mW/IvH0356iM6d5abpgI=; b=EE7ulZq6B7dlY0ZROQ/5zOugDHV57QEbSsQYQVik5CBVoY4Oc4F1bv4BOOHDSxcQJh AAX2IqnXxvgGthw3f+qm6mgqE6obg2nlAmGOSdEkd57t0VYAzJbsZye+RODKinXXAWm1 ZHuJ8W/rLQABo9qwgVqSk80q8U+3373dN4jvELBDsUZtKUl2gSlzKSJLJulyPUQtc60B 6LFSYM6TQ7cBkc0xKNQmgzsukwy5OPcKa5BR3OasygMKRw+BxTNBEtbTyqkhfjD6MPab iN1c9ZtyHB07QJieOwaNA22C1OrKbW6Lqo9tNYjjgRWWi+hATJRjAG7vL98lWe/HJaDz 9+dA== X-Gm-Message-State: AOAM533rNqsQAvs7X6C23AY7pjD7uzrmw9R9+RiYD38E+IE4EvMSfSSd q3XyDxC7bCEhS+W81EEVqNCbsjZnWPSlzJpvClDXmJUZso4= X-Google-Smtp-Source: ABdhPJwq6pwWGlTUCu/BqFUInWBt3lSyIdrjF28YIAatvwx+WSZYUZ0//Wjt2c5FgX5aG2MPWPjl+5EXEepFMZhBSzM= X-Received: by 2002:a2e:910f:: with SMTP id m15mr8602007ljg.275.1629458807349; Fri, 20 Aug 2021 04:26:47 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a2e:80c9:0:0:0:0:0 with HTTP; Fri, 20 Aug 2021 04:26:46 -0700 (PDT) In-Reply-To: <18BDAB449FBB20989093FC284E3A89F1@eigenstate.org> References: <18BDAB449FBB20989093FC284E3A89F1@eigenstate.org> From: Stuart Morrow Date: Fri, 20 Aug 2021 11:26:46 +0000 Message-ID: To: 9front@9front.org Content-Type: text/plain; charset="UTF-8" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: social general-purpose-aware markup replication-scale CSS deep-learning frontend Subject: Re: [9front] 9front Programmer's Manual Reply-To: 9front@9front.org Precedence: bulk On 06/08/2021, ori@eigenstate.org wrote: > Updates and fixes to manpages are always > welcome and applied regularly. Improving > and fixing the build system is also good. > > But papers are papers. It seems strange > to modify them. I think for papers, it > makes most sense to add a 'changes since > publication' document. Richard Miller's RISC-V stuff adds to asm.ms, for what it's worth. But then that isn't really a paper. From bounce.mM32237c6cd7f205230d8b175a.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Fri Aug 20 23:18:06 2021 Return-Path: Received: from tb-ob0.topicbox.com (tb-ob0.topicbox.com [64.147.108.117]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17KNI6mO022894 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Fri, 20 Aug 2021 23:18:06 GMT Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob0.topicbox.com (Postfix) with ESMTP id 5E9D519929 for ; Fri, 20 Aug 2021 19:12:35 -0400 (EDT) (envelope-from bounce.mM32237c6cd7f205230d8b175a.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id 5BC2D32E6B3C; Fri, 20 Aug 2021 19:12:35 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=9srv.net; spf=none smtp.mailfrom=a@9srv.net smtp.helo=9srv.net; 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=date:from:to:subject:message-id:in-reply-to :references:mime-version:content-type:content-transfer-encoding :list-help:list-id:list-post:list-subscribe:reply-to :list-unsubscribe; s=sysmsg-1; t=1629501155; bh=ROyER5sde1XJDXLf cLFCKaVw5uD6usDVs2NEG4ZE+qc=; b=TCTW5s6VBUiApAy5Y9vuDF5Y2H9OWXf3 P+E11UXDRytHgf8F9qc8ZbkW0WfPxFIpug7KnOJqBNIpEr+Gi+PX2T7BZvQF82N6 mRK/hi1NmTmemXXGY/F2MRoj5h/aUumHORAAcXBinhq4ApemBew5S58XYKTDujQt TOWutNDYHMg= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629501155; b=b3Nmw2rYNzGb+A/qNAb/PISOnjAAfEdCaPlHS+FQ/Ndve15Ta3 7pY7tq65eJLI+8sX+SHMDu0P30WrYOxHU8kXb0kN/bM5GdAea79mvUhhQv5ZfgAb cGT2zU6hlAp2y0hkHJbBHkwV7+dJw7SFDjBOTyGFcssgJVNwIEY9INieI= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=9srv.net; spf=none smtp.mailfrom=a@9srv.net smtp.helo=9srv.net; 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: tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC did not pass); dkim=none (no signatures found); dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=9srv.net; iprev=pass smtp.remote-ip=144.202.19.161 (hood.9srv.net); spf=none smtp.mailfrom=a@9srv.net smtp.helo=9srv.net; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=fail smtp.helo=9srv.net policy.ptr=hood.9srv.net; x-return-mx=pass header.domain=9srv.net policy.is_org=yes (MX Records found: mail.9srv.net); x-return-mx=pass smtp.domain=9srv.net policy.is_org=yes (MX Records found: mail.9srv.net); x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=date:from :to:subject:message-id:in-reply-to:references:mime-version :content-type:content-transfer-encoding:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=3Kz9GQSbWrSwN2nBteyxmiESIAxiH0+D0pH8nFYpuXU=; b=iaH7Iio0D6Ol HWA22sDnKrHGYUFICCfVtvtnkBM9FSYH+z76ysDzGI/hG/pAudqf8R7OGrP0QNtM 0zc2c7t4bpLnXFJxxIoiP0VH/mWXxqWbjLBVsTjKFfI7+LW+AhZH76AYR4z6rdJX n7Fdt+CjRG2IvD3Z8Jashjw7RiEJxt8= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id 818EF3388694 for <9fans@9fans.net>; Fri, 20 Aug 2021 19:11:17 -0400 (EDT) (envelope-from a@9srv.net) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id 4E39DC62E06; Fri, 20 Aug 2021 19:11:17 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629501077; b=P35PXfMNSz5tZ31ZunlnSjV3Lx4umZadrHxjvHybhXbRBjj34E Ey4DgiEVI3Z7sc5y4iLPmbFskKUdyBHx+tcHRs7oJbWaj4628Bi7f77eayheVLV3 k9jImuW1/+5wij3RTTp6uZeOn2HnlYNj+faU2MFKDSQRZpCFVsJwUj9TMzqJOgez IWzHm1klYi/S8wE50dlo9MccpXraa3ZsYWKwfzuuQDwAApRWBr0DR/QaEHP9LGdW 6JA80ZWNQ8pf40HMY7B7OMZptFZFtLtbMJ95pyhKCXRBubniE84gzANxopuo5M+7 +0gPuovK1zXZy5G0RQt05qk+WAZlhd+M78rg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=date:from:to:subject:message-id:in-reply-to :references:mime-version:content-type:content-transfer-encoding; s=arcseal; t=1629501077; bh=kKMtzDMORALPNPibe/ENBw0hKBauMcN3KoN EsvzTa7g=; b=sZMrHn6clsaUaL6+4e/Z2I72ZVA/lrA5Oidhb9zNqehE1dPE+yq f8STVqvjgtCO9L0dw+omQTDpCNAL4Zlq+NLI6sSrlW54yhHDH3JTVxtuor0NTFNU yEFgoryB1TugvPX30JJWLCjp5BYHnpVSXZpUqVtfoNuKTB9JkDUjkOcqg/PoLOld Ax3CoNuSqxbDKTcon1AMUvCMPoRFKmH2LoFQWZIer7OF1GCACydHl0ZL28bg35B/ ug1PrMJjwaqk4vDJJF5PXUuYvgrH7K6Wz4P5Ko58AUVDfR+CxKfyiKG2gnEk4+J+ 6LjsV9e15UP+8pB98L26gBGZ/6Wo0NrO6yQ== ARC-Authentication-Results: i=1; tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC did not pass); dkim=none (no signatures found); dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=9srv.net; iprev=pass smtp.remote-ip=144.202.19.161 (hood.9srv.net); spf=none smtp.mailfrom=a@9srv.net smtp.helo=9srv.net; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=fail smtp.helo=9srv.net policy.ptr=hood.9srv.net; x-return-mx=pass header.domain=9srv.net policy.is_org=yes (MX Records found: mail.9srv.net); x-return-mx=pass smtp.domain=9srv.net policy.is_org=yes (MX Records found: mail.9srv.net); x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddrleelgddvheculddtuddrgeduledrtddtmd cutefuodetggdotefrodftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggftfghn shhusghstghrihgsvgdpuffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftddtne cunecujfgurhepfffhvffukfgjfhggtgfgsehtjehjtddttddvnecuhfhrohhmpegrseel shhrvhdrnhgvthenucggtffrrghtthgvrhhnpeeuveethfefheeklefgheefgeetkedvtd ffkedvieeutedtleehuefghedthfduueenucffohhmrghinheplehprdhiohenucfkphep udeggedrvddtvddrudelrdduiedunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrg hmpehinhgvthepudeggedrvddtvddrudelrdduiedupdhhvghloheplehsrhhvrdhnvght pdhmrghilhhfrhhomhepoegrseelshhrvhdrnhgvtheq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: none (9srv.net: No applicable sender policy available) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="a@9srv.net"; helo=9srv.net; client-ip=144.202.19.161 Received: from 9srv.net (hood.9srv.net [144.202.19.161]) by tb-mx1.topicbox.com (Postfix) with ESMTP for <9fans@9fans.net>; Fri, 20 Aug 2021 19:11:15 -0400 (EDT) (envelope-from a@9srv.net) Date: Fri, 20 Aug 2021 16:08:40 -0700 From: a@9srv.net To: 9fans@9fans.net Subject: Re: [9fans] Codebase navigation and using tags files in acme Message-ID: <917939d480bd66878d0cb20ac175db16@9srv.net> In-Reply-To: References: <848-1629345074-357948@sneakemail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: ef11f1f8-020b-11ec-8ed8-a1e18c38a260 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UZjhjZWFjMTJkZjlkYTY3NC1NMzIyMzdjNmNkN2YyMDUyMzBkOGIx?= =?UTF-8?B?NzVhPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M32237c6cd7f205230d8b175a:1:U7cV4XQrM20DQt9bPh4TilVjw2njOtLZLo9clSkSdec Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17KNI6mO022894 I did port Exuberant ctags several years ago when I was dealing with a large body of unfamiliar code for a project. Mine is here: http://9p.io/sources/contrib/anothy/src/ctags/ It is a pretty straight-forward port, just adding an output type suitable for acme (file:n). About a year ago (I think?) someone told me that they did an updated port, but I can't find the reference quickly. Personally, I find ctags (and similar tools) useful only in extreme circumstances, and otherwise rely only on acme's built-in matching and a few scripts similar to what's been posted here. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tf8ceac12df9da674-M32237c6cd7f205230d8b175a Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From bounce.mM5630d14b408680d32b257869.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Fri Aug 20 23:38:27 2021 Return-Path: Received: from tb-ob20.topicbox.com (tb-ob20.topicbox.com [173.228.157.66]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17KNcRZ7012402 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Fri, 20 Aug 2021 23:38:27 GMT Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob20.topicbox.com (Postfix) with ESMTP id E95CA39CB7 for ; Fri, 20 Aug 2021 19:32:51 -0400 (EDT) (envelope-from bounce.mM5630d14b408680d32b257869.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id CF85132E7A5A; Fri, 20 Aug 2021 19:32:51 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=quintile.net header.i=@quintile.net header.b=phqBt0cr header.a=rsa-sha256 header.s=mythic-beasts-k1 x-bits=2048; dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=quintile.net; spf=pass smtp.mailfrom=steve@quintile.net smtp.helo=haggis.mythic-beasts.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=content-type:content-transfer-encoding:from :mime-version:subject:date:message-id:references:in-reply-to:to :list-help:list-id:list-post:list-subscribe:reply-to :list-unsubscribe; s=sysmsg-1; t=1629502371; bh=cWeK90+SZEiSjRLT mIksuM6z5QwgxNrLyO9Ysi7xegs=; b=Z06I7WrGCa5/rpgcBAVgg7IxclUy4oph QEMiUSteqxMHUj4ACYZOYHpUDu8v1HtNsus2YX7bAZKrrq63O37N2olSi17H4Wci C0a5oO3Dvqk59krI6BndeZrrKOuZLwdnQRwtdEMaiRSvpBeHzydVOTl7m65+wUbo myWE/wuel/A= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629502371; b=rgyytbtDAe5Z6xWwIeQlspiCJZ9YJMEPkHs5oEGewhZEaqoWKa zvUus3oPOC06SEgy1NdDKaH9slNAEJ4OUPdxeWEMiJ8CCIemCX7G2kVzz5jL6Vd6 HIbU9ZWW/Eu3otTQEQJxWJUPfijPuPvTpuADk2RGLU7kzgXxtvsRdrvsc= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=quintile.net header.i=@quintile.net header.b=phqBt0cr header.a=rsa-sha256 header.s=mythic-beasts-k1 x-bits=2048; dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=quintile.net; spf=pass smtp.mailfrom=steve@quintile.net smtp.helo=haggis.mythic-beasts.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: tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC did not pass); dkim=pass (2048-bit rsa key sha256) header.d=quintile.net header.i=@quintile.net header.b=phqBt0cr header.a=rsa-sha256 header.s=mythic-beasts-k1 x-bits=2048; dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=quintile.net; iprev=pass smtp.remote-ip=46.235.224.141 (haggis.mythic-beasts.com); spf=pass smtp.mailfrom=steve@quintile.net smtp.helo=haggis.mythic-beasts.com; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=haggis.mythic-beasts.com policy.ptr=haggis.mythic-beasts.com; x-return-mx=pass header.domain=quintile.net policy.is_org=yes (MX Records found: mx.mythic-beasts.com); x-return-mx=pass smtp.domain=quintile.net policy.is_org=yes (MX Records found: mx.mythic-beasts.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h= content-type:content-transfer-encoding:from:mime-version:subject :date:message-id:references:in-reply-to:to:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=cWeK90+SZEiSjRLTmIksuM6z5QwgxNrLyO9Ysi7xegs=; b=dPq+LVPoLBvJ gmN0wApZ03zsesx7nXlMP4hAaya0/gRjx36qpPHYmnEtCmTGRaJDOZx6DZk8vRrN RgLI6FkxEulP8jlMzNy8HCpDQgTkni+uIRGZ8RN/RUmMjroXe4LH+6v0r14mKZjv fgpF89K5NffJEuo23/iOmqRGXSSWVWM= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id E70AD33887BC for <9fans@9fans.net>; Fri, 20 Aug 2021 19:31:38 -0400 (EDT) (envelope-from steve@quintile.net) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id 38209C7EF7F; Fri, 20 Aug 2021 19:31:38 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629502298; b=jsWUDOQN0eoy8nBsLQot+jr8NhCRs8upT82XCDt+pzoEGUbQU0 S1vohI/pUKEBcGOR+9Kf/S1XPtlqqDyySdB8tYD/SxDKrpkmVfsV/j2iM5VNo0hr bO7Blu9Qb+c6rbGdOdFYXBSKsSVxbgP/DS9cLX6Er874zR2P0ylsepJ1i0kqI4qP gUfLjdZsR34l/hFRerQrY9wK7zqdQwQN2ILVw9tHjzph92C03agrBHMYRdnh+XAO gV1pGpqB11BkY8ugYGRzyCz4GIQxplLngttjJhiBcOwA9gNflCCR2sRjAubRZI/d 6JxdbzMXUVgK0/iveKYhQR8NLW7fIoDxEkGw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=content-type:content-transfer-encoding:from :mime-version:subject:date:message-id:references:in-reply-to:to; s=arcseal; t=1629502298; bh=ocLeJtlv9Af3C3DpuY6Py2nS8DMdgzTNuqh aKxsqoOI=; b=as2MstonNVuSH689Ql6OtXvhxUS9NSuRBTZoYyc4FThK6QW81t8 fXCGHy0/GVQosWo8Pe8fTHzdBtgsPzFPvoHWK1IzyPTkgA76vtUEEzWPO+ClHuFZ gTlcZZpc+E0ngdYwb4Jh0xvCB9FvU8R0Rnc3kHSvIrB2RiQOvYnv1vg+fYy72wZx 7g9mBLnQ74eHq9JBWEJVH1SQSsArzQXaNk0PWo0EZInt+4SYhjULrLIqkgXKic2y Cv7WNsDn2jCoT8fUiSVVFmC4/NwCyjjk3OyNetvoR/8+52pm5qNwGpv0tHmL5HLR A7eXUINvUrJNAfhbJYiCcSO99eRWb3EhWqg== ARC-Authentication-Results: i=1; tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC did not pass); dkim=pass (2048-bit rsa key sha256) header.d=quintile.net header.i=@quintile.net header.b=phqBt0cr header.a=rsa-sha256 header.s=mythic-beasts-k1 x-bits=2048; dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=quintile.net; iprev=pass smtp.remote-ip=46.235.224.141 (haggis.mythic-beasts.com); spf=pass smtp.mailfrom=steve@quintile.net smtp.helo=haggis.mythic-beasts.com; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=haggis.mythic-beasts.com policy.ptr=haggis.mythic-beasts.com; x-return-mx=pass header.domain=quintile.net policy.is_org=yes (MX Records found: mx.mythic-beasts.com); x-return-mx=pass smtp.domain=quintile.net policy.is_org=yes (MX Records found: mx.mythic-beasts.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddttddgvdduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgfnhhsuhgsshgtrhhisggvpdfu rfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttdenucenucfjughrpegtgffhgg fufffkfhgjvffosehtqhhmtdhhtddvnecuhfhrohhmpefuthgvvhgvucfuihhmohhnuceo shhtvghvvgesqhhuihhnthhilhgvrdhnvghtqeenucggtffrrghtthgvrhhnpeevleehvd evieffkeeludelhfeuuddvteeludetffetkeejudejvdegjeefhffgteenucffohhmrghi nhepqhhuihhnthhilhgvrdhnvghtnecukfhppeegiedrvdefhedrvddvgedrudeguddpke durddukeejrdduleekrddufedvnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghm pehinhgvthepgeeirddvfeehrddvvdegrddugedupdhhvghlohephhgrghhgihhsrdhmhi hthhhitgdqsggvrghsthhsrdgtohhmpdhmrghilhhfrhhomhepoehsthgvvhgvsehquhhi nhhtihhlvgdrnhgvtheq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (quintile.net: Sender is authorized to use 'steve@quintile.net' in 'mfrom' identity (mechanism 'include:_spf.mythic-beasts.com' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="steve@quintile.net"; helo=haggis.mythic-beasts.com; client-ip=46.235.224.141 Received: from haggis.mythic-beasts.com (haggis.mythic-beasts.com [46.235.224.141]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Fri, 20 Aug 2021 19:31:38 -0400 (EDT) (envelope-from steve@quintile.net) Received: from [81.187.198.132] (port=58041 helo=smtpclient.apple) by haggis.mythic-beasts.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92.3) (envelope-from ) id 1mHDz7-0002hy-0e for 9fans@9fans.net; Sat, 21 Aug 2021 00:31:37 +0100 Content-Type: text/plain; charset="UTF-8" From: Steve Simon Mime-Version: 1.0 (1.0) Subject: Re: [9fans] Codebase navigation and using tags files in acme Date: Sat, 21 Aug 2021 00:31:35 +0100 Message-Id: <97F88CC9-3F60-47F7-96A4-B3C4F8815802@quintile.net> References: <917939d480bd66878d0cb20ac175db16@9srv.net> In-Reply-To: <917939d480bd66878d0cb20ac175db16@9srv.net> To: 9fans <9fans@9fans.net> X-Mailer: iPhone Mail (18G82) X-BlackCat-Spam-Score: 4 X-Spam-Status: No, score=0.4 Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: c6e29b8a-020e-11ec-b85b-ae99e1087ec0 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UZjhjZWFjMTJkZjlkYTY3NC1NNTYzMGQxNGI0MDg2ODBkMzJiMjU3?= =?UTF-8?B?ODY5Pg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M5630d14b408680d32b257869:1:7QArtIvkezp7dJSCQ6WAt4qcVt-FUFK-_cgKqvW2rDg Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17KNcRZ7012402 I wrote a bit of lex to extract features from c code. being lex it is incomplete to say the least but i found it good enough. my code used to run every night passed a list of files to parse, and wrote an idenifier, comment, function, #define etc database (2 text files) which i could grep through. i used it when i worked supporting solaris, it allowed me to find error messages and functions anywhere in the sourcecode quickly. i haven't run it in years but maybe it is of use to someone. http://www.quintile.net/pkg/xid.tbz -Steve ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tf8ceac12df9da674-M5630d14b408680d32b257869 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From 9front-bounces@1ess.inri.net Sat Aug 21 02:02:49 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17L22n6Q018605 for ; Sat, 21 Aug 2021 02:02:49 GMT Received: from mail-il1-f182.google.com ([209.85.166.182]) by 1ess; Fri Aug 20 21:31:12 -0400 2021 Received: by mail-il1-f182.google.com with SMTP id h18so11279833ilc.5 for <9front@9front.org>; Fri, 20 Aug 2021 18:31:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:subject:message-id:in-reply-to:references:organization :mime-version; bh=pmLp1cen8kEQFUuRW5Yfim286jUp8ccOrQIPcfMBKGY=; b=u8MJa3Xjr9VYcHY870ExPZnEjnQFlMfnBGo/oxFYIIH0DULF5OBZk/xH99C1FxFNly y8xgQ+oaEwhpSad/yLs1wGy8nyJjHgFipBg4kyH80dVNcp5R7Xh0qUt6XsJxcXb2DBDG G/nEdaZUDawY8BLa4mtoCMKOLLPZ5iGMmDzQ+7i1RId0NlkdtHZpPvLruLKpcJ7YbAOR JIwwOT8+WkaLLwGZZr2vzQArM05mK3pmZwateSpfeEZZT0nMiFqbcqaVbJJs+dTNRPsC hBv3ltB1gKLmmb4dEIBpnERsEMLDWp2LkQxo44uEf7VHvYsI6kqzmbEVtDgeEgLpHbDQ jqWA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:subject:message-id:in-reply-to :references:organization:mime-version; bh=pmLp1cen8kEQFUuRW5Yfim286jUp8ccOrQIPcfMBKGY=; b=YBTPXA6DVqh/CKUMtecnJCP1HD6v00EwHKBRrWUDhyDyxa7OoNmeQ2GMRZ2QpuEvHd vGZ7zBZF4sDgdtSJSDqff0a3nvkSQele5NloMPlvIXhWyeWny+PfujpNQMP/cJ1P9oKg +4OuJb4hMBVxZXvCpe2Ap9WrvwldhC5E+S6Tq6MBUuejFiHkfcbyk0ZXzAyw1hGvXnqm Wz9kVGMyrE4sgy24RYaFT610NYzK/VjZlstSBbx4Jo/KctUBopiF2mbWnsM99jGwnpFe ogvn9/GOuZ04VM1KknkB4UQevE5pr1mnzGQGYy0GoG+SEV0H9IRNJCvNyMNz9UcJR4kW NAAw== X-Gm-Message-State: AOAM532yzSZpI4DB6SEFvYXtZqzHS4v2AAjBOOzHIBdZkqFDO6eYfUf5 yYSpQNdiFQvjLDJzH1+du3kGOsEXaW0= X-Google-Smtp-Source: ABdhPJymmw+zpd4gczrx1qPBGw4kXFN57NBp8ABb5vaELU3yobpkSp6XVe0zExj5wNTUKfLor1IScw== X-Received: by 2002:a92:d24b:: with SMTP id v11mr15750965ilg.218.1629509463520; Fri, 20 Aug 2021 18:31:03 -0700 (PDT) Received: from spruce.localdomain ([2601:246:4e03:dc20::575f]) by smtp.gmail.com with ESMTPSA id h9sm4316481ilc.30.2021.08.20.18.31.03 for <9front@9front.org> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 20 Aug 2021 18:31:03 -0700 (PDT) Date: Fri, 20 Aug 2021 20:30:54 -0500 From: Amavect To: 9front@9front.org Message-ID: <20210820203054.69d9bed5@spruce.localdomain> In-Reply-To: References: Organization: Amavect Industries X-Mailer: Claws Mail 4.0.0 (GTK+ 3.24.30; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/zevF8AG7C9KGevx8FlFZS4x" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: scale-out extended cloud factory Subject: Re: [9front] Re: seq: fix infinite loop Reply-To: 9front@9front.org Precedence: bulk --MP_/zevF8AG7C9KGevx8FlFZS4x Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline On Mon, 16 Aug 2021 15:24:29 -0700 Anthony Martin wrote: > But really, if you're playing games at the boundaries > of floating point precision, you're bound to lose. I > suggest we either a) do nothing and leave the loop > exactly as it is described in the manual but add a note > in the BUGS section, or b) go back to the v8 method > that calculates the number of steps in the loop before > executing it. Even with the latter method you can see > odd results due to precision limitations but at least > there will be no infinite loops. > > I vote for "a". I vote for 'b', at the toss of a coin. I've spent some time bikeshedding this sickly program, and attached is the sickly result. It does neat things like `seq -w 003` printing out 001, 002, 003. It probably shouldn't do that, though. It also doesn't use exponential notation to print out numbers. This allows seq to not be limited from -999999 to 999999. Even still, the result doesn't feel quite right. Implementing a floating point number parser in seq is weird. Invalid number combinations cause it to crash. The following does not print out 0.3 in either implementation: seq 0.1 0.1 0.3 The only way to correctly print out decimals is by nesting seq: for(i in `{seq 0 9}) for(j in `{seq -w 0 9}) echo $i.$j Therefore, I propose replacing floating point with integers. If we're lucky, seq can count decimals using integers. We can also implement hexadecimal counting. Thanks, Amavect --MP_/zevF8AG7C9KGevx8FlFZS4x Content-Type: text/x-c++src Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=seq.c #include #include #include double first = 1.0; double last = 0.0; double step = 1.0; double nsteps = 0.0; double final = 0.0; int constant; int consigned; char *format; char *zarg; char *sstep; void usage(void) { fprint(2, "usage: %s [-w] [-fformat] [first [step]] last\n", argv0); exits("usage"); } /* * [+-]?(([0-9]+([.][0-9]*)?)|([.][0-9]+))([Ee][+-]?[0-9]+)? */ void getwidths(char *s, int *mh, int *mt) { int h, t, e, m; h = 0; t = 0; m = 0; if(*s == '+' || *s == '-'){ s++; m++; } if(isdigit(*s)){ s++; h++; while(isdigit(*s)){ s++; h++; } if(*s == '.'){ s++; while(isdigit(*s)){ s++; t++; } } }else if(*s == '.'){ s++; if(!isdigit(*s++)) goto out; while(isdigit(*s)){ s++; t++; } }else goto out; if(*s|32 == 'e'){ s++; e = atoi(s); if(e > 307) e = 307; if(e < -30) e = -30; h += e; t -= e; } out: if(h <= 0) h = 1 + m; if(t < 0) t = 0; if(h > *mh) *mh = h; if(t > *mt) *mt = t; return; } int headwidth(double d) { int i; i = 1; if(d < 0.0){ d = -d; i++; } if(d > 1.0) i += log10(d); return i; } void buildfmt(void) { int h, t, z; static char fmt[16]; h = 0; t = 0; /* determine head and tail widths from bounds and increment */ getwidths(zarg, &h, &t); if(sstep) getwidths(sstep, &z, &t); z = headwidth(final); if(z > h) h = z; if(constant){ if(t > 0) h += t + 1; if(first < 0.0 || last < 0.0){ consigned = 1; sprint(fmt, "%%+%d.%df\n", h, t); }else sprint(fmt, "%%%d.%df\n", h, t); }else sprint(fmt, "%%.%df\n", t); format = fmt; } void main(int argc, char *argv[]){ int j, n; char buf[512], ffmt[4096]; double val, i, preval; ARGBEGIN{ case 'w': if(format) sysfatal("-w incompatible with -f"); constant++; break; case 'f': if(constant) sysfatal("-f incompatible with -w"); format = EARGF(usage()); if(format[strlen(format)-1] != '\n'){ sprint(ffmt, "%s\n", format); format = ffmt; } break; default: goto out; }ARGEND out: if(argc<1 || argc>3) usage(); last = atof(argv[argc-1]); if(argc > 1) first = atof(argv[0]); if(argc > 2){ sstep = argv[1]; step = atof(argv[1]); } if(step == 0.0) sysfatal("zero increment"); nsteps = (last - first) / step; final = floor(nsteps) * step + first; zarg = argv[0]; if(!format) buildfmt(); preval = step + first; for(i = 0; i <= nsteps; i++){ val = i * step + first; n = sprint(buf, format, val); if(constant){ for(j = 0; buf[j] == ' '; j++) buf[j] = '0'; if(consigned && j > 0){ buf[0] = buf[j]; buf[j] = '0'; } } write(1, buf, n); preval = val; } exits(0); } --MP_/zevF8AG7C9KGevx8FlFZS4x-- From 9front-bounces@1ess.inri.net Sat Aug 21 09:12:47 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17L9Cjb8027199 for ; Sat, 21 Aug 2021 09:12:46 GMT Received: from pb-smtp21.pobox.com ([173.228.157.53]) by 1ess; Sat Aug 21 00:44:10 -0400 2021 Received: from pb-smtp21.pobox.com (unknown [127.0.0.1]) by pb-smtp21.pobox.com (Postfix) with ESMTP id A4FE2144E08 for <9front@9front.org>; Sat, 21 Aug 2021 00:40:28 -0400 (EDT) (envelope-from unobe@cpan.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=pobox.com; h=message-id :to:subject:date:from:in-reply-to:mime-version:content-type :content-transfer-encoding; s=sasl; bh=suidtoL84qQNLlXzo/Y/U5NPu H+OGpn644pc+ScyudM=; b=vOVwDQS84tGrLCFiI8UrMcLMswgrp5JzORXXGtwOL tRXsA6JZsMTqmj7btMcqov1Anw5+Oi9eg3FYyx+PCJF21377uqv9ga7jZRSNP+O0 OxD39zdh0VFbhC2d+Zcu8MTJIbxJNkNOSFiIsG2wS5G7M8UwGL18aZHSIC5HFTnM RA= Received: from pb-smtp21.sea.icgroup.com (unknown [127.0.0.1]) by pb-smtp21.pobox.com (Postfix) with ESMTP id 92D18144E07 for <9front@9front.org>; Sat, 21 Aug 2021 00:40:28 -0400 (EDT) (envelope-from unobe@cpan.org) Received: from strider (unknown [47.34.135.186]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pb-smtp21.pobox.com (Postfix) with ESMTPSA id D1FB6144E06 for <9front@9front.org>; Sat, 21 Aug 2021 00:40:25 -0400 (EDT) (envelope-from unobe@cpan.org) Message-ID: <16015ED86F00928DCC8FEBFE7D29DF94@smtp.pobox.com> To: 9front@9front.org Date: Fri, 20 Aug 2021 21:40:23 -0700 From: unobe@cpan.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" X-Pobox-Relay-ID: E7550B16-0239-11EC-85F3-FA9E2DDBB1FC-09620299!pb-smtp21.pobox.com List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: leveraged hosting DOM frontend Subject: [9front] Http parsing auth (Was Re: bug in Lynx' SSL certificate validation -> leaks password in clear text via SNI (under some circumstances) ) Reply-To: 9front@9front.org Precedence: bulk Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17L9Cjb8027199 See below, which is a forward of a message I received a couple weeks ago. The best I can tell is that the parser for lynx didn't understand the authn part of the URI. I think libhttpd doesn't have the same problem--it just returns a bad uri, which is better than leaking. I'm looking at /sys/src/libhttpd/parsereq.c:/^parseuri . /sys/src/libhttpd/parse.c parses the mime header, so it's not an issue with requests that are sent with the authorization that way. From httpd(2): BUGS This is a rough implementation and many details are going to change. Webfs(4) looks to handle things properly in parsing ( /sys/src/cmd/webfs/url.c ), but would still generate a URI that libhttpd couldn't handle: /sys/src/cmd/webfs/url.c:^/Ufmt . Questions: if my analysis is correct, should parseuri be made to parse authuser and authpass? Or is libhttpd not used as much and other software is preferred? Quoth Katherine Mcmillan : > FYI > > ________________________________ > From: Lynx-dev on behalf of Ariadne Conill > Sent: 07 August 2021 10:17 > To: oss-security@lists.openwall.com > Cc: Axel Beckert ; lynx-dev@nongnu.org ; security@debian.org ; 991971@bugs.debian.org <991971@bugs.debian.org> > Subject: Re: [Lynx-dev] [oss-security] Re: bug in Lynx' SSL certificate validation -> leaks password in clear text via SNI (under some circumstances) > > Attention : courriel externe | external email > > Hi, > > On Sat, 7 Aug 2021, Thorsten Glaser wrote: > > > Axel Beckert dixit: > > > >> This is more severe than it initially looked like: Due to TLS Server > >> Name Indication (SNI) the hostname as parsed by Lynx (i.e with > >> "user:pass@" included) is sent in _clear_ text over the wire even > > > > I *ALWAYS* SAID SNI IS A SHIT THING ONLY USED AS BAD EXCUSE FOR NAT > > BY PEOPLE WHO ARE TOO STUPID TO CONFIGURE THEIR SERVERS RIGHT AND AS > > BAD EXCUSE FOR LACKING IPv6 SUPPORT, AND THEN THE FUCKING IDIOTS WENT > > AND MADE SNI *MANDATORY* FOR TLSv1.3, AND I FEEL *SO* VINDICATED RIGHT > > NOW! IDIOTS IN CHARGE OF SECURITY, FUCKING IDIOTS… > > It turns out SNI is only marginally related to this issue. The issue > itself is far more severe: HTParse() does not understand the authn part of > the URI at all. And so, when you call: > > HTParse("https://foo:bar@example.com", "", PARSE_HOST) > > It returns: > > foo:bar@example.com > > Which is then handed directly to SSL_set_tlsext_host_name() or > gnutls_server_name_set(). But it will also leak in the Host: header on > unencrypted connections, and also probably SSL ones too. > > As a workaround, I taught HTParse() how to parse the authn part of URIs, > but Lynx itself needs to actually properly support the authn part really. > > I have attached the patch Alpine is using to work around this infoleak. > > Ariadne > From 9front-bounces@1ess.inri.net Sat Aug 21 09:36:10 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17L9a6Uc016592 for ; Sat, 21 Aug 2021 09:36:09 GMT Received: from pb-smtp1.pobox.com ([64.147.108.70]) by 1ess; Sat Aug 21 04:27:57 -0400 2021 Received: from pb-smtp1.pobox.com (unknown [127.0.0.1]) by pb-smtp1.pobox.com (Postfix) with ESMTP id DA257D452F for <9front@9front.org>; Sat, 21 Aug 2021 04:27:49 -0400 (EDT) (envelope-from unobe@cpan.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=pobox.com; h=message-id :to:subject:date:from:in-reply-to:mime-version:content-type :content-transfer-encoding; s=sasl; bh=15Kknq3yFwReKCRg3cMzJSr7v Vk+sSLXblOc/QLKLgs=; b=x4tlhMtt3h9jvMX6+A0d+UEq1u3OWUca9xRpaf3lf H1k2h/AUCiz/XIcMb1o3DZVoWLHcT76VEAsamVvd5KB7701l2ZH07Jh8i/pDN5cR 6uievysXjPHFqlpQ0U7iUp9g+6MJ+zF2y+eY7j3aFgrLarwpvS4rRzFeH+Kx9V8p Jk= Received: from pb-smtp1.nyi.icgroup.com (unknown [127.0.0.1]) by pb-smtp1.pobox.com (Postfix) with ESMTP id BF7E7D452D for <9front@9front.org>; Sat, 21 Aug 2021 04:27:49 -0400 (EDT) (envelope-from unobe@cpan.org) Received: from strider (unknown [47.34.135.186]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pb-smtp1.pobox.com (Postfix) with ESMTPSA id A84AED452C for <9front@9front.org>; Sat, 21 Aug 2021 04:27:47 -0400 (EDT) (envelope-from unobe@cpan.org) Message-ID: To: 9front@9front.org Date: Sat, 21 Aug 2021 01:27:45 -0700 From: unobe@cpan.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" X-Pobox-Relay-ID: AA863E2E-0259-11EC-B3B0-8B3BC6D8090B-09620299!pb-smtp1.pobox.com List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: anonymous anonymous database factory-aware firewall-oriented rails Subject: Re: [9front] [PATCH] mk for only supported archs Reply-To: 9front@9front.org Precedence: bulk Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17L9a6Uc016592 The mtx and ppc (ucu config) kernel now build. I've also added a Readme for the ppc kernel. I gleaned the Readme and some code from the Plan 9 kernel found on github; I assume it was updated after 9front had forked. I made some minor edits to Readme, but otherwise I left the code received as-is (namely, ppc/^(trap.c l.s devce.c) ). I did not see any manual page for devce. As for (emulated) hardware, QEMU emulates the G3 but not the G2. 'mk kernels' now completes without failure. Quoth unobe@cpan.org: > I'm testing that all the "supported" archs build. This is the rc > script I use: > > #!/bin/rc > echo Updating system > sysupdate || exit 'sysupdate failed' > . /sys/lib/rootstub > cd /sys/src > objtypes_default=`{cat mkfile.proto| grep 'CPUS=' | sed -e 's/CPUS=//'} > if (~ $objtypes '') > objtypes=($cputype `{{for (f in $cputype $objtypes_default) echo $f} | sort | uniq -u}) > for (objtype in $objtypes) > for (mk in nuke all install clean) > mk $mk || exit 'mk '^$mk^' failed for '^$objtype > > cd /sys/man > mk || exit '/sys/man failed' > > cd /sys/doc > mk || exit '/sys/doc failed' > > cd /sys/src > mk kernels || exit 'mk kernels failed' > --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree//sys/src/9/mtx/dat.h +++ /sys/src/9/mtx/dat.h @@ -71,6 +71,8 @@ FPinit, FPactive, FPinactive, + + FPillegal= 0x100, }; struct Confmem --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree//sys/src/9/mtx/devarch.c +++ /sys/src/9/mtx/devarch.c @@ -130,7 +130,6 @@ uchar *cp; ushort *sp; ulong *lp; - IOMap *m; Rdwrfn *fn; switch((ulong)c->qid.path){ --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree//sys/src/9/mtx/fns.h +++ /sys/src/9/mtx/fns.h @@ -47,7 +47,6 @@ void ioinit(void); int iprint(char*, ...); int isaconfig(char*, int, ISAConf*); -#define kexit(a) #define kmapinval() void links(void); void mmuinit(void); @@ -88,6 +87,10 @@ void tlbflushall(void); #define userureg(ur) (((ur)->status & MSR_PR) != 0) void watchreset(void); + +/* devarch */ +Dirtab* addarchfile(char*, int, long(*)(Chan*, void*, long, vlong), + long(*)(Chan*, void*, long, vlong)); #define waserror() (up->nerrlab++, setlabel(&up->errlab[up->nerrlab-1])) #define KADDR(a) ((void*)((ulong)(a)|KZERO)) --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree//sys/src/9/mtx/mem.h +++ /sys/src/9/mtx/mem.h @@ -2,6 +2,9 @@ * Memory and machine-specific definitions. Used in C and assembler. */ +#define MIN(a, b) ((a) < (b)? (a): (b)) +#define MAX(a, b) ((a) > (b)? (a): (b)) + /* * Sizes */ @@ -31,7 +34,8 @@ /* * Time */ -#define HZ 100 /* clock frequency */ +#define HZ (100) /* clock frequency */ +#define MS2HZ (1000/HZ) /* millisec per clock tick */ #define TK2SEC(t) ((t)/HZ) /* ticks to seconds */ /* --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree//sys/src/9/mtx/mkfile +++ /sys/src/9/mtx/mkfile @@ -58,8 +58,8 @@ /$objtype/lib/libmemdraw.a\ /$objtype/lib/libdraw.a\ /$objtype/lib/libip.a\ - /$objtype/lib/libc.a\ /$objtype/lib/libsec.a\ + /$objtype/lib/libc.a\ ETHER=`{echo devether.c ether*.c | sed 's/\.c/.'$O'/g'} VGA=`{echo devvga.c screen.c vga*.c | sed 's/\.c/.'$O'/g'} --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree//sys/src/9/mtx/mtx +++ /sys/src/9/mtx/mtx @@ -9,6 +9,7 @@ proc mnt srv + shr dup ssl cap --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree//sys/src/9/mtx/pcimtx.c +++ /sys/src/9/mtx/pcimtx.c @@ -115,7 +115,7 @@ int pcicfgrw8(int tbdf, int rno, int data, int read) { - int o, x; + int o; switch(pcicfgmode){ case 1: --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree//sys/src/9/mtx/raven.c +++ /sys/src/9/mtx/raven.c @@ -3,6 +3,7 @@ */ #include "u.h" #include "../port/lib.h" +#include "../port/pci.h" #include "mem.h" #include "dat.h" #include "fns.h" --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree//sys/src/9/mtx/trap.c +++ /sys/src/9/mtx/trap.c @@ -1,5 +1,6 @@ #include "u.h" #include "../port/lib.h" +#include "../port/pci.h" #include "mem.h" #include "dat.h" #include "fns.h" @@ -632,7 +633,7 @@ up->s = *((Sargs*)(sp+BY2WD)); up->psstate = sysctab[scallnr]; - ret = systab[scallnr](up->s.args); + ret = systab[scallnr]((char *)up->s.args); poperror(); }else{ /* failure: save the error buffer for errstr */ --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree//sys/src/boot/zynq/mkfile +++ /sys/src/boot/zynq/mkfile @@ -7,6 +7,9 @@ all:V: $TARG +install:V: + echo install not supported >[1=2] + clean:V: rm -rf $TARG *.$O @{objtype=$cputype mk -f mkfile.port clean} --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree//sys/src/cmd/mkfile +++ /sys/src/cmd/mkfile @@ -8,8 +8,9 @@ YFLAGS=-d NOTSYS=sml|dup|.+\..+ +NOTPOWER=|dtracy PCONLY=|vmx -NOMK=$NOTSYS`{~ $objtype (386 amd64) || echo $PCONLY} +NOMK=$NOTSYS$NOTPOWER`{~ $objtype (386 amd64) || echo $PCONLY} cpuobjtype=`{sed -n 's/^O=//p' /$cputype/mkfile} DIRS=`{echo */mkfile | sed 's,/mkfile *,\n,g' | grep -v '^('$NOMK')$'} --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree//sys/src/mkfile.proto +++ /sys/src/mkfile.proto @@ -2,8 +2,8 @@ # common mkfile parameters shared by all architectures # -OS=05678qv -CPUS=spim arm arm64 amd64 386 power mips +OS=5678qv +CPUS=arm arm64 amd64 386 power mips CFLAGS=-FTVw LEX=lex YACC=yacc --- /tmp/diff100001999533 +++ sys/src/9/ppc/Readme @@ -1,0 +1,26 @@ +This directory contains source code for two PowerPC ports, + +The kernel made with + mk 'CONF=blast' +is an 8260 kernel. The 8260 (PowerQUICC II, e.g. Apple G2) is an +embedded PowerPC with on-chip DMA, Uart, Ethernet, ATM controllers and +a few other things. + +The 8260-specific code is in m8260.c (no surprises there) and in the +device drivers for SMC uart (uartsmc.c) and FCC ethernet (etherfcc.c). + +The kernel made with + mk 'CONF=ucu' +is a PowerPC 750/755 (e.g., Apple G3) kernel using the saturn chip for +Ether and Uart. + +We run both kernels on Lucent proprietary boards, but the kernels are +pretty generic. On a different board, the ports may be hooked up differently, +the clocks may be running at different speeds, the memory banks may be +configured differently and this will require tweaking the Ethernet setup, +Uart setup, Memory bank setup and several other things as well. + +There is 8260 and Ucu specific code in l.s too (lucu.s and lblast.s). +These differences primarily concern the state of the system at bootup. +In the case of the ucu, virtual memory is already on when the kernel +starts. --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree/sys/src/9/ppc/clock.c +++ sys/src/9/ppc/clock.c @@ -82,6 +82,11 @@ } ulong +µs(void) +{ + return fastticks2us(m->ticks); +} +ulong perfticks(void) { return (ulong)fastticks(nil); --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree/sys/src/9/ppc/dat.h +++ sys/src/9/ppc/dat.h @@ -15,7 +15,7 @@ typedef struct Sys Sys; typedef struct Ureg Ureg; typedef struct Vctl Vctl; -typedef long Tval; +typedef uvlong Tval; #pragma incomplete Ureg #pragma incomplete Imap @@ -37,8 +37,9 @@ ulong sr; ulong pc; Proc *p; - ulong pid; + Mach *m; ushort isilock; + long lockcycles; }; struct Label --- /tmp/diff100001999542 +++ sys/src/9/ppc/devce.c @@ -1,0 +1,191 @@ +// +// channel element driver +// +#include "u.h" +#include "../port/lib.h" +#include "mem.h" +#include "dat.h" +#include "fns.h" +#include "io.h" +#include "../port/error.h" +#include "msaturn.h" + +enum{ + Ucuunknown = 0, + Ucu64, + + Ndsp = 16, + + Cedead = 0, + Cereset, + Celoaded, + Cerunning, + + Qdir = 0, + Qctl, + Qce, + + Cpldbase = Saturn + 0x6000000, + Cplducuversion_ucu = 0x1c, + Cebase = Saturn + 0x3000000, + Cesize = 0x100000, +}; + +typedef struct Cpld Cpld; +struct Cpld{ + uchar led; + uchar fpga1; + uchar slotid; + uchar version; + uchar watchdog; + uchar spi; + uchar asicreset; + uchar dspreset; + uchar generalreset; + uchar ucuversion; + uchar fpga2; +}; + +typedef struct Circbuf Circbuf; +struct Circbuf{ + uchar *nextin; + uchar *nextout; + uchar *start; + uchar *end; +}; + +typedef struct Dsp Dsp; +struct Dsp{ + Ref; + int state; + Circbuf *cb; +}; + +typedef struct Ce Ce; +struct Ce{ + int ucutype; + Ce *ces[Ndsp]; +}; + +static Cpld*cpld = (Cpld*)Cpldbase; +static Ce ce; + +static void +ceinit(void) +{ + if(cpld->ucuversion & Cplducuversion_ucu) + ce.ucutype = Ucu64; + else{ + print("ceinit: unsuppoerted UCU\n"); + return; + } + +} + +static Chan* +ceattach(char*spec) +{ + return devattach('C', spec); +} + +#define DEV(q) ((int)(((q).path >> 8) & 0xff)) +#define TYPE(q) ((int)((q).path & 0xff)) +#define QID(d, t) ((((d) & 0xff) << 8) | (t)) + +static int +cegen(Chan*c, char*, Dirtab*, int, int i, Dir*dp) +{ + Qid qid; + + switch(TYPE(c->qid)){ + case Qdir: + if(i == DEVDOTDOT){ + mkqid(&qid, QID(0, Qdir), 0, QTDIR); + devdir(c, qid, "#C", 0, eve, 0555, dp); + return 1; + } + + if(i == 0){ + mkqid(&qid, QID(-1, Qctl), 0, QTFILE); + devdir(c, qid, "cectl", 0, eve, 0644, dp); + return 1; + } + + if (--i >= Ndsp) + return -1; + + mkqid(&qid, QID(Qce, i), 0, QTFILE); + snprint(up->genbuf, sizeof(up->genbuf), "ce%d", i); + devdir(c, qid, up->genbuf, 0, eve, 0644, dp); + return 1; + + default: + return -1; + } +} + +static Walkqid * +cewalk(Chan*c, Chan*nc, char**name, int nname) +{ + return devwalk(c, nc, name, nname, 0, 0, cegen); +} + +static int +cestat(Chan*c, uchar*db, int n) +{ + return devstat(c, db, n, 0, 0, cegen); +} + +static Chan* +ceopen(Chan*c, int omode) +{ + c->mode = openmode(omode); + c->flag |= COPEN; + c->offset = 0; + return c; +} + +static void +ceclose(Chan*) +{} + +static long +ceread(Chan*c, void*a, long n, vlong) +{ + switch(TYPE(c->qid)){ + case Qdir: + return devdirread(c, a, n, 0, 0, cegen); + + default: + error("unsupported operation"); + } + return 0; +} + +static long +cewrite(Chan*, void*, long, vlong) +{ + return 0; +} + +Dev cedevtab = { + 'C', + "channel element", + + devreset, + ceinit, + devshutdown, + ceattach, + cewalk, + cestat, + ceopen, + devcreate, + ceclose, + ceread, + devbread, + cewrite, + devbwrite, + devremove, + devwstat, + devpower, +}; --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree/sys/src/9/ppc/fns.h +++ sys/src/9/ppc/fns.h @@ -1,7 +1,9 @@ #include "../port/portfns.h" +ulong cankaddr(ulong); void clockinit(void); void clockintr(Ureg*); +int cmpswap(long*, long, long); void cpuidprint(void); void cycles(uvlong*); void dbgputc(int c); --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree/sys/src/9/ppc/l.s +++ sys/src/9/ppc/l.s @@ -346,7 +346,6 @@ RETURN TEXT tas(SB), $0 -TEXT _tas(SB), $0 MOVW R3, R4 MOVW $0xdead, R5 tas1: @@ -360,6 +359,42 @@ EIEIO tas0: SYNC + RETURN + +TEXT _xinc(SB), $0 /* void _xinc(long *); */ + MOVW R3, R4 +xincloop: + DCBF (R4) /* fix for 603x bug */ + LWAR (R4), R3 + ADD $1, R3 + STWCCC R3, (R4) + BNE xincloop + RETURN + +TEXT _xdec(SB), $0 /* long _xdec(long *); */ + MOVW R3, R4 +xdecloop: + DCBF (R4) /* fix for 603x bug */ + LWAR (R4), R3 + ADD $-1, R3 + STWCCC R3, (R4) + BNE xdecloop + RETURN + +TEXT cmpswap(SB),$0 /* int cmpswap(long*, long, long) */ + MOVW R3, R4 /* addr */ + MOVW old+4(FP), R5 + MOVW new+8(FP), R6 + DCBF (R4) /* fix for 603x bug? */ + LWAR (R4), R3 + CMP R3, R5 + BNE fail + STWCCC R6, (R4) + BNE fail + MOVW $1, R3 + RETURN +fail: + MOVW $0, R3 RETURN TEXT tlbflushall(SB), $0 --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree/sys/src/9/ppc/mem.h +++ sys/src/9/ppc/mem.h @@ -8,6 +8,9 @@ #include "blast.h" #endif +#define MIN(a, b) ((a) < (b)? (a): (b)) +#define MAX(a, b) ((a) > (b)? (a): (b)) + /* * Sizes */ @@ -37,7 +40,8 @@ /* * Time */ -#define HZ 1000 /* clock frequency */ +#define HZ (1000) /* clock frequency */ +#define MS2HZ (HZ) /* millisec per clock tick */ #define TK2SEC(t) ((t)/HZ) /* ticks to seconds */ /* --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree/sys/src/9/ppc/mkfile +++ sys/src/9/ppc/mkfile @@ -37,6 +37,7 @@ tod.$O\ xalloc.$O\ random.$O\ + userinit.$O\ OBJ=\ l.$O\ @@ -60,8 +61,9 @@ /$objtype/lib/libmemlayer.a\ /$objtype/lib/libmemdraw.a\ /$objtype/lib/libdraw.a\ - /$objtype/lib/libc.a\ /$objtype/lib/libsec.a\ + /$objtype/lib/libip.a\ + /$objtype/lib/libc.a\ ETHER=`{echo devether.c ether*.c | sed 's/\.c/.'$O'/g'} VGA=`{echo devvga.c screen.c vga*.c | sed 's/\.c/.'$O'/g'} --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree/sys/src/9/ppc/saturntimer.c +++ sys/src/9/ppc/saturntimer.c @@ -72,7 +72,7 @@ } void -timerset(uvlong next) +timerset(Tval next) { ulong offset; uvlong now; --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree/sys/src/9/ppc/trap.c +++ sys/src/9/ppc/trap.c @@ -11,6 +11,14 @@ static Lock vctllock; Vctl *vctl[256]; +int nintr[10]; +int nintro; +int dblintr[64]; +ulong thisto[32]; +ulong thistoo; +vlong vnot[64]; +ulong vnon[64]; + void intrenable(int irq, void (*f)(Ureg*, void*), void* a, char *name) { @@ -368,6 +376,62 @@ vp[n] = 0x4e800021; /* BL (LR) */ }else vp[n] = (18<<26)|(pa&0x3FFFFFC)|3; /* bla */ +} + +void +intr(Ureg *ureg) +{ + int vno, pvno, i; + Vctl *ctl, *v; + void (*pt)(Proc*, int, vlong); + uvlong tt, x; + + cycles(&tt); + pt = proctrace; + pvno = -1; + for(i = 0; i < 64; i++){ + vno = intvec(); + if(vno == 0) + break; + cycles(&x); + vnot[vno] -= x; + if(vno == pvno) + dblintr[vno]++; + pvno = vno; + if(pt && up && up->trace) + pt(up, (vno << 16) | SInts, 0); + + if(vno > nelem(vctl) || (ctl = vctl[vno]) == 0) { + iprint("spurious intr %d\n", vno); + return; + } + + for(v = ctl; v != nil; v = v->next) + if(v->f) + v->f(ureg, v->a); + + intend(vno); /* reenable the interrupt */ + + if(pt && up && up->trace) + pt(up, (vno << 16) | SInte, 0); + cycles(&x); + vnot[vno] += x; + vnon[vno]++; + } + if(i < nelem(nintr)) + nintr[i]++; + else + nintro++; + cycles(&x); + tt = x - tt; + i = tt / 3600; /* 100 microseconds units */ + if(i < nelem(thisto)) + thisto[i]++; + else + thistoo++; + + if(up) + preempted(); } char* --- //.git/fs/object/8c796bf8b9c10a0845717c47af908e47dfe14482/tree/sys/src/9/ppc/ucu +++ sys/src/9/ppc/ucu @@ -1,11 +1,13 @@ dev root cons + swap env pipe proc mnt srv + shr dup ssl cap From MAILER-DAEMON Sat Aug 21 17:19:47 2021 Return-Path: Received: from localhost (localhost) by mx.sdf.org (8.15.2/8.14.5) id 17LHJlIB021144; Sat, 21 Aug 2021 17:19:47 GMT Date: Sat, 21 Aug 2021 17:19:47 GMT From: Mail Delivery Subsystem Message-Id: <202108211719.17LHJlIB021144@mx.sdf.org> To: To: postmaster Subject: Returned mail: see transcript for details Auto-Submitted: auto-generated (failure) The original message was received at Sat, 21 Aug 2021 17:19:47 GMT from 9front45.sdf.org [205.166.94.127] ----- The following addresses had permanent fatal errors ----- ----- Transcript of session follows ----- 554 5.0.0 MX list for 9p.sdf.org. points back to mx.sdf.org 554 5.3.5 Local configuration error ----- Original message follows ----- Return-Path: Received: from 9front52.domain.local (9front45.sdf.org [205.166.94.127]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17LHJlIB029686 for ; Sat, 21 Aug 2021 17:19:47 GMT Message-ID: <2DB9A6CF6E0FBA70FC35B54203634003@9p.sdf.org> Date: Sat, 21 Aug 2021 17:21:44 +0000 From: glenda@9p.sdf.org To: glenda@9p.sdf.org MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit hey From smj@9p.sdf.org Sat Aug 21 18:47:13 2021 Return-Path: Received: from 9front52.domain.local (9front52.sdf.org [205.166.94.127]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17LIlDQC000516 for ; Sat, 21 Aug 2021 18:47:13 GMT Message-ID: <5FBEFDBDB09A99B83C03BDD3CFEE3415@9p.sdf.org> Date: Sat, 21 Aug 2021 18:49:11 +0000 From: glenda@9p.sdf.org To: smj@9p.sdf.org MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit hey From smj@sdf.org Sat Aug 21 19:08:51 2021 Return-Path: Received: from ma.sdf.org (ma.sdf.org [205.166.94.33]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17LJ8oJs019784 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits) verified NO) for ; Sat, 21 Aug 2021 19:08:51 GMT Received: from [127.0.0.1] (helo=ma.sdf.org) by ma.sdf.org with esmtp (Exim 4.92) (envelope-from ) id 1mHWMM-0002bU-OH for smj@9p.sdf.org; Sat, 21 Aug 2021 19:08:50 +0000 MIME-Version: 1.0 Date: Sat, 21 Aug 2021 12:08:50 -0700 From: Stephen Jones To: "Stephen M. Jones" Subject: Re: In-Reply-To: References: User-Agent: Roundcube Webmail/1.4.11 Message-ID: <3284cf734d0378b6d6b627e8852937b8@sdf.org> X-Sender: smj@sdf.org Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit On 2021-08-21 12:07, Stephen M. Jones wrote: > Quoth Stephen M. Jones : >> test >> test >> > > hello there. Thank you!! From martians@sdf.org Sat Aug 21 19:43:32 2021 Return-Path: Received: from sdf.org (IDENT:martians@sdf.org [205.166.94.16]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17LJhWFc024133 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits) verified NO) for ; Sat, 21 Aug 2021 19:43:32 GMT Received: (from martians@localhost) by sdf.org (8.15.2/8.12.8/Submit) id 17LJhWFx023886 for smj@9p.sdf.org; Sat, 21 Aug 2021 19:43:32 GMT Date: Sat, 21 Aug 2021 19:43:32 GMT From: "Stephen M. Jones" Message-Id: <202108211943.17LJhWFx023886@sdf.org> To: smj@9p.sdf.org Subject: test test test From 9front-bounces@1ess.inri.net Sat Aug 21 23:01:57 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17LN1vtG013664 for ; Sat, 21 Aug 2021 23:01:57 GMT Received: from duke.felloff.net ([216.126.196.34]) by 1ess; Sat Aug 21 18:29:49 -0400 2021 Message-ID: <91FC6BCADEFA8E0719C4B0E435B3DCE0@felloff.net> Date: Sun, 22 Aug 2021 00:29:35 +0200 From: cinap_lenrek@felloff.net To: 9front@9front.org MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: lossless app hypervisor-based control Subject: [9front] test Reply-To: 9front@9front.org Precedence: bulk From bounce.mM7f5dc23b2cc11ed09b8c3102.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 02:58:07 2021 Return-Path: Received: from tb-ob0.topicbox.com (tb-ob0.topicbox.com [64.147.108.117]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17M2w6Ar014200 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 02:58:06 GMT Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob0.topicbox.com (Postfix) with ESMTP id 5EFEC2432D for ; Sat, 21 Aug 2021 22:48:23 -0400 (EDT) (envelope-from bounce.mM7f5dc23b2cc11ed09b8c3102.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id 5C777330B181; Sat, 21 Aug 2021 22:48:23 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=hera.eonet.ne.jp header.i=kokamoto@hera.eonet.ne.jp header.b=ZUaBuZbx header.a=rsa-sha256 header.s=x01 x-bits=2048; dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=hera.eonet.ne.jp; spf=pass smtp.mailfrom=kokamoto@hera.eonet.ne.jp smtp.helo=cmo-0001.xspmail.jp; 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=message-id:to:subject:date:from:in-reply-to :mime-version:content-type:content-transfer-encoding:list-help :list-id:list-post:list-subscribe:reply-to:list-unsubscribe; s= sysmsg-1; t=1629600503; bh=mmRjoDrPMTOyICtEmoEvoIULbW2xEV3fvEghY VeuSFM=; b=oiP8oGSdWrQmYIY+e0xcS8TC0mI+vYkbFqqp8wGf3I3E5oPdFiIzX ZJKAxxSccod8YCtqj08o8RDG3nyM+req8PErzNrM27Cg0J1g2JRo+JMLpE6s9CbN dx4Cm6rVQWZhnKeBbYx/Tu5ysi/9F7/5xZoAPAgwyqSTHTf8Gf2yzc= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629600503; b=LtfLd070pRMOFKevGwE2/fHiDiiAZN4soN0cgo643GKwyXpvBz YhxUipzTc3IHXcgA4UKSYSBgDgEE+vCuVt9e1S600hqyxlcgcCiyAJ1RUcvTqK+b fxTjuAHeYe3cbQlSYcuJ6fjH4GXYzE/TQmnYALDvc4JaUgKKMn3Ragkmc= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=hera.eonet.ne.jp header.i=kokamoto@hera.eonet.ne.jp header.b=ZUaBuZbx header.a=rsa-sha256 header.s=x01 x-bits=2048; dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=hera.eonet.ne.jp; spf=pass smtp.mailfrom=kokamoto@hera.eonet.ne.jp smtp.helo=cmo-0001.xspmail.jp; 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: tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=pass (2048-bit rsa key sha256) header.d=hera.eonet.ne.jp header.i=kokamoto@hera.eonet.ne.jp header.b=ZUaBuZbx header.a=rsa-sha256 header.s=x01 x-bits=2048; dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=hera.eonet.ne.jp; iprev=pass smtp.remote-ip=202.238.198.170 (cmo-0001.xspmail.jp); spf=pass smtp.mailfrom=kokamoto@hera.eonet.ne.jp smtp.helo=cmo-0001.xspmail.jp; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=cmo-0001.xspmail.jp policy.ptr=cmo-0001.xspmail.jp; x-return-mx=pass header.domain=hera.eonet.ne.jp policy.org_domain=eonet.ne.jp policy.is_org=no (MX Records found: kopt-mx.xspmail.jp); x-return-mx=pass smtp.domain=hera.eonet.ne.jp policy.org_domain=eonet.ne.jp policy.is_org=no (MX Records found: kopt-mx.xspmail.jp); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=message-id :to:subject:date:from:in-reply-to:mime-version:content-type :content-transfer-encoding:list-help:list-id:list-post :list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=wGZnxxal g7UnA0bPdrm5XmjdlwaBRMnf8utB/LG2Bo8=; b=hC365zEBiNxQiRvrBx6DwfkH L56V+4DipsBDSCmgi85ZcOg39MMJj/LOzbreq7Kow1mHbPnRXhN7u/0kqEaoR3E+ fUmkrAJKSaHNNquLHOI7GEtzpNJ6BkTJQb78zGkGGD+dVxThDCcJc6aLG0v7NdgU dUJ+WPY2bjsisOmkAh4= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id 35E2A330A863 for <9fans@9fans.net>; Sat, 21 Aug 2021 22:47:05 -0400 (EDT) (envelope-from kokamoto@hera.eonet.ne.jp) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id 7B071FF62EA; Sat, 21 Aug 2021 22:47:05 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629600425; b=BffOjtTa9TgaVmTIfnlqhj8IciPbUfBTSOfZ3lQMBAbohE4Bk0 R8lDjW1fJCFRCzyMYSVTMmqAa9nbbcOylHGmPpIkrqj7qB8NSoOaUiGvOZzqEPHs c3Vzgj4GPTiFtvOAdKM7b6tUWCBlFFdEjhMv59oEm+FJtL4EGFCk5XRgq18G/EyV VOEBiMgMpe4PGHVw/n7arNSFnigAvl+HNbAC6813pdly9uYfSQXabBJO2As84suJ NH1zXNNV7Y2N/gANnUYLySly4tbR0Ojzkikiwf/Ol60J7ugvgPHSdPOsiXlKylGe zFXVMOIh1rDUm8WHLs8Q7wPjkJ3YAATFAPdw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=message-id:to:subject:date:from:in-reply-to :mime-version:content-type:content-transfer-encoding; s=arcseal; t=1629600425; bh=M9Nf+TfUnT0ixXJAvz9nK7SpcatNvvEpzdlJzBogvLQ=; b= r7EEoi3NXLKHu3Ia5XcfiZCw33dFggO/FtfQY1oYAoFhw+lzpnT6uH4Jzrz3GaOG lMwJYuRFJAv7MozAzFzdYmdK7KdFSihX+QGGNuvib5X5QHaJ7wimR+BR8yTw0/1W o0MzEF/P7bAGNV4En350HFzPdIdFQS5pXnfP7hCkNhx3waT4bEm3LChC3rX3ZEOY bQfk6LawUU2eVu9p1gOo+UDhVvxwW63XGxBE8HAKour+4VMW1OMRa87xp44cCiDc aIXRhzABPEduRm1wLdXfhv7yCgUAPBTbEyYzlsx/yluNhr7+NL/tT7Ss2i25XIOU t3OlQrBQsO1SOzoPlmOWkw== ARC-Authentication-Results: i=1; tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=pass (2048-bit rsa key sha256) header.d=hera.eonet.ne.jp header.i=kokamoto@hera.eonet.ne.jp header.b=ZUaBuZbx header.a=rsa-sha256 header.s=x01 x-bits=2048; dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=hera.eonet.ne.jp; iprev=pass smtp.remote-ip=202.238.198.170 (cmo-0001.xspmail.jp); spf=pass smtp.mailfrom=kokamoto@hera.eonet.ne.jp smtp.helo=cmo-0001.xspmail.jp; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=cmo-0001.xspmail.jp policy.ptr=cmo-0001.xspmail.jp; x-return-mx=pass header.domain=hera.eonet.ne.jp policy.org_domain=eonet.ne.jp policy.is_org=no (MX Records found: kopt-mx.xspmail.jp); x-return-mx=pass smtp.domain=hera.eonet.ne.jp policy.org_domain=eonet.ne.jp policy.is_org=no (MX Records found: kopt-mx.xspmail.jp); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtvddggedtucdltddurdegudehrddttd dmucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgf nhhsuhgsshgtrhhisggvpdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttd enucenucfjughrpefkvffufffhjgggtgfgsehtjehjtddttddvnecuhfhrohhmpehkohhk rghmohhtoheshhgvrhgrrdgvohhnvghtrdhnvgdrjhhpnecuggftrfgrthhtvghrnhepve ejjedvgfeiffdugfegheeihedutddtgfekfeduueeuveevieekteevueekffdvnecukfhp pedvtddvrddvfeekrdduleekrddujedtpddukedtrddugeehrdduleekrddvudenucevlh hushhtvghrufhiiigvpedtnecurfgrrhgrmhepihhnvghtpedvtddvrddvfeekrdduleek rddujedtpdhhvghloheptghmohdqtddttddurdigshhpmhgrihhlrdhjphdpmhgrihhlfh hrohhmpeeokhhokhgrmhhothhosehhvghrrgdrvghonhgvthdrnhgvrdhjpheq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (hera.eonet.ne.jp: Sender is authorized to use 'kokamoto@hera.eonet.ne.jp' in 'mfrom' identity (mechanism 'include:_mailspf.eonet.ne.jp' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="kokamoto@hera.eonet.ne.jp"; helo=cmo-0001.xspmail.jp; client-ip=202.238.198.170 Received: from cmo-0001.xspmail.jp (cmo-0001.xspmail.jp [202.238.198.170]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sat, 21 Aug 2021 22:47:01 -0400 (EDT) (envelope-from kokamoto@hera.eonet.ne.jp) Received: from cmr-0001.xspmail.jp ([202.238.198.118]) by cmo with ESMTP id HdSxmWIFEjQ2kHdVimaS7y; Sun, 22 Aug 2021 11:46:58 +0900 Received: from hela.eonet.ne.jp ([180.145.198.21]) by cmr with ESMTPA id HdVhmWOYIZy5uHdVimUql7; Sun, 22 Aug 2021 11:46:58 +0900 Message-ID: <4fb3ad2e48e31b089705a85b1374de02@hera.eonet.ne.jp> To: 9fans@9fans.net Subject: Re: [9fans] Software philosophy Date: Sun, 22 Aug 2021 11:46:57 +0900 From: kokamoto@hera.eonet.ne.jp In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 3f3845f0-02f3-11ec-b31b-ca3b47e3968f Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UOWVmNjQzMGYzMDI1ZTczMS1NN2Y1ZGMyM2IyY2MxMWVkMDliOGMz?= =?UTF-8?B?MTAyPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M7f5dc23b2cc11ed09b8c3102:1:upXGJrtykcRWv0DQCVI2OPSQVPqWIBpy53k-0snNRkU Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17M2w6Ar014200 > I have ended up using 9front more and more, obviously. 9front was > started specifically to address the fact that Plan 9 from Bell Labs > didn't run on most computers... me, too. 9front have many kinds of device drivers. If we live on other OSs than plan9, we cannot do anything other than those device drivers. However, if we consider it more deep, we don't need not so much kinds of running terminals. We need only one cpu/auth/file server machine and many of drawterms, or as Russ is doing plan9port. If we consider it like this, we should discuss what kinds of computer work we want. I want to run deep learning on plan9... If so, we need 64 bit kernel for cpu server, and python.... Kenji ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T9ef6430f3025e731-M7f5dc23b2cc11ed09b8c3102 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From bounce.mMdf830ebc446636d4ca37b479.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 03:28:06 2021 Return-Path: Received: from tb-ob0.topicbox.com (tb-ob0.topicbox.com [64.147.108.117]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17M3S55P017062 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 03:28:06 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob0.topicbox.com (Postfix) with ESMTP id 16E3624817 for ; Sat, 21 Aug 2021 23:18:16 -0400 (EDT) (envelope-from bounce.mMdf830ebc446636d4ca37b479.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id 1100433A3DF2; Sat, 21 Aug 2021 23:18:16 -0400 (EDT) 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=IGL2NvhH header.a=rsa-sha256 header.s=20161025 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=echoline@gmail.com smtp.helo=mail-qt1-f177.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body 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=1629602295; bh=YQRiFdOBObOBN/sC 6R4WFPnFv3XTzKtV94mzR+hmI4s=; b=XmJz293wQypUzXXjyzDdv8RcJuW91zlB 8kww3e313us0Wv2EQaFBBX3XmxXhYFaV7OTlHv5Sqht/nr4LVQm0o2+XXGzOVZV+ 3SBlbBPpXzPL2+E3FgMNLzLKJnQAAnYFtUOzwupHqwPr1R+ftstAQWC57r9/0ZPJ b4CH+Q9W5I0= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629602295; b=Oewc3siRbAo5aP0OpiQQoOQykZHoeHqOZVAisFwVaBM9M/13yP 4Q5iQuRU//6LOacb9d0Myi7vSeagqE62MFHfPrBnmE7VnSJi7q5zMLdinbKqV2DL Uo7WnlX8Cu1XGGgEfre3ihGWoen4JWCwoiFmo7b4SVtygOrW7Rb9ZKDqo= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=IGL2NvhH header.a=rsa-sha256 header.s=20161025 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=echoline@gmail.com smtp.helo=mail-qt1-f177.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) X-Received-Authentication-Results: tb-mx0.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=IGL2NvhH header.a=rsa-sha256 header.s=20161025 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.160.177 (mail-qt1-f177.google.com); spf=pass smtp.mailfrom=echoline@gmail.com smtp.helo=mail-qt1-f177.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=O8tKYf/w; x-me-sender=none; x-ptr=pass smtp.helo=mail-qt1-f177.google.com policy.ptr=mail-qt1-f177.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt2.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: alt2.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; 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; bh=tvj0cw6aOxjUJxUC94PM1zAPTt3OXmehFzjz5g5sUmI=; b=BQsAt/2te3rA BNQqPOsal/NaCVwh2shDlzjSdgl7fhONn493fmpvDP2MiJ0kF8YukoYYdLLXlmw5 tnqPsfFkU5V8CPHDFjWqm5NEdE/oy81NLy+rrymzO5txmoFDwWZqPpLsmMeqSe0q cI/tchMb6FLeMjCpj4p9jn7S0N7j16E= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id 4F0E9330B91B for <9fans@9fans.net>; Sat, 21 Aug 2021 23:16:54 -0400 (EDT) (envelope-from echoline@gmail.com) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id F412A82FB7F; Sat, 21 Aug 2021 23:16:54 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629602214; b=inbmQRwY2MLA1EXTO4MHGA20yx+65O2qb8f11BwoS8jMaIV+vt 3qVBvA4KfRA8hhlNdeGAlcC21AX8ttV9fj/L2Gd4QyjeXJ+qp9eWNUcRSef1stsz 5FNLADH4NWN11au/pu3CAXirXDT8hbw8LoI1TN4PFkElZrYOgSNnmnACFokDvksb fApszo53+Y3jU9EBFgeSLwk4dTt/4vcCNEgfjWuzYWk/LdmgoRdMzT4+XuqAB+q1 SAO4H+E5sdoHtxvZxJKmFPKbVlbihHNzb4R+aoxSrC8kong+nAY7WlEfuSp8fCf1 SiBwvQ7Lo1C48sChWTvfCpi5amUlFrEQdaFQ== 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=1629602214; bh=XuTXLXJ13TAd8M+urpP9yvsnt8rMlBzkO0ykX/kehl0=; b=vUHq8IASgYWi 2CpMDyKIAISkm1iZqINZ1XCgmW4aS83iHuKkY9dR1GYT8SQ+ADq9Y4p0BJFMxvjZ vINKn9Tl55w3zZzWRxcguJUo8TvXUdp5YLeRLDunO0ejUHblc2JEkiatC7vn8SvV 1Nr4/LgGIrnREijJV17b3tUS7evB49fczVF/8TaJxWqIRO8LJs/ZzS9G5suU9SBO gvZv3GE5oIacOcvG1APe61c5I6/MAY+8Ns8rImWW0gWrh+xrDWOyQ6MTYGWJfz4E VsBMy2oOS4k16ptZBJlTCqh9wDirBIpzrRVFGlx0iTSUSfs1ieFDbfC9YUb1YO3U CUQdAgeBdw== ARC-Authentication-Results: i=1; tb-mx0.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=IGL2NvhH header.a=rsa-sha256 header.s=20161025 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.160.177 (mail-qt1-f177.google.com); spf=pass smtp.mailfrom=echoline@gmail.com smtp.helo=mail-qt1-f177.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=O8tKYf/w; x-me-sender=none; x-ptr=pass smtp.helo=mail-qt1-f177.google.com policy.ptr=mail-qt1-f177.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt2.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: alt2.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtuddgudegleculddtuddrgeduhedrtd dtmdcutefuodetggdotefrodftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggft fghnshhusghstghrihgsvgdpuffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftd dtnecunecujfgurhepgghfjgfhfffkuffvtgesthdtredttddtjeenucfhrhhomhepgfhl ihcuvehohhgvnhcuoegvtghhohhlihhnvgesghhmrghilhdrtghomheqnecuggftrfgrth htvghrnhephefggedvjeejfffgieeiveelhfeigfdtfedvgefhvefhkedvtdeltdehledu leegnecuffhomhgrihhnpehgihhthhhusgdrtghomhdpthhophhitggsohigrdgtohhmne cukfhppedvtdelrdekhedrudeitddrudejjeenucevlhhushhtvghrufhiiigvpedtnecu rfgrrhgrmhepihhnvghtpedvtdelrdekhedrudeitddrudejjedphhgvlhhopehmrghilh dqqhhtuddqfhdujeejrdhgohhoghhlvgdrtghomhdpmhgrihhlfhhrohhmpeeovggthhho lhhinhgvsehgmhgrihhlrdgtohhmqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (gmail.com ... _spf.google.com: Sender is authorized to use 'echoline@gmail.com' in 'mfrom' identity (mechanism 'include:_netblocks.google.com' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="echoline@gmail.com"; helo=mail-qt1-f177.google.com; client-ip=209.85.160.177 Received: from mail-qt1-f177.google.com (mail-qt1-f177.google.com [209.85.160.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sat, 21 Aug 2021 23:16:53 -0400 (EDT) (envelope-from echoline@gmail.com) Received: by mail-qt1-f177.google.com with SMTP id x5so10913561qtq.13 for <9fans@9fans.net>; Sat, 21 Aug 2021 20:16:53 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=XuTXLXJ13TAd8M+urpP9yvsnt8rMlBzkO0ykX/kehl0=; b=O8tKYf/wdBYmi65lf6Mi68qYG9NaHV7+zX0vUVqvIP7jWFgnWWQkXv6FAWFLLHMpZC VgYDk54A0MpTBLFqFg/gMBdvDIpX4iPcrMrillWd1pmZZinRlXSm63zOXNAfM+w2OfQi tCLNUDaffwolnRhOxU/PA9mwXxIaaIA2SdWPtszEXGpiEUtz+pnQ8qbdnZwJRnyAVJjg AJghcSGUkDQvJZnVTjDHYurHoclvl6DsYkH7ArEo8t8tILcp01eZ4b5zfSijSktPe184 mo/eoiDGFqrz7JXr+7U5gyR8kzbqt6p2adWq2B9ZmhfwZfGZU2zn08rf3RsFTVYagVZ7 zzJQ== X-Gm-Message-State: AOAM530ONzFEI5SIUOTYsMYVap9SO8igwDlE82msCXnYrbPddEUsN70T zRjk1jlCg1Y57JTnZyUNuF51Rsg+0QYPUx5lPRdMrrJ+GVI= X-Google-Smtp-Source: ABdhPJwxLJDAPqqFhuotakYAaYUmM8fyFJpTPZbDBUZ6bcjZz0q0X5bfwns+nOicgqc7POGuZp5j+E/Wf6CMjjwxOEs= X-Received: by 2002:ac8:5194:: with SMTP id c20mr15461341qtn.68.1629602213250; Sat, 21 Aug 2021 20:16:53 -0700 (PDT) MIME-Version: 1.0 References: <4fb3ad2e48e31b089705a85b1374de02@hera.eonet.ne.jp> In-Reply-To: <4fb3ad2e48e31b089705a85b1374de02@hera.eonet.ne.jp> From: Eli Cohen Date: Sat, 21 Aug 2021 20:16:42 -0700 Message-ID: Subject: Re: [9fans] Software philosophy To: 9fans <9fans@9fans.net> Content-Type: text/plain; charset="UTF-8" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 694dfcd2-02f7-11ec-9b88-9bf775e9e44b Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UOWVmNjQzMGYzMDI1ZTczMS1NZGY4MzBlYmM0NDY2MzZkNGNhMzdi?= =?UTF-8?B?NDc5Pg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:Mdf830ebc446636d4ca37b479:1:kStBo2M0FNWBpvS3NcG5C14CzB-mvJf-mL-wqoDh6Vo Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17M3S55P017062 hey Kenji, deep learning is another interest of mine too. hardware support is a big deal for that... some kind of support for GPUs would be nice. people have discussed that for years... hardware drivers are difficult and important to do correctly! python is used a lot for some of the available things... tensorflow is a really nice approach for custom networks, even making custom layers, etc. I haven't seen any examples but it would be interesting to think about that in C. it might end up being easier to write something like that in C than port everything for something like tensorflow... I did port a somewhat outdated C library: https://github.com/echoline/fann it isn't nearly as customizable as tensorflow though. I always really liked the "XCPU" and drawterm type ideas of using other OSes for their existing strengths along with Plan 9. maybe drawterm could have a GPU device driver or something... that being said I have sometimes found it ends up surprisingly easier doing it all on Plan 9... - Eli On Sat, Aug 21, 2021 at 7:48 PM wrote: > > I have ended up using 9front more and more, obviously. 9front was > > started specifically to address the fact that Plan 9 from Bell Labs > > didn't run on most computers... > > me, too. > > 9front have many kinds of device drivers. If we live on other OSs than plan9, > we cannot do anything other than those device drivers. > > However, if we consider it more deep, we don't need not so much > kinds of running terminals. We need only one cpu/auth/file server machine > and many of drawterms, or as Russ is doing plan9port. > > If we consider it like this, we should discuss what kinds of computer work > we want. I want to run deep learning on plan9... If so, we need 64 bit > kernel for cpu server, and python.... > > Kenji > ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T9ef6430f3025e731-Mdf830ebc446636d4ca37b479 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From bounce.mMf41fbd4cbe7a7366feb7901a.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 07:14:16 2021 Return-Path: Received: from tb-ob1.topicbox.com (tb-ob1.topicbox.com [64.147.108.173]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17M7EGcJ029473 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 07:14:16 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob1.topicbox.com (Postfix) with ESMTP id F389B2CDAF for ; Sun, 22 Aug 2021 03:09:12 -0400 (EDT) (envelope-from bounce.mMf41fbd4cbe7a7366feb7901a.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id EF34B33A6722; Sun, 22 Aug 2021 03:09:12 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; 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=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding :list-help:list-id:list-post:list-subscribe:reply-to :list-unsubscribe; s=sysmsg-1; t=1629616152; bh=GTsA0HY62aBighN8 2SJdfqeCyFYxnK386rZG3hk1324=; b=dyYp4KLBpHbeUmt4QJKQnCN+qIgit6uA +3UOxT3HsV+0zNM1I6MQ4FjfjnPPcG7UlvzAo6gBXlAK3XAj/BFRb8FuWCCsE0r6 WuwjDV2k2SlnnWAQjvp7r4a3XcEP55ATvHBgAuTcWHRSsH3SsnQfERcQ8qW3wPit k6lYDFF1AJg= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629616152; b=GR8y1JID24oX2yhvrjUu7wVrucRuIb0WuoMaZ68jM22GMJdoK/ uKOiSpoBkE/n8vUOa7uQ8WUPkvhUDZKSx5rcDnb0/clgchkKVmPZ8rKA3nhs5bZS 8DUUVo8Dt1v8kFnUsvD0fnMOSq1LS8LFc22rXKUOyiZOuEiIMqhrjNEVU= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; 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: tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (oat.nine.sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=oat.nine.sirjofri.de policy.ptr=oat.nine.sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=date:from :to:message-id:in-reply-to:references:subject:mime-version :content-type:content-transfer-encoding:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=GTsA0HY62aBighN82SJdfqeCyFYxnK386rZG3hk1324=; b=Z/NbJVy48d4x Zautk1hGpgd8fPUXfeBCwX3i51kdcmpDTWbolY4HgOnhGEh3KDMRTl1LLdQ7mF9+ f60B/+Bkbv+K/4lNTjcIhq5Whxp7KUaTzhmy4WLRFK/fxCVf5KQlGYpejpejsDnK r5zABmoVOZqm3Tb9+/hwtuFfHeGNUXw= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id 17521330D6E2 for <9fans@9fans.net>; Sun, 22 Aug 2021 03:08:00 -0400 (EDT) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id E7D4C014689; Sun, 22 Aug 2021 03:07:59 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629616079; b=t/Hct9xUXhvOFmYh/XeAbx7VIjy8OkwaOGB5U8BtutM8nEyXYG EEcIrZmXp0NjgMutO/VPZgsFCJu6y3eoxPuX5wE7NPUe8gZzevilnMsohPEFvmax vxPeKvLDmlRXQYcJBv1yF9plZzZuQFFdWGCfnV6UlsEf/TCMkuWTI2kyeTnMJhfK +4sB5ilQe8HKNTtGOzPbzbdWf+Efl9uzf1OIl218QXC6LzDLyy2JKeowXexwkD1S tFKwMIoGs0uU3uXOuA9mCdQV8UQQiDtQT/G5IgVXIsx3PTXMoJUF/E3HknXIBmKt zBiJDALhODEV+r/44BsbbSloZy7D0bHZJsiQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding; s= arcseal; t=1629616079; bh=DaA1UdL4TpD441t64S6SwF1Rz3TGJaq2A7fb0q Ld/BE=; b=r3sNf87/Hh1xJ1XTOxXIIdNJMwPTUvmPmXoAhQBt0TWYwZZKgX8C5m YaLYdq7uFtl97K6dENWMpvAoCuwiHX6La0Ey23B06601ZaMjryu0kAgxfr7tJUDr F+3TdflZ9PwCBEWLis8mablc6uT7MS0Sp16yW4w6a/WaOJoCzcsAriSAJEfBddne h6PeYhMy3vQoDk7zOAHjCu8sGTyfeC0AVi5NDawix3royya7HOfJp8rgfR2mOoaH vw6YFMa51i52iOSvYBn08ga/z5ilSSQKYE0e2ydoBoGjwPfjmBTvqK4C/ryR46Wc eZof6dWRN6VhZ7iKnFJ7sY671e3T/D9w== ARC-Authentication-Results: i=1; tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (oat.nine.sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=oat.nine.sirjofri.de policy.ptr=oat.nine.sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtvddguddugecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggftfghnshhusghstghrihgsvgdp uffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftddtnecunecujfgurhepfffhvf fkjghfufggtgfgsehtjeertddttdejnecuhfhrohhmpehsihhrjhhofhhrihcuoehsihhr jhhofhhrihdomhhlqdelfhgrnhhssehsihhrjhhofhhrihdruggvqeenucggtffrrghtth gvrhhnpeefhfdtteduheffveeuleefgeejvdegfeegtddtheeluedutdehudfhfeffueel teenucfkphephedrgeehrddutdehrdduvdejpdelhedrledtrddvudekrddvudefnecuve hluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehinhgvthephedrgeehrddutdehrddu vdejpdhhvghlohepohgrthdrnhhinhgvrdhsihhrjhhofhhrihdruggvpdhmrghilhhfrh homhepoehsihhrjhhofhhrihdomhhlqdelfhgrnhhssehsihhrjhhofhhrihdruggvqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (sirjofri.de: 5.45.105.127 is authorized to use 'sirjofri+ml-9fans@sirjofri.de' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="sirjofri+ml-9fans@sirjofri.de"; helo=oat.nine.sirjofri.de; client-ip=5.45.105.127 Received: from oat.nine.sirjofri.de (oat.nine.sirjofri.de [5.45.105.127]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 03:07:56 -0400 (EDT) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from sirjofri.de ([95.90.218.213]) by oat; Sun Aug 22 09:07:53 +0200 2021 Date: Sun, 22 Aug 2021 07:07:52 +0000 (UTC) From: sirjofri To: 9fans <9fans@9fans.net> Message-ID: <18d7f6cc-8e13-4229-9fe3-d9247a3153fc@sirjofri.de> In-Reply-To: References: <4fb3ad2e48e31b089705a85b1374de02@hera.eonet.ne.jp> Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8"; format="flowed" X-Correlation-ID: <18d7f6cc-8e13-4229-9fe3-d9247a3153fc@sirjofri.de> Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: b2f72000-0317-11ec-a9ac-945f35b6c7db Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UNjVlYzY0YWRiNTEzNzg3NC1NZjQxZmJkNGNiZTdhNzM2NmZlYjc5?= =?UTF-8?B?MDFhPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:Mf41fbd4cbe7a7366feb7901a:1:yobT-UaMpkd3puokTi4kHo7vOYT2vYrb8uPO85Wcz7k Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17M7EGcJ029473 22.08.2021 05:16:42 Eli Cohen : > deep learning is another interest of mine too. hardware support is a > big deal for that... some kind of support for GPUs would be nice. > people have discussed that for years... hardware drivers are difficult > and important to do correctly! > > I always really liked the "XCPU" and drawterm type ideas of using > other OSes for their existing strengths along with Plan 9. maybe > drawterm could have a GPU device driver or something... that being > said I have sometimes found it ends up surprisingly easier doing it > all on Plan 9... That's also something I thought about a few times already: drawterm with GPU support. The only issue I see is, for realtime applications like games the draw times would be network bound and thus pretty slow. It would work for heavy GPU applications where almost no draw calls will exist (no textures, very low poly meshes, ...), but for heavier stuff we'd need to address that. That's the benefit of a native driver: you could calculate the server side (heavy CPU calculations) on a cpu server, the client/frontend side (including draw calls) on a terminal and the pure graphics on the GPU. I'd still give the drawterm GPU a shot. Maybe I can set drawterm up for compilation on my work PC (two GTX 1080Ti) and try figuring out how to do all that stuff. However, I've never done graphics applications on windows or somewhere else that uses OpenGL or DirectX (I'd try OpenGL because portability), only written shaders so far. I'll surely need some time (which is always rare as a game developer). Btw I don't know the exact specifications for GPU usage for neural networks. I assume it's all compute shaders? Maybe it's even a kinda blackbox, put stuff in (draw call), read things out. I assume this can work perfectly fine for draw times, depending on the data. sirjofri ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T65ec64adb5137874-Mf41fbd4cbe7a7366feb7901a Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From 9front-bounces@1ess.inri.net Sun Aug 22 08:36:01 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17M8a0WT003637 for ; Sun, 22 Aug 2021 08:36:01 GMT Received: from mail-ot1-f50.google.com ([209.85.210.50]) by 1ess; Sat Aug 21 18:29:10 -0400 2021 Received: by mail-ot1-f50.google.com with SMTP id k12-20020a056830150c00b0051abe7f680bso19359180otp.1 for <9front@9front.org>; Sat, 21 Aug 2021 15:29:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=jUAHI301kI/IAKVu5Hc7fHUbfeT1O+W9tR0qsUrBSXY=; b=YUiJD9f9RRYVOGgFAeS5GpPOvC4JqR6ymOUI+tKTK19CwR/h9QUYRMsMUXuf3c1W6X dRhoJbCOTorJ7wEsLYmM2PChdPRBHc0QN9JYFMJuW2h0g3OB97NE1yNAgO51Eef93bWN BKKRGt5diMkbsJ/wVgF+w0OWtnxzziRFLS/vUaPGxKLIope9U3J+/uROCvQCZoMCEi+t mgRjkumwlc4sxLPnqSgw+1M1gsBi0zBTp033Szs0j1i7a2YJ2/9l2ifCvqUzMCjhySL6 yrv2P6v8T6cPCnT9OSELmYOJ4W+RzT56a7nHsZHNEhHoZPfdjacBfbEY35HWGFOuSBnm mxzQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=jUAHI301kI/IAKVu5Hc7fHUbfeT1O+W9tR0qsUrBSXY=; b=daNQzE7atNM7AKS6BmOkpVtn6hCVy+Eha+RNJg7MN38VFvNvpGD6wD2Jaz0pPJfBnA Kf7L0h2W1wOjadrEcNam9m6eAFAtSeLGiPO1doRy4+EpACJZkRnE7KmUsFWUvXb3lu1/ KtSq3aEP1TiQu8gWEzLJfZoePTRqKkeR9c548ADOHZMC/CE07FuJ5S+acTP/u5pBXFaA f3N8xhI+vAowixUMowwBbC0U/gaV8vvgR5+nrKymVobP/L+hJv+44w8wh95OeARbe3qu Y0H1zBxqA5LN9+fu5dxbVJtucZV82mW4Yptv40r4TwH690kMHOzvLvCJd2hsaRcUfGc8 fOjg== X-Gm-Message-State: AOAM531k38l8MbmWALPPylF1LJypTqiJwMUMPKNghF+T/jmiLva4jF6k HV95lqa/61Nk6sbFPMYe9Il1XkGvZkZz6J9hBOY2AG5r0Bk= X-Google-Smtp-Source: ABdhPJyMgKHphO2iR1bJR5+d8ES5yC2nrnfsqWZcAOSXKQJuFZDIIzyvHKjaLXGJiKywOnrysjTJKHTJ5lsti30o5wc= X-Received: by 2002:a9d:bea:: with SMTP id 97mr20489200oth.149.1629584593348; Sat, 21 Aug 2021 15:23:13 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:ac9:2842:0:0:0:0:0 with HTTP; Sat, 21 Aug 2021 15:23:12 -0700 (PDT) From: kemal Date: Sat, 21 Aug 2021 22:23:12 +0000 Message-ID: To: 9front@9front.org Content-Type: multipart/mixed; boundary="000000000000d18e4305ca193a23" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: anonymous encrypted component grid interface DOM solution Subject: [9front] driver for intel wireless 7260 Reply-To: 9front@9front.org Precedence: bulk --000000000000d18e4305ca193a23 Content-Type: text/plain; charset="UTF-8" (due to ml shitting itself hard, i have to send this mail again.) reviving this thread. 2021-08-14 17:50 GMT, kemal : > 1- as driver reads 8 bytes from nvm instead of 6 so fw doesn't > spit us an ADVANCED_SYSASSERT, it was reading 2 more > extra bytes. apparently those 2 extra bytes were put to > the first 2 bytes of our buffer, so we got to skip that. some more thoughts on this, i think as 0x15*2 is not multiple of 8, fw rounds the offset to 0x14*2. i have touched to code to read data from 0x14*2 then ignore the first 2 bytes, just so it's not confusing. if this causes mac to be read wrong again, report. also, some more changes: 1. set the fwname at iwlpci, just to align the behavior with 8000+. this is a cosmetic change. 2. i have discovered that on device boot/reset/shutdown functions, our driver slept way much more than it should. the reason for that is, driver used the function delay() on places where it needs to use microdelay() instead. i have modified the code to use microdelay(). wpi likely needs similar changes too. i hope that this does not break the code. 3. zzz a bit more on tx/rx scheduler shutdowns and niclock. 4. openbsd's iwm and linux apparently does not check if ownership was obtained anymore in their handover functions. instead they just loop until the hw is ready. aligned the behavior. see linux commit: 289e5501c3141191dd830957f1d764d3dc14a54f 5. don't take antenna masks from nvm. it's apparently empty in some cards from 7k family. we will rely on what the fw file gives us. 6. when the calibration is completed, wakeup the proc that runs postboot. otherwise that thing sleeps for like 2 whole seconds even if calibration completed earlier. i honestly don't think any of these changes will fix 7260 not being able to get calibration results, but i don't see anything wrong at all in postboot7000 at this point. i will just hope these changes somehow make it get calibration results. new diff attached. --000000000000d18e4305ca193a23 Content-Type: text/plain; charset="US-ASCII"; name="diff.txt" Content-Disposition: attachment; filename="diff.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: file0 LS0tIC9zeXMvc3JjLzkvcGMvZXRoZXJpd2wuYworKysgL3N5cy9zcmMvOS9wYy9ldGhlcml3bC5j CkBAIC0zMjksNyArMzI5LDI5IEBACiAJU2NoZWRUcmFuc1RibE9mZgk9IDB4N0UwLAkJLy8gK3Eq MgogfTsKIAorLyoKKyAqIHVDb2RlIFRMViBhcGkKKyAqLwogZW51bSB7CisJLyogYXBpWzBdICov CisJVWNvZGVBcGlTdGEJPSAxPDwzMCwKK307CisKKy8qCisgKiB1Q29kZSBjYXBhYmlsaXRpZXMK KyAqLworZW51bSB7CisJLyogY2FwYVswXSAqLworCVVjb2RlQ2FwTGFyCT0gMTw8MSwKKworCS8q IGNhcGFbMV0gKi8KKwlVY29kZUNhcFF1b3RhCT0gMTw8MTIsCisJCisJLyogY2FwYVsyXSAqLwor CVVjb2RlQ2FwTGFyMgk9IDE8PDksCit9OworCitlbnVtIHsKIAlGaWx0ZXJQcm9taXNjCQk9IDE8 PDAsCiAJRmlsdGVyQ3RsCQk9IDE8PDEsCiAJRmlsdGVyTXVsdGljYXN0CQk9IDE8PDIsCkBAIC00 MTgsNiArNDQwLDcgQEAKIAl1aW50CWJ1aWxkOwogCWNoYXIJZGVzY3JbNjQrMV07CiAKKwl1MzJp bnQJZmxhZ3M7CiAJdTMyaW50CWNhcGFbNF07CiAJdTMyaW50CWFwaVs0XTsKIApAQCAtNjM1LDgg KzY1OCw3IEBACiAJVHlwZTIwMzAJPSAxMiwKIAlUeXBlMjAwMAk9IDE2LAogCi0JVHlwZTcyNjAJ PSAzMCwKLQlUeXBlODI2NQk9IDM1LAorCVR5cGU3MjYwCT0gMjAsCiB9OwogCiBzdGF0aWMgc3Ry dWN0IHJhdGV0YWIgewpAQCAtNjkwLDcgKzcxMiw2IEBACiAJW1R5cGU2MDA1XSAiaXduLTYwMDUi LCAvKiBzZWUgaW4gaXdsYXR0YWNoKCkgYmVsb3cgKi8KIAlbVHlwZTIwMzBdICJpd24tMjAzMCIs CiAJW1R5cGUyMDAwXSAiaXduLTIwMDAiLAotCVtUeXBlNzI2MF0gIml3bS03MjYwLTE3IiwKIH07 CiAKIHN0YXRpYyBjaGFyICpxY21kKEN0bHIgKmN0bHIsIHVpbnQgcWlkLCB1aW50IGNvZGUsIHVj aGFyICpkYXRhLCBpbnQgc2l6ZSwgQmxvY2sgKmJsb2NrKTsKQEAgLTcyOCwxMCArNzQ5LDEyIEBA CiAJaW50IGk7CiAKIAljc3IzMncoY3RsciwgR3BjLCBjc3IzMnIoY3RsciwgR3BjKSB8IE1hY0Fj Y2Vzc1JlcSk7Ci0JZm9yKGk9MDsgaTwxMDAwOyBpKyspeworCWlmKGN0bHItPmZhbWlseSA+PSA4 MDAwKQorCQltaWNyb2RlbGF5KDIpOworCWZvcihpPTA7IGk8MTUwMDsgaSsrKXsKIAkJaWYoKGNz cjMycihjdGxyLCBHcGMpICYgKE5pY1NsZWVwIHwgTWFjQWNjZXNzRW5hKSkgPT0gTWFjQWNjZXNz RW5hKQogCQkJcmV0dXJuIDA7Ci0JCWRlbGF5KDEwKTsKKwkJbWljcm9kZWxheSgxMCk7CiAJfQog CXJldHVybiAibmljbG9jazogdGltZW91dCI7CiB9CkBAIC05NDQsNyArOTY3LDcgQEAKIAkJZm9y KGo9MDsgajwxMDA7IGorKyl7CiAJCQlpZihjc3IzMnIoY3RsciwgQ2ZnKSAmIEVlcHJvbUxvY2tl ZCkKIAkJCQlyZXR1cm4gMDsKLQkJCWRlbGF5KDEwKTsKKwkJCW1pY3JvZGVsYXkoMTApOwogCQl9 CiAJfQogCXJldHVybiAiZWVwcm9tbG9jazogdGltZW91dCI7CkBAIC05NjksNyArOTkyLDcgQEAK IAkJCXcgPSBjc3IzMnIoY3RsciwgRWVwcm9tSW8pOwogCQkJaWYodyAmIDEpCiAJCQkJYnJlYWs7 Ci0JCQlkZWxheSg1KTsKKwkJCW1pY3JvZGVsYXkoNSk7CiAJCX0KIAkJaWYoaSA9PSAxMCkKIAkJ CXJldHVybiAiZWVwcm9tcmVhZDogdGltZW91dCI7CkBAIC05OTAsMTQgKzEwMTMsMTUgQEAKIHN0 YXRpYyBjaGFyKgogaGFuZG92ZXIoQ3RsciAqY3RscikKIHsKLQlpbnQgaTsKKwlpbnQgaSwgajsK IAogCWNzcjMydyhjdGxyLCBDZmcsIGNzcjMycihjdGxyLCBDZmcpIHwgTmljUmVhZHkpOwogCWZv cihpPTA7IGk8NTsgaSsrKXsKIAkJaWYoY3NyMzJyKGN0bHIsIENmZykgJiBOaWNSZWFkeSkKIAkJ CWdvdG8gUmVhZHk7Ci0JCWRlbGF5KDEwKTsKKwkJbWljcm9kZWxheSgxMCk7CiAJfQorCiAJaWYo Y3Rsci0+ZmFtaWx5ID49IDcwMDApewogCQljc3IzMncoY3RsciwgRGJnbGlua3B3cm1nbXQsIGNz cjMycihjdGxyLCBEYmdsaW5rcHdybWdtdCkgfCAoMTw8MzEpKTsKIAkJZGVsYXkoMSk7CkBAIC0x MDA0LDIwICsxMDI4LDE2IEBACiAJfQogCiAJY3NyMzJ3KGN0bHIsIENmZywgY3NyMzJyKGN0bHIs IENmZykgfCBQcmVwYXJlKTsKLQlmb3IoaT0wOyBpPDE1MDAwOyBpKyspewotCQlpZigoY3NyMzJy KGN0bHIsIENmZykgJiBQcmVwYXJlRG9uZSkgPT0gMCkKLQkJCWJyZWFrOwotCQlkZWxheSgxMCk7 CisJZm9yKGk9MDsgaTw3NTA7IGkrKyl7CisJCWNzcjMydyhjdGxyLCBDZmcsIGNzcjMycihjdGxy LCBDZmcpIHwgTmljUmVhZHkpOworCQlmb3Ioaj0wOyBqPDU7IGorKyl7CisJCQlpZihjc3IzMnIo Y3RsciwgQ2ZnKSAmIE5pY1JlYWR5KQorCQkJCWdvdG8gUmVhZHk7CisJCQltaWNyb2RlbGF5KDEw KTsKKwkJfQorCQltaWNyb2RlbGF5KDIwMCk7CiAJfQotCWlmKGkgPj0gMTUwMDApCi0JCXJldHVy biAiaGFuZG92ZXI6IHRpbWVvdXQiOwogCi0JY3NyMzJ3KGN0bHIsIENmZywgY3NyMzJyKGN0bHIs IENmZykgfCBOaWNSZWFkeSk7Ci0JZm9yKGk9MDsgaTw1OyBpKyspewotCQlpZihjc3IzMnIoY3Rs ciwgQ2ZnKSAmIE5pY1JlYWR5KQotCQkJZ290byBSZWFkeTsKLQkJZGVsYXkoMTApOwotCX0KIAly ZXR1cm4gImhhbmRvdmVyOiB0aW1lb3V0IjsKIFJlYWR5OgogCWlmKGN0bHItPmZhbWlseSA+PSA3 MDAwKQpAQCAtMTAzNSw3ICsxMDU1LDcgQEAKIAlmb3IoaT0wOyBpPDI1MDA7IGkrKyl7CiAJCWlm KGNzcjMycihjdGxyLCBHcGMpICYgTWFjQ2xvY2tSZWFkeSkKIAkJCXJldHVybiAwOwotCQlkZWxh eSgxMCk7CisJCW1pY3JvZGVsYXkoMTApOwogCX0KIAlyZXR1cm4gImNsb2Nrd2FpdDogdGltZW91 dCI7CiB9CkBAIC0xMDQ2LDcgKzEwNjYsNiBAQAogCWludCBjYXBvZmY7CiAJY2hhciAqZXJyOwog Ci0KIAlpZihjdGxyLT5mYW1pbHkgPj0gNzAwMCl7CiAJCS8qIFJlc2V0IGVudGlyZSBkZXZpY2Ug Ki8KIAkJY3NyMzJ3KGN0bHIsIFJlc2V0LCAoMTw8NykpOwpAQCAtMTEwMCw3ICsxMTE5LDcgQEAK IAogCQlwcnBocmVhZChjdGxyLCBPc2NDbGspOwogCQlwcnBocmVhZChjdGxyLCBPc2NDbGspOwot CQlkZWxheSgyMCk7CisJCW1pY3JvZGVsYXkoMjApOwogCiAJCXBycGh3cml0ZShjdGxyLCBPc2ND bGssIHBycGhyZWFkKGN0bHIsIE9zY0NsaykgfCBPc2NDbGtDdHJsKTsKIApAQCAtMTExOSw3ICsx MTM4LDcgQEAKIAkJCXBycGh3cml0ZShjdGxyLCBBcG1nQ2xrRW5hLCBEbWFDbGtScXQgfCBCc21D bGtScXQpOwogCQllbHNlCiAJCQlwcnBod3JpdGUoY3RsciwgQXBtZ0Nsa0VuYSwgRG1hQ2xrUnF0 KTsKLQkJZGVsYXkoMjApOworCQltaWNyb2RlbGF5KDIwKTsKIAogCQkvKiBEaXNhYmxlIEwxLUFj dGl2ZS4gKi8KIAkJcHJwaHdyaXRlKGN0bHIsIEFwbWdQY2lTdHQsIHBycGhyZWFkKGN0bHIsIEFw bWdQY2lTdHQpIHwgKDE8PDExKSk7CkBAIC0xMTU4LDcgKzExNzcsNyBAQAogCQkJZm9yKGogPSAw OyBqIDwgMjAwOyBqKyspewogCQkJCWlmKGNzcjMycihjdGxyLCBGaFR4U3RhdHVzKSAmICgweDEw MDAwPDxpKSkKIAkJCQkJYnJlYWs7Ci0JCQkJZGVsYXkoMTApOworCQkJCW1pY3JvZGVsYXkoMjAp OwogCQkJfQogCQl9CiAJCW5pY3VubG9jayhjdGxyKTsKQEAgLTExNjgsMTcgKzExODcsMTcgQEAK IAlpZihuaWNsb2NrKGN0bHIpID09IG5pbCl7CiAJCWlmKGN0bHItPm1xcngpewogCQkJcHJwaHdy aXRlKGN0bHIsIFJmaERtYUNmZywgMCk7Ci0JCQlmb3IoaiA9IDA7IGogPCAyMDA7IGorKyl7CisJ CQlmb3IoaiA9IDA7IGogPCAxMDAwOyBqKyspewogCQkJCWlmKHBycGhyZWFkKGN0bHIsIFJmaEdl blN0YXR1cykgJiBSZmhHZW5TdGF0dXNEbWFJZGxlKQogCQkJCQlicmVhazsKLQkJCQlkZWxheSgx MCk7CisJCQkJbWljcm9kZWxheSgxMCk7CiAJCQl9CiAJCX0gZWxzZSB7CiAJCQljc3IzMncoY3Rs ciwgRmhSeENvbmZpZywgMCk7Ci0JCQlmb3IoaiA9IDA7IGogPCAyMDA7IGorKyl7CisJCQlmb3Io aiA9IDA7IGogPCAxMDAwOyBqKyspewogCQkJCWlmKGNzcjMycihjdGxyLCBGaFJ4U3RhdHVzKSAm IDB4MTAwMDAwMCkKIAkJCQkJYnJlYWs7Ci0JCQkJZGVsYXkoMTApOworCQkJCW1pY3JvZGVsYXko MTApOwogCQkJfQogCQl9CiAJCW5pY3VubG9jayhjdGxyKTsKQEAgLTExOTAsNyArMTIwOSw3IEBA CiAJCQlwcnBod3JpdGUoY3RsciwgQXBtZ0Nsa0RpcywgRG1hQ2xrUnF0KTsKIAkJCW5pY3VubG9j ayhjdGxyKTsKIAkJfQotCQlkZWxheSg1KTsKKwkJbWljcm9kZWxheSg1KTsKIAl9CiAKIAlpZihj dGxyLT5mYW1pbHkgPj0gNzAwMCl7CkBAIC0xMjA2LDEyICsxMjI1LDEyIEBACiAJZm9yKGogPSAw OyBqIDwgMTAwOyBqKyspewogCQlpZihjc3IzMnIoY3RsciwgUmVzZXQpICYgKDE8PDgpKQogCQkJ YnJlYWs7Ci0JCWRlbGF5KDEwKTsKKwkJbWljcm9kZWxheSgxMCk7CiAJfQogCiAJLyogUmVzZXQg dGhlIGVudGlyZSBkZXZpY2UuICovCiAJY3NyMzJ3KGN0bHIsIFJlc2V0LCBjc3IzMnIoY3Rsciwg UmVzZXQpIHwgKDE8PDcpKTsKLQlkZWxheSgxMCk7CisJZGVsYXkoNSk7CiAKIAkvKiBDbGVhciAi aW5pdGlhbGl6YXRpb24gY29tcGxldGUiIGJpdC4gKi8KIAljc3IzMncoY3RsciwgR3BjLCBjc3Iz MnIoY3RsciwgR3BjKSAmIH5Jbml0RG9uZSk7CkBAIC0xMjM5LDcgKzEyNTgsNyBAQAogCWlmKChl cnIgPSBuaWNsb2NrKGN0bHIpKSAhPSBuaWwpCiAJCXJldHVybiBlcnI7CiAJcHJwaHdyaXRlKGN0 bHIsIEFwbWdQcywgcHJwaHJlYWQoY3RsciwgQXBtZ1BzKSB8IFJlc2V0UmVxKTsKLQlkZWxheSg1 KTsKKwltaWNyb2RlbGF5KDUpOwogCXBycGh3cml0ZShjdGxyLCBBcG1nUHMsIHBycGhyZWFkKGN0 bHIsIEFwbWdQcykgJiB+UmVzZXRSZXEpOwogCW5pY3VubG9jayhjdGxyKTsKIApAQCAtMTMwOCw3 ICsxMzI3LDcgQEAKIAkJY3Rsci0+dHlwZSAmPSAweDFGRjsKIAkJY3Rsci0+ZGFzaCA9IGN0bHIt PnR5cGUgJiAzLCBjdGxyLT50eXBlID4+PSAyOwogCQljdGxyLT5zdGVwID0gY3Rsci0+dHlwZSAm IDMsIGN0bHItPnR5cGUgPj49IDI7Ci0JCWlmKGZ3bmFtZVtjdGxyLT50eXBlXSA9PSBuaWwpewor CQlpZihjdGxyLT5md25hbWUgPT0gbmlsICYmIGZ3bmFtZVtjdGxyLT50eXBlXSA9PSBuaWwpewog CQkJcHJpbnQoIml3bDogdW5zdXBwb3J0ZWQgY29udHJvbGxlciB0eXBlICVkXG4iLCBjdGxyLT50 eXBlKTsKIAkJCXJldHVybiAtMTsKIAkJfQpAQCAtMTQ3OCw2ICsxNDk3LDExIEBACiAJCQkJcyA9 ICZpLT5ib290LnRleHQ7CiAJCQkJcy0+YWRkciA9IDB4MDAwMDAwMDA7CiAJCQkJZ290byBTZWN0 OworCQkJY2FzZSAxODoKKwkJCQlpZihsIDwgNCkKKwkJCQkJZ290byBUb29zaG9ydDsKKwkJCQlp LT5mbGFncyA9IGdldDMyKHApOworCQkJCWJyZWFrOwogCQkJY2FzZSAxOToKIAkJCQlpZihpLT5t YWluLm5zZWN0ID49IG5lbGVtKGktPm1haW4uc2VjdCkpCiAJCQkJCXJldHVybiAidG9vIG1hbnkg bWFpbiBzZWN0aW9ucyI7CkBAIC0xOTg0LDcgKzIwMDgsNyBAQAogCSpwKysgPSBtY2NbMF07CiAJ KnArKyA9IDA7CiAJKnArKyA9IDA7CS8vIHJlc2VydmVkCi0JaWYoMSl7CisJaWYoY3Rsci0+Znct PmNhcGFbMl0gJiBVY29kZUNhcExhcjIpewogCQlwICs9IDQ7CiAJCXAgKz0gNSo0OwogCX0KQEAg LTIyMzYsMTAgKzIyNjAsNiBAQAogCQljdGxyLT5yZmNmZy5zdGVwID0gKHUgPj4gMikgJiAzOwog CQljdGxyLT5yZmNmZy5kYXNoID0gKHUgPj4gMCkgJiAzOwogCQljdGxyLT5yZmNmZy5wbnVtID0g KHUgPj4gNikgJiAzOwotCi0JCWN0bHItPnJmY2ZnLnR4YW50bWFzayA9ICh1ID4+IDgpICYgMTU7 Ci0JCWN0bHItPnJmY2ZnLnJ4YW50bWFzayA9ICh1ID4+IDEyKSAmIDE1OwotCiAJfSBlbHNlIHsK IAkJaWYocmVhZG52bXNlY3QoY3RsciwgMTIsIGJ1ZiwgOCwgMCkgIT0gOCkKIAkJCXJldHVybiAi Y2FuJ3QgcmVhZCBudm0gcGh5IGNvbmZpZyI7CkBAIC0yMjcyLDcgKzIyOTIsMjAgQEAKIAkJCWVh WzVdID0gYTEgPj4gMDsKIAkJfQogCX0gZWxzZSB7Ci0JCXJlYWRudm1zZWN0KGN0bHIsIDAsIGVh LCBFYWRkcmxlbiwgMHgxNTw8MSk7CisJCS8qCisJCSAqIDcyNjAgZ2V0cyBhbmdyeSBpZiB3ZSBy ZWFkIDYgYnl0ZXMgZnJvbSAweDE1KjIuCisJCSAqIHJlYWRpbmcgOCBieXRlcyBmcm9tIDB4MTQq MiB3b3JrcyBmaW5lLgorCQkgKi8KKwkJaWYocmVhZG52bXNlY3QoY3RsciwgMCwgYnVmLCA4LCAw eDE0PDwxKSAhPSA4KQorCQkJcmV0dXJuICJjYW4ndCByZWFkIGVhIGZyb20gbnZtIjsKKworCQkv KiBieXRlIG9yZGVyIGlzIDE2IGJpdCBsaXR0bGUgZW5kaWFuLiAqLworCQllYVswXSA9IGJ1Zlsz XTsKKwkJZWFbMV0gPSBidWZbMl07CisJCWVhWzJdID0gYnVmWzVdOworCQllYVszXSA9IGJ1Zls0 XTsKKwkJZWFbNF0gPSBidWZbN107CisJCWVhWzVdID0gYnVmWzZdOwogCX0KIAltZW1tb3ZlKGN0 bHItPmVkZXYtPmFkZHIsIGVhLCBFYWRkcmxlbik7CiAKQEAgLTIzNjYsNyArMjM5OSw3IEBACiAJ CXAgKz0gMjsJCQkvKiBzbGVlcF90eF9jb3VudCAqLwogCQlwKys7CQkJLyogc2xlZXAgc3RhdGUg ZmxhZ3MgKi8KIAotCQkqcCsrID0gKGN0bHItPmZ3LT5hcGlbMF0gJiAoMTw8MzApKSAhPSAwID8g dHlwZSA6IDA7CQkvKiBzdGF0aW9uX3R5cGUgKi8KKwkJKnArKyA9IGN0bHItPmZ3LT5hcGlbMF0g JiBVY29kZUFwaVN0YSA/IHR5cGUgOiAwOwkJLyogc3RhdGlvbl90eXBlICovCiAKIAkJcCArPSAy OwkJCS8qIGFzc29jIGlkICovCiAKQEAgLTIzNzUsNyArMjQwOCw3IEBACiAJCXB1dDMyKHAsIDE8 PDApOwogCQlwICs9IDQ7CQkJLyogdGZkX3F1ZXVlX21hc2sgKi8KIAotCQlpZigxKXsKKwkJaWYo Y3Rsci0+ZnctPmFwaVswXSAmIFVjb2RlQXBpU3RhKXsKIAkJCXAgKz0gMjsJCS8qIHJ4X2JhX3dp bmRvdyAqLwogCQkJcCsrOwkJLyogc3BfbGVuZ3RoICovCiAJCQlwKys7CQkvKiB1YXBzZF9hY3Mg Ki8KQEAgLTI2NDAsNyArMjY3Myw3IEBACiBzdGF0aWMgY2hhcioKIHNldHRpbWVldmVudChDdGxy ICpjdGxyLCBpbnQgYW1yLCBpbnQgaXZhbCkKIHsKLQlpbnQgZHVyYXRpb24sIGRlbGF5LCB0aW1l aWQ7CisJaW50IHRpbWVpZDsKIAl1Y2hhciBjWzkqNF0sICpwOwogCWNoYXIgKmVycjsKIApAQCAt MjY2MiwxNCArMjY5NSw2IEBACiAJCWJyZWFrOwogCX0KIAotCWlmKGl2YWwpewotCQlkdXJhdGlv biA9IGl2YWwqMjsKLQkJZGVsYXkgPSBpdmFsLzI7Ci0JfSBlbHNlIHsKLQkJZHVyYXRpb24gPSAx MDI0OwotCQlkZWxheSA9IDA7Ci0JfQotCiAJbWVtc2V0KHAgPSBjLCAwLCBzaXplb2YoYykpOwog CXB1dDMyKHAsIGN0bHItPm1hY2lkKTsKIAlwICs9IDQ7CkBAIC0yNjc4LDIzICsyNzAzLDI3IEBA CiAJcHV0MzIocCwgdGltZWlkKTsKIAlwICs9IDQ7CiAKLQlwdXQzMihwLCAwKTsJLy8gYXBwbHkg dGltZQotCXAgKz0gNDsKLQlwdXQzMihwLCBkZWxheSk7Ci0JcCArPSA0OwotCXB1dDMyKHAsIDAp OwkvLyBkZXBlbmRzIG9uCi0JcCArPSA0OwotCXB1dDMyKHAsIDEpOwkvLyBpbnRlcnZhbAotCXAg Kz0gNDsKLQlwdXQzMihwLCBkdXJhdGlvbik7Ci0JcCArPSA0OwotCSpwKysgPSAxOwkvLyByZXBl YXQKLQkqcCsrID0gMDsJLy8gbWF4IGZyYWdzCi0JcHV0MTYocCwgMTw8MCB8IDE8PDEgfCAxPDwx MSk7CS8vIHBvbGljeQotCXAgKz0gMjsKKwlpZihhbXIgPT0gQ21kUmVtb3ZlKQorCQlwICs9IDYq NDsKKwllbHNleworCQlwdXQzMihwLCAwKTsJCQkvLyBhcHBseSB0aW1lCisJCXAgKz0gNDsKKwkJ cHV0MzIocCwgaXZhbC8yKTsJCS8vIG1heCBkZWxheQorCQlwICs9IDQ7CisJCXB1dDMyKHAsIDAp OwkJCS8vIGRlcGVuZHMgb24KKwkJcCArPSA0OworCQlwdXQzMihwLCAxKTsJCQkvLyBpbnRlcnZh bAorCQlwICs9IDQ7CisJCXB1dDMyKHAsIGl2YWw/IGl2YWwqMjogMTAyNCk7CS8vIGR1cmF0aW9u CisJCXAgKz0gNDsKKwkJKnArKyA9IDE7CQkJLy8gcmVwZWF0CisJCSpwKysgPSAwOwkJCS8vIG1h eCBmcmFncworCQlwdXQxNihwLCAxPDwwIHwgMTw8MSB8IDE8PDExKTsJLy8gcG9saWN5CisJCXAg Kz0gMjsKKwl9CiAKIAljdGxyLT50ZS5hY3RpdmUgPSAwOwotCWlmKChlcnIgPSAgY21kKGN0bHIs IDQxLCBjLCBwIC0gYykpICE9IG5pbCkKKwlpZigoZXJyID0gY21kKGN0bHIsIDQxLCBjLCBwIC0g YykpICE9IG5pbCkKIAkJcmV0dXJuIGVycjsKIAogCWlmKGFtciA9PSBDbWRSZW1vdmUpewpAQCAt MjcxMyw2ICsyNzQyLDkgQEAKIAl1Y2hhciBjWzQqKDMqNCldLCAqcDsKIAlpbnQgaTsKIAorCWlm KChjdGxyLT5mdy0+Y2FwYVsxXSAmIFVjb2RlQ2FwUXVvdGEpID09IDApCisJCXJldHVybiBuaWw7 CisKIAlpID0gMDsKIAlwID0gYzsKIApAQCAtMjgyMiwxMyArMjg1NCwxMyBAQAogCXJldHVybiBj bWQoY3RsciwgMjEwLCBjLCAxMSo0KTsKIH0KIAotc3RhdGljIHZvaWQKK3N0YXRpYyBjaGFyKgog dHR0eGJhY2tvZmYoQ3RsciAqY3RscikKIHsKIAl1Y2hhciBjWzRdOwogCQogCXB1dDMyKGMsIDAp OwotCWNtZChjdGxyLCAxMjYsIGMsIHNpemVvZihjKSk7CisJcmV0dXJuIGNtZChjdGxyLCAxMjYs IGMsIHNpemVvZihjKSk7CiB9CiAKIHN0YXRpYyBjaGFyKgpAQCAtMjg0OCw2ICsyODgwLDkgQEAK IAljaGFyICplcnI7CiAKIAlpZihjdGxyLT5jYWxpYi5kb25lID09IDApeworCQlpZihjdGxyLT5m YW1pbHkgPT0gNzAwMCkKKwkJCWlmKChlcnIgPSBzZW5kYnRjb2V4YWR2KGN0bHIpKSAhPSBuaWwp CisJCQkJcmV0dXJuIGVycjsKIAkJaWYoKGVyciA9IHJlYWRudm1jb25maWcoY3RscikpICE9IG5p bCkKIAkJCXJldHVybiBlcnI7CiAJfQpAQCAtMjg5NywxNiArMjkzMiwxNiBAQAogCiAJCS8qIElu aXRpYWxpemUgdHggYmFja29mZnMgdG8gdGhlIG1pbmltdW0uICovCiAJCWlmKGN0bHItPmZhbWls eSA9PSA3MDAwKQotCQkJdHR0eGJhY2tvZmYoY3Rscik7CisJCQlpZigoZXJyID0gdHR0eGJhY2tv ZmYoY3RscikpICE9IG5pbCkKKwkJCQlyZXR1cm4gZXJyOwogCiAJCWlmKChlcnIgPSB1cGRhdGVk ZXZpY2Vwb3dlcihjdGxyKSkgIT0gbmlsKXsKIAkJCXByaW50KCJjYW4ndCB1cGRhdGUgZGV2aWNl IHBvd2VyOiAlc1xuIiwgZXJyKTsKIAkJCXJldHVybiBlcnI7CiAJCX0KLQkJaWYoKGVyciA9IHNl bmRtY2N1cGRhdGUoY3RsciwgIlpaIikpICE9IG5pbCl7Ci0JCQlwcmludCgiY2FuJ3QgZGlzYWJs ZSBiZWFjb24gZmlsdGVyOiAlc1xuIiwgZXJyKTsKLQkJCXJldHVybiBlcnI7Ci0JCX0KKwkJaWYo Y3Rsci0+ZnctPmNhcGFbMF0gJiBVY29kZUNhcExhcikKKwkJCWlmKChlcnIgPSBzZW5kbWNjdXBk YXRlKGN0bHIsICJaWiIpKSAhPSBuaWwpCisJCQkJcmV0dXJuIGVycjsKIAkJaWYoKGVyciA9IGRp c2FibGViZWFjb25maWx0ZXIoY3RscikpICE9IG5pbCl7CiAJCQlwcmludCgiY2FuJ3QgZGlzYWJs ZSBiZWFjb24gZmlsdGVyOiAlc1xuIiwgZXJyKTsKIAkJCXJldHVybiBlcnI7CkBAIC0zMzYyLDcg KzMzOTcsNyBAQAogCWZvcihpPTA7IGk8MTAwMDsgaSsrKXsKIAkJaWYoKHBycGhyZWFkKGN0bHIs IEJzbVdyQ3RybCkgJiAoMTw8MzEpKSA9PSAwKQogCQkJYnJlYWs7Ci0JCWRlbGF5KDEwKTsKKwkJ bWljcm9kZWxheSgxMCk7CiAJfQogCWlmKGkgPT0gMTAwMCl7CiAJCW5pY3VubG9jayhjdGxyKTsK QEAgLTM0MTgsNiArMzQ1Myw3IEBACiBzdGF0aWMgY2hhcioKIHFjbWQoQ3RsciAqY3RsciwgdWlu dCBxaWQsIHVpbnQgY29kZSwgdWNoYXIgKmRhdGEsIGludCBzaXplLCBCbG9jayAqYmxvY2spCiB7 CisJY2hhciAqZXJyOwogCWludCBoZHJsZW47CiAJQmxvY2sgKmJjbWQ7CiAJdWNoYXIgKmQsICpj OwpAQCAtMzQ1MiwxMCArMzQ4OCwxMCBAQAogCQlyZXR1cm4gInFjbWQ6IGJyb2tlbiI7CiAJfQog CS8qIHdha2UgdXAgdGhlIG5pYyAoanVzdCBuZWVkZWQgZm9yIDdrKSAqLwotCWlmKGN0bHItPmZh bWlseSA9PSA3MDAwICYmIHEtPm4gPT0gMCkKLQkJaWYobmljbG9jayhjdGxyKSAhPSBuaWwpewor CWlmKGN0bHItPmZhbWlseSA9PSA3MDAwICYmIHFpZCA9PSA0ICYmIHEtPm4gPT0gMCkKKwkJaWYo KGVyciA9IG5pY2xvY2soY3RscikpICE9IG5pbCl7CiAJCQlpdW5sb2NrKGN0bHIpOwotCQkJcmV0 dXJuICJxY21kOiBidXN5IjsKKwkJCXJldHVybiBlcnI7CiAJCX0KIAlxLT5uKys7CiAJcS0+bGFz dGNtZCA9IGNvZGU7CkBAIC0zNTg2LDkgKzM2MjIsMTYgQEAKIAlpbnQgaTsKIAogCWZvcihpID0g MDsgaSA8IG5lbGVtKGN0bHItPnR4KTsgaSsrKQotCQlmbHVzaHEoY3RsciwgaSk7Ci0Jc2V0dGlt ZWV2ZW50KGN0bHIsIENtZFJlbW92ZSwgMCk7CisJCWlmKChlcnIgPSBmbHVzaHEoY3RsciwgaSkp ICE9IG5pbCl7CisJCQlwcmludCgiY2FuJ3QgZmx1c2ggcXVldWUgJWQ6ICVzXG4iLCBpLCBlcnIp OworCQkJcmV0dXJuIGVycjsKKwkJfQogCisJaWYoKGVyciA9IHNldHRpbWVldmVudChjdGxyLCBD bWRSZW1vdmUsIDApKSAhPSBuaWwpeworCQlwcmludCgiY2FuJ3QgcmVtb3ZlIHRpbWUgZXZlbnQ6 ICVzXG4iLCBlcnIpOworCQlyZXR1cm4gZXJyOworCX0KKwogCWlmKChlcnIgPSBzZXRiaW5kaW5n cXVvdGFzKGN0bHIsIC0xKSkgIT0gbmlsKXsKIAkJcHJpbnQoImNhbid0IGRpc2FibGUgcXVvdGFz OiAlc1xuIiwgZXJyKTsKIAkJcmV0dXJuIGVycjsKQEAgLTM2MzAsNyArMzY3Myw3IEBACiAJCXJl dHVybiBlcnI7CiAJfQogCWlmKChlcnIgPSBzZXRiaW5kaW5nY29udGV4dChjdGxyLCBDbWRBZGQp KSAhPSBuaWwpewotCQlwcmludCgicmVtb3ZpbmcgYmluZGluZ2NvbnRleHQ6ICVzXG4iLCBlcnIp OworCQlwcmludCgiYWRkaW5nIGJpbmRpbmdjb250ZXh0OiAlc1xuIiwgZXJyKTsKIAkJcmV0dXJu IGVycjsKIAl9CiAJaWYoKGVyciA9IHNldG1jYXN0ZmlsdGVyKGN0bHIpKSAhPSBuaWwpewpAQCAt NDE3Niw2ICs0MjE5LDggQEAKIAkJCS8qIHdldCBmbG9vciAqLwogCQljYXNlIDEwMzoJLyogY2Fs aWJyYXRpb24gZG9uZSAoVHlwZTUwMDAgb25seSkgKi8KIAkJCWN0bHItPmNhbGliLmRvbmUgPSAx OworCQkJaWYoY3Rsci0+d2FpdC53ID09IEllcnIpCisJCQkJd2FrZXVwKCZjdGxyLT53YWl0KTsK IAkJCWJyZWFrOwogCQljYXNlIDEwNzoJLyogY2FsaWJyYXRpb24gcmVzdWx0ICg+PSA3MDAwIGZh bWlseSkgKi8KIAkJCWlmKGN0bHItPmZhbWlseSA8IDcwMDApCkBAIC00MjgzLDggKzQzMjgsOCBA QAogCQlpZih0eCAhPSBuaWwgJiYgdHgtPm4gPiAwKXsKIAkJCXR4LT5uLS07CiAJCQl3YWtldXAo dHgpOwotCQkJLyogdW5sb2NrIDdrIGZhbWlseSBuaWNzIGFzIGFsbCBjb21tYW5kcyBhcmUgZG9u ZSAqLwotCQkJaWYoY3Rsci0+ZmFtaWx5ID09IDcwMDAgJiYgdHgtPm4gPT0gMCkKKwkJCS8qIHVu bG9jayA3ayBmYW1pbHkgbmljcyBhcyB0aGUgY29tbWFuZCBpcyBkb25lICovCisJCQlpZihjdGxy LT5mYW1pbHkgPT0gNzAwMCAmJiBxaWQgPT0gNCAmJiB0eC0+biA9PSAwKQogCQkJCW5pY3VubG9j ayhjdGxyKTsKIAkJfQogCX0KQEAgLTQzNTQsMTQgKzQzOTksMTIgQEAKIAlpbnQgZmFtaWx5Owog CQogCXBkZXYgPSBuaWw7Ci0Jd2hpbGUocGRldiA9IHBjaW1hdGNoKHBkZXYsIDAsIDApKSB7CisJ d2hpbGUocGRldiA9IHBjaW1hdGNoKHBkZXYsIFZpbnRlbCwgMCkpIHsKIAkJQ3RsciAqY3RscjsK IAkJdm9pZCAqbWVtOwogCQkKIAkJaWYocGRldi0+Y2NyYiAhPSAyIHx8IHBkZXYtPmNjcnUgIT0g MHg4MCkKIAkJCWNvbnRpbnVlOwotCQlpZihwZGV2LT52aWQgIT0gMHg4MDg2KQotCQkJY29udGlu dWU7CiAJCWlmKHBkZXYtPm1lbVswXS5iYXIgJiAxKQogCQkJY29udGludWU7CiAKQEAgLTQzOTgs NyArNDQ0MSw3IEBACiAJCWNhc2UgMHgwOGIxOgkvKiBXaXJlbGVzcyBBQyA3MjYwICovCiAJCWNh c2UgMHgwOGIyOgkvKiBXaXJlbGVzcyBBQyA3MjYwICovCiAJCQlmYW1pbHkgPSA3MDAwOwotCQkJ ZnduYW1lID0gbmlsOworCQkJZnduYW1lID0gIml3bS03MjYwLTE3IjsKIAkJCWJyZWFrOwogCQlj YXNlIDB4MjRmMzoJLyogV2lyZWxlc3MgQUMgODI2MCAqLwogCQkJZmFtaWx5ID0gODAwMDsK --000000000000d18e4305ca193a23-- From 9front-bounces@1ess.inri.net Sun Aug 22 09:07:28 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17M97Rqa026767 for ; Sun, 22 Aug 2021 09:07:28 GMT Received: from mail-lf1-f43.google.com ([209.85.167.43]) by 1ess; Sat Aug 21 19:49:55 -0400 2021 Received: by mail-lf1-f43.google.com with SMTP id r9so29002804lfn.3 for <9front@9front.org>; Sat, 21 Aug 2021 16:49:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=RHI91NDg1Go8f6isolS2HCe2tXiflhd+gsgHAECfFTU=; b=ggrJdZSqoIRJ2IEZtErZ4oMPKogbuDAO17yvBBNfGUtSqUjVi82pzi4F+d/oEPbc9E tvmOf7UK+njtWrMUt9Z00loUech+giUjRltFSMw3+dVqJ9r1w2QRJ2kjlWf4Z9v61MwT M4Jd+ElxtsnQk9W84obLfuMGmYtDBeT/uEZvFUIBysW4CwHmAnynHy/kzzbqij2a27ip CnQ5D55ldGN+xnQ9jicvOFUgCSNz2B9SdwiqG6PFtLNCHjjpGJAHB39zTkOD/3ranrLx JDa0vOw7vNMoPdtOMAD+SeDQ+LE7JUZbLP+tZRQJRC9S49/3DSPJ4oTPkiE5G/ZkqaET jgmQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=RHI91NDg1Go8f6isolS2HCe2tXiflhd+gsgHAECfFTU=; b=AiOvyyNJmXIYdFGwkUPBx3nSZHrSH8HsSkar4jTlEzTYer0s7ddRUl+XONXcvawgXL qxSRUKq1BwaeAjCSwT7FCaoR+XWWgp7S+H3THusf8u5KLk3F3fbqieqRGZpN1xFpAFNx WV40ZRWHQmG136ioR9ssSQLr08Q1IBAMbHiR3tRlhn66xfAP0uZceEggUijl+7qJuVHc IYSLt5Ue6A7nY5FyA/TvRiKp+s2tlIbP5yjqKfSSK7A8R+6yynbewr5X1A9Ak7aRYbxt /FnE3+AK0X1LwEJsUbqfxDvXsoIR9msH5LoVHtDqZoPZkfouH4cMG7jKcvxCgkJfCxaF gCRw== X-Gm-Message-State: AOAM533PYHHoL908C5Lz1poElSbGFNC5H/uRewelnzgsJnuYNnKhCqeB QRNdyFUrl3yIweFLbZnY6Tne0Yx+mCV9wCFOAz2nk+qnTsI= X-Google-Smtp-Source: ABdhPJx7NDuugiTqDvo4u39QJ/v+B5hqZRKnOZd1re0E6cyywC70gonyU6RIcq9X/SqWjx+tJXnlqOO2IcrYFPwhZwM= X-Received: by 2002:a05:6512:304a:: with SMTP id b10mr20894810lfb.442.1629589786231; Sat, 21 Aug 2021 16:49:46 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a2e:80c9:0:0:0:0:0 with HTTP; Sat, 21 Aug 2021 16:49:45 -0700 (PDT) In-Reply-To: <91FC6BCADEFA8E0719C4B0E435B3DCE0@felloff.net> References: <91FC6BCADEFA8E0719C4B0E435B3DCE0@felloff.net> From: Stuart Morrow Date: Sun, 22 Aug 2021 00:49:45 +0100 Message-ID: To: 9front@9front.org Content-Type: text/plain; charset="UTF-8" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: managed engine information enhancement Subject: Re: [9front] test Reply-To: 9front@9front.org Precedence: bulk hi From bounce.mMa12c6e769699f5c3b561fbf2.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 10:13:48 2021 Return-Path: Received: from tb-ob21.topicbox.com (tb-ob21.topicbox.com [173.228.157.67]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MADmxQ019508 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 10:13:48 GMT Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob21.topicbox.com (Postfix) with ESMTP id 2127132F51 for ; Sun, 22 Aug 2021 06:06:27 -0400 (EDT) (envelope-from bounce.mMa12c6e769699f5c3b561fbf2.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id 06D8A330F442; Sun, 22 Aug 2021 06:06:27 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=fjrhome.net; spf=none smtp.mailfrom=fde101@fjrhome.net smtp.helo=dpmailmta01.doteasy.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=subject:to:references:from:message-id:date :mime-version:in-reply-to:content-type:content-transfer-encoding :list-help:list-id:list-post:list-subscribe:reply-to :list-unsubscribe; s=sysmsg-1; t=1629626786; bh=otxkJzJsal9OIIbX OnMmimgYWKDRihRrWdxE33NB3cQ=; b=XNezeAou/hPDIpqwEvfVxE7FPZtGYaLL j+pEHmrqkukYQc+8hWT7IaMHmxGvcWRYkolZrtEZ4k+w0ONeJiu7s2NFAcFuJN4O VNg4Z+uysp8MF8duZy9ajgFyaYSJO7vmuSgVWPKEE9eV6LssCG+QVgUgDj/n8sHZ 7GvTfUE3YYA= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629626786; b=dnwia4Rc4HE708IQHtqmeY++3CtqQ4hfr1bTg7jf9FJh3HVb1z 89KdPl0Ox/GPV0nGQsfnvlKyjguGQvWuClSyTlMRu2qtthE8//M/Wrngqxu8BSDG WMHiYAiGCpqZmi2sU4Lg7MoD0yjodlXnMajBIaY7tnagCRqr9+NJDIgmU= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=fjrhome.net; spf=none smtp.mailfrom=fde101@fjrhome.net smtp.helo=dpmailmta01.doteasy.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: tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC did not pass); dkim=none (no signatures found); dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=fjrhome.net; iprev=pass smtp.remote-ip=65.61.219.17 (dpmailmta01-37.doteasy.com); spf=none smtp.mailfrom=fde101@fjrhome.net smtp.helo=dpmailmta01.doteasy.com; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=fail smtp.helo=dpmailmta01.doteasy.com policy.ptr=dpmailmta01-37.doteasy.com; x-return-mx=pass header.domain=fjrhome.net policy.is_org=yes (MX Records found: dpmailbu.doteasy.com,dpmail01.doteasy.com); x-return-mx=pass smtp.domain=fjrhome.net policy.is_org=yes (MX Records found: dpmailbu.doteasy.com,dpmail01.doteasy.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=subject:to :references:from:message-id:date:mime-version:in-reply-to :content-type:content-transfer-encoding:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=otxkJzJsal9OIIbXOnMmimgYWKDRihRrWdxE33NB3cQ=; b=T2M9xHomMMHd bvJ54OPthd8yuAAJEunK4V1KIsAWiOnNVaPAcRJW4iM3jtc0OMfPazkyDSOXiLYn Wg4ZB6Hk5nWqI1w8DKXVhcphYHMJFQOgNAdGOhYnPjNdb8rKsUX3+H5dap593giS WHiIE+L5dgdyvTDTTIjF7KZBtwxe97I= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id 5F7D4FF0017 for <9fans@9fans.net>; Sun, 22 Aug 2021 06:05:11 -0400 (EDT) (envelope-from fde101@fjrhome.net) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id E93DE2B48CD; Sun, 22 Aug 2021 06:05:11 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629626711; b=OGLSGpCxX5FlZX+DRUBdEo31sue/Wp//zFIxehCcO07WsysjUf snEKJNcppSdgveWRLttvDbpyKmx6UmJXYW3oUBNjsEHv0WzVAYs/y4Hg74nGRemv 41+cSYbUhn0lWxsvGP7rM1m9Vqikaf8UoOktjsyN12uL7DtptcQQ8DjgioJh/3ZC df9We5jz9qzEaxrHSlGHuuL9P4KPOWdIDc0uJs3tT7JPghgnheG5lBkCW813yH1i vyg2uSwysj6I/a35G/qB5dAee412bFCuxyas2UwN1mLyDIVljrhCqwqHIiOrXZc0 beV61XAZ4SdrulcPI9L18vZ+rgLgBfnl4MLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=subject:to:references:from:message-id:date :mime-version:in-reply-to:content-type :content-transfer-encoding; s=arcseal; t=1629626711; bh=hxsR5N+8 YnmpWuVkzhAR68t60ImSqEzsre+F53BjNs0=; b=H+25N05JsLaN55hAkk7GbR4B geugaGunL9B4IoHszv52hOZnOQ5iFRnbh2oq5uOmP2kinx8xxKOo1AyXU8QJ2Qni P02ggZkvvILWswmmbVqOJMnlKZNPyA/mZ0ylAg/DshJKL6CX5WgpufKe4+EdVCZ3 T83zHQ1VA2fYqRlLQ9tRDRQvyYWPMv2ngE0Zvl0yTl2eMqG6tIanmmtJZnUR3WWB M12ZSDHNpwzmWjcl4vh6/Gb4ORScW3I4lF575FR0cFJOLpflZ71srIgQoJM5FHcJ e1swtZz6VQA4f0Qpjuim/V+kAmoqiw0J5Fu0amQ2NHKon0IpCGMoqp0O44lABA== ARC-Authentication-Results: i=1; tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC did not pass); dkim=none (no signatures found); dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=fjrhome.net; iprev=pass smtp.remote-ip=65.61.219.17 (dpmailmta01-37.doteasy.com); spf=none smtp.mailfrom=fde101@fjrhome.net smtp.helo=dpmailmta01.doteasy.com; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=fail smtp.helo=dpmailmta01.doteasy.com policy.ptr=dpmailmta01-37.doteasy.com; x-return-mx=pass header.domain=fjrhome.net policy.is_org=yes (MX Records found: dpmailbu.doteasy.com,dpmail01.doteasy.com); x-return-mx=pass smtp.domain=fjrhome.net policy.is_org=yes (MX Records found: dpmailbu.doteasy.com,dpmail01.doteasy.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtvddggedtucdltddurdegudehrddttd dmucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgf nhhsuhgsshgtrhhisggvpdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttd enucenucfjughrpefuvfhfhffkffgfgggjtgfgihesthejredttdefjeenucfhrhhomhep fdfhrhgrnhhkucffrdcugfhnghgvlhdpucflrhdrfdcuoehfuggvuddtudesfhhjrhhhoh hmvgdrnhgvtheqnecuggftrfgrthhtvghrnheptdehveefvdfhvdeivdefledvvddtjedt ueeffeejhfdvheeigedtgeelveevgfefnecuffhomhgrihhnpehtohhpihgtsghogidrtg homhenucfkphepieehrdeiuddrvdduledrudejpdduledvrdduieekrddutddurdekuddp udejfedrieejrddufeegrddugeegnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrg hmpehinhgvthepieehrdeiuddrvdduledrudejpdhhvghlohepughpmhgrihhlmhhtrgdt uddrughothgvrghshidrtghomhdpmhgrihhlfhhrohhmpeeofhguvgdutddusehfjhhrhh homhgvrdhnvghtqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: none (fjrhome.net: No applicable sender policy available) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="fde101@fjrhome.net"; helo=dpmailmta01.doteasy.com; client-ip=65.61.219.17 Received: from dpmailmta01.doteasy.com (dpmailmta01-37.doteasy.com [65.61.219.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 06:05:10 -0400 (EDT) (envelope-from fde101@fjrhome.net) X-Default-Received-SPF: pass (skip=forwardok (res=PASS)) x-ip-name=192.168.101.81; Received: from dpmailrp01.doteasy.com (unverified [192.168.101.81]) by dpmailmta01.doteasy.com (DEO) with ESMTP id 80771450-1394429 for <9fans@9fans.net>; Sun, 22 Aug 2021 03:05:09 -0700 Received: from dpmail01.doteasy.com (dpmail01.doteasy.com [192.168.101.1]) by dpmailrp01.doteasy.com (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTP id 17MA57hp017170 for <9fans@9fans.net>; Sun, 22 Aug 2021 03:05:08 -0700 X-SmarterMail-Authenticated-As: fde101@fjrhome.net Received: from Mac-Pro.fjrhome.net (pool-173-67-134-144.hrbgpa.fios.verizon.net [173.67.134.144]) by dpmail01.doteasy.com with SMTP; Sun, 22 Aug 2021 03:04:47 -0700 Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) To: 9fans@9fans.net References: <4fb3ad2e48e31b089705a85b1374de02@hera.eonet.ne.jp> <18d7f6cc-8e13-4229-9fe3-d9247a3153fc@sirjofri.de> From: "Frank D. Engel, Jr." Message-ID: <26f2d31b-da03-f2c5-dda0-e03436c26b84@fjrhome.net> Date: Sun, 22 Aug 2021 06:04:41 -0400 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:78.0) Gecko/20100101 Thunderbird/78.13.0 MIME-Version: 1.0 In-Reply-To: <18d7f6cc-8e13-4229-9fe3-d9247a3153fc@sirjofri.de> Content-Type: text/plain; charset="UTF-8"; format="flowed" Content-Language: en-US X-Exim-Id: 26f2d31b-da03-f2c5-dda0-e03436c26b84 X-Bayes-Prob: 0.9999 (Score 4, tokens from: base:default, @@RPTN) X-Spam-Score: 4.00 (****) [Hold at 5.00] Bayes(0.9999:4.0) X-CanIt-Geo: No geolocation information available for 192.168.101.1 X-CanItPRO-Stream: base:default X-Canit-Stats-ID: 015Iy57AL - 5d51957d3289 - 20210822 X-Scanned-By: CanIt (www . roaringpenguin . com) on 192.168.101.81 X-Originating-IP: 192.168.101.81 Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 72c92032-0330-11ec-b6c3-dde27ceb7ffe Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UNjVlYzY0YWRiNTEzNzg3NC1NYTEyYzZlNzY5Njk5ZjVjM2I1NjFm?= =?UTF-8?B?YmYyPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:Ma12c6e769699f5c3b561fbf2:1:FnL8g3Op0CZMtV3pySgcc3E03L_9g8A0_B720UG4kBI Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17MADmxQ019508 While not necessarily unwelcome as a possibility, I don't think GPU-based drawing/gaming is as relevant to this discussion (or as important of a goal for Plan 9 / 9front) as is GPU compute (GPGPU). The ability to leverage GPU resources across CPU servers for computation purposes would be of great benefit to the platform, and working out a driver interface by starting the process remotely via drawterm seems like a sensible step in that direction. On 8/22/21 3:07 AM, sirjofri wrote: > > 22.08.2021 05:16:42 Eli Cohen : >> deep learning is another interest of mine too. hardware support is a >> big deal for that... some kind of support for GPUs would be nice. >> people have discussed that for years... hardware drivers are difficult >> and important to do correctly! >> >> I always really liked the "XCPU" and drawterm type ideas of using >> other OSes for their existing strengths along with Plan 9. maybe >> drawterm could have a GPU device driver or something... that being >> said I have sometimes found it ends up surprisingly easier doing it >> all on Plan 9... > > That's also something I thought about a few times already: drawterm > with GPU support. The only issue I see is, for realtime applications > like games the draw times would be network bound and thus pretty slow. > It would work for heavy GPU applications where almost no draw calls > will exist (no textures, very low poly meshes, ...), but for heavier > stuff we'd need to address that. > > That's the benefit of a native driver: you could calculate the server > side (heavy CPU calculations) on a cpu server, the client/frontend > side (including draw calls) on a terminal and the pure graphics on the > GPU. > > I'd still give the drawterm GPU a shot. Maybe I can set drawterm up > for compilation on my work PC (two GTX 1080Ti) and try figuring out > how to do all that stuff. However, I've never done graphics > applications on windows or somewhere else that uses OpenGL or DirectX > (I'd try OpenGL because portability), only written shaders so far. > I'll surely need some time (which is always rare as a game developer). > > Btw I don't know the exact specifications for GPU usage for neural > networks. I assume it's all compute shaders? Maybe it's even a kinda > blackbox, put stuff in (draw call), read things out. I assume this can > work perfectly fine for draw times, depending on the data. > > sirjofri ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T65ec64adb5137874-Ma12c6e769699f5c3b561fbf2 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From bounce.mM5c847fafe65a91d8e47e9b63.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 11:58:48 2021 Return-Path: Received: from tb-ob21.topicbox.com (tb-ob21.topicbox.com [173.228.157.67]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MBwmCO023881 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 11:58:48 GMT Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob21.topicbox.com (Postfix) with ESMTP id EEB2E336AD for ; Sun, 22 Aug 2021 07:51:20 -0400 (EDT) (envelope-from bounce.mM5c847fafe65a91d8e47e9b63.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id B5C383310B8F; Sun, 22 Aug 2021 07:51:20 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; 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=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding :list-help:list-id:list-post:list-subscribe:reply-to :list-unsubscribe; s=sysmsg-1; t=1629633080; bh=yHpCHmDxnN2ob1NX Lg4T7d8kaCFlf9dOL9idp3qJSHk=; b=EBa30lb3v4YPP13r2mdSDiSox48yMjlQ ngwrBsMWp9jiHrCzq0Z9aW51rzMIx1AH1AF3u0NPXrmMWav8H00La3qpiQCHKwup k4l7hVAuvECq0ig9RADHhIZsCLaNlPP1DbYiJYHI93HhteTLLPbyIhkUCYkSw4+V nndO8CPsmTo= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629633080; b=hyyOyCwRytJLuXsX6jGI2Ae2T+y+9noYZWgRNuuUQIKWUTSEXH aqGjRvzfbuhsZU50a16GWAbf3SEPTkA1b3L44755++0y/bhBSmsxz9gTzKKH5Z7l wvv5dnMHfZVQ7cJ75TFfO5d3LYWZvAi2Z0wz8dc7+rE8gFi+Sthj2ycH0= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; 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: tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (oat.nine.sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=oat.nine.sirjofri.de policy.ptr=oat.nine.sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=50 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=date:from :to:message-id:in-reply-to:references:subject:mime-version :content-type:content-transfer-encoding:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=yHpCHmDxnN2ob1NXLg4T7d8kaCFlf9dOL9idp3qJSHk=; b=fgybrLdIkkMu HUMWds6fz3t6X6zNMYhybCSN5DFboEMbwZ8/cHwl5abexan9FELeagkEzG6nmYj/ Sep/i9ZMesuGCgZj5G9VhMa5bi+uYtTU1rtYb+m/uTby0ObTdJAZsFwwqA+BssId +lrmifF/or7Ov394smkLUYOEiljbFWA= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id 5483433102D7 for <9fans@9fans.net>; Sun, 22 Aug 2021 07:49:59 -0400 (EDT) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id 41B5D55BFB1; Sun, 22 Aug 2021 07:49:59 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629632999; b=X2SN6Jzs0QWqvKxUZrARniGaKotgJsvOBmZJkqqhd3uMBoT4gC qjzFrpgCRIfHSsTBVAUf/83yXNnWcnn/V4jC6B6VZfmUOEgea3WUWtRLqaUu9s9R Mf/ALFsNe6nfZw+IhyiX3mqqyh8nny3Ut1aOPG+ZggZx9HQoj3UcTUuNN8v/9HMN uq3gi+PFrNhI/Vz2hyQDOIgryND4Kl+Us4G7y8qlYivvsnqO3G3r4eO73uIcKZGm Bke2lbOgRhhNyuGca3f2+FPXgo/tH6fVQiN3RKerlB9QPshdihCAe/G5rsyOmVg4 ctOTY0jHspWCozYThMXRWHMol0bLEJi+OrCw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding; s= arcseal; t=1629632999; bh=Tki3Bqmzxlz0pwtSWWjTD6QjzBa9g4YQLCHCzK wwcE4=; b=aREqVvDnn0udhoo8PeCoNU6MxL1opsnWHfkZzWLmBiYmEjSeve2W0V Ht0S1f2jTbUksVLDVrnPi77SX8Ts8iOleiPqHTBnngfJj95b154Tkk2iI3sZs1Po 1Uq965JVnzxkGzM91CtnGZ0s27qa8KoNzNUtrLcwOY5NT6z75YkU8qC+5/UMbDvO hXNIrNIhQ3K3w9aA/FX96HFI3XHGeHyv/DgCSuPN+nxAMhsCmw42qMl383Y1hRf5 Xea5ZeaKbTzqrWVgfWkjb3KnK8AWS0w+QCQTIAoMv1u9j+kH/N/JEA4LsXDEwXua Ya5GlKibEcQxvqMeDc1a6Tpl0RvI3bTA== ARC-Authentication-Results: i=1; tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (oat.nine.sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=oat.nine.sirjofri.de policy.ptr=oat.nine.sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=50 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtuddgledtucdltddurdegudelrddttd dmucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgf nhhsuhgsshgtrhhisggvpdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttd enucgovfgvgihtqfhnlhihqddqteefjeefqddtgeculdehtddmnecujfgurhepfffhvffk jghfufggtgfgsehtjeertddttdejnecuhfhrohhmpehsihhrjhhofhhrihcuoehsihhrjh hofhhrihdomhhlqdelfhgrnhhssehsihhrjhhofhhrihdruggvqeenucggtffrrghtthgv rhhnpeegffdufeeigfeuieffheeujeekhfdthfehjeejleekheegtdffveefkeejleeihe enucffohhmrghinhepthhophhitggsohigrdgtohhmnecukfhppeehrdeghedruddthedr uddvjedpleehrdeltddrvddukedrvddufeenucevlhhushhtvghrufhiiigvpedtnecurf grrhgrmhepihhnvghtpeehrdeghedruddthedruddvjedphhgvlhhopehorghtrdhnihhn vgdrshhirhhjohhfrhhirdguvgdpmhgrihhlfhhrohhmpeeoshhirhhjohhfrhhiodhmlh dqlehfrghnshesshhirhhjohhfrhhirdguvgeq X-ME-VSScore: 50 X-ME-VSCategory: clean Received-SPF: pass (sirjofri.de: 5.45.105.127 is authorized to use 'sirjofri+ml-9fans@sirjofri.de' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="sirjofri+ml-9fans@sirjofri.de"; helo=oat.nine.sirjofri.de; client-ip=5.45.105.127 Received: from oat.nine.sirjofri.de (oat.nine.sirjofri.de [5.45.105.127]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 07:49:58 -0400 (EDT) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from sirjofri.de ([95.90.218.213]) by oat; Sun Aug 22 13:49:55 +0200 2021 Date: Sun, 22 Aug 2021 11:49:54 +0000 (UTC) From: sirjofri To: 9fans <9fans@9fans.net> Message-ID: In-Reply-To: <26f2d31b-da03-f2c5-dda0-e03436c26b84@fjrhome.net> References: <4fb3ad2e48e31b089705a85b1374de02@hera.eonet.ne.jp> <18d7f6cc-8e13-4229-9fe3-d9247a3153fc@sirjofri.de> <26f2d31b-da03-f2c5-dda0-e03436c26b84@fjrhome.net> Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8"; format="flowed" X-Correlation-ID: Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 1a7b1408-033f-11ec-b9ed-b7ad7e450724 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UNjVlYzY0YWRiNTEzNzg3NC1NNWM4NDdmYWZlNjVhOTFkOGU0N2U5?= =?UTF-8?B?YjYzPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M5c847fafe65a91d8e47e9b63:1:BXSRBUM3hgN32Hvo4mOf3FJS2g39Vqm9w3Kf0E66G1U Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17MBwmCO023881 I should mention I thought about the layout of a GPUfs some time ago. I just lack lots of knowledge about this, the gist was to write shader (code or compiled?) into some files, also write image data and mesh data to other files, abd reading results from other files. But as I said, I lack lots of knowledge about how GPUs work and never wrote any OpenGL code myself, only shader code. It always seemed like it's hundreds of hundreds of lines of code to draw a triangle (which is the basic hello world program). sirjofri 22.08.2021 12:04:41 Frank D. Engel, Jr. : > While not necessarily unwelcome as a possibility, I don't think > GPU-based drawing/gaming is as relevant to this discussion (or as > important of a goal for Plan 9 / 9front) as is GPU compute (GPGPU). > > The ability to leverage GPU resources across CPU servers for > computation purposes would be of great benefit to the platform, and > working out a driver interface by starting the process remotely via > drawterm seems like a sensible step in that direction. > > On 8/22/21 3:07 AM, sirjofri wrote: >> >> 22.08.2021 05:16:42 Eli Cohen : >>> deep learning is another interest of mine too. hardware support is a >>> big deal for that... some kind of support for GPUs would be nice. >>> people have discussed that for years... hardware drivers are >>> difficult >>> and important to do correctly! >>> >>> I always really liked the "XCPU" and drawterm type ideas of using >>> other OSes for their existing strengths along with Plan 9. maybe >>> drawterm could have a GPU device driver or something... that being >>> said I have sometimes found it ends up surprisingly easier doing it >>> all on Plan 9... >> That's also something I thought about a few times already: drawterm >> with GPU support. The only issue I see is, for realtime applications >> like games the draw times would be network bound and thus pretty slow. >> It would work for heavy GPU applications where almost no draw calls >> will exist (no textures, very low poly meshes, ...), but for heavier >> stuff we'd need to address that. >> That's the benefit of a native driver: you could calculate the server >> side (heavy CPU calculations) on a cpu server, the client/frontend >> side (including draw calls) on a terminal and the pure graphics on the >> GPU. >> I'd still give the drawterm GPU a shot. Maybe I can set drawterm up >> for compilation on my work PC (two GTX 1080Ti) and try figuring out >> how to do all that stuff. However, I've never done graphics >> applications on windows or somewhere else that uses OpenGL or DirectX >> (I'd try OpenGL because portability), only written shaders so far. >> I'll surely need some time (which is always rare as a game developer). >> Btw I don't know the exact specifications for GPU usage for neural >> networks. I assume it's all compute shaders? Maybe it's even a kinda >> blackbox, put stuff in (draw call), read things out. I assume this can >> work perfectly fine for draw times, depending on the data. >> sirjofri ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T65ec64adb5137874-M5c847fafe65a91d8e47e9b63 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From bounce.mM3cda662328b544acbd9fd894.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 12:18:48 2021 Return-Path: Received: from tb-ob21.topicbox.com (tb-ob21.topicbox.com [173.228.157.67]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MCImGn015605 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 12:18:48 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob21.topicbox.com (Postfix) with ESMTP id AD5A1338F8 for ; Sun, 22 Aug 2021 08:11:39 -0400 (EDT) (envelope-from bounce.mM3cda662328b544acbd9fd894.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id 7287DFF17BA; Sun, 22 Aug 2021 08:11:39 -0400 (EDT) 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=bUPfPTrO header.a=rsa-sha256 header.s=20161025 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=morrow.stuart@gmail.com smtp.helo=mail-lj1-f174.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:from:date:message-id:to :content-type:list-help:list-id:list-post:list-subscribe :reply-to:subject:content-transfer-encoding:list-unsubscribe; s= sysmsg-1; t=1629634299; bh=cGAGrD9XrzxLrtmjHftTgAFpHfYXHqYT0StqT RT1OeU=; b=GVKO6vNDmXSgxtSCDca+j77z82fq1nnU+DW2uXJniZ1Qz/NERSCic hRZrdGhgDsc+O9TpUi/aI4hAnx8pXw7mkoq9vmC43285pDYblLOhS5J+0N7KoUXA MrnOfZBEohbDo/b2sMyBhEvMdPg+9AEdOwL61fbmYkHRP7XUyJS9qs= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629634299; b=hmzzokwfrjsb5KtE6Dz3tv8Mc6FKaviXHZacRCJ7MWeH7I7KDr vqcgrrz7shgL1i3c39ZpyA0NwVrDcbfhJPspf92yPUfi3CY5bMjIFzn4sFvmnzmA HVKXQAN7b5hWbiaAebQghSpfA+FptgmpAwSc6HjMVSqkIySJaOMps19sM= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=bUPfPTrO header.a=rsa-sha256 header.s=20161025 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=morrow.stuart@gmail.com smtp.helo=mail-lj1-f174.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: tb-mx0.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=bUPfPTrO header.a=rsa-sha256 header.s=20161025 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.208.174 (mail-lj1-f174.google.com); spf=pass smtp.mailfrom=morrow.stuart@gmail.com smtp.helo=mail-lj1-f174.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=TVxQrhIr; x-me-sender=none; x-ptr=pass smtp.helo=mail-lj1-f174.google.com policy.ptr=mail-lj1-f174.google.com; x-return-mx=pass header.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,alt1.gmail-smtp-in.l.google.com,alt2.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,alt1.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h= mime-version:from:date:message-id:to:content-type:list-help :list-id:list-post:list-subscribe:reply-to:subject :content-transfer-encoding:list-unsubscribe; s=dkim-1; bh=funMxb WdH6zVf7t182w0xxKxdD/YABbSPzuEQsnqihE=; b=jtoD8Tf5qnGZs7CB7VY2Yz 6i3JDPA5oKY9pWGEK4zSNewo0GtFKOGN22wyU+lxoXozugrN/51Dind58mSUWxJo I8fQ0OzLZc0BHAPGyMq2Syj3AcVxYpg/+EIosNwNCmOwkBMxqwnP0UlYQwYDJTZ5 ONebxOhqVtRyaO3H151Tk= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id 66F7F33110AE for <9fans@9fans.net>; Sun, 22 Aug 2021 08:10:23 -0400 (EDT) (envelope-from morrow.stuart@gmail.com) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id 60FCB1FDB10; Sun, 22 Aug 2021 08:10:23 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629634223; b=KwkJ6f8bihpMsV3YsvaFUhpF7+o0Muv+kimM9TCRadPFtY+TPs YNTGQsPJzOEaVpv0xhCH1VcD65AZtYPDFNk/1gv3B5FG/kdpHdRb/lEoAICg9gcb 4eisxjepdL4ZdSqkkAIZbnVJjlK6qg33RJGpGfk9GzRGvrpod7BTs92OUCmuhrIR ceR39a6qESA69hIMW8dnSMRjmBy4tl7CJ08R+XhclajBNoq+nAYx25p1juAOTJMO XJVn69gkPrMKCls6W0XmllR6EtFsdYx3oQgcQSwTD2y2bKR4qwRpG1UhQ2s8fafZ MO8W3dLJzBCD+3N+++DwucJXjELPmBC7e+XA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=mime-version:from:date:message-id:subject:to :content-type; s=arcseal; t=1629634223; bh=G7+0sJUkw4ZUMveJcf0dR EJijsMtUUm2zKdwYc3MfWU=; b=otQ1w/yN1mDnLHkLPqRID1dQoYO+PuHpPO1Xt QMagx6UpL+DgQJi0bh/t959LSd25eIr6/i48QLHTw3UokHWfq3sc6BsHknNr5s4U 5OBLoXbt9DjWCk+Sm97EpwDMXXaWLBjUAvRdDsRaK2Azslqef07eIaU8Nj46llnl dWrR6z8Cb/0S21Nk/bv8XDmaQJELWwaOjBZGyjv7PRAKIpyqrQwUKDTb2A+j/34J fME/wSl8bXYMVWwqPf5zopOIM7Wbm8/l6o7pDkAVVl/7mwqsSCOftE8ywixTHzsH tB/cAz5e8e9A0kMtS1UKwiKXx421woamQSCkIMT7M3s18CfiA== ARC-Authentication-Results: i=1; tb-mx0.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=bUPfPTrO header.a=rsa-sha256 header.s=20161025 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.208.174 (mail-lj1-f174.google.com); spf=pass smtp.mailfrom=morrow.stuart@gmail.com smtp.helo=mail-lj1-f174.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=TVxQrhIr; x-me-sender=none; x-ptr=pass smtp.helo=mail-lj1-f174.google.com policy.ptr=mail-lj1-f174.google.com; x-return-mx=pass header.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,alt1.gmail-smtp-in.l.google.com,alt2.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,alt1.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtfedggeelucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgfnhhsuhgsshgtrhhisggvpdfu rfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttdenucenucfjughrpefhfffkuf fvtgesthdtredttddtjeenucfhrhhomhepufhtuhgrrhhtucfoohhrrhhoficuoehmohhr rhhofidrshhtuhgrrhhtsehgmhgrihhlrdgtohhmqeenucggtffrrghtthgvrhhnpeeuud ehhfevledvtdevgeevgfektdelffegvdeludetveduleelkeeuueffffelfeenucfkphep vddtledrkeehrddvtdekrddujeegnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrg hmpehinhgvthepvddtledrkeehrddvtdekrddujeegpdhhvghlohepmhgrihhlqdhljhdu qdhfudejgedrghhoohhglhgvrdgtohhmpdhmrghilhhfrhhomhepoehmohhrrhhofidrsh htuhgrrhhtsehgmhgrihhlrdgtohhmqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (gmail.com ... _spf.google.com: Sender is authorized to use 'morrow.stuart@gmail.com' in 'mfrom' identity (mechanism 'include:_netblocks.google.com' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="morrow.stuart@gmail.com"; helo=mail-lj1-f174.google.com; client-ip=209.85.208.174 Received: from mail-lj1-f174.google.com (mail-lj1-f174.google.com [209.85.208.174]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 08:10:22 -0400 (EDT) (envelope-from morrow.stuart@gmail.com) Received: by mail-lj1-f174.google.com with SMTP id w4so24457595ljh.13 for <9fans@9fans.net>; Sun, 22 Aug 2021 05:10:22 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=G7+0sJUkw4ZUMveJcf0dREJijsMtUUm2zKdwYc3MfWU=; b=TVxQrhIrmKbXaj48EKlRE0XgmNZHPBZhOI0tmgD3YUlU0NrO9sGKirZTn0nVPt7qYL dlkEokHcVFWOvKBvG7EJ1mlx/CALUihDNOOPS/tvWOfIj9b+bzHc8DZRUAG8hVKZ60NN sed620rdQvAJzFqsXsPugtUIy+/f/s2HxST4UrbuqCI4wMl/UtAHd/XX3yqU25VSQHH4 7uLRqD84Fp/JChLi8xLF+2YypTLwTm4JLxKVFbY+C56VjQ8FZ1T0cvr+QFoOomoxnRVw 9USjKcjEYn/sEmy6uLPSCAtTyTnoG78LTmKDMkKdiRGPlb3I9PGRx7n+U0dXhxTpkzPw Ovyg== X-Gm-Message-State: AOAM5321VxLqv1jPTeWRbU08mLqyTU/PCOejz4JBCEBof4LBlbIPyMfm zBD/a0M2W9v0E25KFOZE17QIm7MjPO3o4e2UBHc1dIyCVsA= X-Google-Smtp-Source: ABdhPJyR8YNPXJDYRJYXf9gHrEFR/LjU5jg1fsKFlzURvCh98p2Em/UfJqUL7q0xyhXQCxyk4HCAovSQqYotbOBdej8= X-Received: by 2002:a2e:910f:: with SMTP id m15mr16131148ljg.275.1629634221411; Sun, 22 Aug 2021 05:10:21 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a2e:80c9:0:0:0:0:0 with HTTP; Sun, 22 Aug 2021 05:10:20 -0700 (PDT) From: Stuart Morrow Date: Sun, 22 Aug 2021 13:10:20 +0100 Message-ID: To: 9fans <9fans@9fans.net> Content-Type: text/plain; charset="UTF-8" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: f06f19ea-0341-11ec-b50c-f03d1e2aa9a4 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NM2NkYTY2MjMyOGI1NDRhY2JkOWZk?= =?UTF-8?B?ODk0Pg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> Subject: [9fans] Drawterm GPU (was: Software philosophy) List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M3cda662328b544acbd9fd894:1:vmWsjODhXiRckpwirneLx7zEgUV66q073T8ilxRViKk Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17MCImGn015605 On 22/08/2021, Eli Cohen wrote: > deep learning is another interest of mine too. hardware support is a > big deal for that... some kind of support for GPUs would be nice. > people have discussed that for years... hardware drivers are difficult > and important to do correctly! There's virtio_gpu, which I assume is less hairy and better-documented than real hardware. I think it's graphics-purpose-only. Maybe you'd be better-off just supporting cards that *only* do ML/NN acceleration? There's open-source ones. Also: > people have discussed that for years They have? I mean I might have seen occasionally someone vaguely going "some sort of GPU support would be cool to have". That isn't discussion. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-M3cda662328b544acbd9fd894 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From bounce.mM2811fbdfd8c6710bf58ff059.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 12:33:07 2021 Return-Path: Received: from tb-ob0.topicbox.com (tb-ob0.topicbox.com [64.147.108.117]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MCX68W006131 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 12:33:06 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob0.topicbox.com (Postfix) with ESMTP id C1271271D9 for ; Sun, 22 Aug 2021 08:25:57 -0400 (EDT) (envelope-from bounce.mM2811fbdfd8c6710bf58ff059.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id BBAF1FF25CC; Sun, 22 Aug 2021 08:25:57 -0400 (EDT) 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=PhqNrgZT header.a=rsa-sha256 header.s=20161025 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=newton688@gmail.com smtp.helo=mail-qk1-f181.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body 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=1629635157; bh=H8DCamsPOwbzqds7 i4pESjdh6K18+Xd+QOUOl95boqs=; b=MS71nYLYiZkDhvKbb/NFmnOTCjkzk0Df ioyYNj48RnPXlzjFbRSmbEQTAym8DzAmuRsUH7aqkMqQHy+rWj833IAPxlUI9Z6w l2oGJqsZ70v5hz6YalOOKZw8VAKBFR8mPv5ih5uS5UKdixfK0IRIx3ytvQ9B1PKL 3+1zUFmh/Yg= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629635157; b=WS/SV5yLSqxfzN/WF5XaVjUGuXBPFYID6aCS3V23HIYSVUXdZ6 AEOBpaKXwFDOXwzfWV7Qsj97ceAWLU/2ICIi9LyYHJiuchV2ZAMf841iP4WVvv1V UOLTsIcaHyB/je3XfaSU3IJpssjghGFyrlJjsXsze7uaDNIkIejV1Tsds= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=PhqNrgZT header.a=rsa-sha256 header.s=20161025 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=newton688@gmail.com smtp.helo=mail-qk1-f181.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) X-Received-Authentication-Results: tb-mx1.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=PhqNrgZT header.a=rsa-sha256 header.s=20161025 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.222.181 (mail-qk1-f181.google.com); spf=pass smtp.mailfrom=newton688@gmail.com smtp.helo=mail-qk1-f181.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=pNZTYjOb; x-me-sender=none; x-ptr=pass smtp.helo=mail-qk1-f181.google.com policy.ptr=mail-qk1-f181.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt1.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: alt1.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; 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; bh=CywHUSTivS/oUIeax8E2y3TsM/0Pf318jM8poi3I1j0=; b=UARQ7+f41tCQ A1X4rz8jzWvUUqB5iBuCRWeheFcZzsFodlu+CauM2iMy4tbOx4iCzposQpySsGL9 ri8z334oh9wOGZFG9N4XseObu0aRChHxaVFPwrnjtM8p/OruXNdo4XVaglrdnsq9 KJ3FIolt/cJmoViyWephF6Hc9ccwtsA= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id 15536FF1CCA for <9fans@9fans.net>; Sun, 22 Aug 2021 08:24:34 -0400 (EDT) (envelope-from newton688@gmail.com) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id 1418EE68D12; Sun, 22 Aug 2021 08:24:34 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629635074; b=uaYFFsd38azRBajrxzf6qGIH2BVWjuyeD3Sdld/rudtInckw4G zaQDqQ3OzFn3TImIzlQVHzaocmyC4Vet8AYX1624xo4DGzW1/uPUEG4LIdo/clOQ 18Kl2jyL8TT1BBJnPyx2anak3nLV2v9S4mX+je/g4RPrIpu+2XtiUzfeIgi1I/vB LzsWTe23OkstGyy0w1eUAD5lE9YC3SrtYAbMX7U+A+ERu9rCCk1uiUNN2V6BfnJn QJxchRDKoOklswfPL1t9WUgRfNoaAuBBLm9egdmzL9UpKgC8EwHNsP6KicYb5znj HuJV6OxJJad9b56uEnBdXD9uwBO1fONM3Sxw== 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=1629635074; bh=YrTBQhpuySRCC+G6FqAL+Ba0F+HnntcSe3HKjh41XwI=; b=K74KapUmdErc gHsmExebMSk1yJMqzwh5ZHsVrugLGLXpTZJqoPWTNNQ1GUzLwbiS7nS1tDJes+eh 8J6a5FyirVODvF4qWz/4cWLvCW9XzlCMD1qul2Q2nqn8XAqSdC1ov9oXVpA5I6pZ 0MMwToxTtx9L08Ee3mXRVGBIFlmp5Va+Q8jQrQQxqD96jEB2Y6/7q2ZVGxZVioTf ddbcbCk9EQHDGUb6obgtEt6z94MyQ2fU8zZaK1SCJv2eVVcS550QyS3vKwOxNk82 8pVtcx22YVGfQC6FlckIixwGLQMt+abmDnNxAitw91myBlcYgnbpgHGEON64AzL3 VY996f31Mw== ARC-Authentication-Results: i=1; tb-mx1.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=PhqNrgZT header.a=rsa-sha256 header.s=20161025 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.222.181 (mail-qk1-f181.google.com); spf=pass smtp.mailfrom=newton688@gmail.com smtp.helo=mail-qk1-f181.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=pNZTYjOb; x-me-sender=none; x-ptr=pass smtp.helo=mail-qk1-f181.google.com policy.ptr=mail-qk1-f181.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt1.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: alt1.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtfedghedvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgfnhhsuhgsshgtrhhisggvpdfu rfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttdenucenucfjughrpeggfhgjhf ffkffuvfgtsegrtderredttdejnecuhfhrohhmpeevhhhrihhsucfotgfivggvuceonhgv fihtohhnieekkeesghhmrghilhdrtghomheqnecuggftrfgrthhtvghrnhepleeileetie efueegleevffffudelkeeileegueehkeektedvgfevveevueetkefgnecuffhomhgrihhn pehtohhpihgtsghogidrtghomhenucfkphepvddtledrkeehrddvvddvrddukedunecuve hluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehinhgvthepvddtledrkeehrddvvddv rddukedupdhhvghlohepmhgrihhlqdhqkhduqdhfudekuddrghhoohhglhgvrdgtohhmpd hmrghilhhfrhhomhepoehnvgifthhonheikeeksehgmhgrihhlrdgtohhmqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (gmail.com ... _spf.google.com: Sender is authorized to use 'newton688@gmail.com' in 'mfrom' identity (mechanism 'include:_netblocks.google.com' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="newton688@gmail.com"; helo=mail-qk1-f181.google.com; client-ip=209.85.222.181 Received: from mail-qk1-f181.google.com (mail-qk1-f181.google.com [209.85.222.181]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 08:24:33 -0400 (EDT) (envelope-from newton688@gmail.com) Received: by mail-qk1-f181.google.com with SMTP id t190so16207358qke.7 for <9fans@9fans.net>; Sun, 22 Aug 2021 05:24:33 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=YrTBQhpuySRCC+G6FqAL+Ba0F+HnntcSe3HKjh41XwI=; b=pNZTYjOb70kn5g7EcaQoKcKju9Gq4LlaopYNiKiOLjs8eNZIVgufPnBAGP1Ae9JOQv sffVa87J8XX1/6ko1D6HAdlIOJT0RekUP1Ga87dB1wNBkembivO+PBxBnu1zGCqRsjXf UIgehQ7q9YFwO8CeOppgVrk52CretseAt0eo9H8fTiEfWqudxfZDsj4lks1IYQmVruIB P0iSnvUoTfzezZBhbPVF8fs2TmcLLnaBQbVIDvudGkl/ImnlY06mi9fOAV3CYQU5wAUA uDn53YRr8FA6OYbnJepwl7e3lNrnQchteh84tphXvrSIsi5iAbQAwEeCowiWSOdq1QYf Af4Q== X-Gm-Message-State: AOAM533NmjuuQE8OiKEFEdFJbPGpH0o+hse5HPNI9nJxQF6LBNhcRv/s /ujSWizgVypqYKukIqIAXgJcn7ozMZGk6yfRWbfAAFyQ X-Google-Smtp-Source: ABdhPJxjgSNM5RFvy+riYWRhxG4/omS0Z0DFwrDoyjwNZ6Tm3g0byw7FUU+5JoCnF2Uqp2SYzHOmbvEaeLd3PIWuT5Y= X-Received: by 2002:a37:483:: with SMTP id 125mr16852605qke.306.1629635072748; Sun, 22 Aug 2021 05:24:32 -0700 (PDT) MIME-Version: 1.0 References: <4fb3ad2e48e31b089705a85b1374de02@hera.eonet.ne.jp> <18d7f6cc-8e13-4229-9fe3-d9247a3153fc@sirjofri.de> <26f2d31b-da03-f2c5-dda0-e03436c26b84@fjrhome.net> In-Reply-To: From: Chris McGee Date: Sun, 22 Aug 2021 08:24:21 -0400 Message-ID: Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) To: 9fans <9fans@9fans.net> Content-Type: multipart/alternative; boundary="0000000000009ff03905ca24fb3f" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: eb01ba1a-0343-11ec-ac56-c7cde081f3a3 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UNjVlYzY0YWRiNTEzNzg3NC1NMjgxMWZiZGZkOGM2NzEwYmY1OGZm?= =?UTF-8?B?MDU5Pg==?= 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:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M2811fbdfd8c6710bf58ff059:1:VCRgjny8-SAg7LT4XnBYx1qQ6jBtUPV6CqovZ-Ns4l4 --0000000000009ff03905ca24fb3f Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable I was thinking that another way to get access to GPU across other OSes, chipsets, etc. might be WebGL. I was going to try with one of the web frontend drawterms out there (maybe aiju's) would be a reasonable starting point to expose a gpufs and model how it would work such that someday it could be implemented directly with Plan 9 drivers in the Plan 9 way. On Sun, Aug 22, 2021 at 7:50 AM sirjofri wrote: > I should mention I thought about the layout of a GPUfs some time ago. I > just lack lots of knowledge about this, the gist was to write shader > (code or compiled?) into some files, also write image data and mesh data > to other files, abd reading results from other files. But as I said, I > lack lots of knowledge about how GPUs work and never wrote any OpenGL > code myself, only shader code. It always seemed like it's hundreds of > hundreds of lines of code to draw a triangle (which is the basic hello > world program). > > sirjofri > > 22.08.2021 12:04:41 Frank D. Engel, Jr. : > > > While not necessarily unwelcome as a possibility, I don't think > > GPU-based drawing/gaming is as relevant to this discussion (or as > > important of a goal for Plan 9 / 9front) as is GPU compute (GPGPU). > > > > The ability to leverage GPU resources across CPU servers for > > computation purposes would be of great benefit to the platform, and > > working out a driver interface by starting the process remotely via > > drawterm seems like a sensible step in that direction. > > > > On 8/22/21 3:07 AM, sirjofri wrote: > >> > >> 22.08.2021 05:16:42 Eli Cohen : > >>> deep learning is another interest of mine too. hardware support is a > >>> big deal for that... some kind of support for GPUs would be nice. > >>> people have discussed that for years... hardware drivers are > >>> difficult > >>> and important to do correctly! > >>> > >>> I always really liked the "XCPU" and drawterm type ideas of using > >>> other OSes for their existing strengths along with Plan 9. maybe > >>> drawterm could have a GPU device driver or something... that being > >>> said I have sometimes found it ends up surprisingly easier doing it > >>> all on Plan 9... > >> That's also something I thought about a few times already: drawterm > >> with GPU support. The only issue I see is, for realtime applications > >> like games the draw times would be network bound and thus pretty slow. > >> It would work for heavy GPU applications where almost no draw calls > >> will exist (no textures, very low poly meshes, ...), but for heavier > >> stuff we'd need to address that. > >> That's the benefit of a native driver: you could calculate the server > >> side (heavy CPU calculations) on a cpu server, the client/frontend > >> side (including draw calls) on a terminal and the pure graphics on the > >> GPU. > >> I'd still give the drawterm GPU a shot. Maybe I can set drawterm up > >> for compilation on my work PC (two GTX 1080Ti) and try figuring out > >> how to do all that stuff. However, I've never done graphics > >> applications on windows or somewhere else that uses OpenGL or DirectX > >> (I'd try OpenGL because portability), only written shaders so far. > >> I'll surely need some time (which is always rare as a game developer). > >> Btw I don't know the exact specifications for GPU usage for neural > >> networks. I assume it's all compute shaders? Maybe it's even a kinda > >> blackbox, put stuff in (draw call), read things out. I assume this can > >> work perfectly fine for draw times, depending on the data. > >> sirjofri ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T65ec64adb5137874-M2811f= bdfd8c6710bf58ff059 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription --0000000000009ff03905ca24fb3f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I was thinking that another way to get access = to GPU across other OSes, chipsets, etc. might be WebGL. I was going to try= with one of the web frontend drawterms out there (maybe aiju's) would = be a reasonable starting point to expose a gpufs and model how it would wor= k such that someday it could be implemented directly with Plan 9 drivers in= the Plan 9 way.

On Sun, Aug 22, 2021 at 7:50 AM sirjofri <sirjofri+ml-9fans@sirjofri.de<= /a>> wrote:
I should mention I thought about the layout of a GPUfs some time ago. I just lack lots of knowledge about this, the gist was to write shader
(code or compiled?) into some files, also write image data and mesh data to other files, abd reading results from other files. But as I said, I
lack lots of knowledge about how GPUs work and never wrote any OpenGL
code myself, only shader code. It always seemed like it's hundreds of <= br /> hundreds of lines of code to draw a triangle (which is the basic hello
world program).

sirjofri

22.08.2021 12:04:41 Frank D. Engel, Jr. <
fde101@fjrhome.net>:

> While not necessarily unwelcome as a possibility, I don't think > GPU-based drawing/gaming is as relevant to this discussion (or as
> important of a goal for Plan 9 / 9front) as is GPU compute (GPGPU). >
> The ability to leverage GPU resources across CPU servers for
> computation purposes would be of great benefit to the platform, and > working out a driver interface by starting the process remotely via > drawterm seems like a sensible step in that direction.
>
> On 8/22/21 3:07 AM, sirjofri wrote:
>>
>> 22.08.2021 05:16:42 Eli Cohen <echoline@gmail.com>:
>>> deep learning is another interest of mine too. hardware suppor= t is a
>>> big deal for that... some kind of support for GPUs would be ni= ce.
>>> people have discussed that for years... hardware drivers are <= br /> >>> difficult
>>> and important to do correctly!
>>>
>>> I always really liked the "XCPU" and drawterm type i= deas of using
>>> other OSes for their existing strengths along with Plan 9. may= be
>>> drawterm could have a GPU device driver or something... that b= eing
>>> said I have sometimes found it ends up surprisingly easier doi= ng it
>>> all on Plan 9...
>> That's also something I thought about a few times already: dra= wterm
>> with GPU support. The only issue I see is, for realtime applicatio= ns
>> like games the draw times would be network bound and thus pretty s= low.
>> It would work for heavy GPU applications where almost no draw call= s
>> will exist (no textures, very low poly meshes, ...), but for heavi= er
>> stuff we'd need to address that.
>> That's the benefit of a native driver: you could calculate the= server
>> side (heavy CPU calculations) on a cpu server, the client/frontend=
>> side (including draw calls) on a terminal and the pure graphics on= the
>> GPU.
>> I'd still give the drawterm GPU a shot. Maybe I can set drawte= rm up
>> for compilation on my work PC (two GTX 1080Ti) and try figuring ou= t
>> how to do all that stuff. However, I've never done graphics >> applications on windows or somewhere else that uses OpenGL or Dire= ctX
>> (I'd try OpenGL because portability), only written shaders so = far.
>> I'll surely need some time (which is always rare as a game dev= eloper).
>> Btw I don't know the exact specifications for GPU usage for ne= ural
>> networks. I assume it's all compute shaders? Maybe it's ev= en a kinda
>> blackbox, put stuff in (draw call), read things out. I assume this= can
>> work perfectly fine for draw times, depending on the data.
>> sirjofri

------------------------------------------
9fans: 9fans
Permalink: https:= //9fans.topicbox.com/groups/9fans/T65ec64adb5137874-M5c847fafe65a91d8e47e9b= 63
Delivery options: https://9fans.topicbox.com/gro= ups/9fans/subscription
= --0000000000009ff03905ca24fb3f-- From bounce.mMd3d5cd693c12f948ad4720bc.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 12:38:49 2021 Return-Path: Received: from tb-ob21.topicbox.com (tb-ob21.topicbox.com [173.228.157.67]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MCcm5X025723 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 12:38:49 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob21.topicbox.com (Postfix) with ESMTP id 710AC33B40 for ; Sun, 22 Aug 2021 08:30:38 -0400 (EDT) (envelope-from bounce.mMd3d5cd693c12f948ad4720bc.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id 55715FF31DB; Sun, 22 Aug 2021 08:30:38 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; 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=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding :list-help:list-id:list-post:list-subscribe:reply-to :list-unsubscribe; s=sysmsg-1; t=1629635438; bh=H4llrOeW6E47P9Tn Apg5uxfoUgqcdZWS+pwZ43VTSzI=; b=GQilLOQhURHc/0L7D7qBzKJgVmtn+PCb McPGXiDX14whlP6aYpRAZj/m90CXhUOhXm7IhbRcY75Aa4MpWe5QsGOJ4yUYhBQy 4xjWHAbJrvv705NmwwH6RIHAsrerLoTZqYqq0qfbH4w09atRImQR7Ku4JNzXH3Hr J0tmBp1E/HE= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629635438; b=WdI0cU+yDKf4ELZ4xScbm3Slbnm0D8gl1Lf6XJwxUCEgoRwwdY SdAK4nkaHsi2dl240KvVxgjTfMGHgEkUy9O7Csq/wA3b7xABpl+L0jQQsauxOME3 RdSRjaVxF8s9WamG2+Spjm6O9DVzBGjQvdo6Hi6ISnQ4+wtttpnMV7XBI= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; 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: tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (oat.nine.sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=oat.nine.sirjofri.de policy.ptr=oat.nine.sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=date:from :to:message-id:in-reply-to:references:subject:mime-version :content-type:content-transfer-encoding:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=H4llrOeW6E47P9TnApg5uxfoUgqcdZWS+pwZ43VTSzI=; b=gr/kaaS58kQu asoa/oMab59/kGuf3mOr2KFodLn9Vqum4DclBuKV76iaygczMX6gRGg36taG9A7s 0NmmAT4R3RNdUxyKZ0aLw6xAnxTzyacCAucmyjWsZpLIFg0gDu88oRRtRTk0NjGV H7p3UPhQnGLw4lWPkLrm1FtiFTJ0ozU= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id DBFB0FF289E for <9fans@9fans.net>; Sun, 22 Aug 2021 08:29:15 -0400 (EDT) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id 3888C35CA32; Sun, 22 Aug 2021 08:29:15 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629635355; b=phFRN/RKGVP58xVE/9HPVPJeIWqzzrI/NI1WM+nDQiXDuObCnb 4MJQvHLW+tCr+ppQm5rAh9yQv+rB/FFCBg2gy3in8SiFQ/m7P9LQcHysTg+SHRnt 1yIL1mZE1lLvhP6/BxoaE5UeZwEmvKJA9ZcuUmx/X0/OOTR2V/W+xQCZDXfQ0/1k yLBWJzRGWSpq4UwhPnF2OrAyP6m/HYw34s25PajMCFhmJkRwpfl86YVPiTXzEVNK CEdTJZBv9/PEOSk1BhZb4oJeJO1ttsohKRSfLxc0eQQ43snwS+R4OVHLOz7Ko8UG CRmGtFhUJRx4BM52HSK2dQSK1chPyAZYR01Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding; s= arcseal; t=1629635355; bh=hfZgt4PKWP91yNzZkh2IEF1TYprqASKWzevMTv ssHSY=; b=gdx/1tSwz9bQWSivxK7/9Nw1OKRz7d2gw1bnwTPIMKC6NX9l6ULw1x +uoxtyyO0lCViKO9iPopVtNaWjyyKaf6jPiPYsI7+3VP9Ir8NokJmistwWzdhLuR jjs+3XhBNfGvODemzYiIeu9bpjUOwrU2OxukWZTT7Q1oIlnoUg2olMYxUSiFrohE gDqoACgitKyUmDt6CG5WElg1VZ7d9Yt6o1TWiuzDcnK2WTLtZFivee2AkaWrneQb er0edDJnrxSHDi7bsQWnc47UxAK1AgV8xiTocj4/doDIPKTjX0CjDS8EgxP1KWZw JgXRSkeIKDtKWtnRsb6rLe1zwKPp8dzA== ARC-Authentication-Results: i=1; tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (oat.nine.sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=oat.nine.sirjofri.de policy.ptr=oat.nine.sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtuddgudegleculddtuddrgeduhedrtd dtmdcutefuodetggdotefrodftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggft fghnshhusghstghrihgsvgdpuffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftd dtnecunecujfgurhepfffhvffkjghfufggtgfgsehtqhertddttdejnecuhfhrohhmpehs ihhrjhhofhhrihcuoehsihhrjhhofhhrihdomhhlqdelfhgrnhhssehsihhrjhhofhhrih druggvqeenucggtffrrghtthgvrhhnpeejvddtgeeuledvgfelteelfedvteeijeduveel gfehteejueehvdfhteekudevteenucfkphephedrgeehrddutdehrdduvdejpdelhedrle dtrddvudekrddvudefnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehinhgv thephedrgeehrddutdehrdduvdejpdhhvghlohepohgrthdrnhhinhgvrdhsihhrjhhofh hrihdruggvpdhmrghilhhfrhhomhepoehsihhrjhhofhhrihdomhhlqdelfhgrnhhssehs ihhrjhhofhhrihdruggvqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (sirjofri.de: 5.45.105.127 is authorized to use 'sirjofri+ml-9fans@sirjofri.de' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="sirjofri+ml-9fans@sirjofri.de"; helo=oat.nine.sirjofri.de; client-ip=5.45.105.127 Received: from oat.nine.sirjofri.de (oat.nine.sirjofri.de [5.45.105.127]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 08:29:14 -0400 (EDT) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from sirjofri.de ([95.90.218.213]) by oat; Sun Aug 22 14:29:12 +0200 2021 Date: Sun, 22 Aug 2021 12:29:11 +0000 (UTC) From: sirjofri To: 9fans <9fans@9fans.net> Message-ID: <92764e35-f5cf-460a-91df-050ba471e6dd@sirjofri.de> In-Reply-To: References: Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8"; format="flowed" X-Correlation-ID: <92764e35-f5cf-460a-91df-050ba471e6dd@sirjofri.de> Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 92fb5f28-0344-11ec-a1ab-8e0fd1b120ba Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NZDNkNWNkNjkzYzEyZjk0OGFkNDcy?= =?UTF-8?B?MGJjPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:Md3d5cd693c12f948ad4720bc:1:v5PdChNQh2sHzRMdlBmHpgl0Whj3EDWfHxkoyxMt4i8 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17MCcm5X025723 22.08.2021 14:10:20 Stuart Morrow : > Also: >> people have discussed that for years > > They have?  I mean I might have seen occasionally someone vaguely > going "some sort of GPU support would be cool to have".  That isn't > discussion. I've even heard of someone actually making GPU stuff work on plan 9. I've only heard from their partner, who made a cute glenda thing on a piece of cloth. I chatted with her a little and told her she should encourage her partner for some discussion about this in our channels. It looked like it's some academic work, but I don't know any details about it. Worst case, someone already has a proper and good GPU implementation for Plan 9 and nobody knows about it. sirjofri Btw if the said person reads this: it would be nice to learn some details. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-Md3d5cd693c12f948ad4720bc Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From bounce.mM5f5fc3eff26e802047dbc69d.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 13:53:49 2021 Return-Path: Received: from tb-ob21.topicbox.com (tb-ob21.topicbox.com [173.228.157.67]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MDrmpV005573 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 13:53:49 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob21.topicbox.com (Postfix) with ESMTP id 7E54934280 for ; Sun, 22 Aug 2021 09:46:22 -0400 (EDT) (envelope-from bounce.mM5f5fc3eff26e802047dbc69d.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id 3E812FF4487; Sun, 22 Aug 2021 09:46:22 -0400 (EDT) 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=kx/yIdjV header.a=rsa-sha256 header.s=20161025 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=paul.a.lalonde@gmail.com smtp.helo=mail-ej1-f50.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body 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=1629639982; bh=haMP5I1VhyKTs/aj v670gj/psQQdjhyh+sSuaS1aBDI=; b=T6krV6/cNhaOQCNNuJbSzldZ0t82KOkA CDQmv1LCF6zlMdLxFIrE9yTB0xREEUhiNp77mBlyX6alWHskXT3oLO8QCBXXwsvz R+wYNhDPHx5GXnnc1zH+fdO8opmv1R/D4hJtkp0+quactdFcWfBtcUZMK8rXH8Bn 1oySdETlalk= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629639982; b=NKWg0VUMN9TKYSf0DlgaKp3vKluJsjPcrHaHpLOO0WD3ymLkuJ 2YWG3RopMIhIQFmpYwp6l8KliOILj8VERHjZXWAh5VY8ZyLomqMDPdi0fpq7tVF6 5OuYx5yeSP0DrVSoYoZLgp3gAltOcPJmLavI/fZosP4gkVDaBfAZ+Hujo= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=kx/yIdjV header.a=rsa-sha256 header.s=20161025 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=paul.a.lalonde@gmail.com smtp.helo=mail-ej1-f50.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) X-Received-Authentication-Results: tb-mx0.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=kx/yIdjV header.a=rsa-sha256 header.s=20161025 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.218.50 (mail-ej1-f50.google.com); spf=pass smtp.mailfrom=paul.a.lalonde@gmail.com smtp.helo=mail-ej1-f50.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=QfRkCPsK; x-me-sender=none; x-ptr=pass smtp.helo=mail-ej1-f50.google.com policy.ptr=mail-ej1-f50.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt3.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: alt3.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; 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; bh=mhNfsASlooMn2lwzFjbGE1g9/tMkydrG/7PCKs2l860=; b=TYVcKaMvR9cr MbjhnYKQ8rUfqpCYxOZh/ZdSUD5iu4DfkMENlrfuNxAObFt5l3v3IPs0VNx5v4v4 3wOXsOVlMBdQGKyO9WnXxYrsQq+bIZSpUecgQ5rYMUQh5MEycue86iaQ2dA4hisA 4RwAXaju11HC+sAhe/gYSzBFGxlVUsA= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id 88A943312099 for <9fans@9fans.net>; Sun, 22 Aug 2021 09:44:58 -0400 (EDT) (envelope-from paul.a.lalonde@gmail.com) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id 7E69A2C9CE6; Sun, 22 Aug 2021 09:44:58 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629639898; b=bvMl/+TpZyR+wapPVnSYCzm/Ym9v7cmgXigtzK9s/cQiru9XCj 1LBgWD32U6VwhW0/u2SnGxfg5ObGZa3joVH469VbQ+hxIaCbbvMirdhddSnyFyxk 2P5AFcWkqC7CoDWga4vlhAKAZAdrBh8NG0Wqbwz8s5tbwLgbCA3Wcho7mh52FYh/ ktU0ld1xP1rGisM2Y2lkkUkXmZjJyIAooHxnJ/DFy48kDok1im1g8He5jGVWG6m1 3mR7PupDtr5ZtUoCHykRmgr3DTVzO+qtbgAGv3XdyUXTjDSmOCW9ZpLetCSjlUfF nbn5apJLDgmcy5R8Olqr9/0zmrJXMVjbO2mw== 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=1629639898; bh=ZQg11eQ3CHsY0OPAca+JCUnWCU1GWzqGyOg2K3YDkqc=; b=imMaTDKJ+MuT f7vk7awwAuNracR+aPxRCXs5viBfI54BPKXA3WHwxbE0hS5kRsM7VblXWbePFK5b gu5fN+7+5S3ghhp8236ltfUzN2csSym9JjszMwK/Go9tt37j11ba2+sBykZ+By5i c1R69pqj+lsU5NeutHXtFhw4BJR/upimGnO4+377E55ufKzT9mLDW6qouPalsu2B q8mzAw5PFPBw9k6hmlWex35vcDOBIXuWFzYspm/iIyiANkW5UF3WteeWZAPo1rGz jUyIL6H34Of+bvFAq43l2sN81DBVwe+uIAxGGqSRY5Lxtb2UlJ2gmUIqKHB0YsZB 7lAc+qM37Q== ARC-Authentication-Results: i=1; tb-mx0.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=kx/yIdjV header.a=rsa-sha256 header.s=20161025 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.218.50 (mail-ej1-f50.google.com); spf=pass smtp.mailfrom=paul.a.lalonde@gmail.com smtp.helo=mail-ej1-f50.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=QfRkCPsK; x-me-sender=none; x-ptr=pass smtp.helo=mail-ej1-f50.google.com policy.ptr=mail-ej1-f50.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt3.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: alt3.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtfedgheejucdltddurdegudehrddttd dmucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgf nhhsuhgsshgtrhhisggvpdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttd enucenucfjughrpeggfhgjhfffkffuvfgtsegrtderredttdejnecuhfhrohhmpefrrghu lhcunfgrlhhonhguvgcuoehprghulhdrrgdrlhgrlhhonhguvgesghhmrghilhdrtghomh eqnecuggftrfgrthhtvghrnhephedttdejffehffejkefhudffudetheegfeehteehvdfg jeeuhefhgfeuleeiveevnecuffhomhgrihhnpegrmhgurdgtohhmpdhtohhpihgtsghogi drtghomhenucfkphepvddtledrkeehrddvudekrdehtdenucevlhhushhtvghrufhiiigv pedtnecurfgrrhgrmhepihhnvghtpedvtdelrdekhedrvddukedrhedtpdhhvghlohepmh grihhlqdgvjhduqdhfhedtrdhgohhoghhlvgdrtghomhdpmhgrihhlfhhrohhmpeeophgr uhhlrdgrrdhlrghlohhnuggvsehgmhgrihhlrdgtohhmqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (gmail.com ... _spf.google.com: Sender is authorized to use 'paul.a.lalonde@gmail.com' in 'mfrom' identity (mechanism 'include:_netblocks.google.com' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="paul.a.lalonde@gmail.com"; helo=mail-ej1-f50.google.com; client-ip=209.85.218.50 Received: from mail-ej1-f50.google.com (mail-ej1-f50.google.com [209.85.218.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 09:44:57 -0400 (EDT) (envelope-from paul.a.lalonde@gmail.com) Received: by mail-ej1-f50.google.com with SMTP id bt14so30984873ejb.3 for <9fans@9fans.net>; Sun, 22 Aug 2021 06:44:57 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=ZQg11eQ3CHsY0OPAca+JCUnWCU1GWzqGyOg2K3YDkqc=; b=QfRkCPsK2OMAhTTn46hGLVXrKIUggrw3Vj/MXUwrjH57RBMzexgrvMDc6tyHoMQiqD p+UOgTYf39OkhuzYo5FTeeOEr1irNqucaquHu6dZNP6BwRAk9pQC0yv6JlDPl38ky2ek tm1dKsutug3wWooc11sacH0DQfAaf9fglrZN1mG/hY64t1zw11TH6b2KQk16b0VfdKsZ pq6HGz/MFa5W9tVldCtoFoM9Hvw8d8Z0DPXrA/YVg7sB7FKKViYBvZlV0Jxg02COqYqe OHiUWi1J7ZPtqpVnzw7LQ80FehDXsG/dKg42XMb6942KNkoMSnceYAgpGhYSOUWaMn6i I2HQ== X-Gm-Message-State: AOAM5312OE2h6jloWdKaV+kiC9Ouaqg+YmZThnqCDPliXviQ+HMG/n3w Bf0uE52uEKYACW6D9cwG83Ya8qTgufHsp1I8OvHt6K1PKifjSQ== X-Google-Smtp-Source: ABdhPJyYrAudg3E5okseWnoNWqaKM59HQ8Q+E/ztIS/DBAWHk9kb0UDICYvX8M6prXdYCypJMQ++2tINg6NGuG0F1PA= X-Received: by 2002:a17:906:144e:: with SMTP id q14mr31462136ejc.19.1629639896558; Sun, 22 Aug 2021 06:44:56 -0700 (PDT) MIME-Version: 1.0 References: <92764e35-f5cf-460a-91df-050ba471e6dd@sirjofri.de> In-Reply-To: <92764e35-f5cf-460a-91df-050ba471e6dd@sirjofri.de> From: Paul Lalonde Date: Sun, 22 Aug 2021 06:44:45 -0700 Message-ID: Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) To: 9fans <9fans@9fans.net> Content-Type: multipart/alternative; boundary="000000000000256ec905ca261b69" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 2908166e-034f-11ec-9884-8e8dd4d36a78 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NNWY1ZmMzZWZmMjZlODAyMDQ3ZGJj?= =?UTF-8?B?NjlkPg==?= 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:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M5f5fc3eff26e802047dbc69d:1:D2rwKAh8dWr-zfP1p0udRbVKhrU-dQqd7LbY4Wf7b2M --000000000000256ec905ca261b69 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable I'd love to see GPU support for Plan9. This discussion falls right into my professional capacity. I'll say that people generally *grossly* underestimate the complexity of a modern GPU and of its supporting software stack. The GPU driver is effectively a second operating system with shared memory and DMA interfaces to the host. Even bringing up a modern GPU for just compute tasks is a very large endeavour. That being said, if you want real hardware support, the best place to start is currently AMD's open-source stack. Ignoring the Vulkan bit, understanding their platform abstraction layer (PAL) and shader ISA ( https://developer.amd.com/wp-content/resources/Vega_Shader_ISA_28July2017.p= df) is the base. The lower hardware levels are reasonably well-described in linux's libdrm and its AMD support in amdgpu. Opinions on how to bring this to Plan9? I don't really have any - it's a huge pile of work with minimal benefit. If you're looking for lightweight graphics, WebGL is a doable path, and almost certainly the right way to experiment with Plan9-like interfaces to graphics hardware. Paul On Sun, Aug 22, 2021 at 5:30 AM sirjofri wrote: > > 22.08.2021 14:10:20 Stuart Morrow : > > Also: > >> people have discussed that for years > > > > They have? I mean I might have seen occasionally someone vaguely > > going "some sort of GPU support would be cool to have". That isn't > > discussion. >=20 > I've even heard of someone actually making GPU stuff work on plan 9. I've > only heard from their partner, who made a cute glenda thing on a piece of > cloth. I chatted with her a little and told her she should encourage her > partner for some discussion about this in our channels. It looked like > it's some academic work, but I don't know any details about it. >=20 > Worst case, someone already has a proper and good GPU implementation for > Plan 9 and nobody knows about it. >=20 > sirjofri >=20 > Btw if the said person reads this: it would be nice to learn some > details. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-M5f5fc= 3eff26e802047dbc69d Delivery options: https://9fans.topicbox.com/groups/9fans/subscription --000000000000256ec905ca261b69 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I'd love to see  GPU support for Plan= 9.  This discussion falls right into my professional capacity.  I= 'll say that people generally *grossly* underestimate the complexity of= a modern GPU and of its supporting software stack.  The GPU driver is= effectively a second operating system with shared memory and DMA interface= s to the host.  Even bringing up a modern GPU for just compute tasks i= s a very large endeavour.

That being said, if you= want real hardware support, the best place to start is currently AMD's= open-source stack.  Ignoring the Vulkan bit, understanding their plat= form abstraction layer (PAL) and shader ISA (https://develop= er.amd.com/wp-content/resources/Vega_Shader_ISA_28July2017.pdf) is the = base.  The lower hardware levels are reasonably well-described in= linux's libdrm and its AMD support in amdgpu.

Opinions on how to bring this to Plan9?  I don't really have an= y - it's a huge pile of work with minimal benefit.  If you're = looking for lightweight graphics, WebGL is a doable path, and almost certai= nly the right way to experiment with Plan9-like interfaces to graphics hard= ware.

Paul



On Sun, Aug 22, 2021 at 5:30 AM sirjofri <sirjofri+ml-9fans@sirjofri.de> wrote:
=

22.08.2021 14:10:20 Stuart Morrow <morrow.stuart@gmail.com>:
> Also:
>> people have discussed that for years
>
> They have?  I mean I might have seen occasionally someone vaguely=
> going "some sort of GPU support would be cool to have". = ; That isn't
> discussion.

I've even heard of someone actually making GPU stuff work on plan 9. I&= #39;ve
only heard from their partner, who made a cute glenda thing on a piece of <= br /> cloth. I chatted with her a little and told her she should encourage her partner for some discussion about this in our channels. It looked like
it's some academic work, but I don't know any details about it.

Worst case, someone already has a proper and good GPU implementation for Plan 9 and nobody knows about it.

sirjofri

Btw if the said person reads this: it would be nice to learn some
details.

------------------------------------------
9fans: 9fans
Permalink: https:= //9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-Md3d5cd693c12f948ad4720= bc
Delivery options: https://9fans.topicbox.com/gro= ups/9fans/subscription
= --000000000000256ec905ca261b69-- From bounce.mMdcb928be475cb614573450f3.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 14:03:28 2021 Return-Path: Received: from tb-ob20.topicbox.com (tb-ob20.topicbox.com [173.228.157.66]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17ME3RiT000764 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 14:03:28 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob20.topicbox.com (Postfix) with ESMTP id 8AE451E633 for ; Sun, 22 Aug 2021 09:55:21 -0400 (EDT) (envelope-from bounce.mMdcb928be475cb614573450f3.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id 4C24EFF51E7; Sun, 22 Aug 2021 09:55:21 -0400 (EDT) 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=Aa8RSOyk header.a=rsa-sha256 header.s=20161025 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=echoline@gmail.com smtp.helo=mail-qv1-f54.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body 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:content-transfer-encoding :list-help:list-id:list-post:list-subscribe:reply-to :list-unsubscribe; s=sysmsg-1; t=1629640521; bh=Vm7otnhfs69/jarA zYgEsQXTcEU6j8pG3Ah6jX1prnM=; b=dnCE5DUz3BovDsIrZYx5Arj6+f+Qaz19 N91bRX3NfGzp8jcu4Om53x0PtdTCy0bpuBEpw3I6cCjv/Iq+DHIQgurZXxaVQ98p TZK6c6Z911nOiXUQYv8utK0aYcstDxmnImZPwH0Z2I2jDSJWN9LL6Vxzhs2rJXY2 aCN4CK7W+EA= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629640521; b=pFaLCp6AZzeCLun4Uu2TZBh3mnscln46lNe/MH/7Zyyx6ULvNw caE7dZTsV/hwXSqBNHLnjP52zRPervwseX6vUEdpvtjD+UunaYMlqEAR75CxiDkt VIyss0xOpLFQSGq+C5/J5fWYyMjXdyJjShtx7aQ/hkh5IqbB+lMuIxo04= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=Aa8RSOyk header.a=rsa-sha256 header.s=20161025 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=echoline@gmail.com smtp.helo=mail-qv1-f54.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) X-Received-Authentication-Results: tb-mx1.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=Aa8RSOyk header.a=rsa-sha256 header.s=20161025 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.219.54 (mail-qv1-f54.google.com); spf=pass smtp.mailfrom=echoline@gmail.com smtp.helo=mail-qv1-f54.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=V6Hn0TEm; x-me-sender=none; x-ptr=pass smtp.helo=mail-qv1-f54.google.com policy.ptr=mail-qv1-f54.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt3.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: alt3.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; 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:content-transfer-encoding:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=v0bdqZq1wvPFTUYCGTlPzqL4Xi8R9WDLMRAGDCO0qB4=; b=E8vIxOiYSoEy DCjaNwieYGgKUTSRky5SXpD6vEeHo27TX1LCRRmmikgl7wXTTtqciz60mF5GV0zH uSXG/h6kbIICfjkLLldg7CwPdid7gnvjdT17qjgCDukmoVixHTtPBFVj760S03nr DVnTsRkolBWhu/CCp4d6XQz/jhv6gUw= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id DF49BFF48EF for <9fans@9fans.net>; Sun, 22 Aug 2021 09:53:59 -0400 (EDT) (envelope-from echoline@gmail.com) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id 78E3BED9525; Sun, 22 Aug 2021 09:53:59 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629640439; b=XZlGHp7VtsG79Pc7bp5LUYIHEE4s8w8gNheQpMSDFglYjcpLjd NPJT8dICw/KowzzleGI+ZE97KR4zVyXanD7w28tqNqGSMQ9oNbmS/VsrErepP8DK Jwkz+T10wmRoKX8eZS3v0/CcTfTWpmq1IWdzAQAvVC8u5FPkvTDBdpq2lCsXyKJo sBU1h4F1BBj6ODSTblmK0n7/7ULUVgi01hFaEmJyy9aWbGj0XHEYVxi9c+jKEFmJ QHNw3xTVRT0xua6ZFx/Nweo3ObK2yN6NcxY9PiAluN3yEVZ0heF/kAsmuD2uWcUt Rzx22YVoEhJcyXscJIGJ6APKQpKJCjAjkvfQ== 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:content-transfer-encoding; s=arcseal; t=1629640439; bh=FoOSpeNZVKAXgg3iJ69brblA5quTVcgv2+/ L/jrIh7I=; b=BPqmzhAREnEV5chCuszWfaG5qXze9LFVkoZOh7OPPd3R2WvFtrb jNLapy+VpTj85FHM9mO5i59Uf9HOSXBVxLzJQSrQ7RHTrt7B7BImYEepsfL3b0CT hzJtpDjg1GaO2uhc1K6iw7HQmO9CPjVlT+peFsi0dgesta51jKRs3vOX2YiiY2Pr RQEyHnwX1k6Otzmvvxi9IbLoz/IOVa3N4jlPNZeFiDM3ZoObCwDuh6eli3ykuEI1 KBtAB2p/48gEoL6QjSyKsDeKosEiehf6Gqk5sIgXuhwDvMGka+PwMqA1L+CS1Hjw uhp1KoZ5naWabyg/wG6sTuCXVXbKMCY9T4Q== ARC-Authentication-Results: i=1; tb-mx1.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=Aa8RSOyk header.a=rsa-sha256 header.s=20161025 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.219.54 (mail-qv1-f54.google.com); spf=pass smtp.mailfrom=echoline@gmail.com smtp.helo=mail-qv1-f54.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=V6Hn0TEm; x-me-sender=none; x-ptr=pass smtp.helo=mail-qv1-f54.google.com policy.ptr=mail-qv1-f54.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt3.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: alt3.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtfedgjedtucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgfnhhsuhgsshgtrhhisggvpdfu rfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttdenucenucfjughrpeggfhgjhf ffkffuvfgtgfesthhqredttddtjeenucfhrhhomhepgfhlihcuvehohhgvnhcuoegvtghh ohhlihhnvgesghhmrghilhdrtghomheqnecuggftrfgrthhtvghrnhepfeegjeduffelfe evieeiffffffeuteejleeugffhkeegffduteelfeehieduteelnecuffhomhgrihhnpegr mhgurdgtohhmpdhtohhpihgtsghogidrtghomhenucfkphepvddtledrkeehrddvudelrd ehgeenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepihhnvghtpedvtdelrdek hedrvdduledrheegpdhhvghlohepmhgrihhlqdhqvhduqdhfheegrdhgohhoghhlvgdrtg homhdpmhgrihhlfhhrohhmpeeovggthhholhhinhgvsehgmhgrihhlrdgtohhmqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (gmail.com ... _spf.google.com: Sender is authorized to use 'echoline@gmail.com' in 'mfrom' identity (mechanism 'include:_netblocks.google.com' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="echoline@gmail.com"; helo=mail-qv1-f54.google.com; client-ip=209.85.219.54 Received: from mail-qv1-f54.google.com (mail-qv1-f54.google.com [209.85.219.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 09:53:59 -0400 (EDT) (envelope-from echoline@gmail.com) Received: by mail-qv1-f54.google.com with SMTP id q6so8233171qvs.12 for <9fans@9fans.net>; Sun, 22 Aug 2021 06:53:59 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:content-transfer-encoding; bh=FoOSpeNZVKAXgg3iJ69brblA5quTVcgv2+/L/jrIh7I=; b=V6Hn0TEm5Ejk+LlgLizb+HpInBhPqPPWnLit4CGhPGsmyVvBomHY4AC6qJP/+8+TSL Cq8EtrEO4ch7lzBFP50e3SSSI0aZC5dqTIIQ1R63+Vmxcnu85YdSmpD090KJtB8fudQ3 d6qVU/Q2dtjApTFxl8EgF6rQ0ekDqH3GTiUxIIPxCJ/cKQHGIlJv8ThPUaZmkiXrzEx8 WvkCpCGhGv6D9waGoYquGwJo49F4d2M9nQaxa9nfS7LLL6ydwMKpXjXa8XDlQaCdAHYg iYELd28vZmB1I2Mgub4A5XX5zShca6GMy46FHZRaSyI9mlZvshKooZWWJYdHZh1qD+yc fu8A== X-Gm-Message-State: AOAM530Svez999Zh7f5spli09zqxmvak3Du2DUpDkHKpyXQEu+utTMla 8q9CTYbpK7d1N5BBZLFvTIanCTsRfpWn4trj34iXwTzV8hE= X-Google-Smtp-Source: ABdhPJwx81RYvnBlPvm/p3YlVhKPTXXjUnmkH5Fi07CfygBzmlpR7lQ/OPJp/y5nMkyzOK2EYmY+uyrFqV8zU9J47b0= X-Received: by 2002:a0c:f901:: with SMTP id v1mr15446296qvn.45.1629640438793; Sun, 22 Aug 2021 06:53:58 -0700 (PDT) MIME-Version: 1.0 References: <92764e35-f5cf-460a-91df-050ba471e6dd@sirjofri.de> In-Reply-To: From: Eli Cohen Date: Sun, 22 Aug 2021 06:53:48 -0700 Message-ID: Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) To: 9fans <9fans@9fans.net> Content-Type: text/plain; charset="UTF-8" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 6a79789e-0350-11ec-9311-a539908a6bcb Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NZGNiOTI4YmU0NzVjYjYxNDU3MzQ1?= =?UTF-8?B?MGYzPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:Mdcb928be475cb614573450f3:1:nvgl4SEMPI177wBBk59xW_xdjgaNkxs8qqJOmycz55Y Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17ME3RiT000764 I wasn't aware of open-source cards only for ML/NN... that's interesting. I was just poking through the # drivers... as I recalled there was something specifically for using the FPU, but now I can't figure that out... I'm not sure where I saw that or thought that... that was more what I was thinking, though. On Sun, Aug 22, 2021 at 6:46 AM Paul Lalonde wrote: > > I'd love to see GPU support for Plan9. This discussion falls right into my professional capacity. I'll say that people generally *grossly* underestimate the complexity of a modern GPU and of its supporting software stack. The GPU driver is effectively a second operating system with shared memory and DMA interfaces to the host. Even bringing up a modern GPU for just compute tasks is a very large endeavour. > > That being said, if you want real hardware support, the best place to start is currently AMD's open-source stack. Ignoring the Vulkan bit, understanding their platform abstraction layer (PAL) and shader ISA (https://developer.amd.com/wp-content/resources/Vega_Shader_ISA_28July2017.pdf) is the base. The lower hardware levels are reasonably well-described in linux's libdrm and its AMD support in amdgpu. > > Opinions on how to bring this to Plan9? I don't really have any - it's a huge pile of work with minimal benefit. If you're looking for lightweight graphics, WebGL is a doable path, and almost certainly the right way to experiment with Plan9-like interfaces to graphics hardware. > > Paul > > > > On Sun, Aug 22, 2021 at 5:30 AM sirjofri wrote: >> >> >> 22.08.2021 14:10:20 Stuart Morrow : >> > Also: >> >> people have discussed that for years >> > >> > They have? I mean I might have seen occasionally someone vaguely >> > going "some sort of GPU support would be cool to have". That isn't >> > discussion. >> >> I've even heard of someone actually making GPU stuff work on plan 9. I've >> only heard from their partner, who made a cute glenda thing on a piece of >> cloth. I chatted with her a little and told her she should encourage her >> partner for some discussion about this in our channels. It looked like >> it's some academic work, but I don't know any details about it. >> >> Worst case, someone already has a proper and good GPU implementation for >> Plan 9 and nobody knows about it. >> >> sirjofri >> >> Btw if the said person reads this: it would be nice to learn some >> details. > > 9fans / 9fans / see discussions + participants + delivery options Permalink ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-Mdcb928be475cb614573450f3 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From 9front-bounces@1ess.inri.net Sun Aug 22 14:43:19 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17MEhI9n025684 for ; Sun, 22 Aug 2021 14:43:19 GMT Received: from duke.felloff.net ([216.126.196.34]) by 1ess; Sun Aug 22 10:33:49 -0400 2021 Message-ID: <241C0FB9D5249020D1FED63DFC63D664@felloff.net> Date: Sun, 22 Aug 2021 16:33:37 +0200 From: cinap_lenrek@felloff.net To: 9front@9front.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: YAML API interface Subject: Re: [9front] [PATCH] mk for only supported archs Reply-To: 9front@9front.org Precedence: bulk also, can we separate the /sys/src/mkfile.proto and /sys/src/cmd/mkfile and /sys/src/9/zynq changes from the mtx kernel changes? why are we removing spim from archs? -- cinap From bounce.mM620f53eecae429a368d102bf.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 15:08:06 2021 Return-Path: Received: from tb-ob0.topicbox.com (tb-ob0.topicbox.com [64.147.108.117]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MF8595014787 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 15:08:06 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob0.topicbox.com (Postfix) with ESMTP id ABC5C28330 for ; Sun, 22 Aug 2021 10:58:30 -0400 (EDT) (envelope-from bounce.mM620f53eecae429a368d102bf.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id A1384FF64EB; Sun, 22 Aug 2021 10:58:30 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; 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=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding :list-help:list-id:list-post:list-subscribe:reply-to :list-unsubscribe; s=sysmsg-1; t=1629644310; bh=VusTBtMVhzH1j7rg XyaaFYjbzFyy8TH0lWNdgvn1SlY=; b=mW86hqHXzOIMXnb4B91qQfloK3woqkOM 6aGugGS1gwczSdueUWzyCi92aB5h6XoHa/MdOJ0DPMS8wCWUK4n/bLS1VXyIYOpj /NEPxhwdxG+2JtxqlN7CIi3FvImfuoP9Uo6uVo+G8PrUwTD26grMoG/6TYwsj5zt pEoTBs9emDk= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629644310; b=s1O/svPrLETVx4bgj1GCAu1A/HPzKdCSrGtTCK6IxblTsCdWIM bDRhF9dXN7GVMhpHs9Sy5Mq2N4d85fd+ANY8GwDsDcys+Dbks8tNVObGou3tF9pi uXLRvqA7dNVznVmRF1zm3WaFAwXDJC39KVw5lK1Ptzqm+NM/GQ9v3pol4= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; 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: tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (oat.nine.sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=oat.nine.sirjofri.de policy.ptr=oat.nine.sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=date:from :to:message-id:in-reply-to:references:subject:mime-version :content-type:content-transfer-encoding:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=VusTBtMVhzH1j7rgXyaaFYjbzFyy8TH0lWNdgvn1SlY=; b=Bs1wj840f06Y nJMsIhKrxMwlf9NUS8Q1CTOWwSQb4sY+K/cItrIoVdNX2Cqa+tSJ3Eg8xC/zE5rH aRJUV6IZAvqwuMEeiWt0kD3BhBi/h4xEor5RGOoomf1UZ8EIz4/C1HyXF5AtuaJB HfRBiodQFVFnxh3qt0mGRQPVefDdwAQ= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id 2E0C1FF5BE6 for <9fans@9fans.net>; Sun, 22 Aug 2021 10:57:15 -0400 (EDT) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id 35297C40D79; Sun, 22 Aug 2021 10:57:15 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629644235; b=E3kIiQXOv9Roue/Jgg18Cps5JgT2/ti2JalOHwN4TKSNJNS8Qp wi9xn0gjwpRnh4mckYoLCr6z21sk+QHFrHcY/y6xm9LvLRg+2sXoDbXMv2I6eaM7 VYk9ABZi0/NwGGFM8hjHIMVYF8W7rAZjrydrh9sdXXHxfV2MHy6VIUJa3ffx6oZG sCbHKLiTFsJPyDPVla4odz2gI7RztXT6IHJbxNnhmDleJVnBY03xUljEgTPOuGDE wDXbAXZGnlGCrv+CSgF7CMfT2OGDCda9/oxquJWiiQ3FuNjaRzdSSS3jlDnNp6ut dJKTWMDtJfEBOPxAQVEwNQxGPquNot0qfDTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding; s= arcseal; t=1629644235; bh=tPx1/FDG+OuXx7WYMlXABEr2E/PkyHOAt/XxlY GT/E8=; b=DPW8PUB+HuyXDp/+3LS2XyZoJ2b4F1Y3v64HbqXdluSxT2SSThw7Sx XoXgSg/EhV4f29Jv9NxcvAjv+o1KgCTdlA3C5oZXLyJGbgy/x3kvI7+LyYUnrcG9 uAFWXmjGUlzbJtcCGBBqtRPFCWkf38SXBgZj4sQ8MopnCLCnYKlzJV8PdcT0Kp71 xqz1cOWFNp8OMZqfpnq1l9EB38UrgMaxR7SBjdcAbt53MBG5dyHJlPZpl2pfAQOf 8dbRmjVeUULVVH/4CCbG6mO8ejeosrYZVlSdhfFw8rhfRDdncFB3ZtySKH0mGuJl ZL5o1Od4JRV9nO9EVZiUutSv6h2+JYNA== ARC-Authentication-Results: i=1; tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (oat.nine.sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=oat.nine.sirjofri.de policy.ptr=oat.nine.sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtuddgudegleculddtuddrgeduhedrtd dtmdcutefuodetggdotefrodftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggft fghnshhusghstghrihgsvgdpuffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftd dtnecunecujfgurhepfffhvffkjghfufggtgfgsehtqhertddttdejnecuhfhrohhmpehs ihhrjhhofhhrihcuoehsihhrjhhofhhrihdomhhlqdelfhgrnhhssehsihhrjhhofhhrih druggvqeenucggtffrrghtthgvrhhnpeeuhfehgfevffejgfegledujedtkeevtdfhfedu veekueegtdelleeiieehheeuudenucffohhmrghinheprghmugdrtghomhdpthhophhitg gsohigrdgtohhmnecukfhppeehrdeghedruddthedruddvjedpleehrdeltddrvddukedr vddufeenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepihhnvghtpeehrdeghe druddthedruddvjedphhgvlhhopehorghtrdhnihhnvgdrshhirhhjohhfrhhirdguvgdp mhgrihhlfhhrohhmpeeoshhirhhjohhfrhhiodhmlhdqlehfrghnshesshhirhhjohhfrh hirdguvgeq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (sirjofri.de: 5.45.105.127 is authorized to use 'sirjofri+ml-9fans@sirjofri.de' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="sirjofri+ml-9fans@sirjofri.de"; helo=oat.nine.sirjofri.de; client-ip=5.45.105.127 Received: from oat.nine.sirjofri.de (oat.nine.sirjofri.de [5.45.105.127]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 10:57:14 -0400 (EDT) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from sirjofri.de ([95.90.218.213]) by oat; Sun Aug 22 16:57:12 +0200 2021 Date: Sun, 22 Aug 2021 14:57:11 +0000 (UTC) From: sirjofri To: 9fans <9fans@9fans.net> Message-ID: In-Reply-To: References: <92764e35-f5cf-460a-91df-050ba471e6dd@sirjofri.de> Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8"; format="flowed" X-Correlation-ID: Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 4007db56-0359-11ec-a40c-b46aa6b95514 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NNjIwZjUzZWVjYWU0MjlhMzY4ZDEw?= =?UTF-8?B?MmJmPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M620f53eecae429a368d102bf:1:PFArx4dUSpoVI_sctpe6rV5HThqsKub_pr3eeewjLmE Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17MF8595014787 The benefit of a drawterm GPU implementation is that you can basically use the whole driver pipeline of the underlying host OS. Eg for the windows version you can just write the software that uses the GPU driver. All programming effort will just be writing a graphics implementation and a proper 9p interface. Basically just a driver bridge between 9p and OpenGL for example. sirjofri 22.08.2021 15:44:45 Paul Lalonde : > I'd love to see  GPU support for Plan9.  This discussion falls right > into my professional capacity.  I'll say that people generally > *grossly* underestimate the complexity of a modern GPU and of its > supporting software stack.  The GPU driver is effectively a second > operating system with shared memory and DMA interfaces to the host.  > Even bringing up a modern GPU for just compute tasks is a very large > endeavour. > > That being said, if you want real hardware support, the best place to > start is currently AMD's open-source stack.  Ignoring the Vulkan bit, > understanding their platform abstraction layer (PAL) and shader ISA > (https://developer.amd.com/wp-content/resources/Vega_Shader_ISA_28July2017.pdf) > is the base.  The lower hardware levels are reasonably > well-described in linux's libdrm and its AMD support in amdgpu. > > Opinions on how to bring this to Plan9?  I don't really have any - it's > a huge pile of work with minimal benefit.  If you're looking for > lightweight graphics, WebGL is a doable path, and almost certainly the > right way to experiment with Plan9-like interfaces to graphics > hardware. > > Paul > > > > On Sun, Aug 22, 2021 at 5:30 AM sirjofri > wrote: >> >> 22.08.2021 14:10:20 Stuart Morrow : >>> Also: >>>> people have discussed that for years >>> >>> They have?  I mean I might have seen occasionally someone vaguely >>> going "some sort of GPU support would be cool to have".  That isn't >>> discussion. >> >> I've even heard of someone actually making GPU stuff work on plan 9. >> I've >> only heard from their partner, who made a cute glenda thing on a piece >> of >> cloth. I chatted with her a little and told her she should encourage >> her >> partner for some discussion about this in our channels. It looked like >> it's some academic work, but I don't know any details about it. >> >> Worst case, someone already has a proper and good GPU implementation >> for >> Plan 9 and nobody knows about it. >> >> sirjofri >> >> Btw if the said person reads this: it would be nice to learn some >> details. > > *9fans[https://9fans.topicbox.com/latest]* / 9fans / see > discussions[https://9fans.topicbox.com/groups/9fans] + > participants[https://9fans.topicbox.com/groups/9fans/members] + > delivery options[https://9fans.topicbox.com/groups/9fans/subscription] > Permalink[https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-M5f5fc3eff26e802047dbc69d] ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-M620f53eecae429a368d102bf Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From bounce.mM8658a330dbb6ca9a6e216777.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 15:54:16 2021 Return-Path: Received: from tb-ob1.topicbox.com (tb-ob1.topicbox.com [64.147.108.173]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MFsFxp011504 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 15:54:16 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob1.topicbox.com (Postfix) with ESMTP id 1E25B306FE for ; Sun, 22 Aug 2021 11:48:45 -0400 (EDT) (envelope-from bounce.mM8658a330dbb6ca9a6e216777.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id 13B6933309F2; Sun, 22 Aug 2021 11:48:45 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=iitbombay-org.20150623.gappssmtp.com header.i=@iitbombay-org.20150623.gappssmtp.com header.b=nMynfnSW header.a=rsa-sha256 header.s=20150623 x-bits=2048; dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=iitbombay.org; spf=pass smtp.mailfrom=bakul@iitbombay.org smtp.helo=mail-qk1-f182.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=from:content-type:mime-version:subject:date :references:to:in-reply-to:message-id:list-help:list-id :list-post:list-subscribe:reply-to:content-transfer-encoding :list-unsubscribe; s=sysmsg-1; t=1629647324; bh=XGAnRr12p1ePGwBO ztCeHI0ETdBYsfPrDUcQyVTsbLk=; b=hn0ge+6iP0DYBve+9jFJQf+9+GQj1gtJ /JKHJfwFzUqRXzEndmhZ/F3fb0oHWQRKW1zSz5ydxgTrxPJxfm5QyXWN9BAIT1Ru Y8MueAKZIXefdvfV8ke6uuKEwbaWlOYneS0vgSinxMrWJ9HQZB3T34iI37HeAovk epzqgCmlS0M= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629647324; b=PDxZnp12+wnsrWv3LMKYggjJWjuX7VYtiuRwUpnoYFYkBb6F7j 7pZ0HGPzZwd19oNzgVKSxHjNO8kQKWwy3LsZ0xLOvabnPQP9WBAWJaY9TYcGwkUj Yc6uO92PFXUtdoKwSs6rnisMdZSQnlljcS7TEZm7Lfy8/JwU7DxLaV7xk= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=iitbombay-org.20150623.gappssmtp.com header.i=@iitbombay-org.20150623.gappssmtp.com header.b=nMynfnSW header.a=rsa-sha256 header.s=20150623 x-bits=2048; dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=iitbombay.org; spf=pass smtp.mailfrom=bakul@iitbombay.org smtp.helo=mail-qk1-f182.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) X-Received-Authentication-Results: tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC did not pass); dkim=pass (2048-bit rsa key sha256) header.d=iitbombay-org.20150623.gappssmtp.com header.i=@iitbombay-org.20150623.gappssmtp.com header.b=nMynfnSW header.a=rsa-sha256 header.s=20150623 x-bits=2048; dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=iitbombay.org; iprev=pass smtp.remote-ip=209.85.222.182 (mail-qk1-f182.google.com); spf=pass smtp.mailfrom=bakul@iitbombay.org smtp.helo=mail-qk1-f182.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=t7nKQbwp; x-me-sender=none; x-ptr=pass smtp.helo=mail-qk1-f182.google.com policy.ptr=mail-qk1-f182.google.com; x-return-mx=pass header.domain=iitbombay.org policy.is_org=yes (MX Records found: alt4.aspmx.l.google.com,alt1.aspmx.l.google.com,aspmx.l.google.com,alt2.aspmx.l.google.com,alt3.aspmx.l.google.com); x-return-mx=pass smtp.domain=iitbombay.org policy.is_org=yes (MX Records found: alt4.aspmx.l.google.com,alt1.aspmx.l.google.com,aspmx.l.google.com,alt2.aspmx.l.google.com,alt3.aspmx.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=from :content-type:mime-version:subject:date:references:to :in-reply-to:message-id:list-help:list-id:list-post :list-subscribe:reply-to:content-transfer-encoding :list-unsubscribe; s=dkim-1; bh=4RxzoWPFy/Bl+/zyCX77dxeATU+vo3i3 mzAg8GEh7fU=; b=UKwQqF7+cHqZjkxnBEYX2EiZrhXhZT6t1phSrfeIOl6n47qO XR+ULl4KwwLvIkManMlLl7vSz3gVlcz/nO5hRWuPTO66p8jePhxf2yPGCEf0UzT5 Tjstdm+STa22xpMEdU8wHQla+LVIuP6S9Dvn5q24uT+u4jZaww3uVdT2g1s= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id ECEB7333004E for <9fans@9fans.net>; Sun, 22 Aug 2021 11:47:21 -0400 (EDT) (envelope-from bakul@iitbombay.org) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id A8692DE7270; Sun, 22 Aug 2021 11:47:21 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629647241; b=q8bvNwnDjN5OYIV3ETrKwEXxMjcQE7zggiiuuwTWISFZ13EHv6 w7g6pvQP1jWwpo5rhm7OFtbpsi43jrBoD3lFiKE2D7vq/3CXBfyIT4jcxXccQIEj 34dfhmP5CExz1yeZGgRFOpYRpnXXpMXtsgyCpVyMlRKPCPmncKBsNg9c0MkTl/6j vcxx6JQNhEwnkZbJHltC4pOpC37g4qpRt10xlDnuVyeG6lnLHyrtFrviR77/HbCV XrdU36yhLXUxElf3FZ58cUiCcv+kSDy5DtvPS/J8kFX3vr+2Ne8VD+hbng3ZEE6X fOpRveIrzE25pgBaYHIrzgOm1fh4qPSZ39DA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=from:content-type:mime-version:subject:date :references:to:in-reply-to:message-id; s=arcseal; t=1629647241; bh=VohCkY54e0sVL7y0h2VZ7coOTPn6OEgfUmY84xz2TNg=; b=XKqJfIVxGzF+ wneo4OHe1QKYyvwEQXiTa6pEsgcht+tSI1WAXQkzeIGo9bzf67jdmtjRzF7PrzIg FQgsZ9vdxVWj6PTVVsQFjH1AbwRJ+Xg4lkfyGj92Q+kfQknRghOfaX6HhYpauzjz 8bQn9cRIaYUiBvO/ymR07RrgEG8le6xXKZijqLtjaTC3D2NfG4GsuqCazR88MKc+ BJwS7hYUY+Tjb1FA9G+kSPoNBqJwsl4p6pbqeTJp0KyNPjzGKRJ4CT4Zjj0qNVVl MrfTzC2y7IjM6nhsCICDIgrxS/D5Y5YehCn59AUBAZ3q2PQ4b7R7pgtReMgcn3eO wClo86khrA== ARC-Authentication-Results: i=1; tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC did not pass); dkim=pass (2048-bit rsa key sha256) header.d=iitbombay-org.20150623.gappssmtp.com header.i=@iitbombay-org.20150623.gappssmtp.com header.b=nMynfnSW header.a=rsa-sha256 header.s=20150623 x-bits=2048; dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=iitbombay.org; iprev=pass smtp.remote-ip=209.85.222.182 (mail-qk1-f182.google.com); spf=pass smtp.mailfrom=bakul@iitbombay.org smtp.helo=mail-qk1-f182.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=t7nKQbwp; x-me-sender=none; x-ptr=pass smtp.helo=mail-qk1-f182.google.com policy.ptr=mail-qk1-f182.google.com; x-return-mx=pass header.domain=iitbombay.org policy.is_org=yes (MX Records found: alt4.aspmx.l.google.com,alt1.aspmx.l.google.com,aspmx.l.google.com,alt2.aspmx.l.google.com,alt3.aspmx.l.google.com); x-return-mx=pass smtp.domain=iitbombay.org policy.is_org=yes (MX Records found: alt4.aspmx.l.google.com,alt1.aspmx.l.google.com,aspmx.l.google.com,alt2.aspmx.l.google.com,alt3.aspmx.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtuddgledtucdltddurdegudelrddttd dmucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgf nhhsuhgsshgtrhhisggvpdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttd enucenucfjughrpefhtggguffffhfvjgfkofesrgdtmherhhdtvdenucfhrhhomhepuegr khhulhcuufhhrghhuceosggrkhhulhesihhithgsohhmsggrhidrohhrgheqnecuggftrf grthhtvghrnhephfdvtdetleduvdejkeekffejffejleejjeeileevledvhffgudehtdel keeigeefnecuffhomhgrihhnpegrmhgurdgtohhmpdhtohhpihgtsghogidrtghomhenuc fkphepvddtledrkeehrddvvddvrddukedvpddutdejrddvudehrddvvdefrddvvdelnecu vehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehinhgvthepvddtledrkeehrddvvd dvrddukedvpdhhvghlohepmhgrihhlqdhqkhduqdhfudekvddrghhoohhglhgvrdgtohhm pdhmrghilhhfrhhomhepoegsrghkuhhlsehiihhtsghomhgsrgihrdhorhhgqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (iitbombay.org: Sender is authorized to use 'bakul@iitbombay.org' in 'mfrom' identity (mechanism 'include:_spf.google.com' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="bakul@iitbombay.org"; helo=mail-qk1-f182.google.com; client-ip=209.85.222.182 Received: from mail-qk1-f182.google.com (mail-qk1-f182.google.com [209.85.222.182]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 11:47:21 -0400 (EDT) (envelope-from bakul@iitbombay.org) Received: by mail-qk1-f182.google.com with SMTP id t190so16562122qke.7 for <9fans@9fans.net>; Sun, 22 Aug 2021 08:47:21 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:mime-version:subject:date:references:to :in-reply-to:message-id; bh=VohCkY54e0sVL7y0h2VZ7coOTPn6OEgfUmY84xz2TNg=; b=t7nKQbwpS/G2p8byn+tO6vAcrMt6rawL2cvJAPSp6N4if2W8LR2zGXKdyS6ZuuKDTh FwzvCP8BHqYv2RNMSWCJ80jwWLyYGpzH+Y6TrKOKd/aK26MJ5mgGPNj5VSl/7XNK4nQD o22kh9idkY5Na/bu84/EiXxlWo7qngiRr8hK02jIQ40xk+zwaGVnx825NbYJaNhx0C7x akj2h+pwpn8BNNTFRs/46bgsLLbG9OZnYD6TWMAzj+VSfi9iYA2mYp+OyWNOYoLs59Qn 2sMtHLOkFi1EWSjeV9xdNK0vCDMIC8aiV9zkXr3IFQOsTjVQIVVztO21fUHCbg0ojoy9 kbGw== X-Gm-Message-State: AOAM533q6ICp8Tx76beHpmOoVjl7c8p/U3FaNRZEV9Lso71Wu87drvSi dpIkpcs65GZ8zo/0gqxxOEUjOI/0GrbyBUZm X-Google-Smtp-Source: ABdhPJwf7nuIYpU5k8BfYpe2IrFVU2bnP/Z3CKLgFIPlyLF2RHdcqJYRc+9z5ntJbfkzpP4geAtRlQ== X-Received: by 2002:a05:620a:6cd:: with SMTP id 13mr17577570qky.10.1629647240630; Sun, 22 Aug 2021 08:47:20 -0700 (PDT) Received: from smtpclient.apple (107-215-223-229.lightspeed.sntcca.sbcglobal.net. [107.215.223.229]) by smtp.gmail.com with ESMTPSA id m187sm6749692qkd.131.2021.08.22.08.47.19 for <9fans@9fans.net> (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sun, 22 Aug 2021 08:47:20 -0700 (PDT) From: Bakul Shah Content-Type: multipart/alternative; boundary="Apple-Mail=_4DF08942-77B9-4F1C-98A2-141999F70288" Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.13\)) Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) Date: Sun, 22 Aug 2021 08:47:19 -0700 References: <92764e35-f5cf-460a-91df-050ba471e6dd@sirjofri.de> To: 9fans <9fans@9fans.net> In-Reply-To: Message-Id: <9352EE7C-AE94-4C1C-8738-5A1DA8ECE5A7@iitbombay.org> X-Mailer: Apple Mail (2.3654.120.0.1.13) Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 400794f0-0360-11ec-b533-b61a95c59501 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NODY1OGEzMzBkYmI2Y2E5YTZlMjE2?= =?UTF-8?B?Nzc3Pg==?= 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:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M8658a330dbb6ca9a6e216777:1:RWBT6MLgdwgrT0FnOyJijMn3bAr0lCEdd8bjMoQ1NPw --Apple-Mail=_4DF08942-77B9-4F1C-98A2-141999F70288 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="UTF-8" The FreeBSD amdgpu.ko is over 3Mbytes of compiled code. Not counting the "f= irmware" that gets loaded on the GPU board. drm/amd/amdgpu has 200K+ lines = of source code. drm/amd over 2M lines of code. Intel's i915 seems to be abo= ut 1/10th the amd size. AIUI, this is linux GPU driver code, more or less u= nchanged (FreeBSD has shim code to use it). How did the interface to an SIM= D processor get so complicated? > On Aug 22, 2021, at 6:44 AM, Paul Lalonde > wrote: >=20 > I'd love to see GPU support for Plan9. This discussion falls right into= my professional capacity. I'll say that people generally *grossly* undere= stimate the complexity of a modern GPU and of its supporting software stack= . The GPU driver is effectively a second operating system with shared memo= ry and DMA interfaces to the host. Even bringing up a modern GPU for just = compute tasks is a very large endeavour. >=20 > That being said, if you want real hardware support, the best place to sta= rt is currently AMD's open-source stack. Ignoring the Vulkan bit, understa= nding their platform abstraction layer (PAL) and shader ISA (https://develo= per.amd.com/wp-content/resources/Vega_Shader_ISA_28July2017.pdf ) is th= e base. The lower hardware levels are reasonably well-described in linux's= libdrm and its AMD support in amdgpu. >=20 > Opinions on how to bring this to Plan9? I don't really have any - it's a= huge pile of work with minimal benefit. If you're looking for lightweight= graphics, WebGL is a doable path, and almost certainly the right way to ex= periment with Plan9-like interfaces to graphics hardware. >=20 > Paul >=20 >=20 >=20 > On Sun, Aug 22, 2021 at 5:30 AM sirjofri > wrote: >=20 > 22.08.2021 14:10:20 Stuart Morrow >: > > Also: > >> people have discussed that for years > > > > They have? I mean I might have seen occasionally someone vaguely > > going "some sort of GPU support would be cool to have". That isn't > > discussion. >=20 > I've even heard of someone actually making GPU stuff work on plan 9. I've= =20 > only heard from their partner, who made a cute glenda thing on a piece of= =20 > cloth. I chatted with her a little and told her she should encourage her= =20 > partner for some discussion about this in our channels. It looked like=20 > it's some academic work, but I don't know any details about it. >=20 > Worst case, someone already has a proper and good GPU implementation for= =20 > Plan 9 and nobody knows about it. >=20 > sirjofri >=20 > Btw if the said person reads this: it would be nice to learn some=20 > details. >=20 > ------------------------------------------ > 9fans: 9fans > Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-Md3d= 5cd693c12f948ad4720bc > Delivery options: https://9fans.topicbox.com/groups/9fans/subscription > 9fans / 9fans / see discussions + participants + delivery=C2=A0options Permalink -- Bakul ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-M8658a= 330dbb6ca9a6e216777 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription --Apple-Mail=_4DF08942-77B9-4F1C-98A2-141999F70288 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset="UTF-8"
The FreeBSD amdgpu.ko is over 3Mbytes o= f compiled code. Not counting the "firmware" that gets loaded on = the GPU board. drm/amd/amdgpu has 200K+ lines of source code. drm/amd over = 2M lines of code. Intel's i915 seems to be about 1/10th the amd size. A= IUI, this is linux GPU driver code, more or less unchanged (FreeBSD has shi= m code to use it). How did the interface to an SIMD processor get so compli= cated?

On Aug 22, 2021, at 6:44 AM, Paul Lalonde = <paul.a.lalonde@g= mail.com> wrote:

I'd love to see  GPU suppo= rt for Plan9.  This discussion falls right into my professional capaci= ty.  I'll say that people generally *grossly* underestimate the co= mplexity of a modern GPU and of its supporting software stack.  The GP= U driver is effectively a second operating system with shared memory and DM= A interfaces to the host.  Even bringing up a modern GPU for just comp= ute tasks is a very large endeavour.

=
That being said, if you want real hardware support, th= e best place to start is currently AMD's open-source stack.  Ignor= ing the Vulkan bit, understanding their platform abstraction layer (PAL) an= d shader ISA (https://developer.amd.com/wp-conten= t/resources/Vega_Shader_ISA_28July2017.pdf) is the base.  The lowe= r hardware levels are reasonably well-described in linux's libdrm = and its AMD support in amdgpu.

=
Opinions on how to bring this to Plan9?  I don't r= eally have any - it's a huge pile of work with minimal benefit.  I= f you're looking for lightweight graphics, WebGL is a doable path, and = almost certainly the right way to experiment with Plan9-like interfaces to = graphics hardware.

Paul



On Sun, Aug 22, 2021 at 5:30 AM sirjofri &l= t;sirjofri+ml= -9fans@sirjofri.de> wrote:

22.08.2021 14:10:20 Stuart Morrow <morrow.stuart@gmail.com>:
> Also:
>> people have discussed that for years
>
> They have?  I mean I might have seen occasionally someone vaguely=
> going "some sort of GPU support would be cool to have". = ; That isn't
> discussion.

I've even heard of someone actually making GPU stuff work on plan 9. I&= #39;ve
only heard from their partner, who made a cute glenda thing on a piece of <= br class=3D"" /> cloth. I chatted with her a little and told her she should encourage her partner for some discussion about this in our channels. It looked like
it's some academic work, but I don't know any details about it.

Worst case, someone already has a proper and good GPU implementation for Plan 9 and nobody knows about it.

sirjofri

Btw if the said person reads this: it would be nice to learn some
details.

------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-Md3d5cd693c1= 2f948ad4720bc
Delivery options: https://9fans.topic= box.com/groups/9fans/subscription



-- Bakul

= --Apple-Mail=_4DF08942-77B9-4F1C-98A2-141999F70288-- From bounce.mM1a557f299e542dc652b550b8.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 16:33:06 2021 Return-Path: Received: from tb-ob0.topicbox.com (tb-ob0.topicbox.com [64.147.108.117]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MGX5JN016275 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 16:33:06 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob0.topicbox.com (Postfix) with ESMTP id 070BE28E84 for ; Sun, 22 Aug 2021 12:25:43 -0400 (EDT) (envelope-from bounce.mM1a557f299e542dc652b550b8.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id EE4753331FFE; Sun, 22 Aug 2021 12:25:42 -0400 (EDT) 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=bIAbHRRA header.a=rsa-sha256 header.s=20161025 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=paul.a.lalonde@gmail.com smtp.helo=mail-ej1-f51.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body 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=1629649542; bh=P2FSwN1+nC5EvgKN Q/xAdQ3aQti4oWtZOiKviYjD1mE=; b=WpJdNnqfD97wO7lhIDHqKkaWX4GnBehs LscR1m23ueRzJRG6/ShSfST3XrW5RO01u1CFYjmS047BHc1gmuQH2mUB4wm9VRRR yVIXyhmHhjZI8bB3bskx9VrxbPmMASwA0LkvIq+n8naDE1U8QRuBNlZU5EEZnKUt /lHrZUdan1Q= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629649542; b=TY2dYvvzEjRRobaZcR1xPHwcoxx3JUSx7XVRSZmbkepwO6Hv7O kK1wn3/3wQUo/XLtEs6oVVGsiPpM+ypiXSXB8bGDZiYR0WU4YNPNvh1T3KjrQWdN tqnuNqgS5ye3C6IHaxs922NEfbbzJvJ+OyJ+f3oRt19oyCzbNS7180WB0= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=bIAbHRRA header.a=rsa-sha256 header.s=20161025 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=paul.a.lalonde@gmail.com smtp.helo=mail-ej1-f51.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) X-Received-Authentication-Results: tb-mx0.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=bIAbHRRA header.a=rsa-sha256 header.s=20161025 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.218.51 (mail-ej1-f51.google.com); spf=pass smtp.mailfrom=paul.a.lalonde@gmail.com smtp.helo=mail-ej1-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=rF++WPOK; x-me-sender=none; x-ptr=pass smtp.helo=mail-ej1-f51.google.com policy.ptr=mail-ej1-f51.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt3.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: alt3.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; 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; bh=MiRxGhv9AFwx8v96Lfe8eW29L8B0BJnL15ezpbqecQM=; b=aPbSFe7guXbt eCut1QnZYLrodPlU1JuUeJvpT+b0ItaL0sX5c2E4NW6jaZ5HNOfsxbrcT6BmGU8v JC+pkluiEAzPYw8ePPM6X4tZLC1KTratEUaCwhl0FcK58xfhgWZsNMweHNXcuxZ2 YKoLqeBl7c9XRyCjxxAmfzAa1MheRyg= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id F2AF93315116 for <9fans@9fans.net>; Sun, 22 Aug 2021 12:24:10 -0400 (EDT) (envelope-from paul.a.lalonde@gmail.com) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id 2F8212E5303; Sun, 22 Aug 2021 12:24:10 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629649450; b=GcwQc3cI7YaEOzbvaX4bG8cOXkgF78H9EsI9oTGxJPhnbxrqEA L+NxjOktPa5/6Ul9hv6MHlZ5s4u4W0K1g6fPF5lqHimkzL2DNnc9jqAYdWkU3vnV SHyChR5Qru4l1Y6vI5n0diuJTomWPnTNDTYP2vaVzC82vq9VxwOcACEf29CMVfVs g3gGyjnDn2VSo3RalEhSZJ/doxJRHBb+Mb9/zihAMKWbXNOYEcu0e0OWSC5WgzwF tqZg9y4Y2Emgh7iIavHnWcEY+m52997lICBD55kGgCSF6juuwRwL7izSGiQJ8h/P lAdX6CMRXj46H2I0CPPAMY1a6bysJi9SlURA== 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=1629649450; bh=wxC8/Xh7OhG7yO4hOGadDdeHSIwtJ8BQorgclELdsFk=; b=K7B0RycYU9DM qIhPV/5yr/rEC8puxIqVblx2/pjD58Tw0Kj9W/y9FZ9Vi3LMHG6vVhsl1/wM5ku3 FJa699Uptcp3jIiTV9dWObHtpuiFoIfgc42He0FqvdhV4Y/ee8PtSf4OsJEjynLb 7Zkoc0EcHuJcvg8cDaVtnMZjKg+VTRXSKmE4EjCVhFrwddYuWJG+5FnKW9+vgZ3P uD+Jf4T8qM5B95ylYMdUbdWnQ/D5RMmfMtsDusfhdptIX0geORV0u+DuWRtfzxpL MegBiUDrfLY9zqc4680DwSG6xS47q75zwtoIiNVub0wTTgzo/5IThlWz+kudhAqD lK6Sx+YZPQ== ARC-Authentication-Results: i=1; tb-mx0.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=bIAbHRRA header.a=rsa-sha256 header.s=20161025 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.218.51 (mail-ej1-f51.google.com); spf=pass smtp.mailfrom=paul.a.lalonde@gmail.com smtp.helo=mail-ej1-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=rF++WPOK; x-me-sender=none; x-ptr=pass smtp.helo=mail-ej1-f51.google.com policy.ptr=mail-ej1-f51.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt3.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: alt3.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtfedgheejucdltddurdegudehrddttd dmucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgf nhhsuhgsshgtrhhisggvpdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttd enucenucfjughrpeggfhgjhfffkffuvfgtsegrtderredttdejnecuhfhrohhmpefrrghu lhcunfgrlhhonhguvgcuoehprghulhdrrgdrlhgrlhhonhguvgesghhmrghilhdrtghomh eqnecuggftrfgrthhtvghrnhephedttdejffehffejkefhudffudetheegfeehteehvdfg jeeuhefhgfeuleeiveevnecuffhomhgrihhnpegrmhgurdgtohhmpdhtohhpihgtsghogi drtghomhenucfkphepvddtledrkeehrddvudekrdehudenucevlhhushhtvghrufhiiigv pedtnecurfgrrhgrmhepihhnvghtpedvtdelrdekhedrvddukedrhedupdhhvghlohepmh grihhlqdgvjhduqdhfhedurdhgohhoghhlvgdrtghomhdpmhgrihhlfhhrohhmpeeophgr uhhlrdgrrdhlrghlohhnuggvsehgmhgrihhlrdgtohhmqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (gmail.com ... _spf.google.com: Sender is authorized to use 'paul.a.lalonde@gmail.com' in 'mfrom' identity (mechanism 'include:_netblocks.google.com' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="paul.a.lalonde@gmail.com"; helo=mail-ej1-f51.google.com; client-ip=209.85.218.51 Received: from mail-ej1-f51.google.com (mail-ej1-f51.google.com [209.85.218.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 12:24:10 -0400 (EDT) (envelope-from paul.a.lalonde@gmail.com) Received: by mail-ej1-f51.google.com with SMTP id e21so15633013ejz.12 for <9fans@9fans.net>; Sun, 22 Aug 2021 09:24:10 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=wxC8/Xh7OhG7yO4hOGadDdeHSIwtJ8BQorgclELdsFk=; b=rF++WPOKfS+uC4ddxabnFkYgzoc2CTJ9S37m4uN6Do8y9xWjDL/f8c7KDWWFJtFnb/ n0TAEibNi/K4TLlUOS38Qw7PVqxxwbiB/jLo2EHPEXRKV8TclKegawOXKWsZsZ4IpUBd rux8S1nJcmQ8FdrC/q+gP6CC4ypr+y1DjwK8+cKRoAcTzlWzvux4gUWMJ+XlOu1l9ORL /PcmN7kxCC6dOQMdnSwvHesW4spzfUuR5PbpzyI732yznaSMneLb5YLRvrSnSY2h7bfY 7psJ7JIbL6R67eYyIQMbiLwMcVfKz65hlPt1XtSlfDR1lIf8tlIe93PFbc8wvrxbZ1Cv GJ/A== X-Gm-Message-State: AOAM532nBcBHHVnjhv/Hf+IAcn41mckZWyDXOx6UazAnuCbD6BlzpR/J wUd+NQpv5NQSuSgaVTht8a0urAHvee9wrW/iyi8hAV8gpNo= X-Google-Smtp-Source: ABdhPJzjGKZSkVe9g82LN4MtkQTgDfivw7O5ZaoSVjv1o1Accar5vhdb/3E8IYVZP17no/LIoTbjG+cYHTodMArELi0= X-Received: by 2002:a17:906:144e:: with SMTP id q14mr32020297ejc.19.1629649448889; Sun, 22 Aug 2021 09:24:08 -0700 (PDT) MIME-Version: 1.0 References: <92764e35-f5cf-460a-91df-050ba471e6dd@sirjofri.de> <9352EE7C-AE94-4C1C-8738-5A1DA8ECE5A7@iitbombay.org> In-Reply-To: <9352EE7C-AE94-4C1C-8738-5A1DA8ECE5A7@iitbombay.org> From: Paul Lalonde Date: Sun, 22 Aug 2021 09:23:56 -0700 Message-ID: Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) To: 9fans <9fans@9fans.net> Content-Type: multipart/alternative; boundary="00000000000082810905ca285498" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 64ab3e4c-0365-11ec-be75-b002c77f2173 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NMWE1NTdmMjk5ZTU0MmRjNjUyYjU1?= =?UTF-8?B?MGI4Pg==?= 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:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M1a557f299e542dc652b550b8:1:NBc_U0nv35WtSBbPPIgZ9eL4cihQvLdgUVlSVTwyvBE --00000000000082810905ca285498 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable It got complicated because there's no stable interface or ISA. The hardware evolved from fixed-function to programmable in a commercial environment where the only meaningful measure was raw performance per dollar at many price points. Every year the hardware spins and becomes more performant, usually faster than Moore's law. With 3D APIs hiding the hardware details there is no pressure to make the hardware interface uniform, pretty, or neat. And with the need for performance there are dozens of fixed function units that effectively need their own sub-drivers while coordinating at high performance with the other units. The system diagrams for GPUs look complex, but they are radical simplifications of what's really on the inside. Intel really pioneered the open driver stacks, but performance generally wasn't there. That might be changing now, but I don't know if their recently announced discrete product line will be driver-compatible. Paul On Sun, Aug 22, 2021 at 8:48 AM Bakul Shah wrote: > The FreeBSD amdgpu.ko is over 3Mbytes of compiled code. Not counting the > "firmware" that gets loaded on the GPU board. drm/amd/amdgpu has 200K+ > lines of source code. drm/amd over 2M lines of code. Intel's i915 seems to > be about 1/10th the amd size. AIUI, this is linux GPU driver code, more or > less unchanged (FreeBSD has shim code to use it). How did the interface to > an SIMD processor get so complicated? > > On Aug 22, 2021, at 6:44 AM, Paul Lalonde > wrote: > > I'd love to see GPU support for Plan9. This discussion falls right into > my professional capacity. I'll say that people generally *grossly* > underestimate the complexity of a modern GPU and of its supporting softwa= re > stack. The GPU driver is effectively a second operating system with shar= ed > memory and DMA interfaces to the host. Even bringing up a modern GPU for > just compute tasks is a very large endeavour. > > That being said, if you want real hardware support, the best place to > start is currently AMD's open-source stack. Ignoring the Vulkan bit, > understanding their platform abstraction layer (PAL) and shader ISA ( > https://developer.amd.com/wp-content/resources/Vega_Shader_ISA_28July2017= .pdf) > is the base. The lower hardware levels are reasonably well-described in > linux's libdrm and its AMD support in amdgpu. > > Opinions on how to bring this to Plan9? I don't really have any - it's a > huge pile of work with minimal benefit. If you're looking for lightweight > graphics, WebGL is a doable path, and almost certainly the right way to > experiment with Plan9-like interfaces to graphics hardware. > > Paul > > > > On Sun, Aug 22, 2021 at 5:30 AM sirjofri > wrote: > >> >> 22.08.2021 14:10:20 Stuart Morrow : >> > Also: >> >> people have discussed that for years >> > >> > They have? I mean I might have seen occasionally someone vaguely >> > going "some sort of GPU support would be cool to have". That isn't >> > discussion. >>=20 >> I've even heard of someone actually making GPU stuff work on plan 9. I've >> only heard from their partner, who made a cute glenda thing on a piece of >> cloth. I chatted with her a little and told her she should encourage her >> partner for some discussion about this in our channels. It looked like >> it's some academic work, but I don't know any details about it. >>=20 >> Worst case, someone already has a proper and good GPU implementation for >> Plan 9 and nobody knows about it. >>=20 >> sirjofri >>=20 >> Btw if the said person reads this: it would be nice to learn some >> details. > > > > -- Bakul > > *9fans * / 9fans / see discussions > + participants > + delivery options > Permalink > > ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-M1a557= f299e542dc652b550b8 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription --00000000000082810905ca285498 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
It got complicated because there's no stab= le interface or ISA.  The hardware evolved from fixed-function to prog= rammable in a commercial environment where the only meaningful measure was = raw performance per dollar at many price points.  Every year the hardw= are spins and becomes more performant, usually faster than Moore's law.=   With 3D APIs hiding the hardware details there is no pressure to mak= e the hardware interface uniform, pretty, or neat.  And with the need = for performance there are dozens of fixed function units that effectively n= eed their own sub-drivers while coordinating at high performance with the o= ther units. 
The system diagrams for GPUs look complex, but they = are radical simplifications of what's really on the inside.

<= /div>
Intel really pioneered the open driver stacks, but performance ge= nerally wasn't there.  That might be changing now, but I don't= know if their recently announced discrete product line will be driver-comp= atible.

Paul

<= br />
On Su= n, Aug 22, 2021 at 8:48 AM Bakul Shah <bakul@iitbombay.org> wrote:
The FreeBSD amdgpu.ko is over 3Mbytes o= f compiled code. Not counting the "firmware" that gets loaded on = the GPU board. drm/amd/amdgpu has 200K+ lines of source code. drm/amd over = 2M lines of code. Intel's i915 seems to be about 1/10th the amd size. A= IUI, this is linux GPU driver code, more or less unchanged (FreeBSD has shi= m code to use it). How did the interface to an SIMD processor get so compli= cated?

On Aug 22, 2021, at 6:= 44 AM, Paul Lalonde <paul.a.lalonde@gmail.com> wrote:

I'd love to see  GPU support for Plan9.  This discu= ssion falls right into my professional capacity.  I'll say that pe= ople generally *grossly* underestimate the complexity of a modern GPU and o= f its supporting software stack.  The GPU driver is effectively a seco= nd operating system with shared memory and DMA interfaces to the host. = ; Even bringing up a modern GPU for just compute tasks is a very large ende= avour.

That being said, if you want real hardware= support, the best place to start is currently AMD's open-source stack.=   Ignoring the Vulkan bit, understanding their platform abstraction la= yer (PAL) and shader ISA (https://develope= r.amd.com/wp-content/resources/Vega_Shader_ISA_28July2017.pdf) is the b= ase.  The lower hardware levels are reasonably well-described in = linux's libdrm and its AMD support in amdgpu.

Opinions on how to bring this to Plan9?  I don't really have any= - it's a huge pile of work with minimal benefit.  If you're l= ooking for lightweight graphics, WebGL is a doable path, and almost certain= ly the right way to experiment with Plan9-like interfaces to graphics hardw= are.

Paul



On Sun, Aug 22, 2021 at 5:30 AM sirjofri <sirjofri+ml-9fans@sirjofri.de= > wrote:
22.08.2021 14:10:20 Stuart Morrow <morrow.stuart@gmail.com>:
> Also:
>> people have discussed that for years
>
> They have?  I mean I might have seen occasionally someone vaguely=
> going "some sort of GPU support would be cool to have". = ; That isn't
> discussion.

I've even heard of someone actually making GPU stuff work on plan 9. I&= #39;ve
only heard from their partner, who made a cute glenda thing on a piece of <= br /> cloth. I chatted with her a little and told her she should encourage her partner for some discussion about this in our channels. It looked like
it's some academic work, but I don't know any details about it.

Worst case, someone already has a proper and good GPU implementation for Plan 9 and nobody knows about it.

sirjofri

Btw if the said person reads this: it would be nice to learn some
details.

------------------------------------------
9fans: 9fans
Permalink: https:= //9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-Md3d5cd693c12f948ad4720= bc
Delivery options: https://9fans.topicbox.com/gro= ups/9fans/subscription



-- Bakul

= --00000000000082810905ca285498-- From bounce.mMc5753788883d2ed17e4acdbd.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 16:49:16 2021 Return-Path: Received: from tb-ob1.topicbox.com (tb-ob1.topicbox.com [64.147.108.173]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MGnFfD014526 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 16:49:16 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob1.topicbox.com (Postfix) with ESMTP id 7BF0330EB0 for ; Sun, 22 Aug 2021 12:42:34 -0400 (EDT) (envelope-from bounce.mMc5753788883d2ed17e4acdbd.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id 78CE43333223; Sun, 22 Aug 2021 12:42:34 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; 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=message-id:to:subject:date:from:in-reply-to :mime-version:content-type:content-transfer-encoding:list-help :list-id:list-post:list-subscribe:reply-to:list-unsubscribe; s= sysmsg-1; t=1629650554; bh=5NfeNfY1oviDX8+AQzCk9Xh92iClC7gDESfRs 2Xgk+U=; b=H2MMNBbbOBq7i44fCQFbF3LUqfY2d9+xm5DOiZa8sxudz4updNtwU cQ3tPZru0vjij6mMmiIvx+QnMmAz0qalLLIIGAcXTINKNycxrt3A6OOAJtDcKpTE GvScFseP8Ved2vtF5bokS/aOcc1R5thxd/cG8YKPdB2CJ4KSda3ALM= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629650554; b=hQ0nyJqajfnilahxOoj9cPXKB3USl3/+QBQQ2f2djmR8gLG/y8 OakZq9A+eI7b7ne5nUm8QMjo+J5k4dGZeNEKavd9SmNmwzu0+9penCdK2yd18H+R LDCRru2bdzSSOWnttvlgGa5Y5uDrYdKQa1vlM9mCEsonQYEX0PTBfJ2fw= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; 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: tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=message-id :to:subject:date:from:in-reply-to:mime-version:content-type :content-transfer-encoding:list-help:list-id:list-post :list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=HKZBHqjz 6jRHsZ/1MB1WrOXp2dFvRxl9Lz3+cGnc/nc=; b=i7FdMY1c+7GrcFqkM2c/Wzdl YI9I9A9wS9CvUtIhBWtiRnTiX2hDTTL6rZJ1kmM1PVlwaY2XQUDKywI39T+DeliL tprMXE3X0CVNyMwF4tsBcWBVo4ht6AKf5nOCO5dorhAJ6tXhQ1En/8sheR7DG16o 0O0G8mUunxvYLvbPGeY= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id 3A3CE33328C7 for <9fans@9fans.net>; Sun, 22 Aug 2021 12:41:10 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id 30F53088C28; Sun, 22 Aug 2021 12:41:10 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629650470; b=cU9EPo/OE71uWiTMf4HmIT0YB7L3qAMLXAJ/oYF621Ge1cNwqc fe2l255wGTVhjsoQgVFyGNliFRihrfOAXaJPUoW8FXPNHjtNxjINgGnm/DJCrI4+ D04rgVQrfuM0GMVi9Ujn91mh0iDucK9Es+ETqpt2DOmB/pHfNnbI8PQDMOl25bQH +oFxuWMa+v9sTBRwPR44vOnWR5LZjn82Qyuzwx61ZDrtwRp0HBGAEtqYqEZMqbwY XsIBLGTj79xVHeVWeCQOkwX9Y5TPvU0vBDdvpcrso/K/aJf5McA171RgSjlsowK6 0cPaWg6vVbAYNJo4XFmeCiBsZpJNUQO6KQZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=message-id:to:subject:date:from:in-reply-to :mime-version:content-type:content-transfer-encoding; s=arcseal; t=1629650470; bh=xegeg5//ypA7XLIWMUtA7zKboYr3owB//k5tgihPrd8=; b= tp8U4GI7k1eLOEkzGntLQPruoT0FGzdOAq5p0XPivFqOBAwvb/3XNROYaBppbob4 6N7MxDGdOKL58pGU0QEMHQsdPrI01y5aL7eqYwUYIZk62TOOPQVxGRhUY3YOBbc6 sBs5DWEp+P7aP5ht3rkRNwtO9uhRiYf3Ue+61X7qMm4MEnOGrwdHPRCnD058/Nxu YtPdsuyWnMjruVLRN7iaAPFbM6OHm0AfctE/HPyir9eGJYwCxdu1LcKjBFjKB2lR KvSR5ziLsAka/81pZRoGbwBuQLLLYxT0+4hT2yyg9YZo2hYi5m2udS03vCW2kAgR +S6pWY2oUIJBTKnalC2y6w== ARC-Authentication-Results: i=1; tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtfedgheejucdltddurdegudehrddttd dmucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgf nhhsuhgsshgtrhhisggvpdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttd enucenucfjughrpefkvffufffhjgggtgfgsehtjeejtddttddvnecuhfhrohhmpehorhhi segvihhgvghnshhtrghtvgdrohhrghenucggtffrrghtthgvrhhnpedvhedtfeefteegle fhgeekhefhuefhhedvvdeiudeuheejteegveekiedtveeuhfenucfkphepvddtiedruddv gedrudefvddruddtjedpjeegrddutdekrdehiedrvddvheenucevlhhushhtvghrufhiii gvpedtnecurfgrrhgrmhepihhnvghtpedvtdeirdduvdegrddufedvrddutdejpdhhvghl ohepmhhimhhirhdrvghighgvnhhsthgrthgvrdhorhhgpdhmrghilhhfrhhomhepoehorh hisegvihhgvghnshhtrghtvgdrohhrgheq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (eigenstate.org: 206.124.132.107 is authorized to use 'ori@eigenstate.org' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="ori@eigenstate.org"; helo=mimir.eigenstate.org; client-ip=206.124.132.107 Received: from mimir.eigenstate.org (mimir.eigenstate.org [206.124.132.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 12:41:09 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id 447f6593 (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9fans@9fans.net>; Sun, 22 Aug 2021 09:41:07 -0700 (PDT) Message-ID: <38625C0884407D776FB7DB6F45B80CC4@eigenstate.org> To: 9fans@9fans.net Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) Date: Sun, 22 Aug 2021 12:41:06 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: c417ad8c-0367-11ec-bd73-93b31429c533 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NYzU3NTM3ODg4ODNkMmVkMTdlNGFj?= =?UTF-8?B?ZGJkPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:Mc5753788883d2ed17e4acdbd:1:yUzB5qlmyoZDkM55fHjJqJtTdzuXtd2rZSaHjuFkrQk Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17MGnFfD014526 Quoth Paul Lalonde : > Opinions on how to bring this to Plan9? I don't really have any - it's a > huge pile of work with minimal benefit. If you're looking for lightweight > graphics, WebGL is a doable path, and almost certainly the right way to > experiment with Plan9-like interfaces to graphics hardware. It seems like the interesting part of GPUs is the general purpose computation. Writing an interface for pure computation seems like the way to go. Hardware rendering is a restricted case of software rendering; it seems like it would be better to write code that could do software rendering, and run it on the general purpose compute engine of the GPU. The same goes for basically everything else you may want to do with a GPU. It also seems like it may be both a more useful and more long-lived tool. Spitballing a while ago on the grid, I came up with something that looked a bit like a batch job interface, with a heirarchy that looks something like this: /dev/compute new $func/new $func/$job/data $func/$job/result which you could use from a script like so: #!/bin/rc # example: # # runs the neural net for finding cats, # which is compiled using some sort of # compiler backend that generates spirv, <[3=1] <>/dev/compute/new{ # upload the code which can then # be run by the compute engine; # statically allocating resources # can simplify the driver. # # protocol would look something # like: # "config param\n" # "config param\n" # "code\n" # # EOF filtdir=/dev/compute/`{sed 1q} echo alloc 8g echo code cat /bin/spir/catfinder # then launch a job, sending it # the arguments over the data # channel. # # it's up to the submitter and # the compute job to agreee on a # format; in this case, a single # uncompressed plan9 image is # written, and the result file # could contain a single string: # 'cat', 'not cat', or 'rifle' <>$dir/new{ jobdir=/dev/compute/`{sed 1q} jpg -9 $i >$jobdir/data cat $jobdir/result >[3] } } Prototyping something like this as a 9p server on unix would be interesting. So would providing this kind of cpu interface in software. Vmx could be extended with device passthrough if you want to fit the entire thing on one box, and then you may be able to find someone with a bunch of time on their hands to write a basic driver... maybe. Hooking this up to devdraw would probably be interesting for doing "hardware" rendering, though latency may be an issue if it's not implemetned as a local '#' device. Anyways, this is fun to consider, but I've got other more quotidian tools to work on before I even think about thinking about this more :) ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-Mc5753788883d2ed17e4acdbd Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From bounce.mM669861f673e387c2799da01b.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 16:54:16 2021 Return-Path: Received: from tb-ob1.topicbox.com (tb-ob1.topicbox.com [64.147.108.173]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MGsFH6016117 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 16:54:16 GMT Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob1.topicbox.com (Postfix) with ESMTP id 7DBCB31113 for ; Sun, 22 Aug 2021 12:46:47 -0400 (EDT) (envelope-from bounce.mM669861f673e387c2799da01b.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id 7B7BE3315F35; Sun, 22 Aug 2021 12:46:47 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; 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=message-id:to:subject:date:from:in-reply-to :mime-version:content-type:content-transfer-encoding:list-help :list-id:list-post:list-subscribe:reply-to:list-unsubscribe; s= sysmsg-1; t=1629650807; bh=oh5bkLnQh0pY4Iu9yb3aGS98cJUKf6z3B2aQU SSKDtg=; b=Hw8X6T5ZUAG6D9nWDqQHrqO0G7guoJdxivlsrIZDr97ir3iEu1TDN qhUJiTYCmvUJFxUG0F6toBgFzfZrRdThE8aCEnFpbgC+iLoVqYQ2X9pd8+v/iueg l6lGZTBZG8P3GuEhyymp1RxRTb3oscP+zXAYgNKcoYCr95zInves6Q= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629650807; b=cex5fCAq+5uHD7KeowzVykYjaF/YWv27avpd3Os/Oib/+vPvOu JzIfVFkrK/Sw3pUgqqMF2TAyo8J2oLMm+90DP54IH40kpdMw3k7QJqB4vLJb8eV9 JwjW839ZF7wVjSMKGHTdRuiSY47+nW9Vege+rsXkwHg0yM0qlwCj2afu8= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; 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: tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=message-id :to:subject:date:from:in-reply-to:mime-version:content-type :content-transfer-encoding:list-help:list-id:list-post :list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=oh5bkLnQ h0pY4Iu9yb3aGS98cJUKf6z3B2aQUSSKDtg=; b=VI7wS0hwSZ8BL3Q/nAsPya5I uo7kRXMWBdAz7xW0+Zk/CXTBENiv57029g2CiEQI8Be8n9EEFHbi/5ONHaY9wQ0v UKCXODebPDiUy9Ac1GPw/e7mEfa1PnYKM0ZG2Ff8zemP+xXCfrvyZU53ZSg3LKCx KhUlic9yPYh6GVEwMP4= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id A4C333315611 for <9fans@9fans.net>; Sun, 22 Aug 2021 12:45:30 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id 75BA844EBCF; Sun, 22 Aug 2021 12:45:30 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629650730; b=bw/8KS4N4XrsNAyH1vDuq51NdeCifXv0z7c1uXkoeSJMGBu+Kh U9AK7PNgDH3Um8mlYA372H+11QIWYM15kDwNEzFhNJKyT4j+CA3wAfVjJ68J6yjV cTldSJ49E2IXIbt39D7r4A4kvVN/Zz73ucqfyALCUFMuZ1FFX+ODKri3lJHHUR3z eIcvD+YOMaGhFAAYKYkGJ+P2vO7UGdtZxPnXYXaFv+cqv36A2toO+Ntffh8Pi0Fr CQ0CjsRkqtum5qyGTECmSyFatOixGIiRKKACS0i1cliO4k816G8j/wuprRmzxa0/ zwYGv5y8xZcNsLbx+yEJDIjiWoir8OTVApMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=message-id:to:subject:date:from:in-reply-to :mime-version:content-type:content-transfer-encoding; s=arcseal; t=1629650730; bh=9yO9wRuXYSF/pxXF9a9P/IkYRAS3Pgl9s7xdP9tOUtM=; b= sVrHIOnmfyWzUNEfHQpTsRSZP2EJKU1SvcImXDijQSeF2ifyAOL0KM1pPegX1pna t+IqkgWqvzBTXwvB4d+CiX/L0566nSHciSAgRlRyDdiazhZXWJAHffpppHEeBFVY 1/uJfqrxlAakCr8ZWP+MfNvvQvmzaLdGx1dFa3XMNhaMkXh38TFe4BYNeUup4pua TXVyLBvbaS2TGPpyk+RjJpoVNz6j13A7yQna6ivopul+jmU6WPgsQcP57bg/ERMd XgKCyWlpvOJ+zIPr1n7BN6y/+AxjQbUAfop0Cx2G/+xOJgjSFAV1mObS7UbhT1DJ 3ICdhiP1T3IYpGKrxXFjXA== ARC-Authentication-Results: i=1; tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtfedgheejucdltddurdegudehrddttd dmucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgf nhhsuhgsshgtrhhisggvpdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttd enucenucfjughrpefkvffufffhjgggtgfgsehtjeejtddttddvnecuhfhrohhmpehorhhi segvihhgvghnshhtrghtvgdrohhrghenucggtffrrghtthgvrhhnpedvhedtfeefteegle fhgeekhefhuefhhedvvdeiudeuheejteegveekiedtveeuhfenucfkphepvddtiedruddv gedrudefvddruddtjedpjeegrddutdekrdehiedrvddvheenucevlhhushhtvghrufhiii gvpedtnecurfgrrhgrmhepihhnvghtpedvtdeirdduvdegrddufedvrddutdejpdhhvghl ohepmhhimhhirhdrvghighgvnhhsthgrthgvrdhorhhgpdhmrghilhhfrhhomhepoehorh hisegvihhgvghnshhtrghtvgdrohhrgheq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (eigenstate.org: 206.124.132.107 is authorized to use 'ori@eigenstate.org' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="ori@eigenstate.org"; helo=mimir.eigenstate.org; client-ip=206.124.132.107 Received: from mimir.eigenstate.org (mimir.eigenstate.org [206.124.132.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 12:45:29 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id ffdddd42 (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9fans@9fans.net>; Sun, 22 Aug 2021 09:45:28 -0700 (PDT) Message-ID: <2557875BCB80BD948B5065F311C14865@eigenstate.org> To: 9fans@9fans.net Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) Date: Sun, 22 Aug 2021 12:45:27 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 5f7c988c-0368-11ec-bf08-a45390c64b37 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NNjY5ODYxZjY3M2UzODdjMjc5OWRh?= =?UTF-8?B?MDFiPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M669861f673e387c2799da01b:1:Q6t7Re7RuCi2HeHGlg1QKtXEgZAbxurb49IH7GjZdq4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17MGsFH6016117 Quoth sirjofri : > Basically just a driver bridge between 9p and > OpenGL for example. While that may be a neat hack, I think the way forward is to *ignore* everything but the ability to run arbitrary code. The alternative binds us tightly to complex interfaces that we are unable to control, and unwilling to implement ourselves. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-M669861f673e387c2799da01b Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From 9front-bounces@1ess.inri.net Sun Aug 22 17:09:09 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17MH96xC023909 for ; Sun, 22 Aug 2021 17:09:07 GMT Received: from duke.felloff.net ([216.126.196.34]) by 1ess; Sun Aug 22 10:15:44 -0400 2021 Message-ID: Date: Sun, 22 Aug 2021 16:15:33 +0200 From: cinap_lenrek@felloff.net To: 9front@9front.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: replication API SSL replication callback control Subject: Re: [9front] [PATCH] mk for only supported archs Reply-To: 9front@9front.org Precedence: bulk the patch is mangled by the mailinglist. please send it as an attachment, and not inline for application. preferrably in a way where i can just git/import it without having to recreating your commit message. thank you. -- cinap From 9front-bounces@1ess.inri.net Sun Aug 22 17:15:12 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17MHFBg7028552 for ; Sun, 22 Aug 2021 17:15:11 GMT Received: from mail-pf1-f170.google.com ([209.85.210.170]) by 1ess; Sun Aug 22 12:13:19 -0400 2021 Received: by mail-pf1-f170.google.com with SMTP id i21so13211858pfd.8 for <9front@9front.org>; Sun, 22 Aug 2021 09:13:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:subject:message-id:in-reply-to:references:organization :mime-version; bh=2EQyv6o6c6pmSy0V9UIsHDy2Nb2VfNLOmNvRfWR9WsY=; b=EXx9tyYxPMq0PnPsQUImQcDO5Rg7DIQCguqE/yMzPVn45fERCaDTOD0K5VYKzyKads /r3+E+A3uNbaf6BL2rqkKPdPbTo+x+6l9czRmMHEG3ogj5IM3O3uzvkJgk1hpMeR/ZmJ glRkGbG7NAsJ5j66Ve8jSrE8GcufA2ZBRwr2knWeIYxJwPTjLk1IFOy7lxcphDnQE04+ IGGzM+rpj/zK04CALKQuOu7Ri9LTw46yBihqb7clswap4SIzlMcFHevv5Zp2Te2Fn1Vo WFId/76xYhttKJxXsa5jMhJ5dSDzg5SXr+0wenxH1QfebhprAHOMipNMRlKjZ3vRZFaQ iLTw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:subject:message-id:in-reply-to :references:organization:mime-version; bh=2EQyv6o6c6pmSy0V9UIsHDy2Nb2VfNLOmNvRfWR9WsY=; b=OsXdOETv8ZhGAHzz8tzRjXi/XnYaR3hv/nSX4cZqLY4Mu6uRIeB0+RI7QYYa7EZado 8E9tpaECJkcWSWtgAO4yIWkk7iOO+58ZqbF2kVi/dO9P15zMclNJYXYSe79/QW+w3JoJ mYmq67ratdR3jX1EAwQz/kyFrynECCkEjSddNSL6f8BkCPg6CKuDnUW5nDn96Kf+nSVL fT0IO8fC8GvH7kZeFAD7Mms8EBm0igz47eIXvNENO7d05gEMkO9sLacrY0DPSmFoQ7nl mje9ftKIG79bg3MjuPktpK5UD65zT9hEM/1AI9o4NREBZgh7KRdIqxZdmycoi6SgtSLN n2kw== X-Gm-Message-State: AOAM530hf3U57VtB4DHIgVrtNL/9ANlN8MfwYUXhecObWlucYP1fG6Ic 2kpjWEHXMrh653fdtB7Q+57lFwQ06aw= X-Google-Smtp-Source: ABdhPJwYwaR/tAOdSyDPbqn61g/l4r1yaq5HU5MZX35BznU/jXy4rpo78hHv4njNHcEsmVZ0AZ76sg== X-Received: by 2002:a05:6e02:160f:: with SMTP id t15mr20918987ilu.60.1629645197693; Sun, 22 Aug 2021 08:13:17 -0700 (PDT) Received: from spruce.localdomain ([2601:246:4e03:dc20::575f]) by smtp.gmail.com with ESMTPSA id z22sm6602476ioe.52.2021.08.22.08.13.17 for <9front@9front.org> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 22 Aug 2021 08:13:17 -0700 (PDT) Date: Sun, 22 Aug 2021 10:13:09 -0500 From: Amavect To: 9front@9front.org Message-ID: <20210822101309.6a39e399@spruce.localdomain> In-Reply-To: <241C0FB9D5249020D1FED63DFC63D664@felloff.net> References: <241C0FB9D5249020D1FED63DFC63D664@felloff.net> Organization: Amavect Industries X-Mailer: Claws Mail 4.0.0 (GTK+ 3.24.30; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/6gI6ne_vDcn9Wz0C9+lZzMD" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: secure SOAP over XMPP shader just-in-time interface Subject: Re: [9front] [PATCH] mk for only supported archs Reply-To: 9front@9front.org Precedence: bulk --MP_/6gI6ne_vDcn9Wz0C9+lZzMD Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline On Sun, 22 Aug 2021 16:33:37 +0200 cinap_lenrek@felloff.net wrote: > why are we removing spim from archs? spim does not build, and we have no working spim kernel. Thus, there is no reason to include spim for mk installall. Attached is my changes. Thanks, Amavect From: Amavect Date: Sun, 22 Aug 2021 15:05:38 +0000 Subject: [PATCH] mkfile.proto: remove spim and $MK, organize $CPUS `objtype=spim mk install` does not build, and we have no working kernel. $MK is useless, and is not used anywhere in the system. Reorder $CPUS in lexographic order for fun. --- diff 8c796bf8b9c10a0845717c47af908e47dfe14482 2106158cb0e529e550a65e51b21b66cc12d580b0 --- a/sys/src/mkfile.proto Thu Aug 19 23:07:37 2021 +++ b/sys/src/mkfile.proto Sun Aug 22 10:05:38 2021 @@ -3,11 +3,10 @@ # OS=05678qv -CPUS=spim arm arm64 amd64 386 power mips +CPUS=386 amd64 arm arm64 mips power CFLAGS=-FTVw LEX=lex YACC=yacc -MK=/bin/mk # recursive mk will have these set from the parent # this is never what we want. clear them --MP_/6gI6ne_vDcn9Wz0C9+lZzMD Content-Type: multipart/mixed; boundary="upas-omxkgwdpglufcouvwstrxyqkps" Content-Disposition: inline This is a multi-part message in MIME format. --upas-omxkgwdpglufcouvwstrxyqkps Content-Disposition: inline Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit from postmaster@1ess: The following attachment had content that we can't prove to be harmless. To avoid possible automatic execution, we changed the content headers. The original header was: Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=mkfileproto.diff --upas-omxkgwdpglufcouvwstrxyqkps Content-Type: application/octet-stream Content-Disposition: attachment; filename="mkfileproto.diff.suspect" From: Amavect Date: Sun, 22 Aug 2021 15:05:38 +0000 Subject: [PATCH] mkfile.proto: remove spim and $MK, organize $CPUS `objtype=spim mk install` does not build, and we have no working kernel. $MK is useless, and is not used anywhere in the system. Reorder $CPUS in lexographic order for fun. --- diff 8c796bf8b9c10a0845717c47af908e47dfe14482 2106158cb0e529e550a65e51b21b66cc12d580b0 --- a/sys/src/mkfile.proto Thu Aug 19 23:07:37 2021 +++ b/sys/src/mkfile.proto Sun Aug 22 10:05:38 2021 @@ -3,11 +3,10 @@ # OS=05678qv -CPUS=spim arm arm64 amd64 386 power mips +CPUS=386 amd64 arm arm64 mips power CFLAGS=-FTVw LEX=lex YACC=yacc -MK=/bin/mk # recursive mk will have these set from the parent # this is never what we want. clear them --upas-omxkgwdpglufcouvwstrxyqkps-- --MP_/6gI6ne_vDcn9Wz0C9+lZzMD-- From bounce.mMd1cc4902bb399c16511e2f9b.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 17:18:06 2021 Return-Path: Received: from tb-ob0.topicbox.com (tb-ob0.topicbox.com [64.147.108.117]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MHI56q001915 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 17:18:06 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob0.topicbox.com (Postfix) with ESMTP id 0F085293EF for ; Sun, 22 Aug 2021 13:11:38 -0400 (EDT) (envelope-from bounce.mMd1cc4902bb399c16511e2f9b.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id 096233334CC3; Sun, 22 Aug 2021 13:11:38 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; 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=message-id:to:date:from:mime-version :content-type:content-transfer-encoding:list-help:list-id :list-post:list-subscribe:reply-to:subject:list-unsubscribe; s= sysmsg-1; t=1629652297; bh=PQDhLs7VGFLQbfExDD/tAN3zOaWVMnV3IFIuY tS31pM=; b=ZnlE8ZgguzAuk7AZTbmO9pg0mG4Y4lI7A5Conhf4uMI1syTfDASgK UqSyQDFuqtyeBUSh0rXZ0xaFD0oKKGiX/3g2T6JxVAVZwBjgBTVCoR87y7XOgv5Z yfLRUykCsowqrfYBieUKkcdYBW1o22r8e5veS9dvR+b6Zr5NMaBmRg= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629652297; b=MizJe5bS4g5cLr9Q/xnjmPXHc+InZg6+kAfWNb8txuvzim0oTK pO9xkcs8aAbFlbj20m9pTtYYul1JU1wevgcNm29p5KG1+6TcrU8YBJMB7gGCcOyu FsA5/ZB5jA9368EAEqySJWkvbtdU2O4rQncDkl9nBAWIN5w9J1oiJwCwY= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; 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: tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=message-id :to:date:from:mime-version:content-type :content-transfer-encoding:list-help:list-id:list-post :list-subscribe:reply-to:subject:list-unsubscribe; s=dkim-1; bh= IORL5DdfH+jMTONxKE3y6L4x1+016Xi5SJljkdr6i3I=; b=HQouYtlpmTDTEnw4 mc+/WHDafdUwOZXgjIE7qp9QuLHcuVW2iwrhqN9avs24XGgTJlzAZKi8lTy2X61Z E8y2G4GJ4kLGeCpN10m33I9MR3Bvkiq9EgCyIKV40QVWusYQGT3gaERcv8xqyP4C +RFEUB5OzChI8iqGBDrplhNwvkM= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id 65B383334045 for <9fans@9fans.net>; Sun, 22 Aug 2021 13:10:12 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id 13E11864A01; Sun, 22 Aug 2021 13:10:12 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629652212; b=dUXZDLzu0EQG1wt99BwUmKQRObWMQYR6asoJsyYDAq4F+n3DOP RyUVnVJ2bb0qJ/Hrq6mgZtqGy4OeoyEkiaZFq+vJwnxeyZ9WY6uTSAJXLlMBOdbR 060gjQRUOpQgXrVg8qXrJ0XDOsoBnhKD/qzaje2pZBltluGYAS56hLwcxdRkz8JY RwVGq8J0Cqpwj/YSLjK6imoD9mmk0Hz3PBGoLLJx2VjUOMug6CemuEy9g58SnSDd C62fwJ9qnTTNsaVeN7x4+dtxPGyNCiK0K/NMw7vICDiPDnqUVdrzDr8QIR2eaYC0 I79MwqtiqXY9dS+ya2TKAVxrhs8S6VvJuQlQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=message-id:to:subject:date:from:mime-version :content-type:content-transfer-encoding; s=arcseal; t= 1629652212; bh=e5tDOOgIIDpdagiy0vFwbCADInxPbvREMzZS4e0m/tk=; b=B C5Mtq1mGjz7Ye46t+KpIRI00+8p5GuvMTQFf5gJX+HIS4oMJhlWif+y+ECqprM/u SnJ1HeAYbFfQCQ1S8jJ2KR40OxayRVcqsoDULSFZ/Hbid7UwmmuYBouK6JjYoc4u xk0FXVo4GVDNxwIhu8M1fZmfnlSL4Lfpnxkw07eIAD4yiA87dEyVB0v+Q634aSqN Era525d8QW/apRo0RJ885QJ0eiYUQsixDh9GEWL00DX3Vfm9rEbOpxLAbgraSGcn b/LQ42dt4SGpQfw/kJ6Q4YxJG2jKPy8t4yAV8j2hxZxZQrl4gJoaEw24ROkhH+GC v5WUEKOHMPzUCNtWoMoSg== ARC-Authentication-Results: i=1; tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtuddgledtucdltddurdegudelrddttd dmucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgf nhhsuhgsshgtrhhisggvpdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttd enucenucfjughrpefkvffufffhgggtgfesthejjedttddtvdenucfhrhhomhepohhrihes vghighgvnhhsthgrthgvrdhorhhgnecuggftrfgrthhtvghrnhepleeiteehieetfeevff duvdelgfffgeffvdevleelgfeliefhhfdvtdfhteeikefhnecukfhppedvtdeirdduvdeg rddufedvrddutdejpdejgedruddtkedrheeirddvvdehnecuvehluhhsthgvrhfuihiivg eptdenucfrrghrrghmpehinhgvthepvddtiedruddvgedrudefvddruddtjedphhgvlhho pehmihhmihhrrdgvihhgvghnshhtrghtvgdrohhrghdpmhgrihhlfhhrohhmpeeoohhrih esvghighgvnhhsthgrthgvrdhorhhgqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (eigenstate.org: 206.124.132.107 is authorized to use 'ori@eigenstate.org' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="ori@eigenstate.org"; helo=mimir.eigenstate.org; client-ip=206.124.132.107 Received: from mimir.eigenstate.org (mimir.eigenstate.org [206.124.132.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 13:10:10 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id 481e8266 (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9fans@9fans.net>; Sun, 22 Aug 2021 10:10:09 -0700 (PDT) Message-ID: To: 9fans@9fans.net Date: Sun, 22 Aug 2021 13:10:08 -0400 From: ori@eigenstate.org MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: d29097b2-036b-11ec-b7aa-94604ef55c22 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UNDAzZjkwZTNiMDUwOTcwNC1NZDFjYzQ5MDJiYjM5OWMxNjUxMWUy?= =?UTF-8?B?ZjliPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> Subject: [9fans] git/{diff,import}: make it easier to handle manually-asembled patch emails List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:Md1cc4902bb399c16511e2f9b:1:tWyV75XSlX_Vj5elTtHXnkgxBWeflWRC5cWSTnt8nDI Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17MHI56q001915 Often, people (including myself) will write emails that can almost be applied with git/import. This changes git/diff and git/import so that things will generally work even when assembling diffs by hand: 1. git/import becomes slightly more lax: ^diff ... ^--- ... will both be detected as the start of a patch. 2. git/diff produces the same format of diff as git/export, starting with paths: --- a/path/to/file +++ b/path/to/file which means that the 'ape/patch -p1' used within git/import will just work. So with this, if you send an email to the mailing list, write up a committable description, and append the output of git/diff to the end of the email, git/import should just work. [this patch was send through the mailing list using the above procedure, and will be committed with git/import to verify that it works as advertised] diff 8c228a123fa0c6062570964011854302bbf57242 uncommitted --- a/sys/src/cmd/git/diff +++ b/sys/src/cmd/git/diff @@ -26,12 +26,16 @@ git/query -c $commit HEAD | subst '^..' } +mntgen /mnt/scratch +bind $branch/tree/ /mnt/scratch/a +bind . /mnt/scratch/b +echo diff `{git/query $commit} uncommitted for(f in `$nl{lsdirty | sort | uniq}){ - orig=$branch/tree/$f - if(! test -f $orig) + cd /mnt/scratch + if(! test -f a/$f) orig=/dev/null - if(! test -f $f) + if(! test -f b/$f) f=/dev/null - diff -u $orig $f + diff -u a/$f b/$f } exit '' --- a/sys/src/cmd/git/import +++ b/sys/src/cmd/git/import @@ -45,7 +45,7 @@ state="body" next } - (state=="headers" || state=="body") && (/^diff/ || /^---[ ]*$/){ + (state=="headers" || state=="body") && (/^diff / || /^--- /){ state="diff" } state=="body" { ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T403f90e3b0509704-Md1cc4902bb399c16511e2f9b Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From bounce.mM300dfe7499e5b62ca9db9bbf.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 17:23:27 2021 Return-Path: Received: from tb-ob20.topicbox.com (tb-ob20.topicbox.com [173.228.157.66]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MHNRBZ026701 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 17:23:27 GMT Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob20.topicbox.com (Postfix) with ESMTP id 04C4B1FB73 for ; Sun, 22 Aug 2021 13:13:29 -0400 (EDT) (envelope-from bounce.mM300dfe7499e5b62ca9db9bbf.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id BE8643316FB5; Sun, 22 Aug 2021 13:13:28 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; 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=message-id:to:subject:date:from:in-reply-to :mime-version:content-type:content-transfer-encoding:list-help :list-id:list-post:list-subscribe:reply-to:list-unsubscribe; s= sysmsg-1; t=1629652408; bh=s2OALMmgOFqdRiT8DIxIEZj6q3wwNDxj2wQEv JYq88o=; b=p5F6ZqYiwHPKa5/XIVkatGszH95RWKmzKQZE1bzjALiAl6mhhGjA4 ASWg0WkYr1cdsp12jK9bra7z3TNgiqalV3fQVlqZhfGlRoEtueXUbONertkOxM/d wq6IizV9djH7xuazyDtI1gelq2WlF4tFL5GSf6nOJutv0WWV9uCM5I= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629652408; b=cieBPejhfZy0VbhJPl1lH/ARp1KsxNue4KSks1HND81THjenT6 r+KC8lEj7zf7vItoRiMeG/plRF271flkF0CQs2goWt9PImYgzN1vG6dvMA858+ZB N/0KGO3RbkKIVIFd4m+TRMC33BUU6p8Y5Bq9mG5SYlMXyQnE68p+V0gJc= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; 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: tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=message-id :to:subject:date:from:in-reply-to:mime-version:content-type :content-transfer-encoding:list-help:list-id:list-post :list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=s2OALMmg OFqdRiT8DIxIEZj6q3wwNDxj2wQEvJYq88o=; b=f/k/T6o6aEoXghjSn7S9aJih xMfL7JHW86mTvU3ps4IWj+900Uw4fFOnxbLGAL2xkjD2DghqcMOE4rl35Px9wtr9 xPbYB3aAat1nWOM4o19uTG5uDep8WcWP5TEoqF6XM13cgyVLpKKIDEJNynWyxGAZ T9EahuZSlrkynoqPVFI= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id 9E5513316411 for <9fans@9fans.net>; Sun, 22 Aug 2021 13:12:14 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id ED6BF4699C8; Sun, 22 Aug 2021 13:12:14 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629652334; b=OJfZdj1leONysMmmHedIKBHIYPdAapxpkiqnPvsgtWYmYnSoWk 2t4amEc0ZcQw0ofVNzWX/vB+a/xdZ0IZE4+4tGrAGoVLKK8UHwMWoKy/N1E/SEE/ +49hX0/4TiCbGPEOVLEsDoVGvckcoS8GNfS/MMzYOh50iieAEmZ+ZYj8D6OAWxXG tWNFVTcb8TbXwunA1J+KA53kIhMKilTSSxaefdsyEJidP75D/KZRy0uQ/CDjWfim womaIf+/90rzUeQHN/HyM74yFUByt1voWz26ujifyzRJKcs7r81WDwCHZbB9m3W5 JRBPxBqyXO8cmo/dgq1tFB2ZopX0ODMP4cmw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=message-id:to:subject:date:from:in-reply-to :mime-version:content-type:content-transfer-encoding; s=arcseal; t=1629652334; bh=5H5Ken48lpDH5GapqnHYcuEFCn2x3J2s27mdXxloz9w=; b= MeBiFKst8ebcZKV8LO0VAFzaOdaXjLJB82gXaSvGEJtZKkf/tsxwAzHkMTqvQmGT jekLgIzZ4+b7X20STr9mUZVvyv2TCcTCGnZIaXPt7qZWz9rgJvd0oHRXh9o8HeCf vTmmDsNzE+Jl0DMefmVDHoM/NGfZO67CO7jctzD2bEFCML7ZDl1GjhrUbelit2/S 2d3rM2SXdLmzvcfc7D8W4l3/Pz09VMwlhxrIQ2SOAFcRG/nD/TFsOtI6fncuQ9Vf 5nNWqWRrl1sfe9HTa2NejrRAoN7s2r9KJHUJaArtfRnS8G8b8wRRFSvT3a8U2VfB gki8Ea1/4xhT33Ja3+kGHw== ARC-Authentication-Results: i=1; tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtfedguddutdcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggftfghnshhusghstghrihgsvgdp uffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftddtnecunecujfgurhepkffvuf ffhfgjgggtgfesthejjedttddtvdenucfhrhhomhepohhrihesvghighgvnhhsthgrthgv rdhorhhgnecuggftrfgrthhtvghrnhepvdehtdeffeetgeelhfegkeehhfeuhfehvddvie duueehjeetgeevkeeitdevuefhnecukfhppedvtdeirdduvdegrddufedvrddutdejpdej gedruddtkedrheeirddvvdehnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpe hinhgvthepvddtiedruddvgedrudefvddruddtjedphhgvlhhopehmihhmihhrrdgvihhg vghnshhtrghtvgdrohhrghdpmhgrihhlfhhrohhmpeeoohhrihesvghighgvnhhsthgrth gvrdhorhhgqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (eigenstate.org: 206.124.132.107 is authorized to use 'ori@eigenstate.org' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="ori@eigenstate.org"; helo=mimir.eigenstate.org; client-ip=206.124.132.107 Received: from mimir.eigenstate.org (mimir.eigenstate.org [206.124.132.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 13:12:13 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id 6bc4194b (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9fans@9fans.net>; Sun, 22 Aug 2021 10:12:12 -0700 (PDT) Message-ID: <534A6E599C225F5ED331BC1820BC4D13@eigenstate.org> To: 9fans@9fans.net Subject: Re: [9fans] git/{diff,import}: make it easier to handle manually-asembled patch emails Date: Sun, 22 Aug 2021 13:12:11 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 1b1fc4e4-036c-11ec-b62a-fb9a12cb9ab6 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UNDAzZjkwZTNiMDUwOTcwNC1NMzAwZGZlNzQ5OWU1YjYyY2E5ZGI5?= =?UTF-8?B?YmJmPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M300dfe7499e5b62ca9db9bbf:1:HI8YQrqwii1d2bWoieF3d7vaqXGrwiOsaoBx9VD8Nhw Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17MHNRBZ026701 Oops, sent to the wrong mailing list -- sorry about the noise. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T403f90e3b0509704-M300dfe7499e5b62ca9db9bbf Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From bounce.mM61320344b346fd78f92b2b62.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 17:29:16 2021 Return-Path: Received: from tb-ob1.topicbox.com (tb-ob1.topicbox.com [64.147.108.173]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MHTFxh022745 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 17:29:16 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob1.topicbox.com (Postfix) with ESMTP id F1BBE31D5D for ; Sun, 22 Aug 2021 13:20:54 -0400 (EDT) (envelope-from bounce.mM61320344b346fd78f92b2b62.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id EDDBE3337BC7; Sun, 22 Aug 2021 13:20:54 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; 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=message-id:to:subject:date:from:in-reply-to :mime-version:content-type:content-transfer-encoding:list-help :list-id:list-post:list-subscribe:reply-to:list-unsubscribe; s= sysmsg-1; t=1629652854; bh=tqmgS5x8y2BQU7yAIMTAV7568vKA6le52X5Ia SjSYK0=; b=fAnrIfA4Qdecn89/XLWaiiGLBG8dH5gfvreYTb6m4UxY8AyUgDiQ1 13m2ktjsVeFLit4Ed5IqNxWYDqDS2M2+WnlfgcDh5jn3zrJTb5p4yb+/d48lzGjs 2AaCtT8AGeCq0qnx+Rf0vbcFTIIv/PbiYna9L2R6jvWQGQ3QrAqZbs= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629652854; b=tSOxar3uocmlySqo+remO1VOnXRpv3w3VJEWn+PnXnJUv+3gLZ VerjrG1853NASkoB8L/cCUa22GYQzuEsV2UZyvK6znxFm0U9cVwrO1Cvp1A85EGR Ff/5r8cw+AkekKGBn8P0hMdTh7KxBO86RRN5045igpuksD5Qvy5ZhBn4s= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; 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: tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=message-id :to:subject:date:from:in-reply-to:mime-version:content-type :content-transfer-encoding:list-help:list-id:list-post :list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=tqmgS5x8 y2BQU7yAIMTAV7568vKA6le52X5IaSjSYK0=; b=bb/UwRjVAyPcYywcOhZsdzJ+ H+w8B9DXnBJV511BIM/w07T2IuDbciEYCzjrgLNPKkc+sheo47I+xO6ntDC0RiXB tnOtvrnvyz8hcpBgsbVU+OrakNkrB6BLQynO2A8E4v4D0nx0B20NFGNYOK9ZCPWx 5SvdPJfBQqYD6xBk4OE= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id 60CE933184ED for <9fans@9fans.net>; Sun, 22 Aug 2021 13:19:32 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id CD1543A77DA; Sun, 22 Aug 2021 13:19:32 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629652772; b=gOgRIY3i6nMAsBE/lE9GB4rqAAZ7X9fTrkscIFUx3Z/MxA9qim wYFngF4ISd/4fCflEf7jlKIpCzyEiGeX3JbMAPyYaG/NfRGqe+ApF3x63Kf3bj8o 6Udri24hsCMj+c9Ebevf0dMcUUXcyfOX/KlqXH13fr1pn9I2LR8F6uPU2WihDSqk PIgeXO4YgVtzxG9ZF6N26zzX6ZXen1im6yFkybT0M6pfK7m97poE09Ec5RCgf2yB gcPFBaF0QLQ3eaR5bxkOp4hZApJtQYJiNpWgr1izkRYWCBqPnQXIs7OI283FNlcT QpIIRT9bCnA7mGuv/2BRI+zIiPw7wU7Puimw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=message-id:to:subject:date:from:in-reply-to :mime-version:content-type:content-transfer-encoding; s=arcseal; t=1629652772; bh=jFUEwf5AH8T7V1MkbKhycyEnjAc7wEqWUgjJ35Z5dKU=; b= nznx4iZxhnZBj4VFE2e7EtgJo1v/NhExC878f5w7Msq0ZNIcTI6RrrIEnkx8tfAG I9gCUwxFLYVjF9NfzYzCatlzV+VZQNHgVfhB+kWVzDtMAyc+pQrxksa5tjYJeljA sZXpAwa5FQVrSvRfSU2R9rCN/tfCNoEsZar9nJyVf5SpfBCpa0sQNaW+0X8Dyowh 6vhqcuJk+nXHUC0JE/9m38n9+u2mj2pOOX0CDRTAQw7bWLiTnqlbQsX2hAAszwaR SazAmiuSK1z27qKmOv59ImOqhcfhNTgbBkrqHMB/mHMJFD2oXpYV0WfuTV50VcGD HrUjx6NvSyz/qzlAtwsAdQ== ARC-Authentication-Results: i=1; tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: eigenstate.org,kusuri.pikopiko.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtfedgudduudcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggftfghnshhusghstghrihgsvgdp uffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftddtnecunecujfgurhepkffvuf ffhfgjgggtgfesthejjedttddtvdenucfhrhhomhepohhrihesvghighgvnhhsthgrthgv rdhorhhgnecuggftrfgrthhtvghrnhepvdehtdeffeetgeelhfegkeehhfeuhfehvddvie duueehjeetgeevkeeitdevuefhnecukfhppedvtdeirdduvdegrddufedvrddutdejpdej gedruddtkedrheeirddvvdehnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpe hinhgvthepvddtiedruddvgedrudefvddruddtjedphhgvlhhopehmihhmihhrrdgvihhg vghnshhtrghtvgdrohhrghdpmhgrihhlfhhrohhmpeeoohhrihesvghighgvnhhsthgrth gvrdhorhhgqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (eigenstate.org: 206.124.132.107 is authorized to use 'ori@eigenstate.org' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="ori@eigenstate.org"; helo=mimir.eigenstate.org; client-ip=206.124.132.107 Received: from mimir.eigenstate.org (mimir.eigenstate.org [206.124.132.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 13:19:31 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id 1775ba7c (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9fans@9fans.net>; Sun, 22 Aug 2021 10:19:30 -0700 (PDT) Message-ID: <1A11CDED5E574B0DE2450041812175D2@eigenstate.org> To: 9fans@9fans.net Subject: Re: [9fans] git/{diff,import}: make it easier to handle manually-asembled patch emails Date: Sun, 22 Aug 2021 13:19:29 -0400 From: ori@eigenstate.org In-Reply-To: <534A6E599C225F5ED331BC1820BC4D13@eigenstate.org> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 208f132a-036d-11ec-a9b5-c2f0cc836ef9 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UNDAzZjkwZTNiMDUwOTcwNC1NNjEzMjAzNDRiMzQ2ZmQ3OGY5MmIy?= =?UTF-8?B?YjYyPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M61320344b346fd78f92b2b62:1:G-_5OspjajzRVMUm3Cv6eCIxqX6RXu0kRwB9Z8wcJmA Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17MHTFxh022745 Quoth ori@eigenstate.org: > Oops, sent to the wrong mailing list -- sorry about the noise. > Also, as a side note, it seems like the 9fans mailing lists mangles patches -- if anyone ever sends patches, they'll need to be sent as attachments. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T403f90e3b0509704-M61320344b346fd78f92b2b62 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From bounce.mMf5ef60c88b77f937e3cd7c38.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 17:38:28 2021 Return-Path: Received: from tb-ob20.topicbox.com (tb-ob20.topicbox.com [173.228.157.66]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MHcR2l028757 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 17:38:27 GMT Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob20.topicbox.com (Postfix) with ESMTP id EDA73200FE for ; Sun, 22 Aug 2021 13:30:40 -0400 (EDT) (envelope-from bounce.mMf5ef60c88b77f937e3cd7c38.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id D565C33192B4; Sun, 22 Aug 2021 13:30:40 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; 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=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding :list-help:list-id:list-post:list-subscribe:reply-to :list-unsubscribe; s=sysmsg-1; t=1629653440; bh=w3g/LbzCtqGzk48f JxLIbrUueKWx7jt1kEdyQfa6l+8=; b=YYbh/fKaKpDOhQ8YLcVqvUxjX7mkjTzy 13Qxp+o3N9/udzjliaNuJK0dZAHuqWG2CBOqQ/KK+Hm31p/Iysih4P3ANFPQ1q6P OvZAqJneDC3ZQb/qQNQZhtG/kYVSbOP3p6x5qHbdjZU6SQSa4LFk4sOJe3yqrQ5S zjmucX8vjwc= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629653440; b=qCUAJcEmzRCEzlUQ4lXR6gJDiP8sXNQIXgrnsyB3rI66Fzk0M0 GM0YA2+v5vFHBrS6/wfxaX/w/EzDmnoUBzsuJbqRBFeeE3szQv7NPPd2ot+C6d2Q VbJmmczbtTXVmF/P/fymraLpotD20+jgUefFu488Uq9AHgdABasOE8o24= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; 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: tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (oat.nine.sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=oat.nine.sirjofri.de policy.ptr=oat.nine.sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=date:from :to:message-id:in-reply-to:references:subject:mime-version :content-type:content-transfer-encoding:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=w3g/LbzCtqGzk48fJxLIbrUueKWx7jt1kEdyQfa6l+8=; b=Lkvqpa8cmekF zjso1UaLGykX5WTmIU2LL7/cUidrWlkSd6FhaXOqAWyeQoiU9wVf2RdiuM3cOONB zSiRR5cZBW3FDuTqtBJVQkCqZyligTJCnL8IXTNDPzcskaYq18ZZKgKNhXlvt4eG oq+AJxgh6gyUTJ8MnKOfw1oXO4uFjc4= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id CC1AF3318957 for <9fans@9fans.net>; Sun, 22 Aug 2021 13:29:19 -0400 (EDT) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id 0621155E934; Sun, 22 Aug 2021 13:29:19 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629653359; b=kPNlkTD2vUoikncPk33D+IQAqAtN6laX9RBW7FHJKWMfpewi07 DjkO139PPV8aJ6BKuaBPE2zGWSCpbT6bNCamHdOhACG5mtIiXIqa2o8smgi7f2U1 SIyikNufmwvC3pONEIMVEEeNnVckqsyCsM2uegrSSPgI4WLQZWxU1vM/788lz/Br KVu5cHckEpsEL0PCmv6xEhgEZS3UiWrBdWZkVvxsgnmeb3y2pMwUCPgBizxIIOoi Dw2e7pNMTMA+APUh/Yir06z+kmktjv6QheIe9ZDwbi3YFPW5cL0p75M8Zp8RKtg3 AjRlPYVc7vv4zlTRxorzxOVGdAQSwCCRYt6g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding; s= arcseal; t=1629653359; bh=J0UpDrbNJaZGYTfhb2qbRIx8pQWkw+xcDHQ7yy 1ylFg=; b=kcof64zfg7ykAUvyIdzHUaZcljnG5WMRaDbxmdbq7s1kzZz0OF4qNE siTMVakrzPimqFwQ0Aygfi+i2L9FxTJ4oC7Bdn6V8XK+yDC10Upgx+5nCkZ/fTE+ 2CGSvAv0Wt3B2VGjhhd1Ic0jjEr4ON925kvQYdUB4ymEQSF5ERue/ybGp8iyjR6O TWvIukNovIZ/5TlxTGjykkmAEtf22AXjxDac5G3xi7bZ+QqAY/A4pw6pf4kQBT87 rhkxuyN/93abSqnu47Mlbm3N4deaAAoKgZPAWRGwWxPdPenakkuZyjR7+ETdIZp/ uhgSVCnQbGWYhPeT8nHCGQFddZnaZ6qA== ARC-Authentication-Results: i=1; tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (oat.nine.sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=oat.nine.sirjofri.de policy.ptr=oat.nine.sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtfedguddufecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggftfghnshhusghstghrihgsvgdp uffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftddtnecunecujfgurhepfffhvf fkjghfufggtgfgsehtqhertddttdejnecuhfhrohhmpehsihhrjhhofhhrihcuoehsihhr jhhofhhrihdomhhlqdelfhgrnhhssehsihhrjhhofhhrihdruggvqeenucggtffrrghtth gvrhhnpeejvddtgeeuledvgfelteelfedvteeijeduveelgfehteejueehvdfhteekudev teenucfkphephedrgeehrddutdehrdduvdejpdelhedrledtrddvudekrddvudefnecuve hluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehinhgvthephedrgeehrddutdehrddu vdejpdhhvghlohepohgrthdrnhhinhgvrdhsihhrjhhofhhrihdruggvpdhmrghilhhfrh homhepoehsihhrjhhofhhrihdomhhlqdelfhgrnhhssehsihhrjhhofhhrihdruggvqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (sirjofri.de: 5.45.105.127 is authorized to use 'sirjofri+ml-9fans@sirjofri.de' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="sirjofri+ml-9fans@sirjofri.de"; helo=oat.nine.sirjofri.de; client-ip=5.45.105.127 Received: from oat.nine.sirjofri.de (oat.nine.sirjofri.de [5.45.105.127]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 13:29:18 -0400 (EDT) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from sirjofri.de ([95.90.218.213]) by oat; Sun Aug 22 19:29:15 +0200 2021 Date: Sun, 22 Aug 2021 17:29:14 +0000 (UTC) From: sirjofri To: 9fans <9fans@9fans.net> Message-ID: In-Reply-To: <38625C0884407D776FB7DB6F45B80CC4@eigenstate.org> References: <38625C0884407D776FB7DB6F45B80CC4@eigenstate.org> Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8"; format="flowed" X-Correlation-ID: Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 7e325a36-036e-11ec-9c32-f7b9e7467988 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NZjVlZjYwYzg4Yjc3ZjkzN2UzY2Q3?= =?UTF-8?B?YzM4Pg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:Mf5ef60c88b77f937e3cd7c38:1:vxGwHJersitrznh1KfpjO7hzF5WUk5SXKVlr9RQYDlU Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17MHcR2l028757 22.08.2021 18:41:06 ori@eigenstate.org: > Quoth Paul Lalonde : >> Opinions on how to bring this to Plan9?  I don't really have any - >> it's a >> huge pile of work with minimal benefit.  If you're looking for >> lightweight >> graphics, WebGL is a doable path, and almost certainly the right way >> to >> experiment with Plan9-like interfaces to graphics hardware. > > It seems like the interesting part of GPUs > is the general purpose computation. Writing > an interface for pure computation seems like > the way to go. > > Hardware rendering is a restricted case of > software rendering; it seems like it would > be better to write code that could do software > rendering, and run it on the general purpose > compute engine of the GPU. The same goes for > basically everything else you may want to do > with a GPU. Basically do software rendering on the GPU? Well, it's totally possible. Even Nanite (the new system in Unreal Engine 5) has its own rasterizer and I believe even its own base pass. Also Lumen does software rendering for global illumination. But for serious 3d AAA stuff we'd have to consider: Lumen is for next-gen GPUs and Nanite for newer GPUs. We'll never reach their quality in realtime if we don't use the GPU features (built-in rasterizer, ...) to have enough free power for crazy software calculation. On the other hand, getting _any_ GPU computation running on Plan 9 would be great, even if it's just compatible pure-CPU implementation (aka gpufs without a GPU). > Spitballing a while ago on the grid, I came > up with something that looked a bit like a > batch job interface, with a heirarchy that > looks something like this: > >         /dev/compute >                 new >                 $func/new >                 $func/$job/data >                 $func/$job/result I like that /dev/compute approach, but may I suggest putting it below another directory /dev/gpu/compute so we have the ability to add /dev/gpu/{vertex,geometry,fragment,tessellation,pixel} later? I haven't looked at your sample script in more detail, but on the first glance it seems solid. > Prototyping something like this as a 9p server > on unix would be interesting. So would providing > this kind of cpu interface in software. This is also a great idea, instead of tweaking drawterm. I don't have a linux machine with a GPU (I'm full 9front and only windows for work), but I guess if this prototype uses OpenGL (or alt) it could also work with software GPU emulation. I'd really like to try something like that, but writing filesystems is (still, sadly) new to me and I also don't have much time, being a full-time game developer. If someone else wants to try it please make development open source so we can provide patches, and I'm also happy to at least test things. > Hooking this up to devdraw would probably be > interesting for doing "hardware" rendering, though > latency may be an issue if it's not implemetned as > a local '#' device. I'm not sure about the latency (I would just try it once it's done), but can't we use the hwdraw stub function for interfacing with this? I also doubt we'll draw many complex shaders for /dev/draw. sirjofri ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-Mf5ef60c88b77f937e3cd7c38 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From bounce.mM9436d5323abdd3522e9996aa.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 18:33:49 2021 Return-Path: Received: from tb-ob21.topicbox.com (tb-ob21.topicbox.com [173.228.157.67]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MIXmnC029725 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 18:33:49 GMT Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob21.topicbox.com (Postfix) with ESMTP id 313B23679E for ; Sun, 22 Aug 2021 14:26:45 -0400 (EDT) (envelope-from bounce.mM9436d5323abdd3522e9996aa.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id EB9E2331AD57; Sun, 22 Aug 2021 14:26:44 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; 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=message-id:to:subject:date:from:in-reply-to :mime-version:content-type:content-transfer-encoding:list-help :list-id:list-post:list-subscribe:reply-to:list-unsubscribe; s= sysmsg-1; t=1629656804; bh=dlaPfaUu47LCTnw8QhJWK8UYL3oNWPFAewJuy IEAV/g=; b=mILf+SVmRHOjg0iIx0ouQXd+zC+3C/1XyccL3kU39sQ7hq6La1Mjg tE16EpKwVikaZ5b8SqDc//e1dw/b1XfoH/arq/DSn9O4e+SGxniGcv1qat5+Kgb4 2q8f0jBZMJS+wgJa8t/Fewo2yc/Q/QNiNoOh34du2NKXPb63EybwGo= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629656804; b=csfObESe0q27CEPmxWhRiG44bBne97YT8W6WgSbv3xMVGfEbkD ADpd9KSaZVU9hLReGw0bDN2hdmR9tCJGSdIFBHdc5dPjdpRooiDY5fNykjXY6nEC u2AlLKTfj6bzrIh0J/qtqO7/Bas/w7sn1gotdJ+uHyARMm7NzmsRZyEV8= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; 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: tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: kusuri.pikopiko.org,eigenstate.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: kusuri.pikopiko.org,eigenstate.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=message-id :to:subject:date:from:in-reply-to:mime-version:content-type :content-transfer-encoding:list-help:list-id:list-post :list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=dlaPfaUu 47LCTnw8QhJWK8UYL3oNWPFAewJuyIEAV/g=; b=pXO89IaBhMipvbHcaUNHvSuZ ONGbw+/jukAQfWpLglb8x0/sKUBPQLcYCHob/XnCHN9diNz5pFRbTFLrXddyx42K fUMnUNcTRjTeNR+mu0FNQM6rh7Zhn9kEzqdHEvFkIflaynfk0fQ6TdmU56JIAqjq MxZQlEEAE6QatHazn8k= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id 1E686331A41D for <9fans@9fans.net>; Sun, 22 Aug 2021 14:25:16 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id FB73BCFC39F; Sun, 22 Aug 2021 14:25:15 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629656715; b=YAqBugnzPU/tBaLcuwPcFLcFFn+zTpv6ghDqXLFdEsxeJLGQtz Xgu9BkXH95rstK50di9fE8KCW2b4eEf3KGiZYx/9rvK9PVfK3bUuwaU0QHatGwu5 E3dh4avsowVPhweX0QHP61BYfMhpzpLt6lAD5XET2vI7baokGbbMKuLptYj3ElaF cfwXMUZvGN0TXoGO6E0SheRJQ41ihU76tMBeD2ZwV1WA/T+e1wAW8YbqI/kP4IFc XAJ8iVc0YXFRUJ5o7oDETHQXmMOWpE+8NRFoUScReOjV55isGlwGqzpJeuJcVm47 fVZVZP6gdxRlFVpCACmdZizjI03qX38H2spw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=message-id:to:subject:date:from:in-reply-to :mime-version:content-type:content-transfer-encoding; s=arcseal; t=1629656715; bh=rQmUf2QDd6IsqKpLQVT4mHE1kEjNAo7kQG2ccHEvr58=; b= egWZl2TLcACZ/0dWIatci0CRSE8QLGs5W5E+uaqnGNS/tk34PSrsFuJfVw8BQPiX FI0PNjymVUNLdXvRYCbxT3OP2d8ioVrCfyPRMz9ZhroIJUK4fXCg/X9kyfNf6leR Rd2udn2vArAK52g4wGa6+5Qsv/9bUEs5UMWoR5OrCijK4k9HNx4AK8/eApB81hvH 37RFqueB+1B7jJlEhHl8RZKXr5xTfHpM9QBRpXDCHOccYQxIAXBjnWnczF0x3MwN hvqcvyuxnutPWa1t0trhydzALylgVrEbBIzZEPjqcf2B87vCQiletveymYFhtdQu UKBVePwY6PjF1E8/XOevKQ== ARC-Authentication-Results: i=1; tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: kusuri.pikopiko.org,eigenstate.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: kusuri.pikopiko.org,eigenstate.org,nokogiri.pikopiko.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtuddgledtucdltddurdegudelrddttd dmucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgf nhhsuhgsshgtrhhisggvpdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttd enucenucfjughrpefkvffufffhjgggtgfgsehtjeejtddttddvnecuhfhrohhmpehorhhi segvihhgvghnshhtrghtvgdrohhrghenucggtffrrghtthgvrhhnpedvhedtfeefteegle fhgeekhefhuefhhedvvdeiudeuheejteegveekiedtveeuhfenucfkphepvddtiedruddv gedrudefvddruddtjedpjeegrddutdekrdehiedrvddvheenucevlhhushhtvghrufhiii gvpedtnecurfgrrhgrmhepihhnvghtpedvtdeirdduvdegrddufedvrddutdejpdhhvghl ohepmhhimhhirhdrvghighgvnhhsthgrthgvrdhorhhgpdhmrghilhhfrhhomhepoehorh hisegvihhgvghnshhtrghtvgdrohhrgheq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (eigenstate.org: 206.124.132.107 is authorized to use 'ori@eigenstate.org' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="ori@eigenstate.org"; helo=mimir.eigenstate.org; client-ip=206.124.132.107 Received: from mimir.eigenstate.org (mimir.eigenstate.org [206.124.132.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 14:25:15 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id 159c0129 (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9fans@9fans.net>; Sun, 22 Aug 2021 11:25:13 -0700 (PDT) Message-ID: To: 9fans@9fans.net Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) Date: Sun, 22 Aug 2021 14:25:12 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 4f75470a-0376-11ec-81b6-caa4ea0e793e Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NOTQzNmQ1MzIzYWJkZDM1MjJlOTk5?= =?UTF-8?B?NmFhPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M9436d5323abdd3522e9996aa:1:nlFXFdToL4IdJ8T_8NxcgRX7gxGzJ6UDdl7EIBXQLb4 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17MIXmnC029725 Quoth sirjofri : > > 22.08.2021 18:41:06 ori@eigenstate.org: > Basically do software rendering on the GPU? Yes. Or software neural net evaluation on the GPU. Or software video decoding on the GPU. Or software image transforms on the GPU. Or software signal processing on the GPU. If there's an interface to be selected, it needs to be tractable to implement, *and* general purpose enough for everything that wants to use it. > Well, it's totally possible. Even Nanite (the new system in Unreal Engine > 5) has its own rasterizer and I believe even its own base pass. Also > Lumen does software rendering for global illumination. > > But for serious 3d AAA stuff we'd have to consider: Lumen is for next-gen > GPUs and Nanite for newer GPUs. We'll never reach their quality in > realtime if we don't use the GPU features (built-in rasterizer, ...) to > have enough free power for crazy software calculation. By the time any code is written, next-gen GPUs will be previous-gen GPUs. General compute is what any hardware you buy a few years from now will be doing -- and it's far more intersting in terms of what capabilities it allows. > I like that /dev/compute approach, but may I suggest putting it below > another directory /dev/gpu/compute so we have the ability to add > /dev/gpu/{vertex,geometry,fragment,tessellation,pixel} later? I think supporting those is a cost we should not pay. It's fundamentally solving a less general problem, and adds a lot of complexity for the potential of a small performance boost. We already have zero people sinking time into the slim interface; sinking time into a fatter interface seems like a bad idea. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-M9436d5323abdd3522e9996aa Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From bounce.mM3c0e76a0b437dd9071c6f579.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 18:58:06 2021 Return-Path: Received: from tb-ob0.topicbox.com (tb-ob0.topicbox.com [64.147.108.117]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MIw54g011054 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 18:58:06 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob0.topicbox.com (Postfix) with ESMTP id C10FC2A56E for ; Sun, 22 Aug 2021 14:51:50 -0400 (EDT) (envelope-from bounce.mM3c0e76a0b437dd9071c6f579.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id B8A6A333B29D; Sun, 22 Aug 2021 14:51:50 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; 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=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding :list-help:list-id:list-post:list-subscribe:reply-to :list-unsubscribe; s=sysmsg-1; t=1629658310; bh=SfyZsLhb07FJe63K 3Cg2t4hOvuCem99r1I9UPJOd4TQ=; b=ttfds1M0a+4OeRrX9cAtsaxfyHdIEgdy 6MN0ioFnXKsDVy+F/wxMuW8sji+JT1jWtjl+bUGmE/ThBIQlJRj3qDCyMoUMU1IM QRIjiUNX1exJdoFVZZ2LTj3QBkxPy9t+fwNNYodi6sxIIwYTrzMXhasfzxexhTp/ EtsOsmyFXXc= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629658310; b=VVFqlBDU0gWj+jo2+Rr1gqKoLXzv6F26N+ad4xWkawTNaNItwO yJxy70mBr4kGasg3KMDRjreid1aJXouFMXlLNZHspCg+lRpr79P67xXt4oU9nV3L YiG7OTNivrYa+Ahiv9t3pUkcfKS+yDckYvBOLj8vhsr/LYyv6zVSn8i5E= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; 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: tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (oat.nine.sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=oat.nine.sirjofri.de policy.ptr=oat.nine.sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=date:from :to:message-id:in-reply-to:references:subject:mime-version :content-type:content-transfer-encoding:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=SfyZsLhb07FJe63K3Cg2t4hOvuCem99r1I9UPJOd4TQ=; b=j6mbKQgr30Ag T+LxReDRkjI+xt/76ISpi7HbYz64GRnc2x+ZxjPL88PEoyBrp+ZIicsk6gC57OdQ DYo+Bp1Ia5HFq2hXJZFgZ6fIq8iGIYfq6IiC8OOXQAtYanWtPw6O+HDRonyHxY7w ddM02yfFhct5gA0bi09gqbp/JlsXSu4= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id 865DA331B26B for <9fans@9fans.net>; Sun, 22 Aug 2021 14:50:37 -0400 (EDT) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id A7B7ED52A07; Sun, 22 Aug 2021 14:50:37 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629658237; b=NkU0YZUkjtFLgmO8GHmdMOedB6p9zqpiQ7L6DGpEPUelkvh3Rp l7lIoNFnvvifHHlI0QG0q8cEz8zJIFzRZ+Djh2s4T75nrNc1J3QVXKzxU63IcsSp 1jGW0L4tm8ngNLYMakIVUHu+ftt+Y1sQL78TuM/httValGXMwNYHB2PVjnvApwuP 9syYgkyiekeiUEpZLbxglfxuMHqNJ7NtUw8l4pi/gQHXk97CWKT7uVIyDWYwA8Dg lyBIzNQcTk78dH/JxzxBRx1mhFnNALzguLOMOFtSzUVQsiF6epuSjS78d9qQXV0u moetXoLNTrDlO4orhVaFRrbtVOKPbGxLiReQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding; s= arcseal; t=1629658237; bh=y62YLwn3DETy/wb8P5OrQ7x0iokdfBvjoiTC/V KH45I=; b=pGFuNun3gn0EssXrjAdjH2V5EovSFbqJ2lnMiG/cmo2LychdHeF9Ie Wm5TfwesErPnwZ+Zq6VEnGYILyT2BlODoRUFU905gtrxlCSnSK7vXyM3LUgFsrfF +JRtUT2ywvSaFQ4pj3FBFt8FTAMQPparCz596AbuYQZEimBi6JxQ7kNj/nVpEeOK n+GsNPOjAg8sPLJ/pBLd0fMZO3/kRSLzT+VVD1EPxAYLixun6WyV8smqPQYBfH7K q/dsE49lGPNKqvhqt7MPgJQxQeMkba+v3R78ZRLkWRN1ODObHgMv3e1ZmUKS0OAa k80XMvoOpnTzyugKsBrWOiXH7ID/xeXg== ARC-Authentication-Results: i=1; tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (oat.nine.sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=oat.nine.sirjofri.de policy.ptr=oat.nine.sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtuddgudegleculddtuddrgeduhedrtd dtmdcutefuodetggdotefrodftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggft fghnshhusghstghrihgsvgdpuffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftd dtnecunecujfgurhepfffhvffkjghfufggtgfgsehtjeertddttdejnecuhfhrohhmpehs ihhrjhhofhhrihcuoehsihhrjhhofhhrihdomhhlqdelfhgrnhhssehsihhrjhhofhhrih druggvqeenucggtffrrghtthgvrhhnpeefhfdtteduheffveeuleefgeejvdegfeegtddt heeluedutdehudfhfeffueelteenucfkphephedrgeehrddutdehrdduvdejpdelhedrle dtrddvudekrddvudefnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehinhgv thephedrgeehrddutdehrdduvdejpdhhvghlohepohgrthdrnhhinhgvrdhsihhrjhhofh hrihdruggvpdhmrghilhhfrhhomhepoehsihhrjhhofhhrihdomhhlqdelfhgrnhhssehs ihhrjhhofhhrihdruggvqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (sirjofri.de: 5.45.105.127 is authorized to use 'sirjofri+ml-9fans@sirjofri.de' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="sirjofri+ml-9fans@sirjofri.de"; helo=oat.nine.sirjofri.de; client-ip=5.45.105.127 Received: from oat.nine.sirjofri.de (oat.nine.sirjofri.de [5.45.105.127]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 14:50:36 -0400 (EDT) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from sirjofri.de ([95.90.218.213]) by oat; Sun Aug 22 20:50:34 +0200 2021 Date: Sun, 22 Aug 2021 18:50:33 +0000 (UTC) From: sirjofri To: 9fans <9fans@9fans.net> Message-ID: <220e868b-8403-4bd0-8a18-cecc308a1766@sirjofri.de> In-Reply-To: References: Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8"; format="flowed" X-Correlation-ID: <220e868b-8403-4bd0-8a18-cecc308a1766@sirjofri.de> Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: d9e44f3c-0379-11ec-a9d5-cdc311a19c13 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NM2MwZTc2YTBiNDM3ZGQ5MDcxYzZm?= =?UTF-8?B?NTc5Pg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M3c0e76a0b437dd9071c6f579:1:eNdt7MqEhneLYQr9RwXr7m5wgU12_nplUFe7BqM-7p8 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17MIw54g011054 22.08.2021 20:25:12 ori@eigenstate.org: > Quoth sirjofri : >> >> 22.08.2021 18:41:06 ori@eigenstate.org: >> Basically do software rendering on the GPU? > > Yes. Or software neural net evaluation on the GPU. > Or software video decoding on the GPU. Or software > image transforms on the GPU. Or software signal > processing on the GPU. > > If there's an interface to be selected, it needs > to be tractable to implement, *and* general purpose > enough for everything that wants to use it. > >> Well, it's totally possible. Even Nanite (the new system in Unreal >> Engine >> 5) has its own rasterizer and I believe even its own base pass. Also >> Lumen does software rendering for global illumination. >> >> But for serious 3d AAA stuff we'd have to consider: Lumen is for >> next-gen >> GPUs and Nanite for newer GPUs. We'll never reach their quality in >> realtime if we don't use the GPU features (built-in rasterizer, ...) >> to >> have enough free power for crazy software calculation. > > By the time any code is written, next-gen GPUs will be > previous-gen GPUs. > > General compute is what any hardware you buy a few years > from now will be doing -- and it's far more intersting > in terms of what capabilities it allows. > >> I like that /dev/compute approach, but may I suggest putting it below >> another directory /dev/gpu/compute so we have the ability to add >> /dev/gpu/{vertex,geometry,fragment,tessellation,pixel} later? > > I think supporting those is a cost we should not pay. It's > fundamentally solving a less general problem, and adds a > lot of complexity for the potential of a small performance > boost. > > We already have zero people sinking time into the slim > interface; sinking time into a fatter interface seems > like a bad idea. Gotcha. Maybe I'll find some time to implement some kind of gpufs or /dev/gpu (if it's general purpose I'd suggest renaming compute to gpu since "compute" could be anything. The computer does compute, wow.). sirjofri ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-M3c0e76a0b437dd9071c6f579 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From bounce.mM69dfd52c6b6d85727b06d9dc.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 19:13:48 2021 Return-Path: Received: from tb-ob21.topicbox.com (tb-ob21.topicbox.com [173.228.157.67]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MJDm64009021 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 19:13:48 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob21.topicbox.com (Postfix) with ESMTP id A88CE36B3E for ; Sun, 22 Aug 2021 15:05:35 -0400 (EDT) (envelope-from bounce.mM69dfd52c6b6d85727b06d9dc.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id 69ABF333BF65; Sun, 22 Aug 2021 15:05:35 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=iitbombay-org.20150623.gappssmtp.com header.i=@iitbombay-org.20150623.gappssmtp.com header.b=STFS5zV7 header.a=rsa-sha256 header.s=20150623 x-bits=2048; dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=iitbombay.org; spf=pass smtp.mailfrom=bakul@iitbombay.org smtp.helo=mail-qt1-f172.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=from:content-type:mime-version:subject:date :references:to:in-reply-to:message-id:list-help:list-id :list-post:list-subscribe:reply-to:content-transfer-encoding :list-unsubscribe; s=sysmsg-1; t=1629659135; bh=6o5kPUQBePW8WIVC GiEBYK33DI6LDs3keI7NxbZtIcA=; b=ZZSaZ8NoiyVyOrqVLwbGS+lV1QjVQAo1 jp4+idUpVoEjzaJY+5ne8hkCbc/jjvtGmZulIhh4SAT/H5mgIPTc2EtlZKr7KNCc 89CBcWvaH6ceDtKZBuTuxCEoYKWg7gSWAWYHToIj97zgl4hsbSsYB3Pm+Y/kOFeh /hiXqiTrYUE= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629659135; b=jUauXa1xKDQR5GLRqC4phG6OPu5Ykmp0VpFjoDQjoT6eOl9MsN PlZU/O4OwguA+08Bu1ag25ALH12wG8ug4IEgtRPDHG3B5ut4Im3HQgTvBoKB/n0N n2nfO+wCWxIDsIZS6gv8gf0Icib2gdIMWGeImN47Q7vKoSJVQef2uecLA= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=iitbombay-org.20150623.gappssmtp.com header.i=@iitbombay-org.20150623.gappssmtp.com header.b=STFS5zV7 header.a=rsa-sha256 header.s=20150623 x-bits=2048; dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=iitbombay.org; spf=pass smtp.mailfrom=bakul@iitbombay.org smtp.helo=mail-qt1-f172.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) X-Received-Authentication-Results: tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC did not pass); dkim=pass (2048-bit rsa key sha256) header.d=iitbombay-org.20150623.gappssmtp.com header.i=@iitbombay-org.20150623.gappssmtp.com header.b=STFS5zV7 header.a=rsa-sha256 header.s=20150623 x-bits=2048; dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=iitbombay.org; iprev=pass smtp.remote-ip=209.85.160.172 (mail-qt1-f172.google.com); spf=pass smtp.mailfrom=bakul@iitbombay.org smtp.helo=mail-qt1-f172.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=QcJ2BfkS; x-me-sender=none; x-ptr=pass smtp.helo=mail-qt1-f172.google.com policy.ptr=mail-qt1-f172.google.com; x-return-mx=pass header.domain=iitbombay.org policy.is_org=yes (MX Records found: alt2.aspmx.l.google.com,alt4.aspmx.l.google.com,alt1.aspmx.l.google.com,aspmx.l.google.com,alt3.aspmx.l.google.com); x-return-mx=pass smtp.domain=iitbombay.org policy.is_org=yes (MX Records found: alt2.aspmx.l.google.com,alt4.aspmx.l.google.com,alt1.aspmx.l.google.com,aspmx.l.google.com,alt3.aspmx.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=from :content-type:mime-version:subject:date:references:to :in-reply-to:message-id:list-help:list-id:list-post :list-subscribe:reply-to:content-transfer-encoding :list-unsubscribe; s=dkim-1; bh=N7utGvr5i0qwas9ugOokG757DOWsFJ6G 5+1kGkxqqLc=; b=DyphrLnv70YwnXVcVpcoWLxxqNEy41v3N4iGAwYz6+f06Kyx LXAIH0cYc9+di2MsRAZkKy1jAXpgoI9reHj4zxAFNtwSEEHy6dlq7fhX3V20R1vD k4NrK0Ds3tqfWudCTpYS2IzAqDGNOZL0ilQqmWEEBT4D/BH4UMECkSfFNLo= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id 11501331B582 for <9fans@9fans.net>; Sun, 22 Aug 2021 15:04:04 -0400 (EDT) (envelope-from bakul@iitbombay.org) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id 380375008F1; Sun, 22 Aug 2021 15:04:04 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629659043; b=BqD2gpgCiAnuKgBKv7p8lmElXuuB/J5fHtSi8un3CZFBG1SDwQ tv7yKpFLl3CzVyECl7x99iubQUFmXM7rccvgJftK81SDXfl9aSCSSaiDLJu9UE3q 5cL1A3VDJO3TQfpNyFpCDtus/AcNF2dquy5mj9ckV8WiadOdTmVQQ/F7AzjIYexf WX/WGcriUha4N2m8h809WhLAk9p6NP4t9/VMcR1EX4XYQTm6epyL13m56rtDAssN NMKKazqP1yMapY87l+i41sWMoxpfOEVrujFYHyulr67JOcoNlxfO3lFf5BVAX4cK CvbKJADPzQt4ovVOdU9eM5eMWox8YvGMrh2w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=from:content-type:mime-version:subject:date :references:to:in-reply-to:message-id; s=arcseal; t=1629659043; bh=ZJGNaDEzzTn3AoBa3r1Bn3R55KQGABeCAbHq888bX88=; b=aCPPW3W/Perr QZVnSEB30EyRBtDe0jTOQXjaiPmLYIpGSXB95WOi2brZAzG3elFRisGDNS+Dd8I9 A7hMVX3b+HvL24KTCkgRLsWJr0ZzdIuK4wcUOnIUBEsrDMTYipGvv2vr3Nz2AhPI 3mvfAo+NgbbCvS6K9HRrxMTodHjfU+0mYtI+HDSLskPMETR6xdL3f4XogGTQwubG YbSX8yY9XPT4qGnjAEBVPZ81lrZShYSHip5UybLJT+Qua3GFg7bVO1Ck28cHEnuT SzHJDSdbk0aCeSNAC/Ibehn5WXWDm4u3P7KbpqsAZimpR8/DemhnjdNtgxI6QvzU 793BAU6Ayg== ARC-Authentication-Results: i=1; tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC did not pass); dkim=pass (2048-bit rsa key sha256) header.d=iitbombay-org.20150623.gappssmtp.com header.i=@iitbombay-org.20150623.gappssmtp.com header.b=STFS5zV7 header.a=rsa-sha256 header.s=20150623 x-bits=2048; dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=iitbombay.org; iprev=pass smtp.remote-ip=209.85.160.172 (mail-qt1-f172.google.com); spf=pass smtp.mailfrom=bakul@iitbombay.org smtp.helo=mail-qt1-f172.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=QcJ2BfkS; x-me-sender=none; x-ptr=pass smtp.helo=mail-qt1-f172.google.com policy.ptr=mail-qt1-f172.google.com; x-return-mx=pass header.domain=iitbombay.org policy.is_org=yes (MX Records found: alt2.aspmx.l.google.com,alt4.aspmx.l.google.com,alt1.aspmx.l.google.com,aspmx.l.google.com,alt3.aspmx.l.google.com); x-return-mx=pass smtp.domain=iitbombay.org policy.is_org=yes (MX Records found: alt2.aspmx.l.google.com,alt4.aspmx.l.google.com,alt1.aspmx.l.google.com,aspmx.l.google.com,alt3.aspmx.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtuddgudegleculddtuddrgeduhedrtd dtmdcutefuodetggdotefrodftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggft fghnshhusghstghrihgsvgdpuffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftd dtnecunecujfgurhephfgtggfuffhfvfgjkffosegrtdhmrehhtddvnecuhfhrohhmpeeu rghkuhhlucfuhhgrhhcuoegsrghkuhhlsehiihhtsghomhgsrgihrdhorhhgqeenucggtf frrghtthgvrhhnpeeuudefteeuvefgudfgkefgheefgfefleeiteeuleduueefvdfgudei teetheegueenucffohhmrghinheprghrihiiohhnrgdrvgguuhdprghmugdrtghomhdpth hophhitggsohigrdgtohhmnecukfhppedvtdelrdekhedrudeitddrudejvddpuddtjedr vdduhedrvddvfedrvddvleenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepih hnvghtpedvtdelrdekhedrudeitddrudejvddphhgvlhhopehmrghilhdqqhhtuddqfhdu jedvrdhgohhoghhlvgdrtghomhdpmhgrihhlfhhrohhmpeeosggrkhhulhesihhithgsoh hmsggrhidrohhrgheq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (iitbombay.org: Sender is authorized to use 'bakul@iitbombay.org' in 'mfrom' identity (mechanism 'include:_spf.google.com' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="bakul@iitbombay.org"; helo=mail-qt1-f172.google.com; client-ip=209.85.160.172 Received: from mail-qt1-f172.google.com (mail-qt1-f172.google.com [209.85.160.172]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 15:04:03 -0400 (EDT) (envelope-from bakul@iitbombay.org) Received: by mail-qt1-f172.google.com with SMTP id d2so12092584qto.6 for <9fans@9fans.net>; Sun, 22 Aug 2021 12:04:03 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:mime-version:subject:date:references:to :in-reply-to:message-id; bh=ZJGNaDEzzTn3AoBa3r1Bn3R55KQGABeCAbHq888bX88=; b=QcJ2BfkSzI8O5RyMnnKEdD3+cvLuOSghaf1bGkKWlg+BScz/uojSAjnIsPl7P/Cf0/ 2ISoiyeWAY/ZSFJ3J/kT9tBNDDXCe16CAQukUq5n/9V61w2+GH/VA279tOBUiyKkt8js PtpkVx/kc0mWpBtzNmcEctn50Dn92AjyDxX/VEWS8DG8yBNDdE2sGElsspGYShfoIQQp m3RWshrURzQPi+flAUIfwx/pQgLArks0NrWNOhTNE7BpC91yqRSR5eHs6F/jm6CV1+4U Gu1ADJa0/EGlM3hlRhwumrdXCi/qgN+yjnDZt/MeWfcQDzm2DILbtYSFkpfxd9RkCdsn fmjQ== X-Gm-Message-State: AOAM533ebc3SguuAJuDPEixwyYFN8dFvC/UfC2dFDCaW+kA3lhf0WLxT 33iDtS+IPqX32VrMW25lxJQLmR0IpWaFSNaV X-Google-Smtp-Source: ABdhPJzSX6CaP9Xhwqa2WSeYNWGYqhURe6BG+n2mMaCsK16jQTTsLRv2WhDOF94KhvuSBt88MqfPbQ== X-Received: by 2002:a05:622a:10:: with SMTP id x16mr11847947qtw.88.1629659042437; Sun, 22 Aug 2021 12:04:02 -0700 (PDT) Received: from smtpclient.apple (107-215-223-229.lightspeed.sntcca.sbcglobal.net. [107.215.223.229]) by smtp.gmail.com with ESMTPSA id x125sm7229414qkd.8.2021.08.22.12.04.01 for <9fans@9fans.net> (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sun, 22 Aug 2021 12:04:02 -0700 (PDT) From: Bakul Shah Content-Type: multipart/alternative; boundary="Apple-Mail=_48EA5E36-57D8-49C4-B65F-88A7828528C5" Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.13\)) Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) Date: Sun, 22 Aug 2021 12:04:00 -0700 References: <92764e35-f5cf-460a-91df-050ba471e6dd@sirjofri.de> <9352EE7C-AE94-4C1C-8738-5A1DA8ECE5A7@iitbombay.org> To: 9fans <9fans@9fans.net> In-Reply-To: Message-Id: X-Mailer: Apple Mail (2.3654.120.0.1.13) Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: bcb43592-037b-11ec-85cf-ab6c1c996c98 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NNjlkZmQ1MmM2YjZkODU3MjdiMDZk?= =?UTF-8?B?OWRjPg==?= 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:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M69dfd52c6b6d85727b06d9dc:1:KAqejOfZzOV8B5vLBk6c6tcIcCmQulsLNSFJxYIBUPY --Apple-Mail=_48EA5E36-57D8-49C4-B65F-88A7828528C5 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="UTF-8" Thanks. Looks like Sutherland's "Wheel of Reincarnation " has not only stopped but exploded :-) Or stopped being applicable. -- Bakul > On Aug 22, 2021, at 9:23 AM, Paul Lalonde wrot= e: >=20 > It got complicated because there's no stable interface or ISA. The hardw= are evolved from fixed-function to programmable in a commercial environment= where the only meaningful measure was raw performance per dollar at many p= rice points. Every year the hardware spins and becomes more performant, us= ually faster than Moore's law. With 3D APIs hiding the hardware details th= ere is no pressure to make the hardware interface uniform, pretty, or neat.= And with the need for performance there are dozens of fixed function unit= s that effectively need their own sub-drivers while coordinating at high pe= rformance with the other units.=20 > The system diagrams for GPUs look complex, but they are radical simplific= ations of what's really on the inside. >=20 > Intel really pioneered the open driver stacks, but performance generally = wasn't there. That might be changing now, but I don't know if their recent= ly announced discrete product line will be driver-compatible. >=20 > Paul >=20 >=20 > On Sun, Aug 22, 2021 at 8:48 AM Bakul Shah > wrote: > The FreeBSD amdgpu.ko is over 3Mbytes of compiled code. Not counting the = "firmware" that gets loaded on the GPU board. drm/amd/amdgpu has 200K+ line= s of source code. drm/amd over 2M lines of code. Intel's i915 seems to be a= bout 1/10th the amd size. AIUI, this is linux GPU driver code, more or less= unchanged (FreeBSD has shim code to use it). How did the interface to an S= IMD processor get so complicated? >=20 >> On Aug 22, 2021, at 6:44 AM, Paul Lalonde > wrote: >>=20 >> I'd love to see GPU support for Plan9. This discussion falls right int= o my professional capacity. I'll say that people generally *grossly* under= estimate the complexity of a modern GPU and of its supporting software stac= k. The GPU driver is effectively a second operating system with shared mem= ory and DMA interfaces to the host. Even bringing up a modern GPU for just= compute tasks is a very large endeavour. >>=20 >> That being said, if you want real hardware support, the best place to st= art is currently AMD's open-source stack. Ignoring the Vulkan bit, underst= anding their platform abstraction layer (PAL) and shader ISA (https://devel= oper.amd.com/wp-content/resources/Vega_Shader_ISA_28July2017.pdf ) is t= he base. The lower hardware levels are reasonably well-described in linux'= s libdrm and its AMD support in amdgpu. >>=20 >> Opinions on how to bring this to Plan9? I don't really have any - it's = a huge pile of work with minimal benefit. If you're looking for lightweigh= t graphics, WebGL is a doable path, and almost certainly the right way to e= xperiment with Plan9-like interfaces to graphics hardware. >>=20 >> Paul >>=20 >>=20 >>=20 >> On Sun, Aug 22, 2021 at 5:30 AM sirjofri > wrote: >>=20 >> 22.08.2021 14:10:20 Stuart Morrow >: >> > Also: >> >> people have discussed that for years >> > >> > They have? I mean I might have seen occasionally someone vaguely >> > going "some sort of GPU support would be cool to have". That isn't >> > discussion. >>=20 >> I've even heard of someone actually making GPU stuff work on plan 9. I'v= e=20 >> only heard from their partner, who made a cute glenda thing on a piece o= f=20 >> cloth. I chatted with her a little and told her she should encourage her= =20 >> partner for some discussion about this in our channels. It looked like=20 >> it's some academic work, but I don't know any details about it. >>=20 >> Worst case, someone already has a proper and good GPU implementation for= =20 >> Plan 9 and nobody knows about it. >>=20 >> sirjofri >>=20 >> Btw if the said person reads this: it would be nice to learn some=20 >> details. >>=20 >> ------------------------------------------ >> 9fans: 9fans >> Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-Md3= d5cd693c12f948ad4720bc >> Delivery options: https://9fans.topicbox.com/groups/9fans/subscription <= https://9fans.topicbox.com/groups/9fans/subscription> >=20 >=20 >=20 > -- Bakul >=20 > 9fans / 9fans / see discussions + participants + delivery=C2=A0options Permalink ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-M69dfd= 52c6b6d85727b06d9dc Delivery options: https://9fans.topicbox.com/groups/9fans/subscription --Apple-Mail=_48EA5E36-57D8-49C4-B65F-88A7828528C5 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset="UTF-8" Thanks. L= ooks like Sutherland's "= Wheel of Reincarnation" has not only stopped but exploded :-) Or s= topped being applicable.

-- Bakul

On Aug 22, 2021, at 9:23 AM, Paul Lalon= de <paul.a.lalond= e@gmail.com> wrote:

<= div class=3D"">
It got complicated because there= 's no stable interface or ISA.  The hardware evolved from fixed-fu= nction to programmable in a commercial environment where the only meaningfu= l measure was raw performance per dollar at many price points.  Every = year the hardware spins and becomes more performant, usually faster than Mo= ore's law.  With 3D APIs hiding the hardware details there is no p= ressure to make the hardware interface uniform, pretty, or neat.  And = with the need for performance there are dozens of fixed function units that= effectively need their own sub-drivers while coordinating at high performa= nce with the other units. 
The system diagrams for GPU= s look complex, but they are radical simplifications of what's really o= n the inside.

Intel r= eally pioneered the open driver stacks, but performance generally wasn'= t there.  That might be changing now, but I don't know if their re= cently announced discrete product line will be driver-compatible.

Paul


On Sun, Aug 22, 2021= at 8:48 AM Bakul Shah <bakul@iitbombay.org> wrote:
The FreeBS= D amdgpu.ko is over 3Mbytes of compiled code. Not counting the "firmwa= re" that gets loaded on the GPU board. drm/amd/amdgpu has 200K+ lines = of source code. drm/amd over 2M lines of code. Intel's i915 seems to be= about 1/10th the amd size. AIUI, this is linux GPU driver code, more or le= ss unchanged (FreeBSD has shim code to use it). How did the interface to an= SIMD processor get so complicated?

On Aug 22, 20= 21, at 6:44 AM, Paul Lalonde <paul.a.lalonde@gmail.com> wrote:
I'd love = to see  GPU support for Plan9.  This discussion falls right into = my professional capacity.  I'll say that people generally *grossly= * underestimate the complexity of a modern GPU and of its supporting softwa= re stack.  The GPU driver is effectively a second operating system wit= h shared memory and DMA interfaces to the host.  Even bringing up a mo= dern GPU for just compute tasks is a very large endeavour.
<= br class=3D"" />
That being said, if you want rea= l hardware support, the best place to start is currently AMD's open-sou= rce stack.  Ignoring the Vulkan bit, understanding their platform abst= raction layer (PAL) and shader ISA (https://developer.amd.com/wp-content/resources/Vega_Shader_ISA_28July2= 017.pdf) is the base.  The lower hardware levels are reasonably we= ll-described in linux's libdrm and its AMD support in amdgpu.

Opinions on how to = bring this to Plan9?  I don't really have any - it's a huge pi= le of work with minimal benefit.  If you're looking for lightweigh= t graphics, WebGL is a doable path, and almost certainly the right way to e= xperiment with Plan9-like interfaces to graphics hardware.

Paul



On= Sun, Aug 22, 2021 at 5:30 AM sirjofri <sirjofri+ml-9fans@sirjofri.= de> wrote:

22.08.2021 14:10:20 Stuart Morrow <morrow.stuart@gmail.com>:
> Also:
>> people have discussed that for years
>
> They have?  I mean I might have seen occasionally someone vaguely=
> going "some sort of GPU support would be cool to have". = ; That isn't
> discussion.

I've even heard of someone actually making GPU stuff work on plan 9. I&= #39;ve
only heard from their partner, who made a cute glenda thing on a piece of <= br class=3D"" /> cloth. I chatted with her a little and told her she should encourage her partner for some discussion about this in our channels. It looked like
it's some academic work, but I don't know any details about it.

Worst case, someone already has a proper and good GPU implementation for Plan 9 and nobody knows about it.

sirjofri

Btw if the said person reads this: it would be nice to learn some
details.

------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-Md3d5cd693c1= 2f948ad4720bc
Delivery options: https://9fans.topic= box.com/groups/9fans/subscription



-- Bakul


= --Apple-Mail=_48EA5E36-57D8-49C4-B65F-88A7828528C5-- From bounce.mM6309d0d2644e0651e74b9901.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 19:18:27 2021 Return-Path: Received: from tb-ob20.topicbox.com (tb-ob20.topicbox.com [173.228.157.66]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MJIR1J021502 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 19:18:27 GMT Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob20.topicbox.com (Postfix) with ESMTP id 9DF1B20C92 for ; Sun, 22 Aug 2021 15:10:51 -0400 (EDT) (envelope-from bounce.mM6309d0d2644e0651e74b9901.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id 652CC331C67E; Sun, 22 Aug 2021 15:10:51 -0400 (EDT) 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=umKRhd2M header.a=rsa-sha256 header.s=20161025 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=paul.a.lalonde@gmail.com smtp.helo=mail-ej1-f44.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body 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=1629659451; bh=dyjkRYH3kXNS3oNx W7Ue0p+PBQ/CcNWrLqI81dab1DU=; b=duOOinaEKlF8zRkw2j/ADU4SY7IRxKun AEUhSESPHzqramRQZ4I8y1w1Abb2xRNrqE7q6bmnV73uDh506NPsKe8RQhfRbZS8 uOKaJdgNSSgCo1w/FQjR8jYjkVrfb2JxyQ1pCuXsA9Del05a96jFfhGC9FpWOb4Q j7vB08xiSiE= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629659451; b=rl8XcVTldRUFNOSGH0dNLDTrCByayHQE3AnCMUimhvMbJKGRx4 NOIxMMBLnjdoUG0DMI9fW5gW1dWKlQZzhrvoBHBzrL+9FJ3MDx2DhIko5S7jP0f8 xSPnadDPQ2oZ5XXvFkKWqDo9TJaczghDKS6zRtI1yHyHvQWChODxGNkPA= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=umKRhd2M header.a=rsa-sha256 header.s=20161025 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=paul.a.lalonde@gmail.com smtp.helo=mail-ej1-f44.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) X-Received-Authentication-Results: tb-mx0.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=umKRhd2M header.a=rsa-sha256 header.s=20161025 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.218.44 (mail-ej1-f44.google.com); spf=pass smtp.mailfrom=paul.a.lalonde@gmail.com smtp.helo=mail-ej1-f44.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=nGlF2BGA; x-me-sender=none; x-ptr=pass smtp.helo=mail-ej1-f44.google.com policy.ptr=mail-ej1-f44.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt3.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,alt1.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; 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; bh=Cc3xdj4unNs8rHr+N58pxPteciB+pwGAWpCNt+eSJpk=; b=Pr87G0E/q58v ljSqGaQE4FF1i6CCUufgL90/5YEGLe/n7flwfJbjpz/vYzGwQmP2NGL55/XAlaqv raQl34ypyVSj3LAPQDFVE6NyaePxd25qLAUr0x2r2iSOQdPxNpI/ZnnTUwD+ki6h N9LiZSpiURxkBHnaPWsp6sUO6JwSduo= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id 006A0331BD6A for <9fans@9fans.net>; Sun, 22 Aug 2021 15:09:17 -0400 (EDT) (envelope-from paul.a.lalonde@gmail.com) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id 7DFF785587B; Sun, 22 Aug 2021 15:09:16 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629659356; b=B4RD/KhL2N8+Gn9RepiCieastGOdILHoWJukhnWhAYPnsFKBQV 28xAA24iyQN8we3zDLoFZScuU3u1J4x1IBB1QjXDHDGqfWg0Os1WOTSY44Lcba6Q Sd1Oq8oYNTWvVfgnAUNZV8ctDPGInPxbD5ZVpnyKFAfZvhp4+wffV7JJu+KY11VE FsLjP0fHWa6SqkmQr2TmM7Zcy+8AV2k4/zKHiO0zgcSENBkg/fm1JH+qGbZ7Socb t+Q8GIouEr3Vuj+6sGTNCAL+Ch29czMqySvxTe21r4H4ufEE5YYND/qy7TtQAOQ3 Z5i3cbIolKNIBD+GXrsKAh0GqX/HFg4GpLsA== 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=1629659356; bh=7Z10fY3HklwMpzEPleIQOgfv//OcfFMVK90M5DuLk7w=; b=pJeDitfFu7S+ 2du82Hj/CunwXUwjfWMw/NX36c7cyFzO68h35CeJrtyGjrakUGDszlTxu5iwCjMM peY702j75JHA6Ig5vym/Jgh8eXNdjCEEcg5n7AWj0OJaq0eeLboIBGw6Y1cE8O9A axmpnaAXFH8DbsO/+ajFbuNJ0zRTRJehr0a+yabsoC2aNdihCc2F1nRgHc7/D1Tr +G2y1F3TZcW3nxKixJV3aDlt6ujR11a3+1JXDDU+f9vrLQB19IWI5TJtzgUCRHa2 o8ghzIPHZ0N4Fh1WB2tWX70QioDlz0gSTRw/v3DGphVmHHg5P039VF04vmBIOqye SJMIu1MJ0w== ARC-Authentication-Results: i=1; tb-mx0.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=umKRhd2M header.a=rsa-sha256 header.s=20161025 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.218.44 (mail-ej1-f44.google.com); spf=pass smtp.mailfrom=paul.a.lalonde@gmail.com smtp.helo=mail-ej1-f44.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=nGlF2BGA; x-me-sender=none; x-ptr=pass smtp.helo=mail-ej1-f44.google.com policy.ptr=mail-ej1-f44.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt3.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,alt1.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtuddgledtucdltddurdegudelrddttd dmucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgf nhhsuhgsshgtrhhisggvpdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttd enucenucfjughrpeggfhgjhfffkffuvfgtsegrtderredttdejnecuhfhrohhmpefrrghu lhcunfgrlhhonhguvgcuoehprghulhdrrgdrlhgrlhhonhguvgesghhmrghilhdrtghomh eqnecuggftrfgrthhtvghrnhepieejteejueelfeejffelieegtdffvdffjeefjeethfej tedvjeejheeiteeuhfefnecuffhomhgrihhnpegrrhhiiihonhgrrdgvughupdgrmhgurd gtohhmpdhtohhpihgtsghogidrtghomhenucfkphepvddtledrkeehrddvudekrdeggeen ucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepihhnvghtpedvtdelrdekhedrvd dukedrgeegpdhhvghlohepmhgrihhlqdgvjhduqdhfgeegrdhgohhoghhlvgdrtghomhdp mhgrihhlfhhrohhmpeeophgruhhlrdgrrdhlrghlohhnuggvsehgmhgrihhlrdgtohhmqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (gmail.com ... _spf.google.com: Sender is authorized to use 'paul.a.lalonde@gmail.com' in 'mfrom' identity (mechanism 'include:_netblocks.google.com' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="paul.a.lalonde@gmail.com"; helo=mail-ej1-f44.google.com; client-ip=209.85.218.44 Received: from mail-ej1-f44.google.com (mail-ej1-f44.google.com [209.85.218.44]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 15:09:16 -0400 (EDT) (envelope-from paul.a.lalonde@gmail.com) Received: by mail-ej1-f44.google.com with SMTP id u14so7339003ejf.13 for <9fans@9fans.net>; Sun, 22 Aug 2021 12:09:16 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=7Z10fY3HklwMpzEPleIQOgfv//OcfFMVK90M5DuLk7w=; b=nGlF2BGAo58MtXbYWpIg15IOvc0tEgXMioI5rzaC4JaBx1A7yALv07cx+lScrsrZDA zFl5dtY2FFYy8Txs0kSctufQCynOQG5W3j58pIGbW+c4HSZ4WpRyVTIB1hVdCIDU/4hz zXdKtO8CJastAecpvrROpPiYgUJPnY5jYdMw1iIoaMOPG1ScNZiCIj/mTPIGaCD1P4HF dzOBtQ3y63onNETXqoU4PyZ7ped4wKAP7/ootpL1wAonpdztpPwhTqsjz3rHfG6xBb3x J7rse29WsfuXdBc8sORDUXyaf7yURlPSP72j3R4M8+Aw7f740NKQG4H2YsQHB20jy4cg 4R5w== X-Gm-Message-State: AOAM532qLvIioCswGgVuE+QdHCZM/LRvT27DT8cPR0fXh49R8VM4WBVF w2yqcxdp/0sy+pyduf5MxMpOTB8q0czA1uk+cFU6qS/pz5Y= X-Google-Smtp-Source: ABdhPJx6Ykh9YRRmiyNfunWc/8gtaxG7wNDLTsUWoZFqOkaJKrYArq86oqah9JDpGnq6mjQDM8g/41i+/EoxWAwVsPA= X-Received: by 2002:a17:906:ced1:: with SMTP id si17mr31265558ejb.506.1629659355342; Sun, 22 Aug 2021 12:09:15 -0700 (PDT) MIME-Version: 1.0 References: <92764e35-f5cf-460a-91df-050ba471e6dd@sirjofri.de> <9352EE7C-AE94-4C1C-8738-5A1DA8ECE5A7@iitbombay.org> In-Reply-To: From: Paul Lalonde Date: Sun, 22 Aug 2021 12:09:03 -0700 Message-ID: Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) To: 9fans <9fans@9fans.net> Content-Type: multipart/alternative; boundary="000000000000faead505ca2aa20a" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 75782f3e-037c-11ec-8de4-9e11e1be1de6 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NNjMwOWQwZDI2NDRlMDY1MWU3NGI5?= =?UTF-8?B?OTAxPg==?= 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:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M6309d0d2644e0651e74b9901:1:0JrFZeIWsa8Hok-pCF5kk-SrkLPNYdZlYE2YOgsIZDg --000000000000faead505ca2aa20a Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable I'm pretty sure we're still re-inventing, though it's the CPU's turn to gain some of the complexity of the graphics engine. Paul On Sun, Aug 22, 2021, 12:05 PM Bakul Shah wrote: > Thanks. Looks like Sutherland's "Wheel of Reincarnation > " > has not only stopped but exploded :-) Or stopped being applicable. > > -- Bakul > > On Aug 22, 2021, at 9:23 AM, Paul Lalonde > wrote: > > It got complicated because there's no stable interface or ISA. The > hardware evolved from fixed-function to programmable in a commercial > environment where the only meaningful measure was raw performance per > dollar at many price points. Every year the hardware spins and becomes > more performant, usually faster than Moore's law. With 3D APIs hiding the > hardware details there is no pressure to make the hardware interface > uniform, pretty, or neat. And with the need for performance there are > dozens of fixed function units that effectively need their own sub-drivers > while coordinating at high performance with the other units. > The system diagrams for GPUs look complex, but they are radical > simplifications of what's really on the inside. > > Intel really pioneered the open driver stacks, but performance generally > wasn't there. That might be changing now, but I don't know if their > recently announced discrete product line will be driver-compatible. > > Paul > > > On Sun, Aug 22, 2021 at 8:48 AM Bakul Shah wrote: > >> The FreeBSD amdgpu.ko is over 3Mbytes of compiled code. Not counting the >> "firmware" that gets loaded on the GPU board. drm/amd/amdgpu has 200K+ >> lines of source code. drm/amd over 2M lines of code. Intel's i915 seems = to >> be about 1/10th the amd size. AIUI, this is linux GPU driver code, more = or >> less unchanged (FreeBSD has shim code to use it). How did the interface = to >> an SIMD processor get so complicated? >> >> On Aug 22, 2021, at 6:44 AM, Paul Lalonde >> wrote: >> >> I'd love to see GPU support for Plan9. This discussion falls right into >> my professional capacity. I'll say that people generally *grossly* >> underestimate the complexity of a modern GPU and of its supporting softw= are >> stack. The GPU driver is effectively a second operating system with sha= red >> memory and DMA interfaces to the host. Even bringing up a modern GPU for >> just compute tasks is a very large endeavour. >> >> That being said, if you want real hardware support, the best place to >> start is currently AMD's open-source stack. Ignoring the Vulkan bit, >> understanding their platform abstraction layer (PAL) and shader ISA ( >> https://developer.amd.com/wp-content/resources/Vega_Shader_ISA_28July201= 7.pdf) >> is the base. The lower hardware levels are reasonably well-described in >> linux's libdrm and its AMD support in amdgpu. >> >> Opinions on how to bring this to Plan9? I don't really have any - it's a >> huge pile of work with minimal benefit. If you're looking for lightweig= ht >> graphics, WebGL is a doable path, and almost certainly the right way to >> experiment with Plan9-like interfaces to graphics hardware. >> >> Paul >> >> >> >> On Sun, Aug 22, 2021 at 5:30 AM sirjofri >> wrote: >> >>> >>> 22.08.2021 14:10:20 Stuart Morrow : >>> > Also: >>> >> people have discussed that for years >>> > >>> > They have? I mean I might have seen occasionally someone vaguely >>> > going "some sort of GPU support would be cool to have". That isn't >>> > discussion. >>>=20 >>> I've even heard of someone actually making GPU stuff work on plan 9. >>> I've >>> only heard from their partner, who made a cute glenda thing on a piece >>> of >>> cloth. I chatted with her a little and told her she should encourage her >>> partner for some discussion about this in our channels. It looked like >>> it's some academic work, but I don't know any details about it. >>>=20 >>> Worst case, someone already has a proper and good GPU implementation for >>> Plan 9 and nobody knows about it. >>>=20 >>> sirjofri >>>=20 >>> Btw if the said person reads this: it would be nice to learn some >>> details. >> >> >> >> -- Bakul >> >> > *9fans * / 9fans / see discussions > + participants > + delivery options > Permalink > > ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-M6309d= 0d2644e0651e74b9901 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription --000000000000faead505ca2aa20a Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I'm pretty sure we're still re-invent= ing, though it's the CPU's turn to gain some of the complexity of t= he graphics engine.

Paul

On Sun, Aug 22, 2021, 12:05 PM Bakul Shah <bakul@iitbombay.org> wrote:
Thanks. Looks like Sutherland's "Wheel of Reincarnation" h= as not only stopped but exploded :-) Or stopped being applicable.

-- Bakul

On= Aug 22, 2021, at 9:23 AM, Paul Lalonde <paul.a.lalonde@gmail.com<= /a>> wrote:

It got complicated because = there's no stable interface or ISA.  The hardware evolved from fix= ed-function to programmable in a commercial environment where the only mean= ingful measure was raw performance per dollar at many price points.  E= very year the hardware spins and becomes more performant, usually faster th= an Moore's law.  With 3D APIs hiding the hardware details there is= no pressure to make the hardware interface uniform, pretty, or neat. = And with the need for performance there are dozens of fixed function units= that effectively need their own sub-drivers while coordinating at high per= formance with the other units. 
The system diagrams for GPUs look= complex, but they are radical simplifications of what's really on the = inside.

Intel really pioneered the open driver stacks,= but performance generally wasn't there.  That might be changing n= ow, but I don't know if their recently announced discrete product line = will be driver-compatible.

Paul

=

The FreeBSD amdgpu.ko is over 3Mbytes of compiled code. N= ot counting the "firmware" that gets loaded on the GPU board. drm= /amd/amdgpu has 200K+ lines of source code. drm/amd over 2M lines of code. = Intel's i915 seems to be about 1/10th the amd size. AIUI, this is linux= GPU driver code, more or less unchanged (FreeBSD has shim code to use it).= How did the interface to an SIMD processor get so complicated?
On Aug 22, 2021, at 6:44 AM, Paul Lalond= e <paul.a.lalonde@gmail.com> wrote:

I'd love to see  GPU support for Plan9.  This discu= ssion falls right into my professional capacity.  I'll say that pe= ople generally *grossly* underestimate the complexity of a modern GPU and o= f its supporting software stack.  The GPU driver is effectively a seco= nd operating system with shared memory and DMA interfaces to the host. = ; Even bringing up a modern GPU for just compute tasks is a very large ende= avour.

That being said, if you want real hardware= support, the best place to start is currently AMD's open-source stack.=   Ignoring the Vulkan bit, understanding their platform abstraction la= yer (PAL) and shader ISA (https://developer.amd.com/wp-content/resources/Vega_Shader_ISA_28July201= 7.pdf) is the base.  The lower hardware levels are reasonably well= -described in linux's libdrm and its AMD support in amdgpu.
<= div>
Opinions on how to bring this to Plan9?  I don= 9;t really have any - it's a huge pile of work with minimal benefit.&nb= sp; If you're looking for lightweight graphics, WebGL is a doable path,= and almost certainly the right way to experiment with Plan9-like interface= s to graphics hardware.

Paul



On Sun, Aug 22, 2021 at 5:30 AM sirjofri <sirjofri+ml-9fans@sirjofri.de> wrote:

22.08.2021 14:10:20 Stuart Morrow <morrow.stuart@gmail.com>:=
> Also:
>> people have discussed that for years
>
> They have?  I mean I might have seen occasionally someone vaguely=
> going "some sort of GPU support would be cool to have". = ; That isn't
> discussion.

I've even heard of someone actually making GPU stuff work on plan 9. I&= #39;ve
only heard from their partner, who made a cute glenda thing on a piece of <= br /> cloth. I chatted with her a little and told her she should encourage her partner for some discussion about this in our channels. It looked like
it's some academic work, but I don't know any details about it.

Worst case, someone already has a proper and good GPU implementation for Plan 9 and nobody knows about it.

sirjofri

Btw if the said person reads this: it would be nice to learn some
details.

------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-Md3d5cd693c1= 2f948ad4720bc
Delivery options: https://9fans.topic= box.com/groups/9fans/subscription



-- Bakul

= --000000000000faead505ca2aa20a-- From bounce.mM539f47f30599e6cfecb3adb9.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 20:23:27 2021 Return-Path: Received: from tb-ob20.topicbox.com (tb-ob20.topicbox.com [173.228.157.66]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MKNRtk017174 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 20:23:27 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob20.topicbox.com (Postfix) with ESMTP id 1AE0921179 for ; Sun, 22 Aug 2021 16:18:25 -0400 (EDT) (envelope-from bounce.mM539f47f30599e6cfecb3adb9.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id CED4A333DF49; Sun, 22 Aug 2021 16:18:24 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=message-id:to:subject:date:from:in-reply-to :mime-version:content-type:list-help:list-id:list-post :list-subscribe:reply-to:content-transfer-encoding :list-unsubscribe; s=sysmsg-1; t=1629663504; bh=5C2X4t/ecnKwIbfb 0nlCDG1ScwCy7etBO8gDlRGCQ2U=; b=ktrTaVvlHtumiEHyzmO/ZoPjYT1gcfgO gFxSxRMD9tgy7KzCTdTJuNdyQKXl3/mZ9fj+NmQbcAaqlwV5saCOpBzObbyka8kC ClTO41tHbclbRyNEnQJZPH+h69vveod2owJLNbGQCO+pFFzylht20HUkM8fhxa+m T5r6iIS9LAI= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629663504; b=h1Xmn0QRovzVK8iSTu2JaJDbTu39iGrcGYJhpcC6+Kh1aRDGyt bV1ges8eEH++VQbu9fddTorjmC3EyYEv59Mnv/MDlAg1TKvSMXtWGhLHe2Fck8/f jNQA6BBHGfh7iSG+L+1O2nSOKYRP1PfbNOAwQv8vKDbD1nkmrj/aEyYUM= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) X-Received-Authentication-Results: tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: kusuri.pikopiko.org,nokogiri.pikopiko.org,eigenstate.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: kusuri.pikopiko.org,nokogiri.pikopiko.org,eigenstate.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=message-id :to:subject:date:from:in-reply-to:mime-version:content-type :list-help:list-id:list-post:list-subscribe:reply-to :content-transfer-encoding:list-unsubscribe; s=dkim-1; bh=UeZFrC o476RpjMk6YEA2j5fGNRuHHDPBIbsIfJYfam8=; b=WlP681gAuOp78m30aJ3flE H5zuXlmnCglP6n7qhNeZCCSHFN+/LF0Gzkvohg2BRpfQAXdq+6hXuCJZLKnV6THC DescxtgtaicNdvyayPWal8PUw3iONCL706NvrAqVnH386tDOmCEngheaPmV0LtZB lbWCdDq0pS3Ilanu7q3YM= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id 5F846333D3F6 for <9fans@9fans.net>; Sun, 22 Aug 2021 16:17:02 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id 5265A4A22BB; Sun, 22 Aug 2021 16:17:02 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629663422; b=hl1Lq2VrOlG3UTOTCxhrX9iIe/ZTTMOtuehIcP9lLSEn8ItQ7S omy1/qNO6p48JdK+/flmkj+HDK9igMo/Nv0iihNVt+XT1wVwjEEsxAKVFpNVr+pP kt0LkdJtmvXdaahmEx1dZ5ke8dDZfBQ+rEVssiFmBCsLI3YoIQvSNlSoFLSdwXCP ZAa19RtaJN+mc7SUWigZMXBbWJL7DMTC8yAj7XNLxMHeR0PAW6vlQm8WYLjE0y/h AKnY/2kNaknkWsWm0DnRHiObZt8RS38EHG62YqOFJ9VzsxgAAJnpWNNArdeHUqG/ yF8Hqv5SQINN77zBJZ4LRziofkUpz6BFRr4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=message-id:to:subject:date:from:in-reply-to :mime-version:content-type; s=arcseal; t=1629663422; bh=sScNd9CI wkU4+ahhU5BSqeEgb4jZOyaQh0MkSi0Vg3Y=; b=eU4rDzycfkH4oKuUgCZyH/wz Hof0DsUAs+ElZZpO1UO3RcXMW6OWpqpdPuplBYtAPLwVlY4xQWrqLYJ31tFti/Bu BlU+xl2ZtrvPQNCaj1RyJ23x/95phs7IcQRSnJnt+Gp9lZDqdaXgWPCe7uDoaqko KiJaM2a5XyjJzKTj35+fJUlwT92Yoi/yInDHVvtptXOIuiMikS5yBABuuXymSvmj dxyVFPTrzPd1SKgZJAYFsqsLHXmEl3Cxfy9FAL8HoxWH3CMtonYhc+OWfjPz4saH Xiyey0T9xCElydFmboNdmZtq9uPx5sG3jIFhW5RMRp5HiD7QFAmB2HlXSdjyFA== ARC-Authentication-Results: i=1; tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: kusuri.pikopiko.org,nokogiri.pikopiko.org,eigenstate.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: kusuri.pikopiko.org,nokogiri.pikopiko.org,eigenstate.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtuddgledtucdltddurdegudelrddttd dmucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgf nhhsuhgsshgtrhhisggvpdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttd enucenucfjughrpefkvffufffhjgggtgesmhdtjeertddtvdenucfhrhhomhepohhrihes vghighgvnhhsthgrthgvrdhorhhgnecuggftrfgrthhtvghrnhepleehveeugfekieeghf efueegjeetvdevfefgvdetfffhkeektdfhheettddthefhnecuffhomhgrihhnpehgihht hhhusgdrtghomhdpghhoohhglhgvrdgtohhmpdhhthhtphgurdhphidpghhmrghilhdrtg homhenucfkphepvddtiedruddvgedrudefvddruddtjedpjeegrddutdekrdehiedrvddv heenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepihhnvghtpedvtdeirdduvd egrddufedvrddutdejpdhhvghlohepmhhimhhirhdrvghighgvnhhsthgrthgvrdhorhhg pdhmrghilhhfrhhomhepoehorhhisegvihhgvghnshhtrghtvgdrohhrgheq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (eigenstate.org: 206.124.132.107 is authorized to use 'ori@eigenstate.org' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="ori@eigenstate.org"; helo=mimir.eigenstate.org; client-ip=206.124.132.107 Received: from mimir.eigenstate.org (mimir.eigenstate.org [206.124.132.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 16:17:01 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id a18e843d (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO); Sun, 22 Aug 2021 13:17:00 -0700 (PDT) Message-ID: To: 9fans@9fans.net, 9front@9front.org Subject: Re: [9fans] OAuth2 in factotum Date: Sun, 22 Aug 2021 16:16:58 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="upas-jjdjbetwoeaehrwgnwdrkwsrds" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: ed14c01c-0385-11ec-b407-a46e6418c333 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UNjg5OWJmM2YwNjU0Mjk1ZC1NNTM5ZjQ3ZjMwNTk5ZTZjZmVjYjNh?= =?UTF-8?B?ZGI5Pg==?= 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:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M539f47f30599e6cfecb3adb9:1:JB2-l38qLIFcxW4IED3RsRjxvz404ukCjpYllX3UbZA --upas-jjdjbetwoeaehrwgnwdrkwsrds Content-Disposition: inline Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Content-ID: <16296634320.937Ffa.617568@tb-mx1> Quoth Demetrius Iatrakis : > This is a preview of OAuth2 support in factotum, as part of this year's GSoC: > https://github.com/Mitsos101/plan9front/pull/1 > > Installation, on 9front: > > git/clone https://github.com/Mitsos101/plan9front plan9front-oauth > cd plan9front-oauth > git/branch oauth > bind sys/include /sys/include > @{cd sys/src/libauth && mk install} > @{cd sys/src/cmd/auth && mk install} > @{cd sys/src/cmd/webfs && mk install} > > This will replace your factotum. > > Usage: > > You need to obtain OAuth credentials from your issuer first. See, for > example, Google's guide: > https://developers.google.com/identity/protocols/oauth2. > > % echo 'key proto=oauth issuer=https://accounts.google.com scope=email > client_id=1234 !client_secret=5678' > /mnt/factotum/ctl > % auth/oauth 'client_id=1234' > go to https://google.com/device > your code is ABCD-EFGH > > > auth_oauth is also available in libauth. Webfs uses it to implement > the preoauth command. > > Bugs: > > This code is specific to 9front, as libjson is required and Plan 9's > webfs doesn't support preoauth. > > factotum uses the needkey RPC to display the verification URL and code > to the user. This means that, for now, the needkey file must not be > open so that fgui doesn't intercept it. > > The module imports lots of code to support HTTP/1.0 so that the > refresh token doesn't leave factotum's address space. > > Only the device and refresh flows are supported. There is an > implementation of the authorization code flow (tested on macOS) here: > https://github.com/Mitsos101/plan9port/pull/1. However, it is not > included in the module as there is no good browser to plumb the URL > to. > > Refresh tokens are not saved to persistent storage when factotum > exits. The user must provide consent every time factotum is restarted. > And, now that we have something working, I wrote some code to use it. I wrote a patch to add oauth support to upas/fs -- see attached: To use the patch, I followed this kind of clunky process: https://developers.google.com/identity/protocols/oauth2 I went to the 'credentials' section on the sidebar and I created a key for a 'desktop application'; Then I went to the 'oauth consent screen' and added my work email account as a 'test user'. I grabbed the keys, and on my unix box, went to the patched oauth: % cd $HOME/src/plan9port/src/cmd/oauth and generated a key using the full, browser based auth flow: % python httpd.py % ./oauth https://accounts.google.com https://mail.google.com/ $clientkey $clientsecret key proto=oauth issuer=https://accounts.google.com client_id=72... then edited the resulting output to include the appropriate attributes, adding the attributes in >>...<< for upas/fs: key proto=oauth >>service=imap server=imap.gmail.com user=ori@pingthings.io<< issuer=https://accounts.google.com client_id= token_type=Bearer exptime=1629662303 scope=... and then added that to factotum: echo key=... >/mnt/factotum/ctl With that, upas/fs just worked with my work email: upas/fs -f /imaps/imap.gmail.com/ori@pingthings.io Bugs: there are way too many steps. Unfortunately, the most annoying one is generating and adding an oauth client key/secret, and short of shipping a pregenerated one (is that a good idea?), I don't think there's a solution. Beyond that, 2 small bits of polish which I think we can do: - Adding a '-t' flag to oauth (the way auth/rsa does) to add type information to auth/oauth login would make it more convenient to use: the output could be stored directly rather than needing editing. - Adding a script that allows spawning a browser and http listener on unix (or redirecting thigns through to plan 9) would make it easier to drive the auth process from plan 9. Thanks for doing this work, Demetrius! --upas-jjdjbetwoeaehrwgnwdrkwsrds Content-Disposition: inline Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Content-ID: <16296634321.31BBCDc6D.617568@tb-mx1> diff bcfee7b54757eb64cade34e476cf0dba672832f6 uncommitted --- a/sys/src/cmd/upas/fs/imap.c +++ b/sys/src/cmd/upas/fs/imap.c @@ -24,6 +24,7 @@ Cnolog =3D 1<<0, Ccram =3D 1<<1, Cntlm =3D 1<<2, + Coauth =3D 1<<3, =20 /* flags */ Fssl =3D 1<<0, @@ -151,7 +152,7 @@ static void imap4cmd(Imap *imap, char *fmt, ...) { - char buf[256], *p; + char buf[1024], *p; va_list va; =20 va_start(va, fmt); @@ -430,6 +431,8 @@ imap->cap |=3D Ccram; if(strcmp(p, "ntlm") =3D=3D 0) imap->cap |=3D Cntlm; + if(strcmp(p, "xoauth2") =3D=3D 0) + imap->cap |=3D Coauth; }else if(strcmp(t[i], "logindisabled") =3D=3D 0) imap->cap |=3D Cnolog; } @@ -733,6 +736,38 @@ } =20 static char* +imap4oauth(Imap *imap) +{ + char *s, *auth, *enc; + int n; + OAuth *oa; + + if(imap->user =3D=3D nil) + return "user required for oauth"; + oa =3D auth_getoauth(auth_getkey, "proto=3Doauth service=3Dimap ser= ver=3D%q user=3D%q", imap->host, imap->user); + if(oa =3D=3D nil) + return "cannot find IMAP oauth token"; + + imap->tag =3D 1; + if((auth =3D smprint("user=3D%s\x01auth=3DBearer %s\x01\x01", imap-= >user, oa->access_token)) =3D=3D nil) + sysfatal("smprint: %r"); + if((enc =3D smprint("%[", auth) =3D=3D nil) + sysfatal("smprint: %r"); + imap4cmd(imap, "authenticate xoauth2 %s", enc); + free(auth); + free(enc); + free(oa); + s =3D imap4resp(imap); + if(isokay(s)) + return nil; + imap4cmd(imap, ""); + s =3D imap4resp(imap); + if(isokay(s)) + return nil; + return s; +} + +static char* imap4passwd(Imap *imap) { char *s; @@ -762,6 +797,8 @@ e =3D imap4cram(imap); else if(imap->cap & Cntlm) e =3D imap4ntlm(imap); + else if(imap->cap & Coauth) + e =3D imap4oauth(imap); else e =3D imap4passwd(imap); if(e) @@ -1165,6 +1202,7 @@ imap->host =3D f[2]; if(strstr(imap->host, "gmail.com")) imap->flags |=3D Fgmail; + imap->flags |=3D Fdebug; imap->refreshtime =3D 60; if(nf < 4) imap->user =3D nil; ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T6899bf3f0654295d-M539f4= 7f30599e6cfecb3adb9 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription --upas-jjdjbetwoeaehrwgnwdrkwsrds-- From 9front-bounces@1ess.inri.net Sun Aug 22 20:36:55 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17MKasKH024659 for ; Sun, 22 Aug 2021 20:36:54 GMT Received: from mail-ej1-f45.google.com ([209.85.218.45]) by 1ess; Sun Aug 22 16:32:34 -0400 2021 Received: by mail-ej1-f45.google.com with SMTP id a25so5784068ejv.6 for <9front@9front.org>; Sun, 22 Aug 2021 13:32:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=YoLnv6WZ2FKLpMrUOHKOvwPIK4RLuCiHvSaJbOWjff4=; b=hkDJrsCkVZMMVJJCaLFIkRUFQEDcG99t6nfhnshaWqbJXIQd4GGCsibkxb7wvnCr6k ZTxyIh4DQC97wkmRIQWOXGORkAIPefuoOValqCbVtJsPNNd5h4D9UlDo4CUeEDfoidnF kla9ZhM4o8E+M0Qvi/FjxVlbhgLoW8jSnV0jp2ioN46SHx2ojmQTqTFhqUtGM7gY+NyD xRYdQE1fgbPa0oxvHqyzjSaP0/HNX5BvniQXHLRbsEafhBfnj3SsjNWZg/JKT15WWWSG Up41ADvlGqRkQKedSRVKLieDcdfOynvZLpmPoWFNxKQa/6c7g2nvdLCz7BWyXR6u/7EM 2cWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=YoLnv6WZ2FKLpMrUOHKOvwPIK4RLuCiHvSaJbOWjff4=; b=FPiuh0rEnSivNXJR3oSByHEAr7+IccZB/WOkW9LYinzS0uVxWenttwZC9L+E+Wix7v 13wqtnpUq6HhKcwH/4IqDNgrJcSDJBUM4Z7I+Xg4SVjNoEUJZi/kvvaYUdVAwnv2BGBM 0KVV9rG4E2zCnEc7VgsFjTcn+/0zviC+BFiPa2oxvlvFEsycTJ4B0rTJwjE7v3jfimbg 8f7V1ZfObM/syHzoVAxv6pOZo7oLsB5fwdC3c581ZM7PdOkmueTC9EW8PLtqO0FBSzVu Dc+0vXnd04GaBQ246XBzg+SeYB4AtQpSgWxkTw6A17kWjRVGEtYoF6sLc9NTJuNPSFvC sK5g== X-Gm-Message-State: AOAM531CQmDHr311IVmcK9eAKjkEiUoVZWuY7gBacb4OB3txbnndb/Vp A5t/pUHaeTaBTHJWB/mmK0FF7pDASJgPxomOaX4= X-Google-Smtp-Source: ABdhPJy7NIr8AWRGAoBXz617N1Fz863JvinVA+eeAB2Sqwkjxoio5VV3VJVRptJb4dE/hbjzNwwsUa1grTlQ1rmk1rg= X-Received: by 2002:a17:906:b286:: with SMTP id q6mr32028654ejz.120.1629664345021; Sun, 22 Aug 2021 13:32:25 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Demetrius Iatrakis Date: Sun, 22 Aug 2021 23:32:13 +0300 Message-ID: To: 9fans <9fans@9fans.net> Cc: 9front@9front.org Content-Type: text/plain; charset="UTF-8" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: optimized proven app hardware Subject: [9front] Re: [9fans] OAuth2 in factotum Reply-To: 9front@9front.org Precedence: bulk Thank you for your work. Don't forget to add type is text dst is oauth plumb to oauth to your plumber's rules file to create the oauth port. I have also added the authorization code flow to the factotum module (can be enabled by adding `flow=auth` to the key), but it requires the user to import the plan9port plumber into factotum's namespace. I am unsure what the best way to do this is. Plan9port provides import(4) which relies on SSH, but 9front does not provide an SSH server. -- Demetrius From bounce.mM0301c221a9c86a5cd726882d.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 20:39:15 2021 Return-Path: Received: from tb-ob1.topicbox.com (tb-ob1.topicbox.com [64.147.108.173]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MKdFqm016866 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 20:39:15 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob1.topicbox.com (Postfix) with ESMTP id E338733B42 for ; Sun, 22 Aug 2021 16:33:47 -0400 (EDT) (envelope-from bounce.mM0301c221a9c86a5cd726882d.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id D8FC8333F38C; Sun, 22 Aug 2021 16:33:47 -0400 (EDT) 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=hkDJrsCk header.a=rsa-sha256 header.s=20161025 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=demetrius.iatrakis@gmail.com smtp.helo=mail-ej1-f42.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body 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:cc:content-type:list-help:list-id :list-post:list-subscribe:reply-to:content-transfer-encoding :list-unsubscribe; s=sysmsg-1; t=1629664427; bh=wRIKH6Ppd+91S8FX 2FKtzI3SVFojboSIQYLeYtApBkk=; b=frht22U+Q0uosxDQNZ5czS48Zn1K9dbc tmwgi4UuM5pfgBQoDehsHQkXQVETQHsGJClCVmOFz5KnoyzOk8iSQB/Y8Lw2wzUg Vp2WVJTIbnvRDIpdop+bbyOJh7ywwr+jiCF9rr+Okb0Ca9DuoDAe22XaTASRZQ5S Lc+U7YGI82U= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629664427; b=W44X1phm1idhwdrVqDbRZDIWXfnpL+oukBAyGTSPm2nFlENY3y o0EI+aDec1xycOGHW4OAR4KvtWdJg7jGInFUiq6byZCQ8xWCSwdJ0QWSclu1xF2I ENwfXURooCXxLa4WSoxeeqw7ekCV/hzzR5v3YnCXJtM2OionJwP3OKS3w= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=hkDJrsCk header.a=rsa-sha256 header.s=20161025 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=demetrius.iatrakis@gmail.com smtp.helo=mail-ej1-f42.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) X-Received-Authentication-Results: tb-mx1.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=hkDJrsCk header.a=rsa-sha256 header.s=20161025 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.218.42 (mail-ej1-f42.google.com); spf=pass smtp.mailfrom=demetrius.iatrakis@gmail.com smtp.helo=mail-ej1-f42.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=UE38Ck1w; x-me-sender=none; x-ptr=pass smtp.helo=mail-ej1-f42.google.com policy.ptr=mail-ej1-f42.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt2.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: alt2.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; 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:cc:content-type:list-help:list-id:list-post:list-subscribe :reply-to:content-transfer-encoding:list-unsubscribe; s=dkim-1; bh=wRIKH6Ppd+91S8FX2FKtzI3SVFojboSIQYLeYtApBkk=; b=q9W72jt7Yups zypHYpEGrBX/uabxjd+8inU9SYSTh9HVN8a2AAWZutSnLltL8en3W3H1rPa4WLUv JdmWJLD81TR/HLTOSjn2Ut5xAIQD1jS2ykquAreCo+BH/lgYysJvt5zub5sIIp/v d0eKIh5Rp540Q7trG2LGVgV5nYSaSNo= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id AA4EA333E68D for <9fans@9fans.net>; Sun, 22 Aug 2021 16:32:26 -0400 (EDT) (envelope-from demetrius.iatrakis@gmail.com) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id BB2C16137B8; Sun, 22 Aug 2021 16:32:26 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629664346; b=coTsmxQbVoxALBIBs1JUnEEDSmep2+j5P++zibBWP+FXl1lXvK M0VjO+yI2c8P3ZNyXxk3KvbK9ZYFafjD3IyiV+xo+zI4exm11+5JDuTvLB+UNkXy cYpVei4pbpAN9c90svbCe80Oe+xRHxuWIYRKM5wzLchEXwVTVrUMTXm2Uq5ZysDm EcgzJSje1cnJsbeEApIfXYyanOd4/pKfi4dISUloCG1yXtqN4/Si9PhjLn+D8GX9 TtVVp17c3s2kBCdydqowspF6XQJM4Q8bl8oLBFalomAm9tCnhPon6VaUEhAVbFTW 04J/ixy02o/bxkg/rFy3d1Un5RZ+jatpA4jw== 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:cc:content-type; s=arcseal; t=1629664346; bh=YoLnv6WZ2FKLpMrUOHKOvwPIK4RLuCiHvSaJbOWjff4=; b=wnFIYmdAbutv rov+SOEAXwRFi61/0ZaA9h6gDQgxPk1y61H5ozbH7qJXy7MFN1ckQLqOgapjUBsr vRCUeT32iOFThPMo5Cv45EQ2Tm1SuCcVch8iCL5u3aeUru1ciK1b6r64p6jPERE2 IqRLUHR2Z+DBsFKV6SItPZ2B2cRa2N7uapoBrZh6z6cP92K/MbNb/+8ZIMLZ5ew9 9AgBWuH+qSatXmyaYnbhI+2F5w5ASy8Dcsmo9+x2XjBsC8iZC4Bu1ycPL5oU1vEl z8Z8m/c/ay/sxB2mvdYBnVesHUiW4GQaki74ByVpL+BEH+ZJowwKVpKnVzVJRZeE suVZEHFsvQ== ARC-Authentication-Results: i=1; tb-mx1.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=hkDJrsCk header.a=rsa-sha256 header.s=20161025 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.218.42 (mail-ej1-f42.google.com); spf=pass smtp.mailfrom=demetrius.iatrakis@gmail.com smtp.helo=mail-ej1-f42.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=UE38Ck1w; x-me-sender=none; x-ptr=pass smtp.helo=mail-ej1-f42.google.com policy.ptr=mail-ej1-f42.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt2.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: alt2.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtuddgudegleculddtuddrgeduhedrtd dtmdcutefuodetggdotefrodftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggft fghnshhusghstghrihgsvgdpuffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftd dtnecunecujfgurhepgghfjgfhfffkuffvtgesthdtredttddtjeenucfhrhhomhepffgv mhgvthhrihhushcukfgrthhrrghkihhsuceouggvmhgvthhrihhushdrihgrthhrrghkih hssehgmhgrihhlrdgtohhmqeenucggtffrrghtthgvrhhnpedvvddvvdfggffgheeivddv tdfhudffgeejgfekvdetfeekfffgudeiudfggeejgfenucfkphepvddtledrkeehrddvud ekrdegvdenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepihhnvghtpedvtdel rdekhedrvddukedrgedvpdhhvghlohepmhgrihhlqdgvjhduqdhfgedvrdhgohhoghhlvg drtghomhdpmhgrihhlfhhrohhmpeeouggvmhgvthhrihhushdrihgrthhrrghkihhssehg mhgrihhlrdgtohhmqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (gmail.com ... _spf.google.com: Sender is authorized to use 'demetrius.iatrakis@gmail.com' in 'mfrom' identity (mechanism 'include:_netblocks.google.com' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="demetrius.iatrakis@gmail.com"; helo=mail-ej1-f42.google.com; client-ip=209.85.218.42 Received: from mail-ej1-f42.google.com (mail-ej1-f42.google.com [209.85.218.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 16:32:26 -0400 (EDT) (envelope-from demetrius.iatrakis@gmail.com) Received: by mail-ej1-f42.google.com with SMTP id u3so32498295ejz.1 for <9fans@9fans.net>; Sun, 22 Aug 2021 13:32:26 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=YoLnv6WZ2FKLpMrUOHKOvwPIK4RLuCiHvSaJbOWjff4=; b=UE38Ck1wH/SnJAUeY73194EgmwscXmJWDmARdLaK7t44Ry6fI86cOR4jfg9z0jSzVO V3k10lkQ+p6IKMn3Rv1aYuwInqW/KhNp88wmCn3dMN14wlZfzyslZ27Mo17HTlIRb3ND HACzLb9SXalQUL43fry3Ex/I5Hj6DhxGHO6Yz6NB5CTqyecTcXHXAEyNeuAadnouQdsa Xqlvbasp97ZNWq5dMcvyYk+l6kFeIacAFLhsppbbkQXtmQ4foEOoDINW6tLtl5hAUOyX onMK2EN/bHeNAxEcWVfl54CKS6f5ylV1/fcJBBrypYsWVvxDRuV+Uar3F+q8ruem5RJ3 XtyQ== X-Gm-Message-State: AOAM533+zf0YIajvURTC3uQsusxzMFgxy4uByctZBvSUBWe2YP+EUr8p f8BItRaeInfz2uQqrG4mF5AA2XNIw+/3jbB4rS1wagY4Xo0= X-Google-Smtp-Source: ABdhPJy7NIr8AWRGAoBXz617N1Fz863JvinVA+eeAB2Sqwkjxoio5VV3VJVRptJb4dE/hbjzNwwsUa1grTlQ1rmk1rg= X-Received: by 2002:a17:906:b286:: with SMTP id q6mr32028654ejz.120.1629664345021; Sun, 22 Aug 2021 13:32:25 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Demetrius Iatrakis Date: Sun, 22 Aug 2021 23:32:13 +0300 Message-ID: Subject: Re: [9fans] OAuth2 in factotum To: 9fans <9fans@9fans.net> Cc: 9front@9front.org Content-Type: text/plain; charset="UTF-8" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 13410212-0388-11ec-8832-a993c91d1405 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UNjg5OWJmM2YwNjU0Mjk1ZC1NMDMwMWMyMjFhOWM4NmE1Y2Q3MjY4?= =?UTF-8?B?ODJkPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M0301c221a9c86a5cd726882d:1:ewSKuhhoMc0HomVYcmnul2X7mEYz8_SOCNgurSMGUrE Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17MKdFqm016866 Thank you for your work. Don't forget to add type is text dst is oauth plumb to oauth to your plumber's rules file to create the oauth port. I have also added the authorization code flow to the factotum module (can be enabled by adding `flow=auth` to the key), but it requires the user to import the plan9port plumber into factotum's namespace. I am unsure what the best way to do this is. Plan9port provides import(4) which relies on SSH, but 9front does not provide an SSH server. -- Demetrius ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T6899bf3f0654295d-M0301c221a9c86a5cd726882d Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From 9front-bounces@1ess.inri.net Sun Aug 22 20:42:44 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17MKghpc017405 for ; Sun, 22 Aug 2021 20:42:43 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 1ess; Sun Aug 22 16:38:23 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id a9245927 (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO); Sun, 22 Aug 2021 13:38:14 -0700 (PDT) Message-ID: To: 9fans@9fans.net CC: 9front@9front.org Date: Sun, 22 Aug 2021 16:38:13 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: core realtime-java module Subject: [9front] Re: [9fans] OAuth2 in factotum Reply-To: 9front@9front.org Precedence: bulk Quoth Demetrius Iatrakis : > > type is text > dst is oauth > plumb to oauth > > to your plumber's rules file to create the oauth port. Ah -- right. This is in the plan9port side, and it's used to send the oauth verification request to the browser. (iirc, it's not currently used for anything on the plan 9 side, though it wil be once we figure out how to glue together auth flows to either vmx or some unix browser) From bounce.mMbcaea13458be56f2909ea6c3.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 20:43:27 2021 Return-Path: Received: from tb-ob20.topicbox.com (tb-ob20.topicbox.com [173.228.157.66]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MKhRgn018039 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 20:43:27 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob20.topicbox.com (Postfix) with ESMTP id 8902621519 for ; Sun, 22 Aug 2021 16:37:42 -0400 (EDT) (envelope-from bounce.mMbcaea13458be56f2909ea6c3.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id 67FCD33A83AC; Sun, 22 Aug 2021 16:37:42 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=message-id:to:subject:date:from:in-reply-to :mime-version:content-type:list-help:list-id:list-post :list-subscribe:reply-to:content-transfer-encoding :list-unsubscribe; s=sysmsg-1; t=1629664662; bh=aULFXuHRpt9NA3oD GCiw3fw1xpmhY/78MbLmZHrlqkY=; b=aB04ogvq/wbt7qftsVH3ZqBgwjn6tuP8 wNfnVCSSV+1qPxewxlupDxf3feE/xMNaZS/4xDE9Do79yJkbHDOEe9qGECdoOFuS TT1wqT9TojIoFHKukicEUAFl4FTGZzxyfyK5b4GW8/ySV89xfpWZt8cFdqEVv0vi nkbN0rpDbFY= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629664662; b=FMupV37Z6CB06B7OrGLFoEmyheukA8+w1aNDNTRS6fusPsxKhq kvWH4GITqtqcRz/KF4cF8GZf8eRZUwjvjo8yscLWglska+39iaiTLXrERqzwBE8n pWLkUUAeb1gYjqVhgcZ4UAVUbc+qAg9s1e/lDABsnEDJ11NnhLMPnFg/I= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) X-Received-Authentication-Results: tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: kusuri.pikopiko.org,nokogiri.pikopiko.org,eigenstate.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: kusuri.pikopiko.org,nokogiri.pikopiko.org,eigenstate.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=message-id :to:subject:date:from:in-reply-to:mime-version:content-type :list-help:list-id:list-post:list-subscribe:reply-to :content-transfer-encoding:list-unsubscribe; s=dkim-1; bh=TXVWSV WrUx4UzWrtcdialW0CezGDr414WV9kZORXwVQ=; b=lhGVL3hu8PdJ90MVOWY6+d jVKu+TgXJyhd4tJWZSDL/DVRodG1JM0oTr1JZLFrRkTtSwe5vQ4reb/XEmnz2qFn VRERuO0HQliyRVH97hNVm/A/j0L+FgjOKvfw2Zndm0JdlOdxDsUKWctPb+2AaLiT GMbxESoNH2oWXHLyacNJk= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id 5D754331D2D0 for <9fans@9fans.net>; Sun, 22 Aug 2021 16:36:20 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id BD299E03271; Sun, 22 Aug 2021 16:36:20 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629664580; b=JdCKkuNmBVTdrYm7ncX3rElEH91OJ+zojFkt+bf7KMO5IBkfvA 4ek7m9PDNVZk6a++IrE3gBCUhAnzh3ZRgWHg9zDUyDkbnTBNdbbe8Ee0vvG/zMzM KDZYiATxCKb5wI552f7hQHj+AENkGkE+aS924fVkrXMrg5SgcXFhgI7LQP6csm4r mdJWH/kP13q8WmYfDTj5QeDSdOc4r91thTZxdfZJw51zTwyuG5gog5E28e2v52kn 4H3kduj5w6U9AYxflevxac6uxHaSV7q/dp+eBwbYMjUj4LdQKajjeKPfcaNzqmOv aGATvGzVhVAUiLOW0o0aDYLbVbPZ/uSfsPgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=message-id:to:subject:date:from:in-reply-to :mime-version:content-type; s=arcseal; t=1629664580; bh=cLKioMDq 2PZN6D6sICaQFJ29vybsDIkXTcp71jNZmKg=; b=aLPoctnhj6iQ3JrJQiHrldY3 FNFLtEim8argUeNkS/ckrq2IIouosYsRoYr3gXErzB2tjLL2pW8PmIJxbuxuhpYo N2Bc2l30LeTjtOvsYbIjtDLIcUtvMwvYY2P4UgXpU+ssEn4rje5LVkfoZUBooPay MKOX9KjMiMGjsMWlVGrsYGupqeETvZZ1VbyGjTU7l51LdtlOBcL/qvOJmw7KbhUE 8wFb5ExGMaewQqPhHo4+HtXlvwrzY5yt/KfTkHBshVqDPp5PbCxTA2pLKsd3frZx aO5iy+LJ9OYydvH4h2JN+JpKMkem1q8BYJZH9DHCTOA8dIMywq7lVuvNfvxODw== ARC-Authentication-Results: i=1; tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: kusuri.pikopiko.org,nokogiri.pikopiko.org,eigenstate.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: kusuri.pikopiko.org,nokogiri.pikopiko.org,eigenstate.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtuddgudegleculddtuddrgeduhedrtd dtmdcutefuodetggdotefrodftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggft fghnshhusghstghrihgsvgdpuffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftd dtnecunecujfgurhepkffvufffhfgjgggtsehmtdejredttddvnecuhfhrohhmpehorhhi segvihhgvghnshhtrghtvgdrohhrghenucggtffrrghtthgvrhhnpeelheevuefgkeeige fhfeeugeejtedvveefgfdvteffhfekkedthfehtedttdehhfenucffohhmrghinhepghhi thhhuhgsrdgtohhmpdhgohhoghhlvgdrtghomhdphhhtthhpugdrphihpdhgmhgrihhlrd gtohhmnecukfhppedvtdeirdduvdegrddufedvrddutdejpdejgedruddtkedrheeirddv vdehnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehinhgvthepvddtiedrud dvgedrudefvddruddtjedphhgvlhhopehmihhmihhrrdgvihhgvghnshhtrghtvgdrohhr ghdpmhgrihhlfhhrohhmpeeoohhrihesvghighgvnhhsthgrthgvrdhorhhgqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (eigenstate.org: 206.124.132.107 is authorized to use 'ori@eigenstate.org' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="ori@eigenstate.org"; helo=mimir.eigenstate.org; client-ip=206.124.132.107 Received: from mimir.eigenstate.org (mimir.eigenstate.org [206.124.132.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 16:36:19 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id 2782455b (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO); Sun, 22 Aug 2021 13:36:18 -0700 (PDT) Message-ID: <7BD08FA33BDEF31677ABBA911CD6A3FE@eigenstate.org> To: 9fans@9fans.net, 9front@9front.org Subject: Re: [9fans] OAuth2 in factotum Date: Sun, 22 Aug 2021 16:36:17 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="upas-ifmpfcjiockyosceugiyqlgyjc" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 9e627d12-0388-11ec-911a-e4af8fe49e98 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UNjg5OWJmM2YwNjU0Mjk1ZC1NYmNhZWExMzQ1OGJlNTZmMjkwOWVh?= =?UTF-8?B?NmMzPg==?= 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:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:Mbcaea13458be56f2909ea6c3:1:qzdkPvc_kCU7s0Mr_ArT2asiRGGQO8kMBjhhDH7ImGc --upas-ifmpfcjiockyosceugiyqlgyjc Content-Disposition: inline Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Content-ID: <16296645870.937Ffa.725759@tb-mx1> Quoth ori@eigenstate.org: > Quoth Demetrius Iatrakis : > > This is a preview of OAuth2 support in factotum, as part of this year's GSoC: > > https://github.com/Mitsos101/plan9front/pull/1 > > > > Installation, on 9front: > > > > git/clone https://github.com/Mitsos101/plan9front plan9front-oauth > > cd plan9front-oauth > > git/branch oauth > > bind sys/include /sys/include > > @{cd sys/src/libauth && mk install} > > @{cd sys/src/cmd/auth && mk install} > > @{cd sys/src/cmd/webfs && mk install} > > > > This will replace your factotum. > > > > Usage: > > > > You need to obtain OAuth credentials from your issuer first. See, for > > example, Google's guide: > > https://developers.google.com/identity/protocols/oauth2. > > > > % echo 'key proto=oauth issuer=https://accounts.google.com scope=email > > client_id=1234 !client_secret=5678' > /mnt/factotum/ctl > > % auth/oauth 'client_id=1234' > > go to https://google.com/device > > your code is ABCD-EFGH > > > > > > auth_oauth is also available in libauth. Webfs uses it to implement > > the preoauth command. > > > > Bugs: > > > > This code is specific to 9front, as libjson is required and Plan 9's > > webfs doesn't support preoauth. > > > > factotum uses the needkey RPC to display the verification URL and code > > to the user. This means that, for now, the needkey file must not be > > open so that fgui doesn't intercept it. > > > > The module imports lots of code to support HTTP/1.0 so that the > > refresh token doesn't leave factotum's address space. > > > > Only the device and refresh flows are supported. There is an > > implementation of the authorization code flow (tested on macOS) here: > > https://github.com/Mitsos101/plan9port/pull/1. However, it is not > > included in the module as there is no good browser to plumb the URL > > to. > > > > Refresh tokens are not saved to persistent storage when factotum > > exits. The user must provide consent every time factotum is restarted. > > > > And, now that we have something working, I wrote > some code to use it. I wrote a patch to add oauth > support to upas/fs -- see attached: > > To use the patch, I followed this kind of clunky > process: > > https://developers.google.com/identity/protocols/oauth2 > > I went to the 'credentials' section on the sidebar > and I created a key for a 'desktop application'; Then > I went to the 'oauth consent screen' and added my work > email account as a 'test user'. > > I grabbed the keys, and on my unix box, went to > the patched oauth: > > % cd $HOME/src/plan9port/src/cmd/oauth > > and generated a key using the full, browser based > auth flow: > > % python httpd.py > % ./oauth https://accounts.google.com https://mail.google.com/ $clientkey $clientsecret > key proto=oauth issuer=https://accounts.google.com client_id=72... > > then edited the resulting output to include the appropriate > attributes, adding the attributes in >>...<< for upas/fs: > > key proto=oauth > >>service=imap server=imap.gmail.com user=ori@pingthings.io<< > issuer=https://accounts.google.com client_id= > token_type=Bearer exptime=1629662303 scope=... > > and then added that to factotum: > > echo key=... >/mnt/factotum/ctl > > With that, upas/fs just worked with my work email: > > upas/fs -f /imaps/imap.gmail.com/ori@pingthings.io > > > Bugs: there are way too many steps. Unfortunately, the most > annoying one is generating and adding an oauth client key/secret, > and short of shipping a pregenerated one (is that a good idea?), > I don't think there's a solution. > > Beyond that, 2 small bits of polish which I think we > can do: > > - Adding a '-t' flag to oauth (the way auth/rsa does) > to add type information to auth/oauth login would > make it more convenient to use: the output could > be stored directly rather than needing editing. > - Adding a script that allows spawning a browser and > http listener on unix (or redirecting thigns through > to plan 9) would make it easier to drive the auth > process from plan 9. > > Thanks for doing this work, Demetrius! Oops, realized that I'd left this line in the patch: + imap->flags |= Fdebug; you'll really want to delete that, or you end up with a *TON* of debug spew. Updated patch attached. --upas-ifmpfcjiockyosceugiyqlgyjc Content-Disposition: inline Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Content-ID: <16296645871.31BBCDc6D.725759@tb-mx1> diff bcfee7b54757eb64cade34e476cf0dba672832f6 uncommitted --- a/sys/src/cmd/upas/fs/imap.c +++ b/sys/src/cmd/upas/fs/imap.c @@ -24,6 +24,7 @@ Cnolog =3D 1<<0, Ccram =3D 1<<1, Cntlm =3D 1<<2, + Coauth =3D 1<<3, =20 /* flags */ Fssl =3D 1<<0, @@ -151,7 +152,7 @@ static void imap4cmd(Imap *imap, char *fmt, ...) { - char buf[256], *p; + char buf[1024], *p; va_list va; =20 va_start(va, fmt); @@ -430,6 +431,8 @@ imap->cap |=3D Ccram; if(strcmp(p, "ntlm") =3D=3D 0) imap->cap |=3D Cntlm; + if(strcmp(p, "xoauth2") =3D=3D 0) + imap->cap |=3D Coauth; }else if(strcmp(t[i], "logindisabled") =3D=3D 0) imap->cap |=3D Cnolog; } @@ -733,6 +736,38 @@ } =20 static char* +imap4oauth(Imap *imap) +{ + char *s, *auth, *enc; + int n; + OAuth *oa; + + if(imap->user =3D=3D nil) + return "user required for oauth"; + oa =3D auth_getoauth(auth_getkey, "proto=3Doauth service=3Dimap ser= ver=3D%q user=3D%q", imap->host, imap->user); + if(oa =3D=3D nil) + return "cannot find IMAP oauth token"; + + imap->tag =3D 1; + if((auth =3D smprint("user=3D%s\x01auth=3DBearer %s\x01\x01", imap-= >user, oa->access_token)) =3D=3D nil) + sysfatal("smprint: %r"); + if((enc =3D smprint("%[", auth) =3D=3D nil) + sysfatal("smprint: %r"); + imap4cmd(imap, "authenticate xoauth2 %s", enc); + free(auth); + free(enc); + free(oa); + s =3D imap4resp(imap); + if(isokay(s)) + return nil; + imap4cmd(imap, ""); + s =3D imap4resp(imap); + if(isokay(s)) + return nil; + return s; +} + +static char* imap4passwd(Imap *imap) { char *s; @@ -762,6 +797,8 @@ e =3D imap4cram(imap); else if(imap->cap & Cntlm) e =3D imap4ntlm(imap); + else if(imap->cap & Coauth) + e =3D imap4oauth(imap); else e =3D imap4passwd(imap); if(e) ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T6899bf3f0654295d-Mbcaea= 13458be56f2909ea6c3 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription --upas-ifmpfcjiockyosceugiyqlgyjc-- From 9front-bounces@1ess.inri.net Sun Aug 22 20:47:03 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17MKl3NN009458 for ; Sun, 22 Aug 2021 20:47:03 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 1ess; Sun Aug 22 16:43:07 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id 2782455b (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO); Sun, 22 Aug 2021 13:36:18 -0700 (PDT) Message-ID: <7BD08FA33BDEF31677ABBA911CD6A3FE@eigenstate.org> To: 9fans@9fans.net, 9front@9front.org Date: Sun, 22 Aug 2021 16:36:17 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="upas-ifmpfcjiockyosceugiyqlgyjc" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: virtualized hosting property controller Subject: [9front] Re: [9fans] OAuth2 in factotum Reply-To: 9front@9front.org Precedence: bulk This is a multi-part message in MIME format. --upas-ifmpfcjiockyosceugiyqlgyjc Content-Disposition: inline Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Quoth ori@eigenstate.org: > Quoth Demetrius Iatrakis : > > This is a preview of OAuth2 support in factotum, as part of this year's GSoC: > > https://github.com/Mitsos101/plan9front/pull/1 > > > > Installation, on 9front: > > > > git/clone https://github.com/Mitsos101/plan9front plan9front-oauth > > cd plan9front-oauth > > git/branch oauth > > bind sys/include /sys/include > > @{cd sys/src/libauth && mk install} > > @{cd sys/src/cmd/auth && mk install} > > @{cd sys/src/cmd/webfs && mk install} > > > > This will replace your factotum. > > > > Usage: > > > > You need to obtain OAuth credentials from your issuer first. See, for > > example, Google's guide: > > https://developers.google.com/identity/protocols/oauth2. > > > > % echo 'key proto=oauth issuer=https://accounts.google.com scope=email > > client_id=1234 !client_secret=5678' > /mnt/factotum/ctl > > % auth/oauth 'client_id=1234' > > go to https://google.com/device > > your code is ABCD-EFGH > > > > > > auth_oauth is also available in libauth. Webfs uses it to implement > > the preoauth command. > > > > Bugs: > > > > This code is specific to 9front, as libjson is required and Plan 9's > > webfs doesn't support preoauth. > > > > factotum uses the needkey RPC to display the verification URL and code > > to the user. This means that, for now, the needkey file must not be > > open so that fgui doesn't intercept it. > > > > The module imports lots of code to support HTTP/1.0 so that the > > refresh token doesn't leave factotum's address space. > > > > Only the device and refresh flows are supported. There is an > > implementation of the authorization code flow (tested on macOS) here: > > https://github.com/Mitsos101/plan9port/pull/1. However, it is not > > included in the module as there is no good browser to plumb the URL > > to. > > > > Refresh tokens are not saved to persistent storage when factotum > > exits. The user must provide consent every time factotum is restarted. > > > > And, now that we have something working, I wrote > some code to use it. I wrote a patch to add oauth > support to upas/fs -- see attached: > > To use the patch, I followed this kind of clunky > process: > > https://developers.google.com/identity/protocols/oauth2 > > I went to the 'credentials' section on the sidebar > and I created a key for a 'desktop application'; Then > I went to the 'oauth consent screen' and added my work > email account as a 'test user'. > > I grabbed the keys, and on my unix box, went to > the patched oauth: > > % cd $HOME/src/plan9port/src/cmd/oauth > > and generated a key using the full, browser based > auth flow: > > % python httpd.py > % ./oauth https://accounts.google.com https://mail.google.com/ $clientkey $clientsecret > key proto=oauth issuer=https://accounts.google.com client_id=72... > > then edited the resulting output to include the appropriate > attributes, adding the attributes in >>...<< for upas/fs: > > key proto=oauth > >>service=imap server=imap.gmail.com user=ori@pingthings.io<< > issuer=https://accounts.google.com client_id= > token_type=Bearer exptime=1629662303 scope=... > > and then added that to factotum: > > echo key=... >/mnt/factotum/ctl > > With that, upas/fs just worked with my work email: > > upas/fs -f /imaps/imap.gmail.com/ori@pingthings.io > > > Bugs: there are way too many steps. Unfortunately, the most > annoying one is generating and adding an oauth client key/secret, > and short of shipping a pregenerated one (is that a good idea?), > I don't think there's a solution. > > Beyond that, 2 small bits of polish which I think we > can do: > > - Adding a '-t' flag to oauth (the way auth/rsa does) > to add type information to auth/oauth login would > make it more convenient to use: the output could > be stored directly rather than needing editing. > - Adding a script that allows spawning a browser and > http listener on unix (or redirecting thigns through > to plan 9) would make it easier to drive the auth > process from plan 9. > > Thanks for doing this work, Demetrius! Oops, realized that I'd left this line in the patch: + imap->flags |= Fdebug; you'll really want to delete that, or you end up with a *TON* of debug spew. Updated patch attached. --upas-ifmpfcjiockyosceugiyqlgyjc Content-Disposition: inline Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit diff bcfee7b54757eb64cade34e476cf0dba672832f6 uncommitted --- a/sys/src/cmd/upas/fs/imap.c +++ b/sys/src/cmd/upas/fs/imap.c @@ -24,6 +24,7 @@ Cnolog = 1<<0, Ccram = 1<<1, Cntlm = 1<<2, + Coauth = 1<<3, /* flags */ Fssl = 1<<0, @@ -151,7 +152,7 @@ static void imap4cmd(Imap *imap, char *fmt, ...) { - char buf[256], *p; + char buf[1024], *p; va_list va; va_start(va, fmt); @@ -430,6 +431,8 @@ imap->cap |= Ccram; if(strcmp(p, "ntlm") == 0) imap->cap |= Cntlm; + if(strcmp(p, "xoauth2") == 0) + imap->cap |= Coauth; }else if(strcmp(t[i], "logindisabled") == 0) imap->cap |= Cnolog; } @@ -733,6 +736,38 @@ } static char* +imap4oauth(Imap *imap) +{ + char *s, *auth, *enc; + int n; + OAuth *oa; + + if(imap->user == nil) + return "user required for oauth"; + oa = auth_getoauth(auth_getkey, "proto=oauth service=imap server=%q user=%q", imap->host, imap->user); + if(oa == nil) + return "cannot find IMAP oauth token"; + + imap->tag = 1; + if((auth = smprint("user=%s\x01auth=Bearer %s\x01\x01", imap->user, oa->access_token)) == nil) + sysfatal("smprint: %r"); + if((enc = smprint("%[", auth) == nil) + sysfatal("smprint: %r"); + imap4cmd(imap, "authenticate xoauth2 %s", enc); + free(auth); + free(enc); + free(oa); + s = imap4resp(imap); + if(isokay(s)) + return nil; + imap4cmd(imap, ""); + s = imap4resp(imap); + if(isokay(s)) + return nil; + return s; +} + +static char* imap4passwd(Imap *imap) { char *s; @@ -762,6 +797,8 @@ e = imap4cram(imap); else if(imap->cap & Cntlm) e = imap4ntlm(imap); + else if(imap->cap & Coauth) + e = imap4oauth(imap); else e = imap4passwd(imap); if(e) --upas-ifmpfcjiockyosceugiyqlgyjc-- From bounce.mMf920328ca00963c2708ecd92.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 20:49:16 2021 Return-Path: Received: from tb-ob1.topicbox.com (tb-ob1.topicbox.com [64.147.108.173]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MKnF77006360 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 20:49:16 GMT Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob1.topicbox.com (Postfix) with ESMTP id 16BE233D6B for ; Sun, 22 Aug 2021 16:39:32 -0400 (EDT) (envelope-from bounce.mMf920328ca00963c2708ecd92.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id 13EC8331DD0B; Sun, 22 Aug 2021 16:39:32 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; 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=message-id:to:cc:subject:date:from:in-reply-to :mime-version:content-type:content-transfer-encoding:list-help :list-id:list-post:list-subscribe:reply-to:list-unsubscribe; s= sysmsg-1; t=1629664771; bh=zOVZ20JcWpF5SxJfX8VoX3vSqfTZyYx7o2NjR /LWsKQ=; b=Jg6yHqbvagIW5SowuegecttvcfftU9/Ne4NfXJH+puXyaoFHo3rq/ tmoQIuDmdaSGM1jUHL4ctJxOJ0UamTeF3B5uuFsEt9MfQUdFQVjqYmo2OnA7yTAV j6IigTCe5ClOna402YHwhgiscAE+KT4HwQXh/8y9gpK1X0n1mxyTl0= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629664771; b=PhK4tJCvj5k18s6Cmg8pnMcHbSB5MshPAWTJZLKsRTYRskQFIL 3Rc9YAK1wfG+Hxe7IM1D7ewLM7TSuUPp9aPaTxXEPWPlE3I7jP2V01Uv9mfPN6Tj /OhZuAL3k+71Z9OJaQIVdlFyZ8444OXa1g/oTZsKCE2N0xunNNg3pv5Pc= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; 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: tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: kusuri.pikopiko.org,nokogiri.pikopiko.org,eigenstate.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: kusuri.pikopiko.org,nokogiri.pikopiko.org,eigenstate.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=message-id :to:cc:subject:date:from:in-reply-to:mime-version:content-type :content-transfer-encoding:list-help:list-id:list-post :list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=zOVZ20Jc WpF5SxJfX8VoX3vSqfTZyYx7o2NjR/LWsKQ=; b=Y83++t5/1CdmhWrARvKQ0LPA gUAUxvxekXh/kUd2ZGgnGUGwcVugM4jxnfG57GijeSY+HkcWecXP4qRmCnKK0tFR J0LeU8grhQYSzo81KvWldQQhtDk9oWVgEhK7xNRXbT5m42+vwKsqBhVvnhPMMl1l MNR0wbHzCM9W3hvWQ1k= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id D72A233A8607 for <9fans@9fans.net>; Sun, 22 Aug 2021 16:38:15 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id 5F0026FB1D5; Sun, 22 Aug 2021 16:38:15 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629664695; b=qH1Da54ovtbhz6k9V+ka+D8ZgX3CBPAJwqq7te6oaNeBRsLL/M uS5dp+VdoRnDWFDupaIPuYD5M2KTOeY9oyt++dfJcWj1FJq6uSYJe4gYJBKBEHko +fFTavci5QBY3azJJNUAG6p/ngqpE29BKfujXUcuTUCzkC3OKWMAZRrFRhvgVvLt 3fdAHdkxHMf/YzWxUW2LKmwJhF7K3Gn0LHnhSitKmwxeXvoFNX8Zy07WTpzEPItI PkMt7NVS5tTAtvTOHL3sGv2zoi2XTkXrVytqXYEcOwLMo9zDuQ9DS6AkzojHV1Kd U5b/mKTF4Ha7U10sX3CW+SQqbMI3LusSp1pQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=message-id:to:cc:subject:date:from:in-reply-to :mime-version:content-type:content-transfer-encoding; s=arcseal; t=1629664695; bh=2RSfgHdH5djZ+oC1YKdiDTSXn604bUtUxOnlUBOePp8=; b= BZUTWlHAxcK79vEmQDooWj6l052cCf02jcmKlcwqyPIYgmOaXLNFjYKX+RJSzCvJ c8r2jZgxwNngi25+shEBYo5sGgDBrGWIbaSozU+xvZ8VxwdAd7zYOCA5OItpB80L MXC5U4TyVyJZ0XrB8wD+3IGMVCcazwyntCCu00LjsQ/Kh+z2JDuUJ23VBWOMxVCu UybfJzOe4Y4dQIomrCW5tabq8RNKw+JNbld8fZl9b7xFvrecHl/yU3UYiHfqy4bY SnCq7Ydaqku8CIa+dfmTAAQ1nsKrX1FFljRrITG3RXQXX9evrClh68///tqs/kqt 8NlQ64jdJ5iV8Iu1HdtL5g== ARC-Authentication-Results: i=1; tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=eigenstate.org; iprev=pass smtp.remote-ip=206.124.132.107 (mimir.eigenstate.org); spf=pass smtp.mailfrom=ori@eigenstate.org smtp.helo=mimir.eigenstate.org; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mimir.eigenstate.org policy.ptr=mimir.eigenstate.org; x-return-mx=pass header.domain=eigenstate.org policy.is_org=yes (MX Records found: kusuri.pikopiko.org,nokogiri.pikopiko.org,eigenstate.org,mail.pikopiko.org); x-return-mx=pass smtp.domain=eigenstate.org policy.is_org=yes (MX Records found: kusuri.pikopiko.org,nokogiri.pikopiko.org,eigenstate.org,mail.pikopiko.org); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtfedgheejucdltddurdegudehrddttd dmucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgf nhhsuhgsshgtrhhisggvpdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttd enucenucfjughrpefkvffufffhjgggtgfgsehtjeejtddttddvnecuhfhrohhmpehorhhi segvihhgvghnshhtrghtvgdrohhrghenucggtffrrghtthgvrhhnpedvhedtfeefteegle fhgeekhefhuefhhedvvdeiudeuheejteegveekiedtveeuhfenucfkphepvddtiedruddv gedrudefvddruddtjedpjeegrddutdekrdehiedrvddvheenucevlhhushhtvghrufhiii gvpedtnecurfgrrhgrmhepihhnvghtpedvtdeirdduvdegrddufedvrddutdejpdhhvghl ohepmhhimhhirhdrvghighgvnhhsthgrthgvrdhorhhgpdhmrghilhhfrhhomhepoehorh hisegvihhgvghnshhtrghtvgdrohhrgheq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (eigenstate.org: 206.124.132.107 is authorized to use 'ori@eigenstate.org' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="ori@eigenstate.org"; helo=mimir.eigenstate.org; client-ip=206.124.132.107 Received: from mimir.eigenstate.org (mimir.eigenstate.org [206.124.132.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 16:38:15 -0400 (EDT) (envelope-from ori@eigenstate.org) Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id a9245927 (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO); Sun, 22 Aug 2021 13:38:14 -0700 (PDT) Message-ID: To: 9fans@9fans.net CC: 9front@9front.org Subject: Re: [9fans] OAuth2 in factotum Date: Sun, 22 Aug 2021 16:38:13 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: e2ff8ae6-0388-11ec-bd70-f7a26fad480e Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UNjg5OWJmM2YwNjU0Mjk1ZC1NZjkyMDMyOGNhMDA5NjNjMjcwOGVj?= =?UTF-8?B?ZDkyPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:Mf920328ca00963c2708ecd92:1:-cxTEp_ymK-_PVoIc-GN9-HAldmwQ-1tYaXjgpL9Tpo Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17MKnF77006360 Quoth Demetrius Iatrakis : > > type is text > dst is oauth > plumb to oauth > > to your plumber's rules file to create the oauth port. Ah -- right. This is in the plan9port side, and it's used to send the oauth verification request to the browser. (iirc, it's not currently used for anything on the plan 9 side, though it wil be once we figure out how to glue together auth flows to either vmx or some unix browser) ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T6899bf3f0654295d-Mf920328ca00963c2708ecd92 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From 9front-bounces@1ess.inri.net Sun Aug 22 20:50:20 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17MKoJNX001797 for ; Sun, 22 Aug 2021 20:50:20 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 1ess; Sun Aug 22 16:23:55 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id a18e843d (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO); Sun, 22 Aug 2021 13:17:00 -0700 (PDT) Message-ID: To: 9fans@9fans.net, 9front@9front.org Date: Sun, 22 Aug 2021 16:16:58 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="upas-jjdjbetwoeaehrwgnwdrkwsrds" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: virtual open grid plugin-oriented app Subject: [9front] Re: [9fans] OAuth2 in factotum Reply-To: 9front@9front.org Precedence: bulk This is a multi-part message in MIME format. --upas-jjdjbetwoeaehrwgnwdrkwsrds Content-Disposition: inline Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Quoth Demetrius Iatrakis : > This is a preview of OAuth2 support in factotum, as part of this year's GSoC: > https://github.com/Mitsos101/plan9front/pull/1 > > Installation, on 9front: > > git/clone https://github.com/Mitsos101/plan9front plan9front-oauth > cd plan9front-oauth > git/branch oauth > bind sys/include /sys/include > @{cd sys/src/libauth && mk install} > @{cd sys/src/cmd/auth && mk install} > @{cd sys/src/cmd/webfs && mk install} > > This will replace your factotum. > > Usage: > > You need to obtain OAuth credentials from your issuer first. See, for > example, Google's guide: > https://developers.google.com/identity/protocols/oauth2. > > % echo 'key proto=oauth issuer=https://accounts.google.com scope=email > client_id=1234 !client_secret=5678' > /mnt/factotum/ctl > % auth/oauth 'client_id=1234' > go to https://google.com/device > your code is ABCD-EFGH > > > auth_oauth is also available in libauth. Webfs uses it to implement > the preoauth command. > > Bugs: > > This code is specific to 9front, as libjson is required and Plan 9's > webfs doesn't support preoauth. > > factotum uses the needkey RPC to display the verification URL and code > to the user. This means that, for now, the needkey file must not be > open so that fgui doesn't intercept it. > > The module imports lots of code to support HTTP/1.0 so that the > refresh token doesn't leave factotum's address space. > > Only the device and refresh flows are supported. There is an > implementation of the authorization code flow (tested on macOS) here: > https://github.com/Mitsos101/plan9port/pull/1. However, it is not > included in the module as there is no good browser to plumb the URL > to. > > Refresh tokens are not saved to persistent storage when factotum > exits. The user must provide consent every time factotum is restarted. > And, now that we have something working, I wrote some code to use it. I wrote a patch to add oauth support to upas/fs -- see attached: To use the patch, I followed this kind of clunky process: https://developers.google.com/identity/protocols/oauth2 I went to the 'credentials' section on the sidebar and I created a key for a 'desktop application'; Then I went to the 'oauth consent screen' and added my work email account as a 'test user'. I grabbed the keys, and on my unix box, went to the patched oauth: % cd $HOME/src/plan9port/src/cmd/oauth and generated a key using the full, browser based auth flow: % python httpd.py % ./oauth https://accounts.google.com https://mail.google.com/ $clientkey $clientsecret key proto=oauth issuer=https://accounts.google.com client_id=72... then edited the resulting output to include the appropriate attributes, adding the attributes in >>...<< for upas/fs: key proto=oauth >>service=imap server=imap.gmail.com user=ori@pingthings.io<< issuer=https://accounts.google.com client_id= token_type=Bearer exptime=1629662303 scope=... and then added that to factotum: echo key=... >/mnt/factotum/ctl With that, upas/fs just worked with my work email: upas/fs -f /imaps/imap.gmail.com/ori@pingthings.io Bugs: there are way too many steps. Unfortunately, the most annoying one is generating and adding an oauth client key/secret, and short of shipping a pregenerated one (is that a good idea?), I don't think there's a solution. Beyond that, 2 small bits of polish which I think we can do: - Adding a '-t' flag to oauth (the way auth/rsa does) to add type information to auth/oauth login would make it more convenient to use: the output could be stored directly rather than needing editing. - Adding a script that allows spawning a browser and http listener on unix (or redirecting thigns through to plan 9) would make it easier to drive the auth process from plan 9. Thanks for doing this work, Demetrius! --upas-jjdjbetwoeaehrwgnwdrkwsrds Content-Disposition: inline Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit diff bcfee7b54757eb64cade34e476cf0dba672832f6 uncommitted --- a/sys/src/cmd/upas/fs/imap.c +++ b/sys/src/cmd/upas/fs/imap.c @@ -24,6 +24,7 @@ Cnolog = 1<<0, Ccram = 1<<1, Cntlm = 1<<2, + Coauth = 1<<3, /* flags */ Fssl = 1<<0, @@ -151,7 +152,7 @@ static void imap4cmd(Imap *imap, char *fmt, ...) { - char buf[256], *p; + char buf[1024], *p; va_list va; va_start(va, fmt); @@ -430,6 +431,8 @@ imap->cap |= Ccram; if(strcmp(p, "ntlm") == 0) imap->cap |= Cntlm; + if(strcmp(p, "xoauth2") == 0) + imap->cap |= Coauth; }else if(strcmp(t[i], "logindisabled") == 0) imap->cap |= Cnolog; } @@ -733,6 +736,38 @@ } static char* +imap4oauth(Imap *imap) +{ + char *s, *auth, *enc; + int n; + OAuth *oa; + + if(imap->user == nil) + return "user required for oauth"; + oa = auth_getoauth(auth_getkey, "proto=oauth service=imap server=%q user=%q", imap->host, imap->user); + if(oa == nil) + return "cannot find IMAP oauth token"; + + imap->tag = 1; + if((auth = smprint("user=%s\x01auth=Bearer %s\x01\x01", imap->user, oa->access_token)) == nil) + sysfatal("smprint: %r"); + if((enc = smprint("%[", auth) == nil) + sysfatal("smprint: %r"); + imap4cmd(imap, "authenticate xoauth2 %s", enc); + free(auth); + free(enc); + free(oa); + s = imap4resp(imap); + if(isokay(s)) + return nil; + imap4cmd(imap, ""); + s = imap4resp(imap); + if(isokay(s)) + return nil; + return s; +} + +static char* imap4passwd(Imap *imap) { char *s; @@ -762,6 +797,8 @@ e = imap4cram(imap); else if(imap->cap & Cntlm) e = imap4ntlm(imap); + else if(imap->cap & Coauth) + e = imap4oauth(imap); else e = imap4passwd(imap); if(e) @@ -1165,6 +1202,7 @@ imap->host = f[2]; if(strstr(imap->host, "gmail.com")) imap->flags |= Fgmail; + imap->flags |= Fdebug; imap->refreshtime = 60; if(nf < 4) imap->user = nil; --upas-jjdjbetwoeaehrwgnwdrkwsrds-- From bounce.mMc570eb4778bbb92d838c9b3c.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Sun Aug 22 21:18:27 2021 Return-Path: Received: from tb-ob20.topicbox.com (tb-ob20.topicbox.com [173.228.157.66]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17MLIRnl014870 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Sun, 22 Aug 2021 21:18:27 GMT Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob20.topicbox.com (Postfix) with ESMTP id 40DAF21B3C for ; Sun, 22 Aug 2021 17:11:54 -0400 (EDT) (envelope-from bounce.mMc570eb4778bbb92d838c9b3c.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id 289C7331F330; Sun, 22 Aug 2021 17:11:54 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=pass (1024-bit rsa key sha256) header.d=protonmail.com header.i=@protonmail.com header.b=PJW5JlcR header.a=rsa-sha256 header.s=protonmail x-bits=1024; dmarc=pass policy.published-domain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=protonmail.com; spf=pass smtp.mailfrom=philip.silva@protonmail.com smtp.helo=mail-40131.protonmail.ch; 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=date:to:subject:message-id:in-reply-to :references:mime-version:content-type:content-transfer-encoding :from:list-help:list-id:list-post:list-subscribe:reply-to :list-unsubscribe; s=sysmsg-1; t=1629666714; bh=XkCmVGKLp3L4ze+J /y2QQ5tVzcrCjWhpTnSmS6r9zb8=; b=CARvCAbPAANA9rgCcRxMWRMeUlLAw12/ mAMGlFS0khE5L1wC8o6K3Dy+hrLTmsq9j9s0KnxlxCjfGH77cW9ZHRY0MJtZZVCo ojHRJNw4sWMA3pwz5Quw/83EGrq1J7cbpiKN9LinkzCJvmcvwGU/byk4RmN7g8Ze 4KG8n135t4E= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629666714; b=agOx3I7kaWNQ9PdlQ1zGcHfMoAJ+lQRpjJRxkjdTGzZrcnfDen 9RsIfQETJE1gmT1SMffPg4lQmy6S1nNsYcaEwTsvaJQiPSbBlapGLMBP3QrEm+YF 7XMdK43Nvvqg5m3S6D9Ko3uO7oRJ71BdJok/wdpch/4cgZ+frtSZWEnF8= Authentication-Results: topicbox.com; arc=pass; dkim=pass (1024-bit rsa key sha256) header.d=protonmail.com header.i=@protonmail.com header.b=PJW5JlcR header.a=rsa-sha256 header.s=protonmail x-bits=1024; dmarc=pass policy.published-domain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=protonmail.com; spf=pass smtp.mailfrom=philip.silva@protonmail.com smtp.helo=mail-40131.protonmail.ch; 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: tb-mx0.topicbox.com; arc=none (no signatures found); bimi=none (No BIMI records found); dkim=pass (1024-bit rsa key sha256) header.d=protonmail.com header.i=@protonmail.com header.b=PJW5JlcR header.a=rsa-sha256 header.s=protonmail x-bits=1024; dmarc=pass policy.published-domain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=protonmail.com; iprev=pass smtp.remote-ip=185.70.40.131 (mail-40131.protonmail.ch); spf=pass smtp.mailfrom=philip.silva@protonmail.com smtp.helo=mail-40131.protonmail.ch; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mail-40131.protonmail.ch policy.ptr=mail-40131.protonmail.ch; x-return-mx=pass header.domain=protonmail.com policy.is_org=yes (MX Records found: mail.protonmail.ch,mailsec.protonmail.ch); x-return-mx=pass smtp.domain=protonmail.com policy.is_org=yes (MX Records found: mail.protonmail.ch,mailsec.protonmail.ch); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=date:to :subject:message-id:in-reply-to:references:mime-version :content-type:content-transfer-encoding:from:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=XkCmVGKLp3L4ze+J/y2QQ5tVzcrCjWhpTnSmS6r9zb8=; b=Q8HaegxTca71 BDj0fHyttLez1o0IebCvLHq6G85v9ufFJNe7b/OA5Kgpt8AWEkmqoZGeH9dsb6iv 7mS+KqweuopOt2nRw6yktd0Ibopqn/iVVoYUsT1q7Xcka2cI7go/WlPxDExLLWAW W0iWLh0i04MzmK7l7K8rbPXe3Y3C/D8= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id E2AD6331E975 for <9fans@9fans.net>; Sun, 22 Aug 2021 17:10:36 -0400 (EDT) (envelope-from philip.silva@protonmail.com) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id 77E9BE207E5; Sun, 22 Aug 2021 17:10:36 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629666636; b=tP9/tWmI/SM9aLwpmN+wf1xHZDoYhMN+R6fr9mb0kg21w474Ge 6so3G3HPATEvo4yctS8alDAVkxxWawZb8XtIzKMEtr7wB5UJV3Hi8DL4y1jcBWzO 7HmXYQP0BZ1RqEL4OE6gjAI1e7AbzvxCa927oDvNudedyHHgsW3BXMH4nvWfGLCL 3mpgg4vZk2ZZsNEFsaOH2Gt6apQ1YFK+WaysfZHwMySQenauPMrcmHJqTtQ0bCkR ldHCn9FQpFq+RNtuP8lcTBCIiPxOl/RgKiliODjB4+QMbNUsBbF1vjcEkgck+avJ 4+i1UeFi1yXS6ICkVMww7dfT5Z2rXW0TT9qA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=date:to:from:reply-to:subject:message-id :in-reply-to:references:mime-version:content-type :content-transfer-encoding; s=arcseal; t=1629666636; bh=1RNwEdpH R6w6I3b2femJ0skGc+M3VJDLog9/yLmeWtQ=; b=wtXfHtm/mqHGMj34KvDX3F+z rzyBAbB0YmrUnaeVKb45AkGrbiTP/lCPpCHgTJag0osk+V/auMUXLV703Iv8i9mp OZv9cCWe8EC4U5BLcLcidmbU/XpsiJtub7uSBPuAnbk1H7MjzTEKftfYXAHMiD3Z 3Fbz5nlLzQGZU7OVUQmtFyR6uZNGtBPGECowdPC66FbqyRxcBij2YRQ2RW5t5qgS Vljr4BfqMW03xmBxcYkW/rvv8mNX53sTJNvmFdNpWJ9fg49dMqhIOsQMEnb6Dx7G H+WlhZp+EQdgUOmuJAxPZplDzb2SxSlKtUD/quaEd27DWdzG7mQWrT/PHQ8EPw== ARC-Authentication-Results: i=1; tb-mx0.topicbox.com; arc=none (no signatures found); bimi=none (No BIMI records found); dkim=pass (1024-bit rsa key sha256) header.d=protonmail.com header.i=@protonmail.com header.b=PJW5JlcR header.a=rsa-sha256 header.s=protonmail x-bits=1024; dmarc=pass policy.published-domain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=protonmail.com; iprev=pass smtp.remote-ip=185.70.40.131 (mail-40131.protonmail.ch); spf=pass smtp.mailfrom=philip.silva@protonmail.com smtp.helo=mail-40131.protonmail.ch; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mail-40131.protonmail.ch policy.ptr=mail-40131.protonmail.ch; x-return-mx=pass header.domain=protonmail.com policy.is_org=yes (MX Records found: mail.protonmail.ch,mailsec.protonmail.ch); x-return-mx=pass smtp.domain=protonmail.com policy.is_org=yes (MX Records found: mail.protonmail.ch,mailsec.protonmail.ch); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtfedgheejucdltddurdegudehrddttd dmucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgf nhhsuhgsshgtrhhisggvpdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttd enucenucfjughrpeffvffhrhfukfgjfhggtgfgsehtqhertddttdejnecuhfhrohhmpefr hhhilhhiphcuufhilhhvrgcuoehphhhilhhiphdrshhilhhvrgesphhrohhtohhnmhgrih hlrdgtohhmqeenucggtffrrghtthgvrhhnpeeutdehkeeihfffgeehhfegfeduffeiveet uefgffeggfejteegieekueelfeeikeenucffohhmrghinheplhifnhdrnhgvthenucfkph epudekhedrjedtrdegtddrudefudenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgr mhepihhnvghtpedukeehrdejtddrgedtrddufedupdhhvghlohepmhgrihhlqdegtddufe durdhprhhothhonhhmrghilhdrtghhpdhmrghilhhfrhhomhepoehphhhilhhiphdrshhi lhhvrgesphhrohhtohhnmhgrihhlrdgtohhmqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (protonmail.com: Sender is authorized to use 'philip.silva@protonmail.com' in 'mfrom' identity (mechanism 'include:_spf.protonmail.ch' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="philip.silva@protonmail.com"; helo=mail-40131.protonmail.ch; client-ip=185.70.40.131 Received: from mail-40131.protonmail.ch (mail-40131.protonmail.ch [185.70.40.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Sun, 22 Aug 2021 17:10:35 -0400 (EDT) (envelope-from philip.silva@protonmail.com) Date: Sun, 22 Aug 2021 21:10:30 +0000 To: 9fans <9fans@9fans.net> Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) Message-ID: In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-1.2 required=10.0 tests=ALL_TRUSTED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM shortcircuit=no autolearn=disabled version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on mailout.protonmail.ch Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 680d1344-038d-11ec-a7d2-8b6ad19a0c4c Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NYzU3MGViNDc3OGJiYjkyZDgzOGM5?= =?UTF-8?B?YjNjPg==?= From: "Philip Silva via 9fans" <9fans@9fans.net> List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:Mc570eb4778bbb92d838c9b3c:1:CKuUo-DJiGMa12hDKACGNQMSdxzfE3Iy_ZoC5Fs-2Kg Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17MLIRnl014870 Vulkan (at least its promises) looks interesting though. As far as I understand it's more like a Meta API, really low-level and it claims to be very portable. But as mentioned before, the Hello Worlds are really long, apparently it's rather >1000 lines instead of "just" >100 for OpenGL. On the other hand for driver development it might be less effort but seems to have its own pitfalls. (This is the only article I found about the driver aspect of it: https://lwn.net/Articles/702021/) > > But for serious 3d AAA stuff we'd have to consider: Lumen is for next-gen > > > > GPUs and Nanite for newer GPUs. We'll never reach their quality in > > > > realtime if we don't use the GPU features (built-in rasterizer, ...) to > > > > have enough free power for crazy software calculation. > > By the time any code is written, next-gen GPUs will be > > previous-gen GPUs. > > General compute is what any hardware you buy a few years > > from now will be doing -- and it's far more intersting > > in terms of what capabilities it allows. ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-Mc570eb4778bbb92d838c9b3c Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From bounce.mMe78513510ae4df2da186c73a.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Mon Aug 23 04:23:28 2021 Return-Path: Received: from tb-ob20.topicbox.com (tb-ob20.topicbox.com [173.228.157.66]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17N4NREo018204 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Mon, 23 Aug 2021 04:23:28 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob20.topicbox.com (Postfix) with ESMTP id D89BE243F7 for ; Mon, 23 Aug 2021 00:15:24 -0400 (EDT) (envelope-from bounce.mMe78513510ae4df2da186c73a.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id 9800133B754B; Mon, 23 Aug 2021 00:15:24 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=iitbombay-org.20150623.gappssmtp.com header.i=@iitbombay-org.20150623.gappssmtp.com header.b=OSRmOXc/ header.a=rsa-sha256 header.s=20150623 x-bits=2048; dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=iitbombay.org; spf=pass smtp.mailfrom=bakul@iitbombay.org smtp.helo=mail-oo1-f52.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=from:content-type:mime-version:subject:date :references:to:in-reply-to:message-id:list-help:list-id :list-post:list-subscribe:reply-to:content-transfer-encoding :list-unsubscribe; s=sysmsg-1; t=1629692124; bh=2r2bxpfQdVlgLNQe KnCvIVv+x8HvXMfypWR8E3Ufqbc=; b=sy3jL4SuEcPmgBkeyTEiQz1lZSDDvYLl BpUq8hUINFzLkvUgHjYdk7Neoa7l7oDSI8kiI/lGGtNNcRO2R8E/hGMZ80+ynlmp bf4oygmYzq06+8jNPdNaau5DngWXz6/Bn42WZrYd4UFzqA5WU/euvmzofsvwOPfP Jb8FIjS8tG8= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629692124; b=jxMDFaWPhw81w0S1HXfsvV1RhPOCV7fWt4u50S+ni2cTDlZsUP iKqYaPclVTiT0TX/J0iRLPmq3B4NHJeiwm5i86qFiTM5RgPHl/VdeR3e3VmgwD9T UtpgMYN7ugWk3E6Qb9osAr8A3VhMpLcbVAkkBWqklAilPM31qKfOVa0+c= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=iitbombay-org.20150623.gappssmtp.com header.i=@iitbombay-org.20150623.gappssmtp.com header.b=OSRmOXc/ header.a=rsa-sha256 header.s=20150623 x-bits=2048; dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=iitbombay.org; spf=pass smtp.mailfrom=bakul@iitbombay.org smtp.helo=mail-oo1-f52.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) X-Received-Authentication-Results: tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC did not pass); dkim=pass (2048-bit rsa key sha256) header.d=iitbombay-org.20150623.gappssmtp.com header.i=@iitbombay-org.20150623.gappssmtp.com header.b=OSRmOXc/ header.a=rsa-sha256 header.s=20150623 x-bits=2048; dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=iitbombay.org; iprev=pass smtp.remote-ip=209.85.161.52 (mail-oo1-f52.google.com); spf=pass smtp.mailfrom=bakul@iitbombay.org smtp.helo=mail-oo1-f52.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=YK6Pch+C; x-me-sender=none; x-ptr=pass smtp.helo=mail-oo1-f52.google.com policy.ptr=mail-oo1-f52.google.com; x-return-mx=pass header.domain=iitbombay.org policy.is_org=yes (MX Records found: alt3.aspmx.l.google.com,alt1.aspmx.l.google.com,aspmx.l.google.com,alt4.aspmx.l.google.com,alt2.aspmx.l.google.com); x-return-mx=pass smtp.domain=iitbombay.org policy.is_org=yes (MX Records found: alt3.aspmx.l.google.com,alt1.aspmx.l.google.com,aspmx.l.google.com,alt4.aspmx.l.google.com,alt2.aspmx.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=from :content-type:mime-version:subject:date:references:to :in-reply-to:message-id:list-help:list-id:list-post :list-subscribe:reply-to:content-transfer-encoding :list-unsubscribe; s=dkim-1; bh=n3JY0EGTCbc7jkimy1e92pJjIwcJsfKg Bk4yZ14bfQY=; b=ZD0OmY5RwFyaWMdVzyShCkFV0rU2uwLVwygrHSO8NXppu5pI O83mCQKtn4doIAzk78bCvlSSlNpmup9XBdX/ZJ3PZWgMsPvetVjaAWyI3a0oxTJg ZqJeF1QNuQW/nWzUy/Fa5A8Ojovaptob09UafuprzqHEg0IEKc89hVRZbTs= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id E53A433B6C5A for <9fans@9fans.net>; Mon, 23 Aug 2021 00:13:56 -0400 (EDT) (envelope-from bakul@iitbombay.org) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id CB06D86A270; Mon, 23 Aug 2021 00:13:56 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629692036; b=CeV2n0iiurn6OMrBGS1TzHfeKFqbXwCswnT19keyySSj8iMSWM 0lKWUHnGTLgKO8nOFo9LnCxUGxlEcjJGEx14OEZu/iZ7E80dZrEjMfkFB7Xh34J7 LdK65hw19fMtcV7LTcS8ANJ92J/Wt0Rvxp0xpxTcZkO7gGrpZZme8A780hJXFayo mR8ZBGPn6hb6Wf3Ze/qKNMVyt4bZrilOLhJP5Am8wMeZoKKgrXzX+yeGA8Ns6QMk xReEfwfmsxbJ6bKhEGEedurEasqjEvx9RnIsM2c6RrHnFzYLN/J2s6YGaMLr6qlR HMaCZ8VHKN5zLVyhQEJ8ldbRv0+8A+471srQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=from:content-type:mime-version:subject:date :references:to:in-reply-to:message-id; s=arcseal; t=1629692036; bh=fI3CZA9hYlCC9eHRbCqcJdBMV5iqoUmh+CYnn4HQBag=; b=PGLSDL1sWNaL cFK5ZrLGh7TaIajGUKel4ZuEBFuel2meipdwkrrsrFeDq2aY/RFq7f4ULlj2Kzd5 uC5VaNkdiwi12YvSH4i1LlI6s35U20ZfExQ6ZCblQjzkwQ8HE+ItT6rA6ClIushb iva5HcvZ7ECd1qVQtJ582PZO/Y0BfPNa3zHdu3CfwT8nW8T/n+rQ5m7iCQTFB20g suxjXZjpbvagQUagTTvzznX7MjDINNslLQepsKRGHDZqIt+KZ843WsvhE7LdPUyT +27BukvEezkB2XVbdbOLJa4kLJe6k8KCPWOEw73F6+QQoTLLM496pF+Dmxrodu3e PErklv4lRQ== ARC-Authentication-Results: i=1; tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC did not pass); dkim=pass (2048-bit rsa key sha256) header.d=iitbombay-org.20150623.gappssmtp.com header.i=@iitbombay-org.20150623.gappssmtp.com header.b=OSRmOXc/ header.a=rsa-sha256 header.s=20150623 x-bits=2048; dmarc=none policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=iitbombay.org; iprev=pass smtp.remote-ip=209.85.161.52 (mail-oo1-f52.google.com); spf=pass smtp.mailfrom=bakul@iitbombay.org smtp.helo=mail-oo1-f52.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=YK6Pch+C; x-me-sender=none; x-ptr=pass smtp.helo=mail-oo1-f52.google.com policy.ptr=mail-oo1-f52.google.com; x-return-mx=pass header.domain=iitbombay.org policy.is_org=yes (MX Records found: alt3.aspmx.l.google.com,alt1.aspmx.l.google.com,aspmx.l.google.com,alt4.aspmx.l.google.com,alt2.aspmx.l.google.com); x-return-mx=pass smtp.domain=iitbombay.org policy.is_org=yes (MX Records found: alt3.aspmx.l.google.com,alt1.aspmx.l.google.com,aspmx.l.google.com,alt4.aspmx.l.google.com,alt2.aspmx.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtgedgjeelucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgfnhhsuhgsshgtrhhisggvpdfu rfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttdenucenucfjughrpefhtggguf fffhfvjgfkofesrgdtmherhhdtvdenucfhrhhomhepuegrkhhulhcuufhhrghhuceosggr khhulhesihhithgsohhmsggrhidrohhrgheqnecuggftrfgrthhtvghrnhepuedufeetue evgfdugfekgfehfefgfeelieetueeludeufedvgfduieetteehgeeunecuffhomhgrihhn pegrrhhiiihonhgrrdgvughupdgrmhgurdgtohhmpdhtohhpihgtsghogidrtghomhenuc fkphepvddtledrkeehrdduiedurdehvddpuddtjedrvdduhedrvddvfedrvddvleenucev lhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepihhnvghtpedvtdelrdekhedrudeiud drhedvpdhhvghlohepmhgrihhlqdhoohduqdhfhedvrdhgohhoghhlvgdrtghomhdpmhgr ihhlfhhrohhmpeeosggrkhhulhesihhithgsohhmsggrhidrohhrgheq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (iitbombay.org: Sender is authorized to use 'bakul@iitbombay.org' in 'mfrom' identity (mechanism 'include:_spf.google.com' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="bakul@iitbombay.org"; helo=mail-oo1-f52.google.com; client-ip=209.85.161.52 Received: from mail-oo1-f52.google.com (mail-oo1-f52.google.com [209.85.161.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Mon, 23 Aug 2021 00:13:56 -0400 (EDT) (envelope-from bakul@iitbombay.org) Received: by mail-oo1-f52.google.com with SMTP id t1-20020a4a54010000b02902638ef0f883so5001723ooa.11 for <9fans@9fans.net>; Sun, 22 Aug 2021 21:13:56 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:mime-version:subject:date:references:to :in-reply-to:message-id; bh=fI3CZA9hYlCC9eHRbCqcJdBMV5iqoUmh+CYnn4HQBag=; b=YK6Pch+CKLJ9B/kQRjfEeiIRE0rc8Zdf1LPXnwd36vZbG4hOZJGDGE1SwfXoyu+/R+ gK6ngEm8zgUkd0+J/XxpFJ4mHUfLcGSJ16zJLOBialYT1gZ9WyUl6Y8ZCap+pGIhSoVT GiYl9thXGfOwHWbvU2JV0PbbU5qKAWTqC48UoexnTje4n+Xb2nL1VKP8UzooRJOf3QTA TfP3q2TagADGJGlJ+2W7UGb7wyN8SdHmYRLbjcICkOKdnyCSNcLNvdkG2Tz4fmcAA2P6 gF2Juhsrdf1YLdFBCIILQKy2K6fyhs4GcFfTo67SWLbAtfz+LvvZ5ZJYQ+dejd6Lz7lv xTFA== X-Gm-Message-State: AOAM532w2U7vqzyKJ0swS0Gno1wgEAywVHBmxrsQ3BOaVl/Q+6FlP8Nt eLSt4hb8GPG5td1Vn3tCwHf3UrYo2qjohU63 X-Google-Smtp-Source: ABdhPJwORiO6oL1vz3inIePFS2uWtd3qCzxNKnGLXsYGQsZr9CNs70xNHQMJF1nMoMaZACgBXwtpyg== X-Received: by 2002:a4a:ba0f:: with SMTP id b15mr24234163oop.31.1629692035472; Sun, 22 Aug 2021 21:13:55 -0700 (PDT) Received: from smtpclient.apple (107-215-223-229.lightspeed.sntcca.sbcglobal.net. [107.215.223.229]) by smtp.gmail.com with ESMTPSA id u194sm2637360oie.37.2021.08.22.21.13.54 for <9fans@9fans.net> (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sun, 22 Aug 2021 21:13:55 -0700 (PDT) From: Bakul Shah Content-Type: multipart/alternative; boundary="Apple-Mail=_DB8EC89F-9353-4544-9AA6-EF3045E8F931" Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.13\)) Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) Date: Sun, 22 Aug 2021 21:13:53 -0700 References: <92764e35-f5cf-460a-91df-050ba471e6dd@sirjofri.de> <9352EE7C-AE94-4C1C-8738-5A1DA8ECE5A7@iitbombay.org> To: 9fans <9fans@9fans.net> In-Reply-To: Message-Id: <1007A30B-A109-41BA-BD4A-FF06AED8DFEC@iitbombay.org> X-Mailer: Apple Mail (2.3654.120.0.1.13) Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 8c4ca5c2-03c8-11ec-b24e-eda59957c845 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NZTc4NTEzNTEwYWU0ZGYyZGExODZj?= =?UTF-8?B?NzNhPg==?= 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:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:Me78513510ae4df2da186c73a:1:uNUrTiSNDDgesJVjn0epqUkWLvsWdgE2vt0NoKLQl00 --Apple-Mail=_DB8EC89F-9353-4544-9AA6-EF3045E8F931 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="UTF-8" Don't high end GPUs have thousands of "cores"? Even high end CPUs don't hav= e more than a few dozen cores to 128 or so. While each kind's cores are ver= y different, seems to me GPU/CPU paths have diverged for good. Or we need s= ome massive shift in programming languages + compilers. I lack imagination = how. Still, the thought of the CPUs gaining the complexity of the graphics = engine scares me! -- Bakul > On Aug 22, 2021, at 12:09 PM, Paul Lalonde wro= te: >=20 > I'm pretty sure we're still re-inventing, though it's the CPU's turn to g= ain some of the complexity of the graphics engine. >=20 > Paul >=20 > On Sun, Aug 22, 2021, 12:05 PM Bakul Shah > wrote: > Thanks. Looks like Sutherland's "Wheel of Reincarnation " has not only stopped but exploded :-) Or stopped being applicable. >=20 > -- Bakul >=20 >> On Aug 22, 2021, at 9:23 AM, Paul Lalonde > wrote: >>=20 >> It got complicated because there's no stable interface or ISA. The hard= ware evolved from fixed-function to programmable in a commercial environmen= t where the only meaningful measure was raw performance per dollar at many = price points. Every year the hardware spins and becomes more performant, u= sually faster than Moore's law. With 3D APIs hiding the hardware details t= here is no pressure to make the hardware interface uniform, pretty, or neat= . And with the need for performance there are dozens of fixed function uni= ts that effectively need their own sub-drivers while coordinating at high p= erformance with the other units.=20 >> The system diagrams for GPUs look complex, but they are radical simplifi= cations of what's really on the inside. >>=20 >> Intel really pioneered the open driver stacks, but performance generally= wasn't there. That might be changing now, but I don't know if their recen= tly announced discrete product line will be driver-compatible. >>=20 >> Paul >>=20 >>=20 >> On Sun, Aug 22, 2021 at 8:48 AM Bakul Shah > wrote: >> The FreeBSD amdgpu.ko is over 3Mbytes of compiled code. Not counting the= "firmware" that gets loaded on the GPU board. drm/amd/amdgpu has 200K+ lin= es of source code. drm/amd over 2M lines of code. Intel's i915 seems to be = about 1/10th the amd size. AIUI, this is linux GPU driver code, more or les= s unchanged (FreeBSD has shim code to use it). How did the interface to an = SIMD processor get so complicated? >>=20 >>> On Aug 22, 2021, at 6:44 AM, Paul Lalonde > wrote: >>>=20 >>> I'd love to see GPU support for Plan9. This discussion falls right in= to my professional capacity. I'll say that people generally *grossly* unde= restimate the complexity of a modern GPU and of its supporting software sta= ck. The GPU driver is effectively a second operating system with shared me= mory and DMA interfaces to the host. Even bringing up a modern GPU for jus= t compute tasks is a very large endeavour. >>>=20 >>> That being said, if you want real hardware support, the best place to s= tart is currently AMD's open-source stack. Ignoring the Vulkan bit, unders= tanding their platform abstraction layer (PAL) and shader ISA (https://deve= loper.amd.com/wp-content/resources/Vega_Shader_ISA_28July2017.pdf ) is = the base. The lower hardware levels are reasonably well-described in linux= 's libdrm and its AMD support in amdgpu. >>>=20 >>> Opinions on how to bring this to Plan9? I don't really have any - it's= a huge pile of work with minimal benefit. If you're looking for lightweig= ht graphics, WebGL is a doable path, and almost certainly the right way to = experiment with Plan9-like interfaces to graphics hardware. >>>=20 >>> Paul >>>=20 >>>=20 >>>=20 >>> On Sun, Aug 22, 2021 at 5:30 AM sirjofri > wrote: >>>=20 >>> 22.08.2021 14:10:20 Stuart Morrow >: >>> > Also: >>> >> people have discussed that for years >>> > >>> > They have? I mean I might have seen occasionally someone vaguely >>> > going "some sort of GPU support would be cool to have". That isn't >>> > discussion. >>>=20 >>> I've even heard of someone actually making GPU stuff work on plan 9. I'= ve=20 >>> only heard from their partner, who made a cute glenda thing on a piece = of=20 >>> cloth. I chatted with her a little and told her she should encourage he= r=20 >>> partner for some discussion about this in our channels. It looked like= =20 >>> it's some academic work, but I don't know any details about it. >>>=20 >>> Worst case, someone already has a proper and good GPU implementation fo= r=20 >>> Plan 9 and nobody knows about it. >>>=20 >>> sirjofri >>>=20 >>> Btw if the said person reads this: it would be nice to learn some=20 >>> details. >>>=20 >>> ------------------------------------------ >>> 9fans: 9fans >>> Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-Md= 3d5cd693c12f948ad4720bc >>> Delivery options: https://9fans.topicbox.com/groups/9fans/subscription = >>=20 >>=20 >>=20 >> -- Bakul >>=20 >=20 > 9fans / 9fans / see discussions + participants + delivery=C2=A0options Permalink ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-Me7851= 3510ae4df2da186c73a Delivery options: https://9fans.topicbox.com/groups/9fans/subscription --Apple-Mail=_DB8EC89F-9353-4544-9AA6-EF3045E8F931 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset="UTF-8" Don't= high end GPUs have thousands of "cores"? Even high end CPUs don&= #39;t have more than a few dozen cores to 128 or so. While each kind's = cores are very different, seems to me GPU/CPU paths have diverged for good.= Or we need some massive shift in programming languages + compilers. I lack= imagination how. Still, the thought of the CPUs gaining the complexity of = the graphics engine scares me!

-- Bakul

On Aug 22, 2021, at 12:09 PM,= Paul Lalonde <pa= ul.a.lalonde@gmail.com> wrote:

I'm pretty sure = we're still re-inventing, though it's the CPU's turn to gain so= me of the complexity of the graphics engine.
Paul

On= Sun, Aug 22, 2021, 12:05 PM Bakul Shah <bakul@iitbombay.org> wrote:
Thanks. Looks like Sutherland's "= Wheel of Reincarnation" has not only stopped but exploded :-) = Or stopped being applicable.

-- Bakul

On Aug 22, 2021, at 9:23 A= M, Paul Lalonde <paul.a.lalonde@gmail.com> wrote= :

It got = complicated because there's no stable interface or ISA.  The hardw= are evolved from fixed-function to programmable in a commercial environment= where the only meaningful measure was raw performance per dollar at many p= rice points.  Every year the hardware spins and becomes more performan= t, usually faster than Moore's law.  With 3D APIs hiding the hardw= are details there is no pressure to make the hardware interface uniform, pr= etty, or neat.  And with the need for performance there are dozens of = fixed function units that effectively need their own sub-drivers while coor= dinating at high performance with the other units. 
Th= e system diagrams for GPUs look complex, but they are radical simplificatio= ns of what's really on the inside.

Intel really pioneered the open driver stacks, but perfor= mance generally wasn't there.  That might be changing now, but I d= on't know if their recently announced discrete product line will be dri= ver-compatible.

Paul

On Sun, Aug 22, 2021 at 8:48 AM Bakul Shah <bakul@iitbo= mbay.org> wrote:
The FreeBSD amdgpu.ko = is over 3Mbytes of compiled code. Not counting the "firmware" tha= t gets loaded on the GPU board. drm/amd/amdgpu has 200K+ lines of source co= de. drm/amd over 2M lines of code. Intel's i915 seems to be about 1/10t= h the amd size. AIUI, this is linux GPU driver code, more or less unchanged= (FreeBSD has shim code to use it). How did the interface to an SIMD proces= sor get so complicated?

On Aug 22, 2021, at 6:44 = AM, Paul Lalonde <paul.a.lalonde@gmail.com> wrot= e:

I'= d love to see  GPU support for Plan9.  This discussion falls righ= t into my professional capacity.  I'll say that people generally *= grossly* underestimate the complexity of a modern GPU and of its supporting= software stack.  The GPU driver is effectively a second operating sys= tem with shared memory and DMA interfaces to the host.  Even bringing = up a modern GPU for just compute tasks is a very large endeavour.

That being said, if you w= ant real hardware support, the best place to start is currently AMD's o= pen-source stack.  Ignoring the Vulkan bit, understanding their platfo= rm abstraction layer (PAL) and shader ISA (https://developer.amd.com/wp-content/resourc= es/Vega_Shader_ISA_28July2017.pdf) is the base.  The lower hardwar= e levels are reasonably well-described in linux's libdrm and its A= MD support in amdgpu.

Opinions on how to bring this to Plan9?  I don't really hav= e any - it's a huge pile of work with minimal benefit.  If you'= ;re looking for lightweight graphics, WebGL is a doable path, and almost ce= rtainly the right way to experiment with Plan9-like interfaces to graphics = hardware.

Paul<= /div>



On Sun, Aug 22, 2021 at 5:30 AM sirjofri <sirjofri+ml-9fans@sirjofri.de> wrote:

22.08.2021 14:10:20 Stuart Morrow <morrow.stuart@gmail.c= om>:
> Also:
>> people have discussed that for years
>
> They have?  I mean I might have seen occasionally someone vaguely=
> going "some sort of GPU support would be cool to have". = ; That isn't
> discussion.

I've even heard of someone actually making GPU stuff work on plan 9. I&= #39;ve
only heard from their partner, who made a cute glenda thing on a piece of <= br class=3D"" /> cloth. I chatted with her a little and told her she should encourage her partner for some discussion about this in our channels. It looked like
it's some academic work, but I don't know any details about it.

Worst case, someone already has a proper and good GPU implementation for Plan 9 and nobody knows about it.

sirjofri

Btw if the said person reads this: it would be nice to learn some
details.

------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-M= d3d5cd693c12f948ad4720bc
Delivery options: https://= 9fans.topicbox.com/groups/9fans/subscription



-- Bakul
<= br class=3D"" />


= --Apple-Mail=_DB8EC89F-9353-4544-9AA6-EF3045E8F931-- From bounce.mM40ea45711a1551fd53807b84.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Mon Aug 23 05:33:06 2021 Return-Path: Received: from tb-ob0.topicbox.com (tb-ob0.topicbox.com [64.147.108.117]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17N5X551010303 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Mon, 23 Aug 2021 05:33:06 GMT Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob0.topicbox.com (Postfix) with ESMTP id 951223172E for ; Mon, 23 Aug 2021 01:24:28 -0400 (EDT) (envelope-from bounce.mM40ea45711a1551fd53807b84.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id 90FA6332DAC0; Mon, 23 Aug 2021 01:24:28 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; 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=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding :list-help:list-id:list-post:list-subscribe:reply-to :list-unsubscribe; s=sysmsg-1; t=1629696268; bh=fYjVAPPFLhiEX+Lp sUsNiNnZIutG7XfqiExI+spqSz8=; b=OGm1jN2MOYJBIqP9IUxiXSHNSpT/A0cH GeMsWwFteQLRbFZiih8nm3uaPSoA/ic8L8q1IlLXVUax8MJcGSasYy5MvInEhg6a EaT8l75bfYRk/d6rWITyCvIQgUVaTIXHa6ka5f+qT0TCyMzouEmiEEO92SuDSuNB mU0BG5LTtFs= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629696268; b=TIZ0a9xcUeOSJShGaSMBXutnT/DpZHyujq9gulVu8/Wq57ucT+ dJtesnl7F/6DIOgx0IC6sxpnlMmoaeuQ64/Uq0qb1qNKLcd9hsDCDZTu0syWGSAf Gk59LzRsVT75+QWhiEDzalN73DAZmJAGZbA2krAu6lMilcpYmLwcgxj7M= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; 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: tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (oat.nine.sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=oat.nine.sirjofri.de policy.ptr=oat.nine.sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=date:from :to:message-id:in-reply-to:references:subject:mime-version :content-type:content-transfer-encoding:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=fYjVAPPFLhiEX+LpsUsNiNnZIutG7XfqiExI+spqSz8=; b=XWzNTvDMMWCx tbqqxAgkWIoK3KhWVjqZzjhQoGxtiRRxifI/0DK2ykMOIfikM9X0XhDkhFZDM48t SqIUtlzp9bzWMI1skJXOrXrqwRA2JXo5be6ifhSLQbrIaeasRIJKyIpXPgMs6c5b T7ET2R+bVA3H7heMI400daDcEEeVGPI= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id DE437332D1F1 for <9fans@9fans.net>; Mon, 23 Aug 2021 01:23:19 -0400 (EDT) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id 9D20A154677; Mon, 23 Aug 2021 01:23:19 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629696199; b=WEaiwVut7dCkxWYn6JTb7WnP4TcMJ67CaEkrms87hIAJ5gVRB/ mBB3D7A3tGBrRMyXj+AHDHjCg30FxHHWQoMRiFbIuDDC0Sz5Rm0MGeMNXOm1KMNa VdHtkqZ0Y04agS+2pp4vT5UBbWM/4PQ0KZ8qBLBDbjHIFzInkiYpssxHjsBFeQwo UIDIv+TQidpXWUu+DubxJabX7CoWUEfO+aeUxCkldzVi3gNmCLzj//jJRrBDY9Ov cOfQu979oVC3IyMXFDRcwroPWWJGRNUmzjj59yT5jof6UhAQCiuZJwF2XRSlwL1y XXZ0/pBx3dT/C7355AcjWjO1n89VEEo3+hQA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding; s= arcseal; t=1629696199; bh=2vU6A7cB8LCDZs/SmCuNNF8K/P/GRQnSWn6r84 lNAhA=; b=Y1A+eD9lQwBWHEhlx9c1CWmMuJR2PQihUaKS/LECuhCXN8o+dKf/HW T95q1sF6aXG82fqeWfZKoSXEVArwlxIcViegcO83rBx9pzyfMP+kp6x5XvYFtiOt jiGh7Rlxh2otL0OhTdJNn4NphdD7R5o35ctcuMg6dMk9ewCBRy7nVp+EDZ91YoHh SOoLA45wUwdirEQvfCj1p7HqUJbRs3La+6Xy4alEn4ltHpLInzN+kfSLufBStrM2 UCVJNSJupmDl+sWD+txyTl5KjWR6dxiU3wX29ZJSph1+kpKoXjySuVuLECjpdAqp PRZ9KFJxj/eur50qHDwt2gndd/ZPK+IA== ARC-Authentication-Results: i=1; tb-mx0.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (oat.nine.sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=oat.nine.sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=oat.nine.sirjofri.de policy.ptr=oat.nine.sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: oat.nine.sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtgedggeekucdltddurdegudehrddttd dmucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgf nhhsuhgsshgtrhhisggvpdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttd enucenucfjughrpeffhffvkfgjfhfugggtgfesthhqredttddtjeenucfhrhhomhepshhi rhhjohhfrhhiuceoshhirhhjohhfrhhiodhmlhdqlehfrghnshesshhirhhjohhfrhhird guvgeqnecuggftrfgrthhtvghrnhepffelffehvdetvdefleeludejueetkedtteehiedv ueevudekffehvdefhedvfeetnecuffhomhgrihhnpegrrhhiiihonhgrrdgvughupdhtoh hpihgtsghogidrtghomhenucfkphephedrgeehrddutdehrdduvdejpdelhedrledtrddv udekrddvudefnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehinhgvthephe drgeehrddutdehrdduvdejpdhhvghlohepohgrthdrnhhinhgvrdhsihhrjhhofhhrihdr uggvpdhmrghilhhfrhhomhepoehsihhrjhhofhhrihdomhhlqdelfhgrnhhssehsihhrjh hofhhrihdruggvqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (sirjofri.de: 5.45.105.127 is authorized to use 'sirjofri+ml-9fans@sirjofri.de' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="sirjofri+ml-9fans@sirjofri.de"; helo=oat.nine.sirjofri.de; client-ip=5.45.105.127 Received: from oat.nine.sirjofri.de (oat.nine.sirjofri.de [5.45.105.127]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Mon, 23 Aug 2021 01:23:18 -0400 (EDT) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from sirjofri.de ([95.90.218.213]) by oat; Mon Aug 23 07:23:15 +0200 2021 Date: Mon, 23 Aug 2021 05:23:14 +0000 (UTC) From: sirjofri To: 9fans <9fans@9fans.net> Message-ID: <0dff7dc8-4197-489c-8bb2-c1ef2dfca96f@sirjofri.de> In-Reply-To: <1007A30B-A109-41BA-BD4A-FF06AED8DFEC@iitbombay.org> References: <92764e35-f5cf-460a-91df-050ba471e6dd@sirjofri.de> <9352EE7C-AE94-4C1C-8738-5A1DA8ECE5A7@iitbombay.org> <1007A30B-A109-41BA-BD4A-FF06AED8DFEC@iitbombay.org> Subject: Re: [9fans] Drawterm GPU (was: Software philosophy) MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8"; format="flowed" X-Correlation-ID: <0dff7dc8-4197-489c-8bb2-c1ef2dfca96f@sirjofri.de> Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 3ce4b7a4-03d2-11ec-8b2f-f52be28fdc7d Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UYWQyOWJmYzIyM2RjNGZiZS1NNDBlYTQ1NzExYTE1NTFmZDUzODA3?= =?UTF-8?B?Yjg0Pg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M40ea45711a1551fd53807b84:1:S83HzPC8j7jbn2zC-E4jGkZv22vAz6gfUiet8QmsvlM Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17N5X551010303 Good morning, GPUs are SIMD processors. The hundreds of cores are great for highly parallel calculation. In GLSL/HLSL I can write a program which is calculated for a very small set of pixels (usually 2x2 or 1x1). So if you have  a resolution of 10x10 the program is basically run 5x5=25 or 10x10=100 times in parallel. Boost the resolution to more real values like 1080p you see how the many cores benefit the whole calculation. This high parallelization can only really happen because most stuff is independent. For example, when raytracing each ray is (almost) independent of other rays. Still, the 2x2 matrix is often calculated dependently because for texturing (and mip mapping) you need the "distance" between two pixels in a fragment shader. This is why (for texturing) you may end up having slower programs and some waiting time between some threads, because sometimes you need the value of the neighbor thread and have to wait until it's calculated. Well, these are very language-specific details that are important for graphics, but apply similarly to other use cases. I can imagine that for neural networks you can just write the code for one node nad execute it 500 times for 500 nodes in parallel. Imagine having this beast on the CPU with just 4 cores... I hope this helps you understand how GPU cores ("shaders") work. Vulkan would indeed be interesting. Since we are only interested in the compute part it might even make our programs really small, the "hello world" part of drawing triangles would be the "client" side (writing a rasterizer, raymarcher, tracer, whatever). It could still be a lot lines of code, but maybe we still benefit from the 10% speedup. I still have to understand how all this "shader compilation" stuff works. In webgl it's like, "here's my code, make a shader from it, then I tell you it's a fragment shader". Shader compilation happens automatically. In UE shader compilation takes a long time, and I believe also in blender shaders are stored in a precompiled binaries. sirjofri 23.08.2021 06:13:53 Bakul Shah : > Don't high end GPUs have thousands of "cores"? Even high end CPUs don't > have more than a few dozen cores to 128 or so. While each kind's cores > are very different, seems to me GPU/CPU paths have diverged for good. > Or we need some massive shift in programming languages + compilers. I > lack imagination how. Still, the thought of the CPUs gaining the > complexity of the graphics engine scares me! > > -- Bakul > > On Aug 22, 2021, at 12:09 PM, Paul Lalonde > wrote: > > I'm pretty sure we're still re-inventing, though it's the CPU's turn to > gain some of the complexity of the graphics engine. > > Paul > > On Sun, Aug 22, 2021, 12:05 PM Bakul Shah wrote: >> Thanks. Looks like Sutherland's "Wheel of >> Reincarnation[https://www2.cs.arizona.edu/~cscheid/reading/myer-sutherland-design-of-display-processors.pdf]" >> has not only stopped but exploded :-) Or stopped being applicable. >> >> -- Bakul >> >> On Aug 22, 2021, at 9:23 AM, Paul Lalonde >> wrote: >> >> It got complicated because there's no stable interface or ISA.  The >> hardware evolved from fixed-function to programmable in a commercial >> environment where the only meaningful measure was raw performance per >> dollar at many price points.  Every year the hardware spins and >> becomes more performant, usually faster than Moore's law.  With 3D >> APIs hiding the hardware details there is no pressure to make the >> hardware interface uniform, pretty, or neat.  And with the need for >> performance there are dozens of fixed function units that effectively >> need their own sub-drivers while coordinating at high performance with >> the other units.  >> The system diagrams for GPUs look complex, but they are radical >> simplifications of what's really on the inside. >> >> Intel really pioneered the open driver stacks, but performance >> generally wasn't there.  That might be changing now, but I don't know >> if their recently announced discrete product line will be >> driver-compatible. >> >> Paul >> >> >> On Sun, Aug 22, 2021 at 8:48 AM Bakul Shah >> wrote: >>> The FreeBSD amdgpu.ko is over 3Mbytes of compiled code. Not counting >>> the "firmware" that gets loaded on the GPU board. drm/amd/amdgpu has >>> 200K+ lines of source code. drm/amd over 2M lines of code. Intel's >>> i915 seems to be about 1/10th the amd size. AIUI, this is linux GPU >>> driver code, more or less unchanged (FreeBSD has shim code to use >>> it). How did the interface to an SIMD processor get so complicated? >>> >>> … >>> >>> >>> >>> -- Bakul >>> > > > *9fans[https://9fans.topicbox.com/latest]* / 9fans / see > discussions[https://9fans.topicbox.com/groups/9fans] + > participants[https://9fans.topicbox.com/groups/9fans/members] + > delivery options[https://9fans.topicbox.com/groups/9fans/subscription] > Permalink[https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-Me78513510ae4df2da186c73a] ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Tad29bfc223dc4fbe-M40ea45711a1551fd53807b84 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From 9front-bounces@1ess.inri.net Mon Aug 23 09:08:56 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17N98tFG029708 for ; Mon, 23 Aug 2021 09:08:55 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 1ess; Sun Aug 22 13:18:51 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id 590b466d (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9front@9front.org>; Sun, 22 Aug 2021 10:18:36 -0700 (PDT) Message-ID: To: 9front@9front.org Date: Sun, 22 Aug 2021 13:18:35 -0400 From: ori@eigenstate.org MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: webscale overflow-preventing firewall STM API Subject: [9front] git/{diff,import}: make it easier to handle manually-asembled patch emails Reply-To: 9front@9front.org Precedence: bulk Often, people (including myself) will write emails that can almost be applied with git/import. This changes git/diff and git/import so that things will generally work even when assembling diffs by hand: 1. git/import becomes slightly more lax: ^diff ... ^--- ... will both be detected as the start of a patch. 2. git/diff produces the same format of diff as git/export, starting with paths: --- a/path/to/file +++ b/path/to/file which means that the 'ape/patch -p1' used within git/import will just work. So with this, if you send an email to the mailing list, write up a committable description, and append the output of git/diff to the end of the email, git/import should just work. [this patch was send through the mailing list using the above procedure, and will be committed with git/import to verify that it works as advertised] diff 8c228a123fa0c6062570964011854302bbf57242 uncommitted --- a/sys/src/cmd/git/diff +++ b/sys/src/cmd/git/diff @@ -26,12 +26,16 @@ git/query -c $commit HEAD | subst '^..' } +mntgen /mnt/scratch +bind $branch/tree/ /mnt/scratch/a +bind . /mnt/scratch/b +echo diff `{git/query $commit} uncommitted for(f in `$nl{lsdirty | sort | uniq}){ - orig=$branch/tree/$f - if(! test -f $orig) + cd /mnt/scratch + if(! test -f a/$f) orig=/dev/null - if(! test -f $f) + if(! test -f b/$f) f=/dev/null - diff -u $orig $f + diff -u a/$f b/$f } exit '' --- a/sys/src/cmd/git/import +++ b/sys/src/cmd/git/import @@ -45,7 +45,7 @@ state="body" next } - (state=="headers" || state=="body") && (/^diff/ || /^---[ ]*$/){ + (state=="headers" || state=="body") && (/^diff / || /^--- /){ state="diff" } state=="body" { From 9front-bounces@1ess.inri.net Mon Aug 23 19:19:27 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17NJJQAn021878 for ; Mon, 23 Aug 2021 19:19:27 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 1ess; Mon Aug 23 13:02:42 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id 5f14d08f (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9front@9front.org>; Mon, 23 Aug 2021 09:55:46 -0700 (PDT) Message-ID: <133E5FC5E7881988426C146233AB5F7D@eigenstate.org> To: 9front@9front.org Date: Mon, 23 Aug 2021 12:55:44 -0400 From: ori@eigenstate.org In-Reply-To: <8b7fd75a-c7f2-476a-8872-aa42e6d07eb0@www.fastmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: abstract responsive GPU locator Subject: Re: [9front] [PATCH] awk: add %q format for quoted strings (see quote(2)) Reply-To: 9front@9front.org Precedence: bulk Quoth james palmer : > this one comes in handy for building bulk rename scripts. > patch for git/import attached. > > - james > I think it makes sense to add this, though I'm not sure how much we want to diverge from upstream. Ape would get this by accident, but it's a superset of what posix needs. going the other way would also be neat: ls -l | awk -Q {print $NF} From 9front-bounces@1ess.inri.net Tue Aug 24 09:08:48 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17O98lhQ011494 for ; Tue, 24 Aug 2021 09:08:48 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 1ess; Tue Aug 24 00:38:28 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id 184c748d (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9front@9front.org>; Mon, 23 Aug 2021 21:31:33 -0700 (PDT) Message-ID: <3863D6C11096E789A36452D1407D8DAB@eigenstate.org> To: 9front@9front.org Date: Tue, 24 Aug 2021 00:31:32 -0400 From: ori@eigenstate.org In-Reply-To: <133E5FC5E7881988426C146233AB5F7D@eigenstate.org> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: storage hosting-based self-signing framework just-in-time solution Subject: Re: [9front] [PATCH] awk: add %q format for quoted strings (see quote(2)) Reply-To: 9front@9front.org Precedence: bulk Quoth ori@eigenstate.org: > Quoth james palmer : > > this one comes in handy for building bulk rename scripts. > > patch for git/import attached. > > > > - james > > > > I think it makes sense to add this, though I'm > not sure how much we want to diverge from upstream. > > Ape would get this by accident, but it's a superset > of what posix needs. > > going the other way would also be neat: > > ls -l | awk -Q {print $NF} > Here's a proof of concept -- though, I don't like how it totally ignores FS. diff fb2e0a1987b33083e3e08fa0659f99534c56d6aa uncommitted --- a/sys/src/cmd/awk/awk.h +++ b/sys/src/cmd/awk/awk.h @@ -49,6 +49,7 @@ extern int donefld; /* 1 if record broken into fields */ extern int donerec; /* 1 if record is valid (no fld has changed */ extern char inputFS[]; /* FS at time of input, for field splitting */ +extern int quotefld; /* if we use quotes instead of FS for splitting */ extern int dbg; --- a/sys/src/cmd/awk/lib.c +++ b/sys/src/cmd/awk/lib.c @@ -38,6 +38,7 @@ Cell **fldtab; /* pointers to Cells */ char inputFS[100] = " "; +int quotefld; #define MAXFLD 200 int nfields = MAXFLD; /* last allocated slot for $i */ @@ -242,7 +243,49 @@ dprint( ("command line set %s to |%s|\n", s, p) ); } +char *unquoted(char *t, char **et) +{ + int quoting; + char *h, *s; + quoting = 0; + /* unquoting only shrinks s */ + while (*t == ' ' || *t == '\t' || *t == '\n') + t++; + s = strdup(t); + h = s; + if (s == nil) + FATAL("out of space in tostring on %s", s); + while(*t!='\0'){ + if(!quoting && (*t == ' ' || *t == '\t' || *t == '\n')) + break; + if(*t != '\''){ + *s++ = *t++; + continue; + } + /* *t is a quote */ + if(!quoting){ + quoting = 1; + t++; + continue; + } + /* quoting and we're on a quote */ + if(t[1] != '\''){ + /* end of quoted section; absorb closing quote */ + t++; + quoting = 0; + continue; + } + /* doubled quote; fold one quote into two */ + t++; + *s++ = *t++; + + } + *s = 0; + *et = t; + return h; +} + void fldbld(void) /* create fields from current record */ { /* this relies on having fields[] the same length as $0 */ @@ -265,7 +308,21 @@ } fr = fields; i = 0; /* number of fields accumulated here */ - if (strlen(inputFS) > 1) { /* it's a regular expression */ + if (quotefld){ /* it's quoted text */ + for (i = 0; ; ) { + while (*r == ' ' || *r == '\t' || *r == '\n') + r++; + if (*r == 0) + break; + i++; + if (i > nfields) + growfldtab(i); + if (freeable(fldtab[i])) + xfree(fldtab[i]->sval); + fldtab[i]->sval = unquoted(r, &r); + fldtab[i]->tval = FLD | STR; + } + }else if (strlen(inputFS) > 1) { /* it's a regular expression */ i = refldbld(r, inputFS); } else if (*inputFS == ' ') { /* default whitespace */ for (i = 0; ; ) { --- a/sys/src/cmd/awk/main.c +++ b/sys/src/cmd/awk/main.c @@ -51,7 +51,7 @@ void main(int argc, char *argv[]) { - char *fs = nil, *marg; + char *fs = nil, qs = 0, *marg; int temp; setfcr(getfcr() & ~FPINVAL); @@ -103,6 +103,9 @@ if (fs == nil || *fs == '\0') WARNING("field separator FS is empty"); break; + case 'Q': + qs = 1; + break; case 'v': /* -v a=1 to be done NOW. one -v for each */ if (argv[1][2] == '\0' && --argc > 1 && isclvar((++argv)[1])) setclvar(argv[1]); @@ -158,6 +161,8 @@ dprint( ("argc=%d, argv[0]=%s\n", argc, argv[0]) ); arginit(argc, argv); yyparse(); + if (qs) + quotefld = 1; if (fs) *FS = qstring(fs, '\0'); dprint( ("exitstatus=%s\n", exitstatus) ); From 9front-bounces@1ess.inri.net Tue Aug 24 10:01:34 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17OA1XjG005951 for ; Tue, 24 Aug 2021 10:01:33 GMT Received: from mail-ed1-f43.google.com ([209.85.208.43]) by 1ess; Tue Aug 24 05:53:46 -0400 2021 Received: by mail-ed1-f43.google.com with SMTP id b7so30754962edu.3 for <9front@9front.org>; Tue, 24 Aug 2021 02:53:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:subject:in-reply-to:references:message-id:mime-version :content-transfer-encoding; bh=iV/GGVAiy6Sl9DS7jft7Q8DOLfAooIR8uy9uw7jIhYs=; b=hpsF4og9okiwzZKO5cswC0uJJY6Y9k1fywJlTKtQkm14N1mzYqQrGE0bMzlk2mGf5/ 0UYGEdoz5Pag9jOkXK2QG10sgGvqm9YD6dWoDopOtS9LT/rCPfRefKe2uAszcQoHtShL b7pRKwcRAf8VDAX5XWCySrqAPMdRecisJmTAV7Fp7dHrZxl23YRsdqJk4z63rBVLA96s a0MuNGiZLnYyBTPVpdUDZGcU64XuvsyddzctI1YfJTjy5ymgly61Bb9j2rd5IByHoxUg Jbm13lfbewW42hwxZKcgI2wJNYPoybFcVIpD6NGCKlSrCmV/a+sDd0mIVcv3ngrzpanU H2Iw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:subject:in-reply-to:references :message-id:mime-version:content-transfer-encoding; bh=iV/GGVAiy6Sl9DS7jft7Q8DOLfAooIR8uy9uw7jIhYs=; b=jdc6GELMK3q4r0pFn/gjRaWxhjRFhHBlUg87+NzbnKWXW66bp9ZWe1aUpo8cv45UD5 dSMyt6w1sdkquvxXxQwFL2PADxcBTQtQ5NVxCayJjxTpOn+XoEdsqoJYotcoIQVYv+Fc FwsiMWCCJImjsBjE9O+g7LBXMg57Zv10jd8y3aqd3JBKJSfa+8ZFJtELSX5qEB68C1p5 Jiu54WD/Q3QwlvIs74j4iArwo766sswroVfg7rfMcb1ODp0sxoKsdX6Q5x09m23bn7kv RrF07xuatQdcoCSN3Nc8KvHUgpwJVuDxc0/AhCF3lJq50y3znlKkHd+u7Dkt3j7ER9L7 y9Iw== X-Gm-Message-State: AOAM530+yDDA+uWsOT8NTqagAc4uO7O+O/j0pCVjK6aJFbtse7GdMyL+ CZoc3MnZZl2Dvh0IOAhGAnIzoqNiu7A= X-Google-Smtp-Source: ABdhPJx8/FiNT+HaddAtbY7QE1A0UbJ9Ep4PqveLfB5sPQIjhgAV7P3Qz9fDRBBgLh1ndL7uEBhXwA== X-Received: by 2002:a05:6512:951:: with SMTP id u17mr28031531lft.392.1629798347363; Tue, 24 Aug 2021 02:45:47 -0700 (PDT) Received: from [127.0.0.1] ([188.162.65.181]) by smtp.gmail.com with ESMTPSA id bi15sm268747lfb.49.2021.08.24.02.45.46 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 24 Aug 2021 02:45:47 -0700 (PDT) Date: Tue, 24 Aug 2021 09:45:44 +0000 From: Pavel Renev To: 9front@9front.org In-Reply-To: <85d784b0-277d-4846-87f6-01a3645f4e6d@www.fastmail.com> References: <8b7fd75a-c7f2-476a-8872-aa42e6d07eb0@www.fastmail.com> <25B459CD-CDDC-4BB1-BDC4-221B722A4947@quintile.net> <85d784b0-277d-4846-87f6-01a3645f4e6d@www.fastmail.com> Message-ID: <3919525E-1A5F-40FF-9550-2DC0A9CA0FF6@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: secure leveraged SVG over TOR high-performance STM-based control Subject: [9front] =?US-ASCII?Q?Re=3A_=5B9front=5D_=5BPATCH=5D_awk=3A_add_=25q_for?= =?US-ASCII?Q?mat_for_quoted_strings_=28see_quote=282=29=29?= Reply-To: 9front@9front.org Precedence: bulk Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17OA1XjG005951 Would a separate program be sufficient? A simple main wrapper around quote() It'd preserve awk's artwork intact, and having separate programs is what Unix Way is all about, or so I heard. From 9front-bounces@1ess.inri.net Tue Aug 24 20:46:41 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17OKkdv1020315 for ; Tue, 24 Aug 2021 20:46:39 GMT Received: from mail.jole.xyz ([95.179.147.13]) by 1ess; Tue Aug 24 16:41:50 -0400 2021 Received: from localhost (unknown [85.112.158.155]) by mail.jole.xyz (Postfix) with ESMTPSA id A32567F7DA for <9front@9front.org>; Tue, 24 Aug 2021 19:26:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=jole.xyz; s=mail; t=1629833180; bh=wjunn4+x2QEs4HRrQcozT7INn2DM0lGSHIZkmkDz3T0=; h=From:To:Date:From; b=KQiJTsl508HuoXmK8Do/MCXWyZEjnG7HZdElCBFsmbFQtbtvqWvQ5xIqJfb3pYyrr C7zo4QAdefL8m0s4obnQZJbCIAKgYnHJ/S72GBg7ROyTx3Mq/6qh1IotiNo4Zg6k2l pML2fwpOpU4hXjnxH8qzqytOx0lM5oGG3cd4TuDrdAk/oOIYUpyCA2JBOfGHcwQRDV BDSqWYWpvs9pFMwJSMmkN8Nisu37r/1EDnPic1Udd2nz/ay/6Ry7Q0o6A0+YM8mCr0 vV7bNUSZJnT0VQ3fT5QwkR/gk1xRb7E2Fg5W2yNkqmS0B+Ef2Kp/cGUkZP77DYkK7i vykxwiZlDHs3g== Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 From: "Jonas" To: <9front@9front.org> Date: Tue, 24 Aug 2021 21:25:59 +0200 Message-Id: List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: scale-out GPU grid Subject: [9front] Reply-To: 9front@9front.org Precedence: bulk Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17OKkdv1020315 unsubscribe From 9front-bounces@1ess.inri.net Tue Aug 24 20:50:08 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17OKo7Q1002965 for ; Tue, 24 Aug 2021 20:50:08 GMT Received: from wopr.sciops.net ([216.126.196.60]) by 1ess; Tue Aug 24 16:28:10 -0400 2021 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sciops.net; s=20210706; t=1629836876; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to; bh=1EgCUbwCjg/22r8xytGZ79fduH+13ozuWC1NUqq8T+g=; b=TblpdqcWYFTpod9vEqiiVy3Na63bw5gbVvFQdIEhEognaUbrgczf3G5emkKmq3TR1bGh+n U1mlZo8vtw4cdiiKBcOWgZfjT3TfWe8hhL64TCKKt2MA13MF+k9jH11WtygD4205792m6r f0+P52uwsR2Ewl9A2tP3WJA8Z4urTJI= Received: by wopr.sciops.net (OpenSMTPD) with ESMTPSA id 6017412e (TLSv1.2:ECDHE-RSA-CHACHA20-POLY1305:256:NO) for <9front@9front.org>; Tue, 24 Aug 2021 13:27:55 -0700 (PDT) Message-ID: From: qwx Date: Tue, 24 Aug 2021 22:27:53 +0200 To: 9front@9front.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: distributed base-oriented reduce/map strategy Subject: Re: [9front] Re: man pages Reply-To: 9front@9front.org Precedence: bulk > Once again I am asking for your support > > On 14/08/2021, Stuart Morrow wrote: > > 'UTF' appears in small caps throughout the manual, so this makes > > uhtml(1) consistent. It's relative to the uhtml earlier in this > > thread. > > > > diffy /sys/man/1/uhtml > > 24c24,26 > > < to convert it to UTF replacing HTML-entity forms > > --- > >> to convert it to > >> .SM UTF > >> replacing HTML-entity forms > > Hi, I think this is ok, but I see plenty of other instances of this, just run `grep -i utf /sys/man/*/*'. I'd fix them as well all at once. I'm sure there are all of sorts of inconsistencies all over the place, but expecting anyone to review and fix everything at once is too much, it won't happen. If you see any others right now, it would be nice to fix them too, in my opinion. Cheers, qwx From 9front-bounces@1ess.inri.net Tue Aug 24 21:09:37 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17OL9aWh016382 for ; Tue, 24 Aug 2021 21:09:36 GMT Received: from mail-lf1-f53.google.com ([209.85.167.53]) by 1ess; Tue Aug 24 17:02:41 -0400 2021 Received: by mail-lf1-f53.google.com with SMTP id k5so48268047lfu.4 for <9front@9front.org>; Tue, 24 Aug 2021 14:02:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=HIa1vwP/Paat2LnHlre7iDEGe8DAOeH6cxhIfwGC5M8=; b=dxRRD3gj/FOWWNVOUwH0HOslLTtDqXPf9hZd0/bn6kQVoNMODEcnDnFum+hcsnED0q s0IZRSDLiq2iGec0CTahTQQDE1AcOyvY4Qo31nF3NT7TECCpYGxALVHPnVdL+hjbEA2g 2e43axpKGY2cm6hMJU9JTQw/O4xE0Cv+RwVPi5QHChiPyZgQ1c4I/duYh5pf2XiJ6eAG XhzPhVfGUY9Q0c9mdqUa4U2u+pN2mY05oIOGc78Jn6tVg9fyloEuLm3bO8pruvXuLxvo 09k5ywETl+J+Ced7P5ta9jGuM3PQmdar4SU3vMWmz48ulbn+hhho3rEWDFIevlq9tpN/ du/g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=HIa1vwP/Paat2LnHlre7iDEGe8DAOeH6cxhIfwGC5M8=; b=D2yBPL9lXQD19kmkqtBALQWVOqUANWaG5SmjtVJ3V3DkgISav9BH5yzbURRPGkyUla 2v5CXNLAyRt1JswGhGcfFSJYS4259olwwf9KUSpnS8BsCGwN6lnNT38V5JQ3d6m4prks UNjUujGGKZH2opaFWxWGbWYd+DMcgugaFgBgOOPXlxVEfvhycp7W84bhrFQm1yC5YY9y qRGI+6ofGpsRt/2p3LOcmQvbW7pWyJBMHKiHsPbT1oZFcmiJ6IBfnd9woYm8ObjtEqaa PC70KBVRYzBfJdFKaaUvpSZYRm4sN789E01JA3MXG/xje8ANsmfczYXMx8YLivybzyAh SJnA== X-Gm-Message-State: AOAM533FrC5eU1nqfLY7D6k96951PU+NPSBtVGMyRO8Di55yx5uoSpRa fR4Nw6xvki/tqr4/Kq4dv7VthfrIclYkrv9MYM6XBbj47FU7WQ== X-Google-Smtp-Source: ABdhPJyMshiIFQh7s+avBSDGqU8tYzM8/tar8ZUeZBrwaY4NfFY7YnlbRZyUy2TlcZ4YwvLizToIsAblH6BXb1FSb4o= X-Received: by 2002:a05:6512:3d15:: with SMTP id d21mr30642697lfv.474.1629838950159; Tue, 24 Aug 2021 14:02:30 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a2e:80c9:0:0:0:0:0 with HTTP; Tue, 24 Aug 2021 14:02:29 -0700 (PDT) In-Reply-To: References: From: Stuart Morrow Date: Tue, 24 Aug 2021 22:02:29 +0100 Message-ID: To: 9front@9front.org Content-Type: text/plain; charset="UTF-8" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: stateless structured information realtime interface Subject: Re: [9front] Re: man pages Reply-To: 9front@9front.org Precedence: bulk I was referring to the first post in the thread, with the 12K attachment. Those diffs were at that time already a month old and ignored. From 9front-bounces@1ess.inri.net Tue Aug 24 21:32:47 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17OLWlZN012183 for ; Tue, 24 Aug 2021 21:32:47 GMT Received: from mail-pj1-f50.google.com ([209.85.216.50]) by 1ess; Tue Aug 24 17:10:00 -0400 2021 Received: by mail-pj1-f50.google.com with SMTP id u11-20020a17090adb4b00b00181668a56d6so3265544pjx.5 for <9front@9front.org>; Tue, 24 Aug 2021 14:09:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=rOESlZFgRPLdssNcuzr9gofMMpczCaXl4+ow7FTV4Y0=; b=nqRuRuUxvRlutlpGm1dIEUw0a1AYZ5hXcG0nnENXvRCI53VFQY5mQJUFIqgA0u0yjE FQDk3gdXoqQVpWdlkPwdcF2bYfJaZG1avYWnh+L666e++Jv2YP2oPkncwh9OGMtIW3RM oA8dNn9uT+Tbxpm/4RiDI3hAQNr1iz0GctL44Z6f+1Ir6RckeBkXyLsOwTgjRLWdPaSq +mxQLt9PiMNxLwl+Ftnuv1k58GHLQ0DDNK6yY0v8HUuXIQZ95L2YFT2FH1JWyfTAt+gB KA9TfLWxU7kL+H1A84aRsIQCjfw9cfrVI2s41R3eLTckZRvtoLaCmq0btykoytsmLWQe nvug== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=rOESlZFgRPLdssNcuzr9gofMMpczCaXl4+ow7FTV4Y0=; b=TxvqTtwFiygHqy8CA3BiDY5MsTihs/ntXUCmbo4j97O9loNDlo6oO1W7RI4MFs5qCQ vd+gYdOkYcMxQy/NxCroyoKFjLc9Ij1J3Wu+FzdFrgApFmzif/f6q/TWd74VDh4NC5RM cWJdi19xHEzhdo4ak+VAfzBNVeqODZIkltLIikQrHgcqtznyjzeq6a9jAMsKYCN3jBuP yaRkgxQ/eHTlhzyVKjKKKGUQclRVyW4H2GabgrsHEEVj3c5jcsKtFhJX6sBSQxRft7Lu jxMpeiNHtLbE//7wztF327tonaqR1uhR538nknzecFY03bgWKQZQB8X8lpPPz2m4jMiM 0IIg== X-Gm-Message-State: AOAM531BXlrpqFQuHAq5jwZ/NbpYe+PKvF6haVGv0ZLEnJ24GNYxxVKn 3eTj/oQT/xlZ0rmTN3uLN7xMYakObcgUiTISlyrgrEoU5c8= X-Google-Smtp-Source: ABdhPJycnMWGY8E0GNKjd59EMXmCijikSy1p7MVsDaOEpUXa9ceRF+/POt7YHI4TSQU6yBDy9vEidbymqmZxRfStUf0= X-Received: by 2002:a17:90a:4542:: with SMTP id r2mr6687796pjm.128.1629839391424; Tue, 24 Aug 2021 14:09:51 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a05:6a20:3210:b029:36:6c8c:f6d1 with HTTP; Tue, 24 Aug 2021 14:09:50 -0700 (PDT) In-Reply-To: References: From: hiro <23hiro@gmail.com> Date: Tue, 24 Aug 2021 23:09:50 +0200 Message-ID: To: 9front@9front.org Content-Type: text/plain; charset="UTF-8" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: structured converged ORM over SQL interface-based browser Subject: Re: [9front] Re: man pages Reply-To: 9front@9front.org Precedence: bulk i don't think i ever received your first post in the thread On 8/24/21, Stuart Morrow wrote: > I was referring to the first post in the thread, with the 12K attachment. > > Those diffs were at that time already a month old and ignored. > From 9front-bounces@1ess.inri.net Tue Aug 24 21:35:58 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17OLZvEZ017409 for ; Tue, 24 Aug 2021 21:35:58 GMT Received: from mail-ej1-f49.google.com ([209.85.218.49]) by 1ess; Tue Aug 24 17:27:51 -0400 2021 Received: by mail-ej1-f49.google.com with SMTP id d11so47073956eja.8 for <9front@9front.org>; Tue, 24 Aug 2021 14:27:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:subject:message-id:references:mime-version :content-disposition:content-transfer-encoding:in-reply-to; bh=Z9NpD1cKDqcmMTMN9pmc4C2ZZh6IUG3FKDDqzjXdmS4=; b=Luk0K7xDwKTqw6dglryhj8E2FvzHLzp27Yg/HkgglJUy1T18lEoBjCYtC1imB8Pseu IS1DFzdZVDmQo+qzQ6Lq55WG4wzt1FG1IQYaELjYujbgq5aRvkVBwbIqpJYGYCbcnRG9 oyEC8KXOu9ep8QCIwU2SK40eCK2e8pPvqe45FiQYrgLRs5suuDBGoxb02Z2zOzD1Iz1B ny4UVeygWfQi+AChriUgPckqQMkBiZ5MfI77kBY3FWnTtogh5k8wb13Jyhva0vloXmwh vua4oYg+JhwUpYppJ7PQRgxh0adOM8qQtZEwhfOaS+D4X0xPuLU+0SDpChmPjtOZ7ekw XHNw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=Z9NpD1cKDqcmMTMN9pmc4C2ZZh6IUG3FKDDqzjXdmS4=; b=WRolp4LGEJID3NWNXW1TY3U6LbmYYK+msinJznpDpYQpB+FAuz1NLSvCZtu/bG6oDP 0FvmWnqcl5+fg3h50qf/PnnQ4K2Ugv/d1G3EOqBZ08MA8pmkYjTpnikLqXJHj4Sp9qqg 0S0b29jPrRHwwhXbHJY3kGWV7RqKyJzqShYPf9jOnzzTPxk/mvyo9FXk6/snQpIU1du/ fRbq7yEihSb6BoJe0yNDSyudNAYfDBhPElsZdnnO6UAzXEUQv7sCcUdxSC4LJgjsVmkt FyRn5HgTSwP73PkAQTmoTsZaYykxoOoyys8ic1D+oeq+av8FlVN7X+TE9PnFFKYaqeHQ 2q6g== X-Gm-Message-State: AOAM531a+QzqG7UyBxDWgYKpIFpnntC23dvp65+geALd+REuRswOW+IR DWMUvzjMVZDPjiOZSAXVoxSO6AydmDo= X-Google-Smtp-Source: ABdhPJx22cEYo1b7ve6ptr9TSwS286XngdYHjJIeLkJhFN+Xr/+lOMPG2QpgTyY4Gt3oxNFgrH8Jpw== X-Received: by 2002:adf:eacb:: with SMTP id o11mr21567598wrn.418.1629840009932; Tue, 24 Aug 2021 14:20:09 -0700 (PDT) Received: from beryllium.local (dyndsl-095-033-143-204.ewe-ip-backbone.de. [95.33.143.204]) by smtp.gmail.com with ESMTPSA id t14sm7720251wrw.59.2021.08.24.14.20.09 for <9front@9front.org> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 24 Aug 2021 14:20:09 -0700 (PDT) Received: from localhost (beryllium.local [local]) by beryllium.local (OpenSMTPD) with ESMTPA id 7ad6ab03 for <9front@9front.org>; Tue, 24 Aug 2021 23:20:08 +0200 (CEST) Date: Tue, 24 Aug 2021 23:20:08 +0200 From: Humm To: 9front@9front.org Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: NoSQL template dependency solution Subject: Re: [9front] Re: man pages Reply-To: 9front@9front.org Precedence: bulk > I'm sure there are all of sorts of inconsistencies all over the > place, but expecting anyone to review and fix everything at once is > too much, it won't happen. Oh yes, there are. What comes to mind immediately is citation style and handling of options in SYNOPSIS (sometimes all are listed and sometimes there is just “[options]”), as well as just bad troff. There are some checks for bad stuff (see for example `mk punccheck` in /sys/man). -- Humm From 9front-bounces@1ess.inri.net Tue Aug 24 21:56:12 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17OLuBBx019271 for ; Tue, 24 Aug 2021 21:56:12 GMT Received: from wopr.sciops.net ([216.126.196.60]) by 1ess; Tue Aug 24 17:49:48 -0400 2021 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sciops.net; s=20210706; t=1629841779; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to; bh=so32L2HhYE9BMeFTFAxdpgGfHiCp1UMqNPCxwXX34qk=; b=CZEmk/DLCc3+4GgYDtl9ZdF39NB67xnPOr3QMjgUPiuywL14F/2oXwawMoJMNDzXWG/fWt G1zTM4xxDGMJj5Z58IwaTrHXpv1tQyr5sc4J3iRtpYjyq3XBpEFgVn23guI2D8ImT6AbZk bn3P+EvHgEXOPWs3Sv65TqXzIinMA24= Received: by wopr.sciops.net (OpenSMTPD) with ESMTPSA id 7e25a5cc (TLSv1.2:ECDHE-RSA-CHACHA20-POLY1305:256:NO) for <9front@9front.org>; Tue, 24 Aug 2021 14:49:39 -0700 (PDT) Message-ID: <15CD9AD70DBA6E3C24956FD65F4CF2AD@wopr.sciops.net> From: qwx Date: Tue, 24 Aug 2021 23:49:37 +0200 To: 9front@9front.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: leveraged CSS-aware out-scaling core proxy Subject: Re: [9front] Re: man pages Reply-To: 9front@9front.org Precedence: bulk I pushed part of your changes. Some I rejected on my own accord. My earlier point stands, there are many more instances of UTF and other shit that you didn't touch. Moreover, if we do this for `UTF', why not `HTML' or `USB' or whatever? Thanks for bumping this, and any further changes are welcome. > Oh yes, there are. What comes to mind immediately is citation style > and handling of options in SYNOPSIS (sometimes all are listed and > sometimes there is just “[options]”), as well as just bad troff. > There are some checks for bad stuff (see for example `mk punccheck` in > /sys/man). > > -- > Humm As always, patches welcome. Thanks, qwx From 9front-bounces@1ess.inri.net Tue Aug 24 22:06:47 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17OM6kHL004668 for ; Tue, 24 Aug 2021 22:06:46 GMT Received: from mail-lf1-f44.google.com ([209.85.167.44]) by 1ess; Tue Aug 24 17:38:22 -0400 2021 Received: by mail-lf1-f44.google.com with SMTP id bq28so2229lfb.7 for <9front@9front.org>; Tue, 24 Aug 2021 14:38:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=SkrYNilwqKUDXO1ND7t+a4Hhdn9M1aE1bMgRec4yN/E=; b=Vcs2bk8/qw+W+X+leH27hc4E/sa88W4EoA9JAeIdLlGbYEy+oarnHX51CX1+Gz7rte PufrHKUhdhN64s2JPn0gki9vhPGMyc4U7tH4hWvkOjvkLPDLffmLgF6Ff+E8MdjE0KND NhZ9U+VAiJh0V5FfrhEtM75am7JOXFoHMJntizFUuoFlT+7ki6PbWGyIb9ZVFw5EzEqR 95XATA6I74crrBMf1vjwguQ53+Yqt3d366QX5uH0wUAdP2hW5HRXshGDPDq9qT5voQtp 7zQrufKJfa0lIKOfw9xzJqgxEJKoMcICPEH9QLbQ4/F4VPXdviXJaMHpnfuwTlbdgsuO Me0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=SkrYNilwqKUDXO1ND7t+a4Hhdn9M1aE1bMgRec4yN/E=; b=Vo/keC5roFTF6gFSi9FhJMz81TkCI0A4JsiFW6tZvimszvj3t4UMN90LIt506HZuX+ PNmE0Q+cyqf7Rz/J2quxmx4SZZNx72JV9T2vcRVrdT2OCxatL8bdZNzxavqnFh612m2/ fnECZ3bSVtGjhFF2cz+WG2TNe+6EjJjfBBVxmREMQ+xhJRivdBivmb/WYAN2zU9D52y0 HXNEs8+tw3GYp7MlFeuxy/5NjzabE9cvxCQCDBxpQPalw7IO3ucCrESrnUzyGtcKJ7ju 4dTRUjGkELVoyq6tG0CgS3pAEfUt9c/1nHhtZ6vxX1mfRWyKwIQGsPgBW5rRnlf4jERP R2Yg== X-Gm-Message-State: AOAM533ivr0YvI5+WTFIwmEUCZatuk3J/eL/fQLKEWEOBmMFoDimk2dA XY+GrFjlV1tCqRLKLisTS8Sj9Q8F9B4Wa2ur10j17KmmtY1PAA== X-Google-Smtp-Source: ABdhPJwV8HzlJdwuse+ghhZrl379AGj0X/BsjlLFdRJjxdJBMheauyQflOh/85dNnBrBWCCbktGUIZUDWvTtV50zgpA= X-Received: by 2002:a2e:910f:: with SMTP id m15mr25959175ljg.275.1629839581154; Tue, 24 Aug 2021 14:13:01 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a2e:80c9:0:0:0:0:0 with HTTP; Tue, 24 Aug 2021 14:13:00 -0700 (PDT) In-Reply-To: References: From: Stuart Morrow Date: Tue, 24 Aug 2021 22:13:00 +0100 Message-ID: To: 9front@9front.org Content-Type: multipart/mixed; boundary="00000000000046aa1d05ca549918" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: property ORM over SOAP element blockchain-oriented strategy-scale controller Subject: Re: [9front] Re: man pages Reply-To: 9front@9front.org Precedence: bulk --00000000000046aa1d05ca549918 Content-Type: text/plain; charset="UTF-8" --00000000000046aa1d05ca549918 Content-Type: application/octet-stream; name=diff Content-Disposition: attachment; filename=diff Content-Transfer-Encoding: base64 X-Attachment-Id: file0 LS0tIC8vLmdpdC9mcy9vYmplY3QvYzZhOWM1NWRlN2U1ZDFkNTEwYTcxN2NmZmQ0MjY0OGQyNDky NjlkYi90cmVlL3N5cy9tYW4vMS91aHRtbAorKysgc3lzL21hbi8xL3VodG1sCkBAIC0xLDYgKzEs NiBAQAogLlRIIFVIVE1MIDEKIC5TSCBOQU1FCi11aHRtbCBcLSBjb252ZXJ0IGZvcmVpZ24gY2hh cmFjdGVyIHNldCBIVE1MIGZpbGUgdG8gdW5pY29kZQordWh0bWwgXC0gY29udmVydCBmb3JlaWdu LWNoYXJhY3Rlci1zZXQgSFRNTCBmaWxlIHRvIFVuaWNvZGUKIC5TSCBTWU5PUFNJUwogLkIgdWh0 bWwKIFsKQEAgLTEyLDI0ICsxMiwyNCBAQAogLkkgZmlsZQogXQogLlNIIERFU0NSSVBUSU9OCi1I VE1MIGNvbWVzIGluIHZhcmlvdXMgY2hhcmFjdGVyIHNldCBlbmNvZGluZ3MKK0hUTUwgY29tZXMg aW4gdmFyaW91cyBjaGFyYWN0ZXItc2V0IGVuY29kaW5ncwogYW5kIGhhcyBzcGVjaWFsIGZvcm1z IHRvIGVuY29kZSBjaGFyYWN0ZXJzLiBUbwotbWFrZSBpdCBlYXNpZXIgdG8gcHJvY2VzcyBodG1s LCB1aHRtbCBpcyB1c2VkCi10byBub3JtYWxpemUgaXQgdG8gYSB1bmljb2RlIG9ubHkgZm9ybS4K K21ha2UgaXQgZWFzaWVyIHRvIHByb2Nlc3MgSFRNTCwgdWh0bWwgaXMgdXNlZAordG8gbm9ybWFs aXplIGl0IHRvIGEgVW5pY29kZS1vbmx5IGZvcm0uCiAuTFAKLVVodG1sIGRldGVjdHMgdGhlIGNo YXJhY3RlciBzZXQgb2YgdGhlIGh0bWwgaW5wdXQKK1VodG1sIGRldGVjdHMgdGhlIGNoYXJhY3Rl ciBzZXQgb2YgdGhlIEhUTUwgaW5wdXQKIC5JIGZpbGUKIGFuZCBjYWxscwogLklSIHRjcyAoMSkK LXRvIGNvbnZlcnQgaXQgdG8gdXRmIHJlcGxhY2luZyBodG1sLWVudGl0eSBmb3JtcwotYnkgdGhl ciB1bmljb2RlIGNoYXJhY3RlciByZXByZXNlbnRhdGlvbnMgZXhjZXB0IGZvciAKLS5CIGx0Ci0u QiBndAotLkIgYW1wCi0uQiBxdW90Cit0byBjb252ZXJ0IGl0IHRvIFVURiByZXBsYWNpbmcgSFRN TC1lbnRpdHkgZm9ybXMKK2J5IHRoZWlyIFVuaWNvZGUgY2hhcmFjdGVyIHJlcHJlc2VudGF0aW9u cyBleGNlcHQgZm9yIAorLkJSIGx0ICwKKy5CUiBndCAsCisuQlIgYW1wICwKKy5CUiBxdW90ICwK IGFuZAotLkIgYXBvcyAuCi1UaGUgY29udmVydGVkIGh0bWwgaXMgd3JpdHRlbiB0bworLkJSIGFw b3MgLgorVGhlIGNvbnZlcnRlZCBIVE1MIGlzIHdyaXR0ZW4gdG8KIHN0YW5kYXJkIG91dHB1dC4g SWYgbm8KIC5JIGZpbGUKIHdhcyBnaXZlbiwgaXQgaXMgcmVhZCBmcm9tIHN0YW5kYXJkIGlucHV0 LiBJZiB0aGUKQEAgLTM2LDcgKzM2LDggQEAKIC5CIC1wCiBvcHRpb24gaXMgZ2l2ZW4sIHRoZSBk ZXRlY3RlZCBjaGFyYWN0ZXIgc2V0IGlzIHByaW50ZWQgYW5kCiB0aGUgcHJvZ3JhbSBleGl0cyB3 aXRob3V0IGNvbnZlcnNpb24uCi1JbiBjYXNlIGNoYXJhY3RlciBzZXQgZGV0ZWN0aW9uIGZhaWxz LCB0aGUgZGVmYXVsdCAodXRmKQorSW4gY2FzZSBjaGFyYWN0ZXItc2V0IGRldGVjdGlvbiBmYWls cywgdGhlIGRlZmF1bHQKKy5SQiAoIHV0ZiApCiBpcyBhc3N1bWVkLiBUaGlzIGRlZmF1bHQgY2Fu IGJlIGNoYW5nZWQgd2l0aCB0aGUKIC5CIC1jCiBvcHRpb24uCi0tLSAvLy5naXQvZnMvb2JqZWN0 L2M2YTljNTVkZTdlNWQxZDUxMGE3MTdjZmZkNDI2NDhkMjQ5MjY5ZGIvdHJlZS9zeXMvbWFuLzQv bnVzYgorKysgc3lzL21hbi80L251c2IKQEAgLTg4LDcgKzg4LDcgQEAKIC5CIHVzYmV2ZW50CiAo dXN1YWxseSBzZWVuIGFzCiAuQlIgL2Rldi91c2JldmVudCApCi13aGljaCwgd2hlbiByZWFkLCBy ZXR1cm5zIGEgNiBjb2x1bW4sIHNwYWNlIHNlcGFyYXRlZCBsaW5lIG9mCit3aGljaCwgd2hlbiBy ZWFkLCByZXR1cm5zIGEgNi1jb2x1bW4sIHNwYWNlLXNlcGFyYXRlZCBsaW5lIG9mCiB0ZXh0LCBv bmUgZm9yIGVhY2ggZXZlbnQuIFRoZSBjb2x1bW5zIGFyZToKIC5CIGF0dGFjaAogb3IKQEAgLTk5 LDcgKzk5LDcgQEAKIC5JIGRpZAogLkkgY3NwCiBhbmQKLS5JIGhuYW1lIC4KKy5JUiBobmFtZSAu CiBUaGUKIC5JIGFkZHIKIGlzIHRoZSBkZWNpbWFsIGRldmljZSBhZGRyZXNzIGFzc2lnbmVkLgpA QCAtMTExLDkgKzExMSw5IEBACiBpcyB0aGUgZGV2aWNlIGNsYXNzLCBzdWJjbGFzcywgcHJvdG9j b2wgaW5kZW50aWZpZXIKIGZvcm1hdHRlZCBhcyA2IGRpZ2l0IGhleGFkZWNpbWFsLgogLkkgVXNi ZAotYXNzaWducyBhIHN0YWJsZSBkZXZpY2UgdW5pcXVlIG5hbWUgYmFzZWQgb24gdGhlCithc3Np Z25zIGEgc3RhYmxlIGRldmljZSBpZGVudGlmaWVyIGJhc2VkIG9uIHRoZQogZGV2aWNlIGRlc2Ny aXB0b3IgZm9yCi0uSSBobmFtZSAuCisuSVIgaG5hbWUgLgogVGhpcyBpbmZvcm1hdGlvbiBpcyBy ZWFkIGJ5CiAuSVIgbnVzYnJjICg4KQogYW5kIHRoZQpAQCAtMTQyLDcgKzE0Miw3IEBACiAuQlIg L2RldiApCiB0aGF0IGluY2x1ZGVzIG9uZSBkaXJlY3RvcnkgcGVyIHN0b3JhZ2UgZGV2aWNlLCBu YW1lZAogLkJJIHNkVSBOIFsuIE0gXQotaW4gY29ycmVzcG9uZGVuY2Ugd2l0aCB0aGUgdXNiIGRl dmljZSB1bmlxdWUgbmFtZQoraW4gY29ycmVzcG9uZGVuY2Ugd2l0aCB0aGUgVVNCIGRldmljZSBp ZGVudGlmaWVyCiBhbmQgdGhlIHN0b3JhZ2UgdW5pdCBudW1iZXIgKG9yIExVTikuIFRoZSBMVU4g aXMgb21pdGVkCiBmb3Igc2luZ2xlIGx1biBkZXZpY2VzLgogLlBQCkBAIC0xNjAsNyArMTYwLDcg QEAKIC5TUyBFdGhlcm5ldAogLkkgRXRoZXIKIGhhbmRsZXMgVVNCIGV0aGVybmV0IGRldmljZXMu IFRoZSBmaWxlIHN5c3RlbSBwcm92aWRlZCBpcwotY29tcGF0aWJsZSB0bworY29tcGF0aWJsZSB3 aXRoCiAuSVIgZXRoZXIgKDMpCiBhbmQgYWRkZWQgdG8gdGhlIHNoYXJlCiAuQiB1c2JuZXQKQEAg LTIzMiw5ICsyMzIsOSBAQAogLlNTIEF1ZGlvIGRldmljZXMKIC5JIEF1ZGlvCiBjb25maWd1cmVz IGFuZCBtYW5hZ2VzIGEgVVNCIGF1ZGlvIGRldmljZS4KLUl0IGltcGxlbWVudHMgYSBmaWxlIHN5 c3RlbSwgKG5vcm1hbGx5IHNlZW4gdW5kZXIKLS5CSSAvZGV2ICkKLWNvbXBhdGlibGUgdG8KK0l0 IGltcGxlbWVudHMgYSBmaWxlIHN5c3RlbSAobm9ybWFsbHkgc2VlbiB1bmRlcgorLkJSIC9kZXYg KSwKK2NvbXBhdGlibGUgd2l0aAogLklSIGF1ZGlvICgzKS4KIC5TSCBTT1VSQ0UKIC5CIC9zeXMv c3JjL2NtZC9udXNiCi0tLSAvLy5naXQvZnMvb2JqZWN0L2M2YTljNTVkZTdlNWQxZDUxMGE3MTdj ZmZkNDI2NDhkMjQ5MjY5ZGIvdHJlZS9zeXMvbWFuLzQvcmlvCisrKyBzeXMvbWFuLzQvcmlvCkBA IC0yMjUsNyArMjI1LDcgQEAKIC5CIHdjdGwKIGFjY2VwdHMgbWVzc2FnZXMgdG8gY2hhbmdlIHRo ZSBzaXplIG9yIHBsYWNlbWVudCBvZiB0aGUgYXNzb2NpYXRlZCB3aW5kb3csCiBhbmQgdG8gY3Jl YXRlIG5ldyB3aW5kb3dzLgotVGhlIG1lc3NhZ2VzIGFyZSBpbiBhIGNvbW1hbmQtbGluZSBsaWtl IGZvcm1hdCwgd2l0aCBhIGNvbW1hbmQgbmFtZSwKK1RoZSBtZXNzYWdlcyBhcmUgaW4gYSBjb21t YW5kLWxpbmUtbGlrZSBmb3JtYXQsIHdpdGggYSBjb21tYW5kIG5hbWUsCiBwb3NzaWJseSBmb2xs b3dlZCBieSBvcHRpb25zIGludHJvZHVjZWQgYnkgYSBtaW51cyBzaWduLgogVGhlIG9wdGlvbnMg bXVzdCBiZSBzZXBhcmF0ZWQgYnkgYmxhbmtzLCBmb3IgZXhhbXBsZQogLkIgLWR4IDEwMApAQCAt Mjc2LDE0ICsyNzYsMTQgQEAKIC5CIG5ldwogY29tbWFuZHMgYWNjZXB0CiAuQiAtbWlueAotLklS IG4gLAorLlJJIFvCsV0gbiAsCiAuQiAtbWlueQotLklSIG4gLAorLlJJIFvCsV0gbiAsCiAuQiAt bWF4eAotLklSIG4gLAorLlJJIFvCsV0gbiAsCiBhbmQKLS5CUiAtbWF4eQotLkkgbgorLkIgLW1h eHkKKy5SSSBbwrFdIG4KIG9wdGlvbnMgdG8gc2V0IHRoZSBwb3NpdGlvbiBvZiB0aGUgY29ycmVz cG9uZGluZyBlZGdlIG9mIHRoZSB3aW5kb3cuCiBUaGV5IGFsc28gYWNjZXB0IGFuIG9wdGlvbgog LkIgLXIKLS0tIC8vLmdpdC9mcy9vYmplY3QvYmUzNmMwOTJhYzA2MWEwNDA2NTcyMGU5OGU1ODQ5 MTMwNDg3YmU3Zi90cmVlLy9zeXMvbWFuLzEvdmFjCisrKyAvc3lzL21hbi8xL3ZhYwpAQCAtODIs NyArODIsNyBAQAogLkkgeXl5eS9tbWRkCiAoeWVhciwgbW9udGgsIGRheSkKIGluIHRoZSBzdHls ZSBvZiB0aGUgZHVtcCBmaWxlIHN5c3RlbQotKHNlZSBQbGFuIDkncyBcZklmc1xmUig0KSkuCiso c2VlIFxmSWZzXGZSKDQpKS4KIElmCiAuSSB2YWNmaWxlCiBhbHJlYWR5IGV4aXN0cywgYW4gYWRk aXRpb25hbCBiYWNrdXAgZGF5IGlzIGFkZGVkIHRvIHRoZQpAQCAtMTg0LDcgKzE4NCw3IEBACiAu SSBwYXR0ZXJuCiBvcgogLkIgZXhjbHVkZQotLkkgcGF0dGVybiAuCisuSVIgcGF0dGVybiAuCiBX aGVuIGNvbnNpZGVyaW5nIHdoZXRoZXIgdG8gaW5jbHVkZSBhIGRpcmVjdG9yeSBvciBmaWxlCiBp biB0aGUgdmFjIGFyY2hpdmUsCiB0aGUgZWFybGllc3QgbWF0Y2hpbmcgcGF0dGVybiBpbiB0aGUg ZmlsZQotLS0gLy8uZ2l0L2ZzL29iamVjdC9iZTM2YzA5MmFjMDYxYTA0MDY1NzIwZTk4ZTU4NDkx MzA0ODdiZTdmL3RyZWUvL3N5cy9tYW4vMi85cAorKysgL3N5cy9tYW4vMi85cApAQCAtNTExLDcg KzUxMSw3IEBACiB3aWxsIGhhbmRsZSB0aGUgcmVxdWVzdCBnaXZlbiBwb2ludGVycyB0byB0d28g ZnVuY3Rpb25zCiAuSSB3YWxrMQogYW5kIChvcHRpb25hbGx5KQotLkkgY2xvbmUgLgorLklSIGNs b25lIC4KIC5JUiBDbG9uZSAsCiBpZiBub24tbmlsLCBpcyBjYWxsZWQgdG8gc2lnbmFsIHRoZSBj cmVhdGlvbiBvZgogLkkgbmV3ZmlkCkBAIC04ODEsNyArODgxLDcgQEAKIC5JUiBubnRwZnMgKDQp LAogLklSIHNuYXAgKDQpLAogYW5kCi0uQiAvc3lzL3NyYy9saWI5cC9yYW1mcy5jCisuQiAvc3lz L3NyYy9jbWQvcmFtZnMuYwogYXJlIGdvb2QgZXhhbXBsZXMgb2Ygc2ltcGxlIHNpbmdsZS10aHJl YWRlZCBmaWxlIHNlcnZlcnMuCiAuUFAKIEluIGdlbmVyYWwsIHRoZQotLS0gLy8uZ2l0L2ZzL29i amVjdC9iZTM2YzA5MmFjMDYxYTA0MDY1NzIwZTk4ZTU4NDkxMzA0ODdiZTdmL3RyZWUvL3N5cy9t YW4vMi9pb3Byb2MKKysrIC9zeXMvbWFuLzIvaW9wcm9jCkBAIC05Miw3ICs5Miw3IEBACiAuUFAK IC5JIENsb3NlaW9wcm9jCiB0ZXJtaW5hdGVzIHRoZSBJL08gcHJvYyBhbmQgZnJlZXMgdGhlIGFz c29jaWF0ZWQKLS5CIElvcHJvYyAuCisuQlIgSW9wcm9jIC4KIC5QUAogLkkgSW9jYWxsCiBpcyBh IHByaW1pdGl2ZSB0aGF0IG1heSBiZSB1c2VkIHRvIGltcGxlbWVudAotLS0gLy8uZ2l0L2ZzL29i amVjdC9iZTM2YzA5MmFjMDYxYTA0MDY1NzIwZTk4ZTU4NDkxMzA0ODdiZTdmL3RyZWUvL3N5cy9t YW4vMi9pcAorKysgL3N5cy9tYW4vMi9pcApAQCAtOTcsNyArOTcsNyBAQAogLlNIIERFU0NSSVBU SU9OCiBUaGVzZSByb3V0aW5lcyBhcmUgdXNlZCBieSBJbnRlcm5ldCBQcm90b2NvbCAoSVApIHBy b2dyYW1zIHRvCiBtYW5pcHVsYXRlIElQIGFuZCBFdGhlcm5ldCBhZGRyZXNzZXMuCi1QbGFuIDks IGJ5IGRlZmF1bHQsIHVzZXMgVjYgZm9ybWF0IElQIGFkZHJlc3Nlcy4gIFNpbmNlIFY0CitQbGFu IDksIGJ5IGRlZmF1bHQsIHVzZXMgVjYtZm9ybWF0IElQIGFkZHJlc3Nlcy4gIFNpbmNlIFY0CiBh ZGRyZXNzZXMgZml0IGludG8gdGhlIFY2IHNwYWNlLCBhbGwgSVAgYWRkcmVzc2VzIGNhbiBiZSBy ZXByZXNlbnRlZC4KIElQIGFkZHJlc3NlcyBhcmUgc3RvcmVkIGFzIGEgc3RyaW5nIG9mIDE2CiAu QiB1bnNpZ25lZApAQCAtMjIyLDcgKzIyMiw3IEBACiAuUFAKIC5JIERlZm1hc2sKIHJldHVybnMg dGhlIHN0YW5kYXJkIGNsYXNzIEEsIEIsIG9yIEMgbWFzayBmb3IKLS5JIGlwYWRkciAuCisuSVIg aXBhZGRyIC4KIC5QUAogLkkgSXN2NAogcmV0dXJucyBub24temVybyBpZiB0aGUgVjYgYWRkcmVz cyBpcyBpbiB0aGUgVjQgc3BhY2UsIHRoYXQgaXMsCi0tLSAvLy5naXQvZnMvb2JqZWN0L2JlMzZj MDkyYWMwNjFhMDQwNjU3MjBlOThlNTg0OTEzMDQ4N2JlN2YvdHJlZS8vc3lzL21hbi80L2NkZnMK KysrIC9zeXMvbWFuLzQvY2RmcwpAQCAtMjAzLDcgKzIwMyw3IEBACiBvcHRpb24gd2lsbCBwcmlu dCByYyBjb21tYW5kcyB1c2luZwogLklSIGF1ZGlvL2ZsYWNlbmMgKDEpCiB0byBlbmNvZGUgYW5k IHRhZyBhdWRpbyB0cmFja3MgZnJvbSB0aGUgZGlzYyB0byBvdXRwdXQgZGlyZWN0b3J5Ci0uSSBk aXIgLgorLklSIGRpciAuCiAuU0ggRVhBTVBMRVMKIEJhY2t1cCB0byBhIEJELVIgZGlzYzoKIC5i cgotLS0gLy8uZ2l0L2ZzL29iamVjdC9iZTM2YzA5MmFjMDYxYTA0MDY1NzIwZTk4ZTU4NDkxMzA0 ODdiZTdmL3RyZWUvL3N5cy9tYW4vNi9hdXRoc3J2CisrKyAvc3lzL21hbi82L2F1dGhzcnYKQEAg LTI4Myw3ICsyODMsNyBAQAogcHJvdmluZyB0byB0aGUgY2xpZW50IHRoYXQgaXQgYWxzbyBrbm93 cwogLkkgS24KIGFuZCB0aGVyZWZvcmUgCi0uSSBLcyAuCisuSVIgS3MgLgogLlBQCiBUaGUgNjQt Yml0IHNoYXJlZCBzZWNyZXQKIC5JIEtuCi0tLSAvLy5naXQvZnMvb2JqZWN0L2JlMzZjMDkyYWMw NjFhMDQwNjU3MjBlOThlNTg0OTEzMDQ4N2JlN2YvdHJlZS8vc3lzL21hbi84L25kYgorKysgL3N5 cy9tYW4vOC9uZGIKQEAgLTc2NCw3ICs3NjQsNyBAQAogLlBQCiAuSSBOZGIvZG5zZ2V0aXAKIHJl c29sdmVzIGFuZCBwcmludHMgQSBhbmQgQUFBQSByZWNvcmRzIHdpdGhvdXQgY29uc3VsdGluZwot LkkgbmRiL2RucyAuCisuSVIgbmRiL2RucyAuCiBCeSBkZWZhdWx0LAogLkkgbmRiL2Ruc2dldGlw CiBxdWVyaWVzIEEgcmVjb3JkcyBmaXJzdCBhbmQgdGhlbiBBQUFBIHJlY29yZHMuIEFzIHdpdGgK LS0tIC8vLmdpdC9mcy9vYmplY3QvYmUzNmMwOTJhYzA2MWEwNDA2NTcyMGU5OGU1ODQ5MTMwNDg3 YmU3Zi90cmVlLy9zeXMvbWFuLzgvdmVudGktYmFja3VwCisrKyAvc3lzL21hbi84L3ZlbnRpLWJh Y2t1cApAQCAtNjYsNyArNjYsNyBAQAogKGRlZmF1bHQKIC5CUiAwICkKIGluCi0uSSBhcmVuYWZp bGUgLgorLklSIGFyZW5hZmlsZSAuCiBUaGlzIGlzIHVzZWZ1bCBmb3IgcmVhZGluZyBkaXJlY3Rs eSBmcm9tCiB0aGUgVmVudGkgYXJlbmEgcGFydGl0aW9uOgogLklQCi0tLSAvLy5naXQvZnMvb2Jq ZWN0L2JlMzZjMDkyYWMwNjFhMDQwNjU3MjBlOThlNTg0OTEzMDQ4N2JlN2YvdHJlZS9zeXMvbWFu LzEvZGVyb2ZmCisrKyBzeXMvbWFuLzEvZGVyb2ZmCkBAIC04MywxMSArODMsMTEgQEAKIC5JUiBz cGVsbCAoMSkKIC5TSCBCVUdTCiBUaGlzIGZpbHRlciBpcyBub3QgYSBjb21wbGV0ZSBpbnRlcnBy ZXRlciBvZgotLkkgdHJvZmYgLgorLklSIHRyb2ZmIC4KIEZvciBleGFtcGxlLCBtYWNybyBkZWZp bml0aW9ucyBjb250YWluaW5nCiAuTCBcZSQKIGNhdXNlIGNoYW9zIGluCi0uSVIgZGVyb2ZmCisu SSBkZXJvZmYKIHdoZW4gdGhlIHBvcHVsYXIKIC5MICQkCiBkZWxpbWl0ZXJzIGZvcgotLS0gLy8u Z2l0L2ZzL29iamVjdC9iZTM2YzA5MmFjMDYxYTA0MDY1NzIwZTk4ZTU4NDkxMzA0ODdiZTdmL3Ry ZWUvc3lzL21hbi8xL2xlYWsKKysrIHN5cy9tYW4vMS9sZWFrCkBAIC0xNTgsNyArMTU4LDcgQEAK IC5JIFVtZW0KIHByaW50cyBzdW1tYXJpemVzIGFsbCBhbGxvY2F0aW9ucywgbm90IGp1c3QgCiBt ZW1vcnkgbGVha3MsIGJ1dCBpdCBpcyBmYXN0ZXIgYW5kIHJlcXVpcmVzIGxlc3MgbWVtb3J5IHRo YW4gCi0uSSBsZWFrIC4KKy5JUiBsZWFrIC4KIC5QUAogLkkgS21lbQogaXMgbGlrZQotLS0gLy8u Z2l0L2ZzL29iamVjdC9iZTM2YzA5MmFjMDYxYTA0MDY1NzIwZTk4ZTU4NDkxMzA0ODdiZTdmL3Ry ZWUvc3lzL21hbi8yL3B1c2h0bHMKKysrIHN5cy9tYW4vMi9wdXNodGxzCkBAIC03OCwxMCArNzgs MTAgQEAKIGRlc2NyaXB0b3Igd2lsbCBnZXQgZW5jcnlwdGVkIGFuZCBhdXRoZW50aWNhdGVkIGFu ZCB0aGVuIHdyaXR0ZW4gdG8gdGhlCiBmaWxlIGRlc2NyaXB0b3IsCiAuSVIgZmQgLgotLkkgUHVz aHRscyAsCi0uSVIgdGxzQ2xpZW50CisuSVIgUHVzaHRscyAsCisuSSB0bHNDbGllbnQKIGFuZAot LklSIHRsc1NlcnZlcgorLkkgdGxzU2VydmVyCiBjbG9zZSB0aGUgb3JpZ2luYWwgZmlsZSBkZXNj cmlwdG9yIG9uIHN1Y2Nlc3MuCiBJZgogLkkgZGlyCi0tLSAvLy5naXQvZnMvb2JqZWN0L2JlMzZj MDkyYWMwNjFhMDQwNjU3MjBlOThlNTg0OTEzMDQ4N2JlN2YvdHJlZS9zeXMvbWFuLzIvdmVudGkt Y2FjaGUKKysrIHN5cy9tYW4vMi92ZW50aS1jYWNoZQpAQCAtMTI2LDcgKzEyNiw3IEBACiB3aXRo IHJvb20gZm9yCiAuSSBuYmxvY2tzCiBvZiBtYXhpbXVtIGJsb2NrIHNpemUKLS5JIGJsb2Nrc2l6 ZSAuCisuSVIgYmxvY2tzaXplIC4KIC5QUAogLkkgVnRjYWNoZWZyZWUKIGZyZWVzIGEgY2FjaGUg YW5kIGFsbCB0aGUgYXNzb2NpYXRlZCBibG9ja3MuCi0tLSAvLy5naXQvZnMvb2JqZWN0L2JlMzZj MDkyYWMwNjFhMDQwNjU3MjBlOThlNTg0OTEzMDQ4N2JlN2YvdHJlZS9zeXMvbWFuLzIvdmVudGkt bG9nCisrKyBzeXMvbWFuLzIvdmVudGktbG9nCkBAIC01NCw3ICs1NCw3IEBACiAuUFAKIC5JIFZ0 bG9nb3BlbgogcmV0dXJucyBhIHJlZmVyZW5jZSB0byB0aGUgbG9nIHdpdGggdGhlIGdpdmVuCi0u SSBuYW1lIC4KKy5JUiBuYW1lIC4KIElmIGEgbG9nIHdpdGggdGhhdCBuYW1lIGRvZXMgbm90IGV4 aXN0IGFuZAogLkkgc2l6ZSAKIGlzIG5vbi16ZXJvLAotLS0gLy8uZ2l0L2ZzL29iamVjdC9iZTM2 YzA5MmFjMDYxYTA0MDY1NzIwZTk4ZTU4NDkxMzA0ODdiZTdmL3RyZWUvc3lzL21hbi8zL2NtZAor Kysgc3lzL21hbi8zL2NtZApAQCAtNjEsNyArNjEsNyBAQAogUnVuIHRoZSBob3N0IGNvbW1hbmQg aW4gZGlyZWN0b3J5CiAuSVIgd2RpciAsCiB3aGljaCBpcyBhIGRpcmVjdG9yeQotLkkgIm9uIHRo ZSBob3N0IHN5c3RlbSIgLgorLklSICJvbiB0aGUgaG9zdCBzeXN0ZW0iIC4KIElzc3VlIHRoaXMg cmVxdWVzdCBiZWZvcmUgc3RhcnRpbmcgdGhlIGNvbW1hbmQuCiBCeSBkZWZhdWx0LCBjb21tYW5k cyBhcmUgcnVuIGluIHRoZSBJbmZlcm5vIHJvb3QgZGlyZWN0b3J5IG9uIHRoZSBob3N0IHN5c3Rl bS4KIC5UUApAQCAtMjA3LDEwICsyMDcsMTAgQEAKIC5TUyAiQ29tbWFuZCBleGVjdXRpb24iCiBJ biBhbGwgY2FzZXMsIHRoZSBjb21tYW5kIHJ1bnMgaW4gdGhlIGhvc3Qgb3BlcmF0aW5nIHN5c3Rl bSdzCiBvd24gZmlsZSBuYW1lIHNwYWNlLgotQWxsIGZpbGUgbmFtZXMgd2lsbCBiZSBpbnRlcnBy ZXRlZCBpbiB0aGF0IHNwYWNlLCBub3QgUGxhbjkncy4KK0FsbCBmaWxlIG5hbWVzIHdpbGwgYmUg aW50ZXJwcmV0ZWQgaW4gdGhhdCBzcGFjZSwgbm90IFBsYW4gOSdzLgogRm9yIGV4YW1wbGUsIG9u IFVuaXgKIC5CIC8KLXJlZmVycyB0byB0aGUgaG9zdCdzIGZpbGUgc3lzdGVtIHJvb3QsIG5vdCBQ bGFuOSdzOworcmVmZXJzIHRvIHRoZSBob3N0J3MgZmlsZSBzeXN0ZW0gcm9vdCwgbm90IFBsYW4g OSdzOwogdGhlIGVmZmVjdHMgb2YgbW91bnRzIGFuZCBiaW5kcyB3aWxsIG5vdCBiZSB2aXNpYmxl LgogLlNIICJTRUUgQUxTTyIKIC5JUiBvcyAoMSkKLS0tIC8vLmdpdC9mcy9vYmplY3QvYmUzNmMw OTJhYzA2MWEwNDA2NTcyMGU5OGU1ODQ5MTMwNDg3YmU3Zi90cmVlL3N5cy9tYW4vMy91c2IKKysr IHN5cy9tYW4vMy91c2IKQEAgLTE5LDcgKzE5LDcgQEAKIC5TSCBERVNDUklQVElPTgogVGhlIFVu aXZlcnNhbCBTZXJpYWwgQnVzIGlzIGEgY29tcGxleCB5ZXQgcG9wdWxhciBidXMKIGZvciBjb25u ZWN0aW5nIGFsbCBraW5kIG9mIGRldmljZXMgdG8gYSBjb21wdXRlci4KLUl0IGlzIGEgZm91ci13 aXJlIHRyZWUtc2hhcGVkIGJ1cyB0aGF0IHByb3ZpZGVzIGJvdGggY29tbXVuaWNhdGlvbiBhbmQg KGxpbWl0ZWQpCitJdCBpcyBhIHRyZWUtc2hhcGVkIGJ1cyB0aGF0IHByb3ZpZGVzIGJvdGggY29t bXVuaWNhdGlvbiBhbmQgKGxpbWl0ZWQpCiBwb3dlciB0byBkZXZpY2VzLgogQnJhbmNoaW5nIHBv aW50cyBpbiB0aGUgdHJlZSBhcmUgcHJvdmlkZWQgYnkgZGV2aWNlcyBjYWxsZWQKIC5JUiBodWJz IC4KQEAgLTQxLDcgKzQxLDYgQEAKIEVIQ0kgZm9yIFVTQiAyICh1cCB0byA0ODAgTWIvcykKIGFu ZAogWEhDSSBmb3IgVVNCIDMgKHVwIHRvIDUgR2IvcykuCi1XZSBjdXJyZW50bHkgc3VwcG9ydCBh bGwgYnV0IFhIQ0ksIHdoaWNoIGlzIHN0aWxsIHF1aXRlIG5ldy4KIC5QUAogVGhlIFVTQiBidXMg aXMgZnVsbHkgY29udHJvbGxlZCBieSB0aGUgaG9zdDsgYWxsIGRldmljZXMgYXJlIHBvbGxlZC4K IEh1YnMgYXJlIHBhc3NpdmUgaW4gdGhlIHNlbnNlIHRoYXQgdGhleSBkbyBub3QgcG9sbCB0aGUg ZGV2aWNlcyBhdHRhY2hlZApAQCAtNTcsNyArNTYsNyBAQAogU3BlY2lhbGl6YXRpb24gY29udGlu dWVzIGFzIHN1YmNsYXNzZXMgYW5kIHN1YnN1YmNsYXNzZXMgYXJlIGV4cGxvcmVkLgogLlBQCiBF bnVtZXJhdGlvbiBvZiB0aGUgYnVzIGFuZCBpbml0aWFsIGNvbmZpZ3VyYXRpb24gb2YgZGV2aWNl cyBpcyBkb25lCi1ieSBhIHVzZXIgbGV2ZWwgcHJvZ3JhbSwKK2J5IGEgdXNlci1sZXZlbCBwcm9n cmFtLAogLklSIHVzYmQgLgogRGV2aWNlIGRyaXZlcnMgYXJlIGltcGxlbWVudGVkIGJ5IHNlcGFy YXRlIHVzZXIgcHJvZ3JhbXMsIGFsdGhvdWdoCiBzb21lIG9mIHRoZW0gbWF5IGJlIHN0YXRpY2Fs bHkgbGlua2VkIGludG8KQEAgLTE3OSw3ICsxNzgsNyBAQAogdG8gcmVzdW1lIEkvTy4KIFRoZSBt b3N0IGNvbW1vbiBlcnJvciBpcwogLkwgY3JjL3RpbWVvdXQKLWluZGljYXRpbmcgcHJvYmxlbXMg aW4gY29tbXVuaWNhdGlvbiB3aXRoIHRoZSBkZXZpY2UgKGVnLiwgYSBwaHlzaWNhbAoraW5kaWNh dGluZyBwcm9ibGVtcyBpbiBjb21tdW5pY2F0aW9uIHdpdGggdGhlIGRldmljZSAoZS5nLiwgYSBw aHlzaWNhbAogZGV0YWNoIG9mIHRoZSBkZXZpY2Ugb3IgYSB3aXJpbmcgcHJvYmxlbSkuCiAuUFAK IEZvciBjb250cm9sIGFuZCBpc29jaHJvbm91cyB0cmFuc2ZlcnMsIHRoZXJlIGlzIGFuIGltcGxp Y2l0CkBAIC0yNjcsOSArMjY2LDExIEBACiAoMS41IE1iL3MpLAogLkJSIGZ1bGwKICgxMiBNYi9z KSwKLW9yCiAuQlIgaGlnaAotKDQ4MCBNYi9zKS4KKyg0ODAgTWIvcykKK29yCisuQlIgc3VwZXIK Kyg1IEdiL3MpLgogLlRQCiBNYXhpbXVtIHBhY2tldCBzaXplCiBVc2VkIHdoZW4gcGVyZm9ybWlu ZyBJL08gb24gdGhlIGRhdGEgZmlsZS4KQEAgLTQyNiw3ICs0MjcsNyBAQAogLlRQCiAuQkkgbmFt ZSAiIHN0ciIKIEdlbmVyYXRlcyBhbiBhZGRpdGlvbmFsIGZpbGUgbmFtZSwKLS5JIHN0ciAsCisu SVIgc3RyICwKIGZvciB0aGUKIC5CIGRhdGEKIGZpbGUgb2YgdGhlIGVuZHBvaW50LgpAQCAtNDg0 LDE2ICs0ODUsMTYgQEAKIC5CUiBydyAsCiB3aGljaCBjcmVhdGVzLCByZXNwZWN0aXZlbHksIGFu IGlucHV0LCBvdXRwdXQsIG9yIGlucHV0L291dHB1dCBlbmRwb2ludC4KIC5UUAotLkIgInNwZWVk IHtsb3d8ZnVsbHxoaWdofQotU2V0IHRoZSBlbmRwb2ludCBzcGVlZCB0byBmdWxsLCBsb3csIG9y IGhpZ2gsIHJlc3BlY3RpdmVseS4KKy5CICJzcGVlZCB7bG93fGZ1bGx8aGlnaHxzdXBlcn0KK1Nl dCB0aGUgZW5kcG9pbnQgc3BlZWQgdG8gZnVsbCwgbG93LCBoaWdoLCBvciBTdXBlclNwZWVkLCBy ZXNwZWN0aXZlbHkuCiAuVFAKIC5CIGh1YgogVGVsbCB0aGlzIGRyaXZlciB0aGF0IHRoZSBlbmRw b2ludCBjb3JyZXNwb25kcyB0byBhIGh1YiBkZXZpY2UuCiAuUEQKIC5QUAotU2V0dXAgZW5kcG9p bnRzIGZvciBodWIgZGV2aWNlcyBhbHNvIGFjY2VwdCBoaXMgcmVxdWVzdDoKK1NldHVwIGVuZHBv aW50cyBmb3IgaHViIGRldmljZXMgYWxzbyBhY2NlcHQKIC5UUAotLkIgIm5ld2RldiB7bG93fGZ1 bGx8aGlnaH0gXGZJcG9ydFxmUAorLkIgIm5ld2RldiB7bG93fGZ1bGx8aGlnaHxzdXBlcn0gXGZJ cG9ydFxmUAogQ3JlYXRlIGEgbmV3IHNldHVwIGVuZHBvaW50IHRvIHJlcHJlc2VudCBhIG5ldyBk ZXZpY2UuCiBUaGUgZmlyc3QgYXJndW1lbnQgaXMgdGhlIGRldmljZSBzcGVlZC4KIC5JIFBvcnQK --00000000000046aa1d05ca549918-- From 9front-bounces@1ess.inri.net Tue Aug 24 22:13:09 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17OMD8ax012438 for ; Tue, 24 Aug 2021 22:13:09 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 1ess; Tue Aug 24 18:08:10 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id 617e11e0 (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9front@9front.org>; Tue, 24 Aug 2021 15:07:59 -0700 (PDT) Message-ID: To: 9front@9front.org Date: Tue, 24 Aug 2021 18:07:57 -0400 From: ori@eigenstate.org MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: event-scale general-purpose configuration interface Subject: [9front] git: separate author and committer Reply-To: 9front@9front.org Precedence: bulk Git has the ability to track the person who creates a commit separately from the person who wrote the commit. For git9, we ignored this feature. However, as we start using git/import more, it will be useful to figure out who imported a commit, as well as who wrote it. This change adds support for seeing this information in git, as well as setting the author and committer separately in git/import. diff ad26f82e44a5f59383edfde5f4c3727c225f4b0a uncommitted --- a//sys/lib/git/common.rc +++ b//sys/lib/git/common.rc @@ -38,7 +38,22 @@ status=() } -# merge1 out theirs base ours +fn whoami{ + name=`{git/conf user.name} + email=`{git/conf user.email} + if(test -f /adm/keys.who){ + if(~ $name '') + name=`{awk -F'|' '$1=="'$user'" {x=$3} END{print x}' mode = 0755 | DMDIR; d->name = estrdup9p("tree"); d->qid.type = QTDIR; - d->qid.path = qpath(c, i, o->id, Qcommittree); + d->qid.path = qpath(c, i, o->id, Qtree); break; case 1: d->name = estrdup9p("parent"); - d->qid.path = qpath(c, i, o->id, Qcommitparent); + d->qid.path = qpath(c, i, o->id, Qparent); break; case 2: d->name = estrdup9p("msg"); - d->qid.path = qpath(c, i, o->id, Qcommitmsg); + d->qid.path = qpath(c, i, o->id, Qmsg); break; case 3: d->name = estrdup9p("hash"); - d->qid.path = qpath(c, i, o->id, Qcommithash); + d->qid.path = qpath(c, i, o->id, Qhash); break; case 4: d->name = estrdup9p("author"); - d->qid.path = qpath(c, i, o->id, Qcommitauthor); + d->qid.path = qpath(c, i, o->id, Qauthor); break; default: return -1; @@ -491,18 +492,20 @@ q->type = 0; c->mtime = o->commit->mtime; c->mode = 0644; - assert(qdir == Qcommit || qdir == Qobject || qdir == Qcommittree || qdir == Qhead); + assert(qdir == Qcommit || qdir == Qobject || qdir == Qtree || qdir == Qhead || qdir == Qcommitter); if(strcmp(name, "msg") == 0) - q->path = qpath(p, 0, o->id, Qcommitmsg); + q->path = qpath(p, 0, o->id, Qmsg); else if(strcmp(name, "parent") == 0) - q->path = qpath(p, 1, o->id, Qcommitparent); + q->path = qpath(p, 1, o->id, Qparent); else if(strcmp(name, "hash") == 0) - q->path = qpath(p, 2, o->id, Qcommithash); + q->path = qpath(p, 2, o->id, Qhash); else if(strcmp(name, "author") == 0) - q->path = qpath(p, 3, o->id, Qcommitauthor); + q->path = qpath(p, 3, o->id, Qauthor); + else if(strcmp(name, "committer") == 0) + q->path = qpath(p, 3, o->id, Qcommitter); else if(strcmp(name, "tree") == 0){ q->type = QTDIR; - q->path = qpath(p, 4, o->id, Qcommittree); + q->path = qpath(p, 4, o->id, Qtree); unref(c->obj); c->mode = DMDIR | 0755; c->obj = readobject(o->commit->tree); @@ -640,14 +643,15 @@ case Qcommit: e = objwalk1(q, o->obj, o, c, name, Qcommit, aux); break; - case Qcommittree: - e = objwalk1(q, o->obj, o, c, name, Qcommittree, aux); + case Qtree: + e = objwalk1(q, o->obj, o, c, name, Qtree, aux); break; - case Qcommitparent: - case Qcommitmsg: - case Qcommitdata: - case Qcommithash: - case Qcommitauthor: + case Qparent: + case Qmsg: + case Qcdata: + case Qhash: + case Qauthor: + case Qcommitter: case Qctl: return Enodir; default: @@ -760,20 +764,24 @@ else dirread9p(r, objgen, aux); break; - case Qcommitmsg: + case Qmsg: readbuf(r, o->commit->msg, o->commit->nmsg); break; - case Qcommitparent: + case Qparent: readcommitparent(r, o); break; - case Qcommithash: + case Qhash: snprint(buf, sizeof(buf), "%H\n", o->hash); readstr(r, buf); break; - case Qcommitauthor: + case Qauthor: snprint(buf, sizeof(buf), "%s\n", o->commit->author); readstr(r, buf); break; + case Qcommitter: + snprint(buf, sizeof(buf), "%s\n", o->commit->committer); + readstr(r, buf); + break; case Qctl: e = readctl(r); break; @@ -785,8 +793,8 @@ objread(r, aux); break; case Qcommit: - case Qcommittree: - case Qcommitdata: + case Qtree: + case Qcdata: objread(r, aux); break; default: --- a/sys/src/cmd/git/import +++ b/sys/src/cmd/git/import @@ -7,9 +7,11 @@ rm -f $diffpath } +whoami + fn apply @{ git/fs - email='' + author='' name='' msg='' parents='-p'^`{git/query HEAD} @@ -27,10 +29,10 @@ state=="headers" && /^From:/ { sub(/^From:[ \t]*/, "", $0); name=$0; - email=$0; + author=$0; sub(/[ \t]*<.*$/, "", name); - sub(/.*/, "", email); + sub(/.*/, "", author); } state=="headers" && /^Date:/{ sub(/^Date:[ \t]*/, "", $0) @@ -57,10 +59,10 @@ END{ if(state != "diff") exit("malformed patch: " state); - if(name == "" || email == "" || date == "" || gotmsg == "") + if(name == "" || author == "" || date == "" || gotmsg == "") exit("missing headers"); printf "%s", name > "/env/name" - printf "%s", email > "/env/email" + printf "%s", author > "/env/author" printf "%s", date > "/env/date" } ' || die 'could not import:' $status @@ -79,7 +81,7 @@ } git/walk -fRMA $files if(~ $#nocommit 0){ - hash=`{git/save -n $name -e $email -m $msg -d $date $parents $files} + hash=`{git/save -n $name -e $author -c $email -m $msg -d $date $parents $files} echo $hash > $refpath } status='''' --- a/sys/src/cmd/git/log.c +++ b/sys/src/cmd/git/log.c @@ -153,6 +153,9 @@ tmtime(&tm, o->commit->mtime, tzload("local")); Bprint(out, "Hash:\t%H\n", o->hash); Bprint(out, "Author:\t%s\n", o->commit->author); + if(o->commit->committer != nil + && strcmp(o->commit->author, o->commit->committer) != 0) + Bprint(out, "Landed:\t%s\n", o->commit->committer); Bprint(out, "Date:\t%τ\n", tmfmt(&tm, "WW MMM D hh:mm:ss z YYYY")); Bprint(out, "\n"); p = o->commit->msg; --- a/sys/src/cmd/git/merge +++ b/sys/src/cmd/git/merge @@ -12,7 +12,7 @@ ours=$ourbr/$f base=$basebr/$f theirs=$theirbr/$f - merge1 ./$f $theirs $base $ours + merge1 ./$f $ours $base $theirs } } --- a/sys/src/cmd/git/save.c +++ b/sys/src/cmd/git/save.c @@ -299,7 +299,7 @@ void -mkcommit(Hash *c, char *msg, char *name, char *email, vlong date, Hash *parents, int nparents, Hash tree) +mkcommit(Hash *c, char *msg, char *name, char *email, char *comitter, vlong date, Hash *parents, int nparents, Hash tree) { char *s, h[64]; int ns, nh, i; @@ -310,7 +310,7 @@ for(i = 0; i < nparents; i++) fmtprint(&f, "parent %H\n", parents[i]); fmtprint(&f, "author %s <%s> %lld +0000\n", name, email, date); - fmtprint(&f, "committer %s <%s> %lld +0000\n", name, email, date); + fmtprint(&f, "committer %s <%s> %lld +0000\n", name, comitter, date); fmtprint(&f, "\n"); fmtprint(&f, "%s", msg); s = fmtstrflush(&f); @@ -347,7 +347,7 @@ main(int argc, char **argv) { Hash th, ch, parents[Maxparents]; - char *msg, *name, *email, *dstr, cwd[1024]; + char *msg, *name, *email, *committer, *dstr, cwd[1024]; int i, r, ncwd, nparents; vlong date; Object *t; @@ -360,6 +360,7 @@ msg = nil; name = nil; email = nil; + committer = nil; dstr = nil; date = time(nil); nparents = 0; @@ -366,10 +367,11 @@ ncwd = strlen(cwd); ARGBEGIN{ - case 'm': msg = EARGF(usage()); break; - case 'n': name = EARGF(usage()); break; - case 'e': email = EARGF(usage()); break; - case 'd': dstr = EARGF(usage()); break; + case 'm': msg = EARGF(usage()); break; + case 'n': name = EARGF(usage()); break; + case 'e': email = EARGF(usage()); break; + case 'c': committer = EARGF(usage()); break; + case 'd': dstr = EARGF(usage()); break; case 'p': if(nparents >= Maxparents) sysfatal("too many parents"); @@ -386,6 +388,8 @@ sysfatal("missing name"); if(!email) sysfatal("missing email"); + if(!committer) + committer = email; if(dstr){ date=strtoll(dstr, &dstr, 10); if(strlen(dstr) != 0) @@ -405,7 +409,7 @@ r = treeify(t, argv, argv + argc, 0, &th); if(r == -1) sysfatal("could not commit: %r\n"); - mkcommit(&ch, msg, name, email, date, parents, nparents, th); + mkcommit(&ch, msg, name, email, committer, date, parents, nparents, th); print("%H\n", ch); exits(nil); } From 9front-bounces@1ess.inri.net Tue Aug 24 22:55:53 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17OMtqLC006405 for ; Tue, 24 Aug 2021 22:55:53 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 1ess; Tue Aug 24 18:01:35 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id adcd1603 (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9front@9front.org>; Tue, 24 Aug 2021 14:34:45 -0700 (PDT) Message-ID: <9155B28D30131B29945A1822EEC99D90@eigenstate.org> To: 9front@9front.org Date: Tue, 24 Aug 2021 17:34:43 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: advanced virtualized app-scale rich-client grid event Subject: Re: [9front] Re: man pages Reply-To: 9front@9front.org Precedence: bulk Quoth Stuart Morrow : > I was referring to the first post in the thread, with the 12K attachment. > > Those diffs were at that time already a month old and ignored. > Thanks for pinging. So, lots of these look like some bike-shedding for the sake of bike-shedding, without really improving the quality of the documentation. For example, is 'foreign-character-set' really an improvement over 'foreign character-set'? Is character-set an improvement over character set? I think both changes are worse. On the other hand, there are actual fixes for omissions, like: -.B "newdev {low|full|high} \fIport\fP +.B "newdev {low|full|high|super} \fIport\fP and styling issues like: -.I str , +.IR str , If I could have this without the bikeshedding, that would have been ideal. Anyways, I think qwx is looking at this patch, so I'll let them handle it. From 9front-bounces@1ess.inri.net Tue Aug 24 22:56:35 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17OMuY5E024560 for ; Tue, 24 Aug 2021 22:56:34 GMT Received: from duke.felloff.net ([216.126.196.34]) by 1ess; Tue Aug 24 18:14:07 -0400 2021 Message-ID: Date: Wed, 25 Aug 2021 00:13:56 +0200 From: cinap_lenrek@felloff.net To: 9front@9front.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: service session manager Subject: Re: [9front] git: separate author and committer Reply-To: 9front@9front.org Precedence: bulk looks good. -- cinap From 9front-bounces@1ess.inri.net Tue Aug 24 23:14:18 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17ONEHHA014195 for ; Tue, 24 Aug 2021 23:14:17 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 1ess; Tue Aug 24 19:01:51 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id e0fcd5e8 (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9front@9front.org>; Tue, 24 Aug 2021 16:01:35 -0700 (PDT) Message-ID: <4BE859C83546EA13A46F9ACEF135720D@eigenstate.org> To: 9front@9front.org Date: Tue, 24 Aug 2021 19:01:33 -0400 From: ori@eigenstate.org In-Reply-To: <20210824174745.48c6aa87@spruce.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: hardware interface realtime-aware STM controller Subject: Re: [9front] [PATCH] cmd/mkfile: major cleanup Reply-To: 9front@9front.org Precedence: bulk Quoth Amavect : > I'm pinging this patch again, wondering if there is interest. > > Thanks > Amavect Thanks for the ping -- it looks fine with a quick skim, and I'll try to look closer in the next few days. From 9front-bounces@1ess.inri.net Tue Aug 24 23:55:09 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17ONt8ka012886 for ; Tue, 24 Aug 2021 23:55:08 GMT Received: from mail-ed1-f47.google.com ([209.85.208.47]) by 1ess; Tue Aug 24 19:47:48 -0400 2021 Received: by mail-ed1-f47.google.com with SMTP id q3so34226165edt.5 for <9front@9front.org>; Tue, 24 Aug 2021 16:47:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=8sNtNVEZszsjQMi7rAgwsgxQVnVyW+JnQpeCP76DqWY=; b=psUt5SsrFtKeBT2usaLor+KtTWE8PYNdl1SGk1sXOMhBbV9o+W+5Hn3Z6o7ADF7mnX G2E2/73ms8ZFxKUrJ9k8Q/HOS/AX7/coaG4hd1DDOQX7f8EtK5+Xgsu6IjLMtrMh/+VM dVZiDLdoe4PjDRgwn9ZTrQYrDUExRKldT48IrYbKxslD2MYEkNcIuyugUXU+DuDjrLwl UQndXhweXXSlpY316lbFkUVz89ZpeeMLAdJot6aFbV/m72lK2obpi/Kdv6SXOjc674Cv Rln1LYJgNIyKTBf4PvtVbNQSZDbxmuMUmtgXduDTKMaeI7/mxOqPHpOB9KEBBk5/s+YR gX8Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=8sNtNVEZszsjQMi7rAgwsgxQVnVyW+JnQpeCP76DqWY=; b=ed2Mp6Qd2zNAAAc4SHa3JaktO4YHR1cHVxcPlA51dXmFcsxRAgYGdc1g2ocvcrG6Ag TlPr7pYsH3yJTsxy9pJIqbD4njPMegGgaWSk8tnA3vJmyNulz2pcn9RmU/p0cZ/pDzI7 1RgvQfQ0bf/beQbAief3hwLHgjdwulZbZQB9ey2WRf5UY+ciH2RGauKRvHyv3QUMdIQd tzW7eE2lFhDifq78bTR3E2e9v8S+Qk5iYZIOCSWUh6zRcgNWPDAnFpOyHNT6iKatGnp9 vkTXIJeHFAPAxm9vzFMtTq6Ps/nAYO/eMsNZaF/ArmRsmnC42miSHkusde6AFY6Yn0K6 QxlA== X-Gm-Message-State: AOAM533wJgpt7noTQy9YJHctlsPtojKZ8tTZI35ynK1sf/gre44JSImx eWdqYYnj8Rxvo9hdVd4fA6WlERq/L9lWL5rV8k3o+i67zLKsEg== X-Google-Smtp-Source: ABdhPJwBlJ1SHKv4CZsSPC4BR1ZqNIYM0ugEO1s6kk+8ZJNGQZL4ZWmXWvRZ4I5l5NrRlqfwEMwLg5/dVqcDgjgvuuk= X-Received: by 2002:a2e:a4d5:: with SMTP id p21mr9665937ljm.29.1629848527426; Tue, 24 Aug 2021 16:42:07 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a2e:80c9:0:0:0:0:0 with HTTP; Tue, 24 Aug 2021 16:42:06 -0700 (PDT) In-Reply-To: <9155B28D30131B29945A1822EEC99D90@eigenstate.org> References: <9155B28D30131B29945A1822EEC99D90@eigenstate.org> From: Stuart Morrow Date: Wed, 25 Aug 2021 00:42:06 +0100 Message-ID: To: 9front@9front.org Content-Type: text/plain; charset="UTF-8" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: app ACPI rails storage framework Subject: Re: [9front] Re: man pages Reply-To: 9front@9front.org Precedence: bulk > So, lots of these look like some bike-shedding > for the sake of bike-shedding, without really > improving the quality of the documentation. > > For example, is 'foreign-character-set' really > an improvement over 'foreign character-set'? > Is character-set an improvement over character set? There's no way I can respond to this without it being further bikeshedding. From 9front-bounces@1ess.inri.net Wed Aug 25 01:24:55 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17P1Os1I016410 for ; Wed, 25 Aug 2021 01:24:55 GMT Received: from mail-lf1-f50.google.com ([209.85.167.50]) by 1ess; Tue Aug 24 14:24:41 -0400 2021 Received: by mail-lf1-f50.google.com with SMTP id b4so3311200lfo.13 for <9front@9front.org>; Tue, 24 Aug 2021 11:24:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=cyiNsK95pr5wFI8JxOLWHhMBU+GzYUN0hfsHyh5Kz7E=; b=j9O5tbkucklVqobl6D4KVlKFk9kk/sG9kKwEPKCoxssRNcQGLucV/VOdfBebicgQHN eDqj/LY7jhDawCj24pqxayaKNu+BvWEDiT5XFPbA+MsXsKzUQk7QzEdG0VWHP/R5Y3bs OPasXTvuC2lEBO8I6IdpUzsUjkLGaMZjofFxzAxA5y5Ou5/3YCpcwmTxFvQZYk1CBRvh PixI2OQfQI9VMwcPAaidO7Yknq1DxV3s9Q5NGFZybiLEDjanJQSpgoM6F+g+RTGa3BXr jMXzyG5nV3fyOMA89Xmpq0RkMlsB4tlvtGMvGHvflK8ZC3HmWhIg3EMZugDNIRnUYzyY sClw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=cyiNsK95pr5wFI8JxOLWHhMBU+GzYUN0hfsHyh5Kz7E=; b=tP3XjubNR6mTculle7a2xLY26ehWy7IJONkyq9pwn8C7kVsVsl+KOKYfJVDkmQZ8+/ opF6nxSrAkmKuexTn5oF3bAMCYrNtZ1jU56vntKVwVDjY9GGCo4YUQ0KExjKTU1h2JOk Zky9JdCd8NVihxYhfUmUviMysazFvoOS/F8ys4jjUMWAQPNTuJCV5VOMm/3J72hcOApX 0ZXvRiK+K712ajXER0U78cOSYyfp4iugGpl1EE5kDWfdKE08YO5jJR2bdj/i1vbAUIpC 4Y4QQ0RlUiM6NDd1B9hk765k/lXxHZ89xXUD4C5RTHzrVrG05KKYUsDQJsi6dP+RZbk0 LtqQ== X-Gm-Message-State: AOAM5334jobHlyKcmzbZV51lFa6nJdMz6ERAnOuSCL0eFOUkbrGc/EfU DN1uxZAefZT7n3hGgRHiFlakj656sPJ/Lg78YYN+ra0waoLCMA== X-Google-Smtp-Source: ABdhPJxAbTTwbCYNboKq0xLfRVwqvGVnUfiqHSVK4q29G/hewjsT4jS4QyJd4PlxzOWxapGN8w+WzlxN+9yZ1zlgwKI= X-Received: by 2002:a05:6512:e83:: with SMTP id bi3mr20151971lfb.10.1629825669109; Tue, 24 Aug 2021 10:21:09 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a2e:80c9:0:0:0:0:0 with HTTP; Tue, 24 Aug 2021 10:21:08 -0700 (PDT) In-Reply-To: References: From: Stuart Morrow Date: Tue, 24 Aug 2021 18:21:08 +0100 Message-ID: To: 9front@9front.org Content-Type: text/plain; charset="UTF-8" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: extended pipelining persistence shader Subject: [9front] Re: man pages Reply-To: 9front@9front.org Precedence: bulk Once again I am asking for your support On 14/08/2021, Stuart Morrow wrote: > 'UTF' appears in small caps throughout the manual, so this makes > uhtml(1) consistent. It's relative to the uhtml earlier in this > thread. > > diffy /sys/man/1/uhtml > 24c24,26 > < to convert it to UTF replacing HTML-entity forms > --- >> to convert it to >> .SM UTF >> replacing HTML-entity forms > From 9front-bounces@1ess.inri.net Wed Aug 25 01:29:14 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (th.inri.net [216.126.196.42] (may be forged)) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17P1TDvE024610 for ; Wed, 25 Aug 2021 01:29:14 GMT Received: from mail-lj1-f182.google.com ([209.85.208.182]) by 1ess; Tue Aug 24 20:34:13 -0400 2021 Received: by mail-lj1-f182.google.com with SMTP id m4so5835446ljq.8 for <9front@9front.org>; Tue, 24 Aug 2021 17:34:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=CbyxGaHp4WIxZN0NVeaBbQhMl4+9vYxSZUcCjWYoKS8=; b=GOIQRRbWh4sbbCtPPOAkZRIdt1bgPxWtaJB8sjJOzYwo4rPpcNhmIPMVTj3jLgRTMK E08UX0ZihoGxOyBfU/91PTQsyjeVmkn2LVJdCg1qL3BwfME6oJ8ZbucbGShVmGwePNcm HPepT6zvz9gKl40ZhCClPMQ2tR6+DjLmVrXxLbnhPTa+Wvfur1/b2oqxBslQSKmf+nlj C2qu98OEHxjpErYJL9Kema3PYvMlBlfMLt3tCBMFdXLE0EnEwAVhgQU1xaJHSFlK/Bh5 scavN9+VQHM0GKWa87OAADJdBz0EgXxq0drw/tarOK1uOMrnDOgo7STZfH9oYyUVZPNl MQkA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=CbyxGaHp4WIxZN0NVeaBbQhMl4+9vYxSZUcCjWYoKS8=; b=QA3Ln2+Y33VnBNmEjyCxokaYUaq8OJLP0P5G93zP8cLEqGcxXhoE+u+6NeNswrpM1I kGr/rhslk9bGXdfeJwYo7TeQ7aaVWsh9oDEKpiwmILkfZCE4lMXk42kZrd9Q29sKRnIf RsowVZDWDgktkejo5rmmUDVW6mrOSxP0p+VZw09jKdYKGgpso5pa+6qDmb6GiXAGijJ0 mRLggXFWSBOntmUuz8t6O5QGhFAu2jNZa50ZoinrG9PFa8Nn02iD+yNSj5uVz5tjUesj 6hS+6j86vCetk7Lmta6smawtgNXDryObD8TJKrQmKynelGFs3A4lDqFjUA/peRk3nQBm GDjg== X-Gm-Message-State: AOAM5317MyhGodzOutBkhpucZA31LCqpBsF1kTVAMdrvyVNg7GaAJSpU yl0caU/jKgqreWL0EgtMCxo/cJ3HInnURttf9W3SuDAHVsbsFw== X-Google-Smtp-Source: ABdhPJyiOlNeoiAc0ET03wjwwpnwTbb1sxtOS/KXueoFIEPCpfPBfL4P+Ag1R4Q97iJjHOXo+nvX9p6I4B7e1ENMxwY= X-Received: by 2002:a2e:a4d5:: with SMTP id p21mr9317412ljm.29.1629840790077; Tue, 24 Aug 2021 14:33:10 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a2e:80c9:0:0:0:0:0 with HTTP; Tue, 24 Aug 2021 14:33:09 -0700 (PDT) In-Reply-To: References: From: Stuart Morrow Date: Tue, 24 Aug 2021 22:33:09 +0100 Message-ID: To: 9front@9front.org Content-Type: text/plain; charset="UTF-8" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: flexible dependency-based method component-aware app Subject: Re: [9front] Re: man pages Reply-To: 9front@9front.org Precedence: bulk http://okturing.com/src/11943/body From 9front-bounces@1ess.inri.net Wed Aug 25 01:30:15 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17P1UEGi013842 for ; Wed, 25 Aug 2021 01:30:14 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 1ess; Tue Aug 24 21:02:53 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id f8d306f1 (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9front@9front.org>; Tue, 24 Aug 2021 18:02:42 -0700 (PDT) Message-ID: <85BA2565A17D5AD63E417AFF484D4097@eigenstate.org> To: 9front@9front.org Date: Tue, 24 Aug 2021 21:02:40 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: structured stateless information CSS just-in-time blockchain package Subject: Re: [9front] Re: man pages Reply-To: 9front@9front.org Precedence: bulk Quoth Stuart Morrow : > > So, lots of these look like some bike-shedding > > for the sake of bike-shedding, without really > > improving the quality of the documentation. > > > > For example, is 'foreign-character-set' really > > an improvement over 'foreign character-set'? > > Is character-set an improvement over character set? > > There's no way I can respond to this without it being further bikeshedding. Sure. It'd be helpful to separate incorrect formatting from wording tweaks, if you're willing to go to that effort. And, thanks for sending in the fixes. From 9front-bounces@1ess.inri.net Wed Aug 25 01:40:10 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (th.inri.net [216.126.196.42] (may be forged)) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17P1eAct013337 for ; Wed, 25 Aug 2021 01:40:10 GMT Received: from mail-io1-f52.google.com ([209.85.166.52]) by 1ess; Tue Aug 24 18:48:04 -0400 2021 Received: by mail-io1-f52.google.com with SMTP id a13so28349954iol.5 for <9front@9front.org>; Tue, 24 Aug 2021 15:47:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:subject:message-id:organization:mime-version; bh=ME612HjEJnConskMUVo+2cforOEZ62vV6ZJbfgnu50U=; b=rOfLxVJNThl4sPGJXoScZi/eJIq2AoE6uRJjroGQB7yDOiwQpGT6yl4Wvfzbaifw4h nLHjUqK54o4daVwuC0++HY0/xq7nekX39kxDwQml602iGPRH27ZQtBA3/+DjWkPENnl0 Rr3dPbBX1oTOoYJ40Pu0MNHasbzgkuJLTdy8c2fVNbZDNYMbQHtn6R5To4OShcIiQ/Yz W0oChdm+eFWXG1bmgilUopuovZxHfTdQCk+qoZm9E/pl2lLJds67aUtT7nFuB5EOcWPv XY79VUjF7hCKk+1Nr5mM2QTskWZQf0LoNlNMwPz9mWamnpo9j1R25xYYjx2Eo7Lc9amE dKrg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:subject:message-id:organization :mime-version; bh=ME612HjEJnConskMUVo+2cforOEZ62vV6ZJbfgnu50U=; b=NoPt5gbFiy7U9J4cdhJuJpcBhNUlXn0kdGfkZGm+gyPfyAHKRtrjuxeuHcfkNx4Xxp CuqTfyzx8bNgmMLseNhB7uGyDZfEHAWNH8fCPZ8UoarAw/NpXjZOI8hDUJaB3burOvJI KU1zB6DLsu6G8auqSX7RG15794R3BpP4kDDiytxXqPo+cgDY0/AA9rNd96OgH2uc71ot fo2/WuORkIoXJjeRQq9b2r+43uiQvwWQSzYWjKM+RCpfQbwSKAcYZwFBLWYyioMHxIE8 qW3kXW8VlyaAtatlEGYsQYwEXNa1JaghxTC26Zv6O7FR3tlZzz8dtg0MJFh5inRpyVjd vrHQ== X-Gm-Message-State: AOAM530nsp5RpkxGL+mcRHxDHrvSJvLj1IhmM6gx30dMZkvnc0lrTH24 lXzRXbmlEntFml/VH+q9962iMZ3MHuw= X-Google-Smtp-Source: ABdhPJzi1TThrd28eRoFA4tfKW8694S4Wrf+ZCbVP3gcusABnzO07FZqhcngo8JRYbVQdJ9yvMCBlg== X-Received: by 2002:a05:6638:328d:: with SMTP id f13mr7758521jav.105.1629845275122; Tue, 24 Aug 2021 15:47:55 -0700 (PDT) Received: from spruce.localdomain ([2601:246:4e03:dc20::b5e8]) by smtp.gmail.com with ESMTPSA id t15sm3345001ioi.7.2021.08.24.15.47.54 for <9front@9front.org> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 24 Aug 2021 15:47:54 -0700 (PDT) Date: Tue, 24 Aug 2021 17:47:45 -0500 From: Amavect To: 9front@9front.org Message-ID: <20210824174745.48c6aa87@spruce.localdomain> Organization: Amavect Industries X-Mailer: Claws Mail 4.0.0 (GTK+ 3.24.30; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/5tSDZuTMP/.3MI8GyNKLnX/" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: immutable content-driven-aware realtime singleton session-scale out-scaling plugin Subject: [9front] [PATCH] cmd/mkfile: major cleanup Reply-To: 9front@9front.org Precedence: bulk --MP_/5tSDZuTMP/.3MI8GyNKLnX/ Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline I'm pinging this patch again, wondering if there is interest. Thanks Amavect From: Amavect Date: Sat, 21 Aug 2021 18:41:01 +0000 Subject: [PATCH] cmd/mkfile: major cleanup Target generation is revised, split into $YTARG and $TARG. $PROGS is inlined to the cmd target. %.cpus is added to allow chaining: mk all.cpus $POWERLESS is added, since dtracy doesn't build yet on ppc. $cpuobjtype is replaced with cp's recipe for copying itself on $cputype. $APEDIRS is removed. The none target is renamed to usage, since it prints out usage. The ape target is removed. The dirs target is replaced by all.dirs %.directories is replaced by %.dirs The all target serializes directories after cmds to match the install target recipe. All regexp rules are replaced with nonregexp versions for clarity. The &:n: rule is removed. Just build the $O.$cmd file. .y files now build .c files, not .tab.c files, and remove (bc|units|mpc|pc).c:R: All safeinstall rules are removed. The cleanfiles rule is renamed to cleancmds and simplified. %.clean is removed. Just use mk cleancmds. The install rule serializes cp and yacc before building anything else, avoiding races. The installall recipe is simplified with the install.cpus prereq. %.installall is removed. Just use mk $cmd.install.cpus The $O.cj, %.update, and compilers rules are removed. --- diff 8c796bf8b9c10a0845717c47af908e47dfe14482 0e7549936b6b628ff6d1600628726f316d5301d2 --- a/sys/src/cmd/mkfile Thu Aug 19 23:07:37 2021 +++ b/sys/src/cmd/mkfile Sat Aug 21 13:41:01 2021 @@ -1,137 +1,75 @@ $target -$BIN/%: $O.% $cpuobjtype._cp - ./$cpuobjtype._cp $O.$stem $BIN/$stem +%.cpus:V: + for(objtype in $CPUS) mk $MKFLAGS $stem -%.directories:V: +%.dirs:V: for(i in $DIRS) @{ cd $i echo mk $i mk $MKFLAGS $stem } -clean:V: cleanfiles clean.directories - -nuke:V: cleanfiles nuke.directories - -directories:V: install.directories +cmds:V: $O.cp $O.yacc ${TARG:%=$O.%} -cleanfiles:V: - rm -f [$OS].out *.[$OS] y.tab.? y.debug y.output [$OS].$TARG [$OS].units.tab $TARG bc.c bc.tab.h units.tab.h units.c mpc.c mpc.tab.h [$OS]._cp +all:V: cmds + mk $MKFLAGS all.dirs -%.clean:V: - rm -f [$OS].$stem $stem.[$OS] +%.install:V: $BIN/% -install:V: - test -e $cpuobjtype._cp || cp /bin/cp $cpuobjtype._cp +install:V: cp.install + mk $MKFLAGS yacc.install mk $MKFLAGS $TARG.install - mk $MKFLAGS directories - -installall:V: - for(objtype in $CPUS) - mk $MKFLAGS install - -%.installall: %.c - test -e $cpuobjtype._cp || cp /bin/cp $cpuobjtype._cp - for (objtype in $CPUS) { - rfork e - mk $stem.install & - } - wait - rm -f $stem.[$OS] y.tab.? $stem.tab.? y.debug y.output [$OS].$stem bc.c bc.tab.h units.c mpc.c - -%.acid: %.$O $HFILES - $CC $CFLAGS -a $stem.c >$target + mk $MKFLAGS install.dirs -(bc|units|mpc|pc).c:R: \1.tab.c - mv $stem1.tab.c $stem1.c +installall:V: install.cpus -$BIN/init: $O.init - cp $prereq /$objtype/init +cleancmds:V: + rm -f *.[$OS] [$OS].* y.tab.? y.debug y.output $YTARG.c *.tab.h -$O.cj: cj.$O - $LD $LDFLAGS -o $O.cj cj.$O /$objtype/lib/libjpg.a +clean:V: cleancmds clean.dirs -%.update:V: - update $stem.c /386/bin/$stem - -compilers:V: - for(i in ?c) - if(! ~ $i cc rc) @{ - cd $i - mk clean - objtype=$cputype mk install - mk clean - } - for(i in ?c) - if(! ~ $i cc rc) @{ - cd $i - mk clean - mk installall - mk clean - } +nuke:V: cleancmds nuke.dirs + rm -f *.acid --MP_/5tSDZuTMP/.3MI8GyNKLnX/ Content-Type: multipart/mixed; boundary="upas-zclqojyulvuwpsswdmgffkqcwz" Content-Disposition: inline This is a multi-part message in MIME format. --upas-zclqojyulvuwpsswdmgffkqcwz Content-Disposition: inline Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit from postmaster@1ess: The following attachment had content that we can't prove to be harmless. To avoid possible automatic execution, we changed the content headers. The original header was: Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=cmdmkfile.diff --upas-zclqojyulvuwpsswdmgffkqcwz Content-Type: application/octet-stream Content-Disposition: attachment; filename="cmdmkfile.diff.suspect" From: Amavect Date: Sat, 21 Aug 2021 18:41:01 +0000 Subject: [PATCH] cmd/mkfile: major cleanup Target generation is revised, split into $YTARG and $TARG. $PROGS is inlined to the cmd target. %.cpus is added to allow chaining: mk all.cpus $POWERLESS is added, since dtracy doesn't build yet on ppc. $cpuobjtype is replaced with cp's recipe for copying itself on $cputype. $APEDIRS is removed. The none target is renamed to usage, since it prints out usage. The ape target is removed. The dirs target is replaced by all.dirs %.directories is replaced by %.dirs The all target serializes directories after cmds to match the install target recipe. All regexp rules are replaced with nonregexp versions for clarity. The &:n: rule is removed. Just build the $O.$cmd file. .y files now build .c files, not .tab.c files, and remove (bc|units|mpc|pc).c:R: All safeinstall rules are removed. The cleanfiles rule is renamed to cleancmds and simplified. %.clean is removed. Just use mk cleancmds. The install rule serializes cp and yacc before building anything else, avoiding races. The installall recipe is simplified with the install.cpus prereq. %.installall is removed. Just use mk $cmd.install.cpus The $O.cj, %.update, and compilers rules are removed. --- diff 8c796bf8b9c10a0845717c47af908e47dfe14482 0e7549936b6b628ff6d1600628726f316d5301d2 --- a/sys/src/cmd/mkfile Thu Aug 19 23:07:37 2021 +++ b/sys/src/cmd/mkfile Sat Aug 21 13:41:01 2021 @@ -1,137 +1,75 @@ $target -$BIN/%: $O.% $cpuobjtype._cp - ./$cpuobjtype._cp $O.$stem $BIN/$stem +%.cpus:V: + for(objtype in $CPUS) mk $MKFLAGS $stem -%.directories:V: +%.dirs:V: for(i in $DIRS) @{ cd $i echo mk $i mk $MKFLAGS $stem } -clean:V: cleanfiles clean.directories - -nuke:V: cleanfiles nuke.directories - -directories:V: install.directories +cmds:V: $O.cp $O.yacc ${TARG:%=$O.%} -cleanfiles:V: - rm -f [$OS].out *.[$OS] y.tab.? y.debug y.output [$OS].$TARG [$OS].units.tab $TARG bc.c bc.tab.h units.tab.h units.c mpc.c mpc.tab.h [$OS]._cp +all:V: cmds + mk $MKFLAGS all.dirs -%.clean:V: - rm -f [$OS].$stem $stem.[$OS] +%.install:V: $BIN/% -install:V: - test -e $cpuobjtype._cp || cp /bin/cp $cpuobjtype._cp +install:V: cp.install + mk $MKFLAGS yacc.install mk $MKFLAGS $TARG.install - mk $MKFLAGS directories - -installall:V: - for(objtype in $CPUS) - mk $MKFLAGS install - -%.installall: %.c - test -e $cpuobjtype._cp || cp /bin/cp $cpuobjtype._cp - for (objtype in $CPUS) { - rfork e - mk $stem.install & - } - wait - rm -f $stem.[$OS] y.tab.? $stem.tab.? y.debug y.output [$OS].$stem bc.c bc.tab.h units.c mpc.c - -%.acid: %.$O $HFILES - $CC $CFLAGS -a $stem.c >$target + mk $MKFLAGS install.dirs -(bc|units|mpc|pc).c:R: \1.tab.c - mv $stem1.tab.c $stem1.c +installall:V: install.cpus -$BIN/init: $O.init - cp $prereq /$objtype/init +cleancmds:V: + rm -f *.[$OS] [$OS].* y.tab.? y.debug y.output $YTARG.c *.tab.h -$O.cj: cj.$O - $LD $LDFLAGS -o $O.cj cj.$O /$objtype/lib/libjpg.a +clean:V: cleancmds clean.dirs -%.update:V: - update $stem.c /386/bin/$stem - -compilers:V: - for(i in ?c) - if(! ~ $i cc rc) @{ - cd $i - mk clean - objtype=$cputype mk install - mk clean - } - for(i in ?c) - if(! ~ $i cc rc) @{ - cd $i - mk clean - mk installall - mk clean - } +nuke:V: cleancmds nuke.dirs + rm -f *.acid --upas-zclqojyulvuwpsswdmgffkqcwz-- --MP_/5tSDZuTMP/.3MI8GyNKLnX/-- From 9front-bounces@1ess.inri.net Wed Aug 25 02:53:43 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17P2rgZL028897 for ; Wed, 25 Aug 2021 02:53:42 GMT Received: from 5ess.inri.net ([107.191.111.177]) by 4ess; Tue Aug 24 22:45:02 -0400 2021 Received: from smtpclient.apple ([107.207.65.229]) by 5ess; Tue Aug 24 22:25:35 -0400 2021 Content-Type: text/plain; charset=utf-8 From: Stanley Lieber Mime-Version: 1.0 (1.0) Date: Tue, 24 Aug 2021 22:25:32 -0400 Message-Id: <2ED04A36-4C08-4F80-9392-BC259C327282@stanleylieber.com> To: 9front@9front.org X-Mailer: iPad Mail (18G69) List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: ISO-certified shared session-scale rails-aware generator Subject: [9front] =?utf-8?Q?9front/cat-v_mailing_lists:_if_you=E2=80=99re_see_this?= =?utf-8?Q?,_it_worked?= Reply-To: 9front@9front.org Precedence: bulk Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17P2rgZL028897 achtung mail is now being processed by a different machine sharing the file system with the original machine. let’s hope this transition goes smoothly. sl From 9front-bounces@1ess.inri.net Wed Aug 25 08:52:13 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17P8qC8I026094 for ; Wed, 25 Aug 2021 08:52:13 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 4ess; Wed Aug 25 04:46:09 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id 92334e7a (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9front@9front.org>; Tue, 24 Aug 2021 20:18:51 -0700 (PDT) Message-ID: To: 9front@9front.org Date: Tue, 24 Aug 2021 23:18:49 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: immutable responsive service high-performance cloud Subject: Re: [9front] Re: man pages Reply-To: 9front@9front.org Precedence: bulk Quoth Humm : > > I'm sure there are all of sorts of inconsistencies all over the > > place, but expecting anyone to review and fix everything at once is > > too much, it won't happen. > > Oh yes, there are. What comes to mind immediately is citation style > and handling of options in SYNOPSIS (sometimes all are listed and > sometimes there is just “[options]”), as well as just bad troff. > There are some checks for bad stuff (see for example `mk punccheck` in > /sys/man). yes, for sure. it helps me out if I get patches that focus on one kind of issue: I have to keep less in mind when reviewing, and format fixes are going to get less debate than phrasing changes; I like it when I can land fixes immediately. From 9front-bounces@1ess.inri.net Wed Aug 25 09:04:11 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17P94AUG009950 for ; Wed, 25 Aug 2021 09:04:10 GMT Received: from duke.felloff.net ([216.126.196.34]) by 4ess; Wed Aug 25 04:41:40 -0400 2021 Message-ID: Date: Wed, 25 Aug 2021 10:41:29 +0200 From: cinap_lenrek@felloff.net To: 9front@9front.org MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: extended self-healing pipelining descriptor-oriented layer Subject: [9front] test Reply-To: 9front@9front.org Precedence: bulk test -- cinap From 9front-bounces@1ess.inri.net Wed Aug 25 09:22:10 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (th.inri.net [216.126.196.42] (may be forged)) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17P9M92K013060 for ; Wed, 25 Aug 2021 09:22:09 GMT Received: from mail-lf1-f45.google.com ([209.85.167.45]) by 4ess; Wed Aug 25 05:12:06 -0400 2021 Received: by mail-lf1-f45.google.com with SMTP id r9so51506106lfn.3 for <9front@9front.org>; Wed, 25 Aug 2021 02:11:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:subject:in-reply-to:references:message-id:mime-version :content-transfer-encoding; bh=58ib4Pu5FYV1tTMi8PayIXRMZpP4wzGXMsfcWTjSMKM=; b=dsRGmx8OMmOGcPUASFkH4vVpRnqPPzZMkTQNFrzDiSquAodRf3kgUZkCuFNUD61nM8 5O4ugyQgtuUxOtsBcfZyAOThih9JIfQFtoy0UZppZ8ZmVxiHx22j8Yuf1of6LDyIav3V aH7dWafx1WLpEcbVx7bs6Z+trelcVWQVyFsQ7v5uZVF75ca1cPrfWDEuTJij2rTnkKZL QmjWeBrk5+0T748y0u22NtzQWAfaVKwT8jsZ4ieLXX2i2qnndvxN1d/jI6WTaGF1cAsN GIOzBHRYuXJnGpaKuKeeqHbx83nlCU8H+QWuK6sUNR1SlEHd7IllBAGt541pDU6gjriR R4Gw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:subject:in-reply-to:references :message-id:mime-version:content-transfer-encoding; bh=58ib4Pu5FYV1tTMi8PayIXRMZpP4wzGXMsfcWTjSMKM=; b=RViLE8K5A3mSMbkJh8KmIgL0mmP6j0+ZzMvQZWMtrm0bOQ1p6ObencBnW9Dc1sU7PI DtM+LV/HX8CK1ojdsj5QdocNAQL+o+L5Ua1Mfzhb8RhF72EoyUAPKQKeDR8mxDTazudp f0VU22M1baJi/ZL1MqgcaHSgKudltDvlt22C6AfIIA/5tow2NarXstbwecgeuk9DEdmD gCoX+0LzjOi2B0wnF2/H3cFrUfaOs2aKZ4SN9w7X7F+aGuVOSZECuI1tZIzRlUa/3LoP Toc5A0vjcqPYMrjFXT21uiL8pM3De1G0Vdb01OWqq4wcq3SZ0/R+P2RErsWUvTDzRlOW +mKA== X-Gm-Message-State: AOAM533qcMzhYmcpVn1tduGFJtd15jW863owal/XzP9JJx23W683yMb4 U8ymQlt5mXqIgOL4Jb+9S+H9TE0wknU= X-Google-Smtp-Source: ABdhPJxbj7rhK0dNLRXaps5zxgsELGaQEIC87poP35cNjdsUeFahFVLKdhbp6rj+tW5jUsOyN/Wekw== X-Received: by 2002:ac2:4e45:: with SMTP id f5mr28686574lfr.628.1629882717357; Wed, 25 Aug 2021 02:11:57 -0700 (PDT) Received: from [127.0.0.1] ([188.170.80.83]) by smtp.gmail.com with ESMTPSA id r3sm2019640lfc.114.2021.08.25.02.11.56 for <9front@9front.org> (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 25 Aug 2021 02:11:57 -0700 (PDT) Date: Wed, 25 Aug 2021 09:11:54 +0000 From: Pavel Renev To: 9front@9front.org In-Reply-To: References: Message-ID: <9FEE3675-60AB-48D2-9233-845C7BC0B88A@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: abstract shader descriptor-based standard Subject: Re: [9front] test Reply-To: 9front@9front.org Precedence: bulk Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17P9M92K013060 Also test. From 9front-bounces@1ess.inri.net Wed Aug 25 09:47:22 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (th.inri.net [216.126.196.42] (may be forged)) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17P9lMKC012794 for ; Wed, 25 Aug 2021 09:47:22 GMT Received: from mail-pg1-f171.google.com ([209.85.215.171]) by 4ess; Wed Aug 25 05:37:31 -0400 2021 Received: by mail-pg1-f171.google.com with SMTP id r2so22499991pgl.10 for <9front@9front.org>; Wed, 25 Aug 2021 02:37:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-transfer-encoding; bh=UKgVmPAa0YGK8gRVGOi8OvXyvfnX5QR+JhJOd4U0Ycg=; b=V/p8GH2yUT4YRZCVVkinXSZFIKrPIaWC9vchImSZDf2ZvaaLwxybPbcr06WPtnhU8t 8gfuc9VetkdZRKZnChl7bXM/A9mzgDRA0b/pkxiPR4/OBD+6VhSRZQK/HbivAl6o9JGI jnJEMPifCjVH6g5eZrGCGbFb4MIKRU+RkFGSmW8paMfla+jHpG5ipvZVTebttU9ZQrWA ARmcBVIAs6XHu9AeeRv/kbhJzB807wv90HLvlNFjTyGrLrlCVAmnltj4g4TFhPngY7NW 43GOGkeK4m91kKSs4ore4PQi/Jc0eg02TXbtekdUuwVQjliuDmVuqrlUVQXsx6x3kt1U 6hXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:content-transfer-encoding; bh=UKgVmPAa0YGK8gRVGOi8OvXyvfnX5QR+JhJOd4U0Ycg=; b=m7n+iV7khEG9Y6EWhVDZSU22O865NFSGZ0q+Pe+b9LrfwOc0FR12o5NeSCNihwsJMe G+BFy+YX23UdDLMsmQnIDjwMlL9MOYW+4Yp2pT7XqRDh0T5D7WF3m9oc8jTdnciZRYkk xekelKI9G3ry/OWnLf6mCINia49QObJuYJv4zaCmfzB+GTdsBsU5kaUOjGWnaQ/YIL78 zJwCNZxYMEz4yOXCPamiscdvxOojC2jX3SvwWlqCZAhSaTBR3PzBcjr6Ok4T6CbFJP/M N3mOiOXw3uzi8qbXuguMIWSa03uX3GDXxPrgF0XvKml8LYRVqbY87EVlqWChHb9Heplg i4qQ== X-Gm-Message-State: AOAM530ZN/5nv4yVvclnH3c7339j9tfsc72bDKqlBEW+fzauRMO9NdKI dejiBisk8BN52bWz3zk1uLjt5Uv2FgJR3nfJcycatEEQdk4= X-Google-Smtp-Source: ABdhPJynUXpIcOu6AuVLZRfLl1LCORtJ+0k0PVnkTPRO0JxevzKY2D4m4bQufNm4QYZdizFLCExBNBtFUvNkJs+H0+U= X-Received: by 2002:a62:7915:0:b0:3ed:972c:1544 with SMTP id u21-20020a627915000000b003ed972c1544mr8146403pfc.18.1629884243593; Wed, 25 Aug 2021 02:37:23 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a05:6a20:3210:b029:36:6c8c:f6d1 with HTTP; Wed, 25 Aug 2021 02:37:22 -0700 (PDT) In-Reply-To: References: From: hiro <23hiro@gmail.com> Date: Wed, 25 Aug 2021 11:37:22 +0200 Message-ID: To: 9front@9front.org Content-Type: text/plain; charset="UTF-8" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: secure standard GPU-oriented realtime control Subject: Re: [9front] Re: man pages Reply-To: 9front@9front.org Precedence: bulk Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17P9lMKC012794 ori is probably right, but calling it all bikeshedding is also not fair IMO. hopefully i missed the irony :) there have been some changes that regard stylistic choices, where neither option is more correct than the other, to add further bikeshedding, some few changes are inconsistent. e.g. SuperSpeed should be superspeed or super-speed IMO to fit into the rest of the sentence. On 8/25/21, ori@eigenstate.org wrote: > Quoth Humm : >> > I'm sure there are all of sorts of inconsistencies all over the >> > place, but expecting anyone to review and fix everything at once is >> > too much, it won't happen. >> >> Oh yes, there are. What comes to mind immediately is citation style >> and handling of options in SYNOPSIS (sometimes all are listed and >> sometimes there is just “[options]”), as well as just bad troff. >> There are some checks for bad stuff (see for example `mk punccheck` in >> /sys/man). > > yes, for sure. > > it helps me out if I get patches that focus on > one kind of issue: I have to keep less in mind > when reviewing, and format fixes are going to > get less debate than phrasing changes; I like it > when I can land fixes immediately. > > From 9front-bounces@1ess.inri.net Wed Aug 25 13:16:28 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (th.inri.net [216.126.196.42] (may be forged)) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17PDGRPE016140 for ; Wed, 25 Aug 2021 13:16:28 GMT Received: from mail-lj1-f182.google.com ([209.85.208.182]) by 4ess; Wed Aug 25 09:06:35 -0400 2021 Received: by mail-lj1-f182.google.com with SMTP id w4so42025444ljh.13 for <9front@9front.org>; Wed, 25 Aug 2021 06:06:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=4k5wmwm3TggelKJdJERMrP0utIgjgJQRqUHQ2HIpsdk=; b=Ebn1Edrjpu52q9PohOltCNUNyGSeyYZsDa0Kn216Hge3+N/QXG0089rS+30bEHpcR/ FDHwSbcr0k32912P+AmKOLOTResTq+p6XijQJ7og0Au4r5Dq29kIx3hy/lbfS9SES2FF e7imxqhls7wVQ49leDGboKnoasyc04KkN6zC9cVdLRPj85oyZfdGg/AQFlu2EcIO44+0 7q367T6fWB8Ux7sINuUL2cWRWgxJnRvmn02O4hO2eB4giCamvOU+yVLDctOGl11YPy4L La8/uQGLf/jS8Fq1MRwWLzSpc/h5HSIWY7711hopioiT60ag0U0xmkpbnZMHNdHmM+Lh XPRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=4k5wmwm3TggelKJdJERMrP0utIgjgJQRqUHQ2HIpsdk=; b=kiwk2DuIeoOBWPW1kPnm6gmQAxRtcFSc5694vR6EZzR+RxWSaC0e78dGHy6FQ00Jux ILf04MpbvgtHXu/HCD/56JOQX6DvjyHXF12wyZIETTZ0F5gqiIojeABk/EZRjeX4S8WG 6H74w9BcjlA2SAV02dw+Yij2Oq5MhUqMZM8ofTYujYPwCd5Ebn9qeDanVnQ7obojvNBw rxpP1oF9yTEh3nu7oFtnBiz1vFrDBy+48Kc9ex2KBl6IfcIPzK9W7IaeYwSE9Ok1Fegu yXLZFdtq8b06hWRmw275yXtcyd4pDFqIrx+GULzNa7P/mhtrjBRGvrb4bZ9h04uYcUD5 s2hQ== X-Gm-Message-State: AOAM5313tI4f5R343e//yR0GxIYczQN+7Ew7fY9TZ8cuEup6hYO+SNMs XRtiO10SrfiK6Vefk/BlQ8/1s9qj8VNx/Vo+EmwHT7pPerzIhQ== X-Google-Smtp-Source: ABdhPJwoQ9hZ1WJwJBz6s0cozGz0ZSmALwtrZzJN7hifxmh0E7r9ObogpoFCHzSosa733eqFUnKBMS+36CpnShufCcw= X-Received: by 2002:a2e:a4d5:: with SMTP id p21mr11904343ljm.29.1629893133225; Wed, 25 Aug 2021 05:05:33 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a2e:80c9:0:0:0:0:0 with HTTP; Wed, 25 Aug 2021 05:05:32 -0700 (PDT) In-Reply-To: <85BA2565A17D5AD63E417AFF484D4097@eigenstate.org> References: <85BA2565A17D5AD63E417AFF484D4097@eigenstate.org> From: Stuart Morrow Date: Wed, 25 Aug 2021 13:05:32 +0100 Message-ID: To: 9front@9front.org Content-Type: text/plain; charset="UTF-8" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: private scale-out realtime-java plugin configuration controller Subject: Re: [9front] Re: man pages Reply-To: 9front@9front.org Precedence: bulk On 25/08/2021, ori@eigenstate.org wrote: > It'd be helpful to separate incorrect formatting > from wording tweaks, if you're willing to go to > that effort. You mean in the files that remain untouched after the last commit? Those would be 2/ioproc 8/ndb 8/venti-backup and in fact I only ever sent formatting fixes for them: --- //.git/fs/object/be36c092ac061a04065720e98e5849130487be7f/tree//sys/man/2/ioproc +++ /sys/man/2/ioproc @@ -92,7 +92,7 @@ .PP .I Closeioproc terminates the I/O proc and frees the associated -.B Ioproc . +.BR Ioproc . .PP .I Iocall is a primitive that may be used to implement --- //.git/fs/object/be36c092ac061a04065720e98e5849130487be7f/tree//sys/man/8/ndb +++ /sys/man/8/ndb @@ -764,7 +764,7 @@ .PP .I Ndb/dnsgetip resolves and prints A and AAAA records without consulting -.I ndb/dns . +.IR ndb/dns . By default, .I ndb/dnsgetip queries A records first and then AAAA records. As with --- //.git/fs/object/be36c092ac061a04065720e98e5849130487be7f/tree//sys/man/8/venti-backup +++ /sys/man/8/venti-backup @@ -66,7 +66,7 @@ (default .BR 0 ) in -.I arenafile . +.IR arenafile . This is useful for reading directly from the Venti arena partition: .IP From 9front-bounces@1ess.inri.net Wed Aug 25 14:32:05 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (th.inri.net [216.126.196.42] (may be forged)) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17PEW34p020776 for ; Wed, 25 Aug 2021 14:32:03 GMT Received: from wopr.sciops.net ([216.126.196.60]) by 4ess; Wed Aug 25 07:28:21 -0400 2021 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sciops.net; s=20210706; t=1629890870; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to; bh=+SBpjUKXuHR30MUqrFjVpkC95wFciJv5ifrGVH5diLM=; b=4DSMd6vULqkk+Fh+JQLFJzLy16xNhynhiRI43adh3+/HI4bmsFpk8JvtaF6DHtDoqmYfX3 Df5oXzBh5FTUUAI80Jj7sc4iyvm2hyjtG9ShDOVVGuAHSTk6VZ3jiBsaEC0kpK9q6Gp1kt bFlBRSE6U8JKZj/YlRF9ymUwwl7V/+A= Received: by wopr.sciops.net (OpenSMTPD) with ESMTPSA id e97451f7 (TLSv1.2:ECDHE-RSA-CHACHA20-POLY1305:256:NO) for <9front@9front.org>; Wed, 25 Aug 2021 04:27:50 -0700 (PDT) Message-ID: <3DD591728138416E599114DADBB02ADC@wopr.sciops.net> From: qwx Date: Wed, 25 Aug 2021 13:27:49 +0200 To: 9front@9front.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: YAML service callback component element solution Subject: Re: [9front] brought swar from 1ed sources Reply-To: 9front@9front.org Precedence: bulk > hi there folks, > > i ported games/swar to use libdraw instead of libg. the > gameplay is... funny? it reminds me of one of those > early LCD pocket consoles where you could see each > sprite of the animation on the screen. > > i also fixed enough to make it work after resizing > the window, and corrected the rendering to clear the > screen and draw the latest state. it seems the jerq > didn't have a framebuffer from which to pull the latest > image or didn't mind refreshing it, so you had to > constantly blit it all. > > > is it OK if it push it? > > > -rodri I think it would be nice to have this. I think you have commit access, if nobody objects, let's add it :) Thanks, qwx From 9front-bounces@1ess.inri.net Wed Aug 25 14:44:25 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17PEiO1l009808 for ; Wed, 25 Aug 2021 14:44:25 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 4ess; Wed Aug 25 10:33:34 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id 1b666bff (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9front@9front.org>; Wed, 25 Aug 2021 07:32:54 -0700 (PDT) Message-ID: <287490FAE4F63FD4F879BD6B8B61130F@eigenstate.org> To: 9front@9front.org Date: Wed, 25 Aug 2021 10:32:53 -0400 From: ori@eigenstate.org In-Reply-To: <3DD591728138416E599114DADBB02ADC@wopr.sciops.net> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: social replication deep-learning dependency layer Subject: Re: [9front] brought swar from 1ed sources Reply-To: 9front@9front.org Precedence: bulk Quoth qwx : > > hi there folks, > > > > i ported games/swar to use libdraw instead of libg. the > > gameplay is... funny? it reminds me of one of those > > early LCD pocket consoles where you could see each > > sprite of the animation on the screen. > > > > i also fixed enough to make it work after resizing > > the window, and corrected the rendering to clear the > > screen and draw the latest state. it seems the jerq > > didn't have a framebuffer from which to pull the latest > > image or didn't mind refreshing it, so you had to > > constantly blit it all. > > > > > > is it OK if it push it? > > > > > > -rodri > > I think it would be nice to have this. I think you have > commit access, if nobody objects, let's add it :) > > Thanks, > > qwx > Sure, why not. It seems Very Historical. From 9front-bounces@1ess.inri.net Wed Aug 25 14:54:44 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17PEshK3011311 for ; Wed, 25 Aug 2021 14:54:43 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 4ess; Wed Aug 25 10:47:26 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id a605a176 (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9front@9front.org>; Wed, 25 Aug 2021 07:46:55 -0700 (PDT) Message-ID: <818C6CF68C40EE0109E725E089917A57@eigenstate.org> To: 9front@9front.org Date: Wed, 25 Aug 2021 10:46:54 -0400 From: ori@eigenstate.org In-Reply-To: <2E1E4A85401737A2255AE5DD9A227423@qak> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: immutable compliant information out-scaling-aware DOM plugin Subject: Re: [9front] test Reply-To: 9front@9front.org Precedence: bulk Quoth kvik@a-b.xyz: > Testicle. > That's what you get when a test drips and then freezes, right? From 9front-bounces@1ess.inri.net Wed Aug 25 17:07:13 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17PH7CnP022155 for ; Wed, 25 Aug 2021 17:07:12 GMT Received: from out2.migadu.com ([188.165.223.204]) by 4ess; Wed Aug 25 10:42:02 -0400 2021 Message-ID: <2E1E4A85401737A2255AE5DD9A227423@qak> DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=a-b.xyz; s=key1; t=1629902516; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to; bh=1JfZVTVgkLRabqf8x+pHHTAqjy3pcQAc8jVLQUEFyOY=; b=Z2gZKs5m7OwXKk5RCQnJ036qewbohLjKb9lJhOzSRrFaJXw9YJW0d5a25q4lJZ3p75oZ12 pVKm+Cnnft1KtbGvFQBC9Bq9RINCT9c+tyHcNLez7iHq0QIKik7f8kaPDvIl13t212UtjC hGkb1c1xF3H91hCGVKvw1846DrIKFgwkXSfuW8HHcg7PWB4ebbqNdIFo8NcjPjk71L2iRj FfUPvNyxas3P+x43IE9fCdlE5XLybcfL0cpgYe7ubdhFNSL6HRDO6jhyCbLZW6wSM8vSFc 9ho3x+mk+O+A6cNCkHRMRO0/FtWmQx2W97rRV7l7Ah9QRLt57ZFEAGAVvG9Esw== To: 9front@9front.org Date: Wed, 25 Aug 2021 16:41:53 +0200 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: kvik@a-b.xyz In-Reply-To: <9FEE3675-60AB-48D2-9233-845C7BC0B88A@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-Migadu-Flow: FLOW_OUT X-Migadu-Auth-User: kvik@a-b.xyz List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: object-oriented leveraged storage CMS-scale optimizer Subject: Re: [9front] test Reply-To: 9front@9front.org Precedence: bulk Testicle. From 9front-bounces@1ess.inri.net Wed Aug 25 17:07:59 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17PH7wo9017203 for ; Wed, 25 Aug 2021 17:07:58 GMT Received: from 5ess.inri.net ([107.191.111.177]) by 4ess; Wed Aug 25 10:56:46 -0400 2021 Received: from smtpclient.apple ([104.59.85.219]) by 5ess; Wed Aug 25 10:56:46 -0400 2021 Content-Type: text/plain; charset=utf-8 From: Stanley Lieber Mime-Version: 1.0 (1.0) Message-Id: <0B1AA525-D348-4C44-8D61-1AB14E231476@stanleylieber.com> References: <818C6CF68C40EE0109E725E089917A57@eigenstate.org> In-Reply-To: <818C6CF68C40EE0109E725E089917A57@eigenstate.org> To: 9front@9front.org Date: Wed, 25 Aug 2021 10:56:45 -0400 X-Mailer: iPhone Mail (18G82) List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: SSL over SSL metadata-aware rich-client scripting locator Subject: Re: [9front] test Reply-To: 9front@9front.org Precedence: bulk Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17PH7wo9017203 testicle is a go library that automatically posts regression test output on buzzfeed. sl > On Aug 25, 2021, at 10:50 AM, ori@eigenstate.org wrote: > > Quoth kvik@a-b.xyz: >> Testicle. >> > > That's what you get when a test drips and then > freezes, right? > > From bounce.mM1c04b967118bc3df845c887a.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Wed Aug 25 18:29:18 2021 Return-Path: Received: from tb-ob1.topicbox.com (tb-ob1.topicbox.com [64.147.108.173]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17PITHxo022021 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Wed, 25 Aug 2021 18:29:18 GMT Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob1.topicbox.com (Postfix) with ESMTP id B08061DE82 for ; Wed, 25 Aug 2021 14:21:32 -0400 (EDT) (envelope-from bounce.mM1c04b967118bc3df845c887a.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id ADB01336E720; Wed, 25 Aug 2021 14:21:32 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=from:to :message-id:date:mime-version:content-type :content-transfer-encoding:list-help:list-id:list-post :list-subscribe:reply-to:subject:list-unsubscribe; s=dkim-1; bh= QoRFSdVKpZqSBZNPzwn09AOgykWAjZwVJbQ5Zr/7ods=; b=pSF3Wqc/w6NOMSUh wWZ1GKezsHkonKR6sVQ4Sr/b/IiEdWO19D+vmGCQ4c2v6AtqWlu0Lw+2UmWwYYdq e0LHZI67WyIrw2rSXDbWN926HeBs81Xbarr54fmGL3cfSziEwiC5MFNoE6Kg7ODx QBIGzNNRrN+w/tl7vT/rA3S5k6I= From: revcomninos@gmail.com To: 9fans <9fans@9fans.net> Message-Id: <16299156410.9E31f8.221008@composer.9fans.topicbox.com> Date: Wed, 25 Aug 2021 14:20:41 -0400 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="16299156411.8daB9069E.221008" Content-Transfer-Encoding: 7bit Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 281a783a-05d1-11ec-9be7-0d4e242d11b0 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UOGRmNzYwODYxYWUyYzhjZC1NMWMwNGI5NjcxMThiYzNkZjg0NWM4?= =?UTF-8?B?ODdhPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> Subject: [9fans] Breaking up long lines in sam into more manageable ones List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M1c04b967118bc3df845c887a:1:m9JPB2Dn-t8Rwb0OnoO0u4OH1Mag0PsDEMohoxRe1DY --16299156411.8daB9069E.221008 Date: Wed, 25 Aug 2021 14:20:41 -0400 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable I would like to be able to break up long lines in sam in a way similar to= =C2=A0the way I break them up in ed. For ed, I rely on the external command= =C2=A0!fold -s -w80 %. This did not work for me in sam. What would be=C2=A0the best way to achieve= this in sam? And is there a format line(s) command I could use?=C2=A0 Many thanks.=C2=A0 ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T8df760861ae2c8cd-M1c04b= 967118bc3df845c887a Delivery options: https://9fans.topicbox.com/groups/9fans/subscription --16299156411.8daB9069E.221008 Date: Wed, 25 Aug 2021 14:20:41 -0400 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I would like to be able to break up long lines= in sam in a way similar to the way I break them up in ed. For ed, I r= ely on the external command !fold -s -w80 %.

This did not work for me in sam. What would be the best way to= achieve this in sam? And is there a format line(s) command I could use?&nb= sp;

Many thanks. 
= --16299156411.8daB9069E.221008-- From bounce.mM61bada46ff3aab1a9434e6b5.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Wed Aug 25 18:38:06 2021 Return-Path: Received: from tb-ob0.topicbox.com (tb-ob0.topicbox.com [64.147.108.117]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17PIc5rH018984 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Wed, 25 Aug 2021 18:38:06 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob0.topicbox.com (Postfix) with ESMTP id 8EFF03708A for ; Wed, 25 Aug 2021 14:32:59 -0400 (EDT) (envelope-from bounce.mM61bada46ff3aab1a9434e6b5.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id 8F0CF345D2DA; Wed, 25 Aug 2021 14:32:59 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=icloud.com header.i=@icloud.com header.b=brgJ7oy5 header.a=rsa-sha256 header.s=1a1hai x-bits=2048; dmarc=pass policy.published-domain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=icloud.com; spf=pass smtp.mailfrom=leimy2k@icloud.com smtp.helo=mr85p00im-ztdg06011901.me.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=content-type:content-transfer-encoding :mime-version:subject:date:message-id:references:in-reply-to:to :from:list-help:list-id:list-post:list-subscribe:reply-to :list-unsubscribe; s=sysmsg-1; t=1629916379; bh=BTjA4GG35NS2xn7O 0gbdbDXKwiAulnW2b3wiViansw8=; b=VkPWMSx1KK8wbNuanQfBBwFsmo0wGmRV J5E7M5oK3MU/Q6PsfhAb5/SemYR6lIa8XjusBmdSWU41Xt4w4TfSVi6LpaG7ShKs EiIpGfoaJbwiz5pdU2LJP1gyrhzyEZMh4tSHK7pHhpGypLaR8PS0HAzMx/WKAbx1 HqVodiCBS80= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629916379; b=GPO2qNv2dQFxmQrt6un0DIB1xh8KqH3RPdw988P2ODabVt4TVh bdavfu4ROTPfigRIIBnZKjnD8JzO5P2L6/jF3bchxRWQ+jN9rMQkvyGTnNcjKfNc /TFEEHRkzwEAp7fqh2rjAumQpZhrA4uqzCrky9UqzZrC7D6V6zVAQaR+k= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=icloud.com header.i=@icloud.com header.b=brgJ7oy5 header.a=rsa-sha256 header.s=1a1hai x-bits=2048; dmarc=pass policy.published-domain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=icloud.com; spf=pass smtp.mailfrom=leimy2k@icloud.com smtp.helo=mr85p00im-ztdg06011901.me.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: tb-mx1.topicbox.com; arc=none (no signatures found); bimi=none (No BIMI records found); dkim=pass (2048-bit rsa key sha256) header.d=icloud.com header.i=@icloud.com header.b=brgJ7oy5 header.a=rsa-sha256 header.s=1a1hai x-bits=2048; dmarc=pass policy.published-domain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=icloud.com; iprev=pass smtp.remote-ip=17.58.23.198 (mr85p00im-ztdg06011901.me.com); spf=pass smtp.mailfrom=leimy2k@icloud.com smtp.helo=mr85p00im-ztdg06011901.me.com; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mr85p00im-ztdg06011901.me.com policy.ptr=mr85p00im-ztdg06011901.me.com; x-return-mx=pass header.domain=icloud.com policy.is_org=yes (MX Records found: mx02.mail.icloud.com,mx01.mail.icloud.com); x-return-mx=pass smtp.domain=icloud.com policy.is_org=yes (MX Records found: mx02.mail.icloud.com,mx01.mail.icloud.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h= content-type:content-transfer-encoding:mime-version:subject:date :message-id:references:in-reply-to:to:from:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=MPS6G7VYnkGfL8G8iaosrtCn0/mVs5BuScegDzFJlhs=; b=mV8vmGUmWl3g OmRZfoJDzceIWOzbwwfQtRzvlGX2xo3spbI+z8e6o1Y8HgNTCrg1K2KGLG5PaEXp l+WyLPTNOD3+c4F5wgAqOUeZEA9LK6xcs/aTT73/5D8C4dHNtogbuuzNQA8CHQuk NSrvC7+OgWmcdf+5Jnc4neuzmDUemzE= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id B0569345C8F2 for <9fans@9fans.net>; Wed, 25 Aug 2021 14:31:34 -0400 (EDT) (envelope-from leimy2k@icloud.com) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id E9DDE63EDE9; Wed, 25 Aug 2021 14:31:34 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629916294; b=j1wYr/wztXBlFneR/EQEg8rrZw2eTyY7fIhwQPbdTjdkbSzzui YCV1+faVu4rQKnUKtX0xzRpGL5zDrR487DLmP4z1AJF0IupWn/MmiX9XA5mGwvx1 y4AlBEOnlJhFIQt5pFPaG7Vyv5DR4c/b6MBU0dAhK7h9vmQaSB+KDKv0hRN6gu2J b+/jtsagudDLRfcOHRfF2URpQ86OYuVaIEjneEBUTVgdsvMjkpHhU2F92fMZA9yu Y7PqoI/n5v4XkC7iteageMKI1sezNdpE/oJhSll4R3ZHhyvOiZlTKXstXuoBJBLN AAruwVitVmvGCfiu3wi0Mzz5T16c43RjGGJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=content-type:content-transfer-encoding:from :mime-version:subject:date:message-id:references:in-reply-to:to; s=arcseal; t=1629916294; bh=5DFTWKUR9CF7P3m/bq5jxM/eZyjTnsX0YJ0 e7fnYjWM=; b=p0Mhd/OXcfIj13kIIhs9axT5Ba5piAfq4tPmSBqulSCasZ4GT0t 5CSDER5YWLdH7vfJa9PSlN0M/EkYfaD0qAhvS/OtkX2mMLCfYJ5TYXb2cpbQxcfz lMp3ZyeejaV4Kj+vU1qAg+YmdzzUsPfini8cMCvCN+SDddHUendQbU2fpyCQJazF aZdp+ZXAeDAnl5KNS1lcDJvm37MPDduYo2m+GaHOD38/TpnbXL3ujNaiChYL++ey dKmEzR2iiraxl9lKjzIaMDkbL0fE3Gtsr8I34Vsrusi+iJNIyZ4O2Rl7lryagjmZ mJu7T3Ro4Ip9quAVM0GlAkv3scpGICtoloQ== ARC-Authentication-Results: i=1; tb-mx1.topicbox.com; arc=none (no signatures found); bimi=none (No BIMI records found); dkim=pass (2048-bit rsa key sha256) header.d=icloud.com header.i=@icloud.com header.b=brgJ7oy5 header.a=rsa-sha256 header.s=1a1hai x-bits=2048; dmarc=pass policy.published-domain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=icloud.com; iprev=pass smtp.remote-ip=17.58.23.198 (mr85p00im-ztdg06011901.me.com); spf=pass smtp.mailfrom=leimy2k@icloud.com smtp.helo=mr85p00im-ztdg06011901.me.com; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mr85p00im-ztdg06011901.me.com policy.ptr=mr85p00im-ztdg06011901.me.com; x-return-mx=pass header.domain=icloud.com policy.is_org=yes (MX Records found: mx02.mail.icloud.com,mx01.mail.icloud.com); x-return-mx=pass smtp.domain=icloud.com policy.is_org=yes (MX Records found: mx02.mail.icloud.com,mx01.mail.icloud.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtledguddviecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggftfghnshhusghstghrihgsvgdp uffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftddtnecunecujfgurheptgfghf ggufffkfhfjgfvofesrgejmherhhdtjeenucfhrhhomhepffgrvhhiugcunfgvihhmsggr tghhuceolhgvihhmhidvkhesihgtlhhouhgurdgtohhmqeenucggtffrrghtthgvrhhnpe efieehkeegueeiffdvffeijeegffeijefgvdffveevieeggffhvdeftedugfffieenucff ohhmrghinhepthhophhitggsohigrdgtohhmnecukfhppedujedrheekrddvfedrudelke dpieeirdeluddrudegledruddvvdenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgr mhepihhnvghtpedujedrheekrddvfedrudelkedphhgvlhhopehmrhekhehptddtihhmqd iithgughdtiedtudduledtuddrmhgvrdgtohhmpdhmrghilhhfrhhomhepoehlvghimhih vdhksehitghlohhuugdrtghomheq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (icloud.com: 17.58.23.198 is authorized to use 'leimy2k@icloud.com' in 'mfrom' identity (mechanism 'ip4:17.58.0.0/16' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="leimy2k@icloud.com"; helo=mr85p00im-ztdg06011901.me.com; client-ip=17.58.23.198 Received: from mr85p00im-ztdg06011901.me.com (mr85p00im-ztdg06011901.me.com [17.58.23.198]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Wed, 25 Aug 2021 14:31:34 -0400 (EDT) (envelope-from leimy2k@icloud.com) Received: from smtpclient.apple (rrcs-66-91-149-122.west.biz.rr.com [66.91.149.122]) by mr85p00im-ztdg06011901.me.com (Postfix) with ESMTPSA id D7CAAA603B6 for <9fans@9fans.net>; Wed, 25 Aug 2021 18:31:32 +0000 (UTC) Content-Type: multipart/alternative; boundary="Apple-Mail-BC8D729B-146A-4224-8A79-A019CEBF54AA" Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (1.0) Subject: Re: [9fans] Breaking up long lines in sam into more manageable ones Date: Wed, 25 Aug 2021 08:31:31 -1000 Message-Id: <26D4D0A3-5AA3-4D58-861D-C0A494068DAC@icloud.com> References: <16299156410.9E31f8.221008@composer.9fans.topicbox.com> In-Reply-To: <16299156410.9E31f8.221008@composer.9fans.topicbox.com> To: 9fans <9fans@9fans.net> X-Mailer: iPad Mail (19A5325f) X-Proofpoint-Virus-Version: =?UTF-8?Q?vendor=3Dfsecure_engine=3D1.1.170-22c6f66c430a71ce266a39bfe25bc?= =?UTF-8?Q?2903e8d5c8f:6.0.391,18.0.790,17.0.607.475.0000000_definitions?= =?UTF-8?Q?=3D2021-08-25=5F07:2021-08-25=5F02,2021-08-25=5F07,2020-04-07?= =?UTF-8?Q?=5F01_signatures=3D0?= X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 spamscore=0 phishscore=0 bulkscore=0 mlxscore=0 mlxlogscore=682 clxscore=1015 malwarescore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2009150000 definitions=main-2108250108 Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: b06708e2-05d2-11ec-9f54-fb19bd3871d0 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UOGRmNzYwODYxYWUyYzhjZC1NNjFiYWRhNDZmZjNhYWIxYTk0MzRl?= =?UTF-8?B?NmI1Pg==?= From: "David Leimbach via 9fans" <9fans@9fans.net> List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M61bada46ff3aab1a9434e6b5:1:okOOkszrASwbGesnERDMurLZD4Oguemi0xn_nNgkwfc --Apple-Mail-BC8D729B-146A-4224-8A79-A019CEBF54AA Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Try in the tagline=20 Edit ,|fold -s -w80 Highlight it and middle click it. Sent from my iPad > On Aug 25, 2021, at 8:20 AM, revcomninos@gmail.com wrote: >=20 > =EF=BB=BF > I would like to be able to break up long lines in sam in a way similar to= the way I break them up in ed. For ed, I rely on the external command !fol= d -s -w80 %. >=20 > This did not work for me in sam. What would be the best way to achieve th= is in sam? And is there a format line(s) command I could use?=20 >=20 > Many thanks.=20 > 9fans / 9fans / see discussions + participants + delivery options Permali= nk ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T8df760861ae2c8cd-M61bad= a46ff3aab1a9434e6b5 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription --Apple-Mail-BC8D729B-146A-4224-8A79-A019CEBF54AA Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Try in the tagline <= div>Edit ,|fold -s -w80
Highlight it and middle click it.




Sent from= my iPad

On Aug 25, 2= 021, at 8:20 AM, revcomninos@gmail.com wrote:


I would like to be able to break up long lines in sam in a way similar= to the way I break them up in ed. For ed, I rely on the external comm= and !fold -s -w80 %.

This did not wor= k for me in sam. What would be the best way to achieve this in sam? An= d is there a format line(s) command I could use? 

Many thanks. 
= --Apple-Mail-BC8D729B-146A-4224-8A79-A019CEBF54AA-- From bounce.mM93188a3c4a4e50f7988df1b7.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Wed Aug 25 18:58:49 2021 Return-Path: Received: from tb-ob21.topicbox.com (tb-ob21.topicbox.com [173.228.157.67]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17PIwmn5018672 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Wed, 25 Aug 2021 18:58:49 GMT Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob21.topicbox.com (Postfix) with ESMTP id 1A06D2DC38 for ; Wed, 25 Aug 2021 14:51:31 -0400 (EDT) (envelope-from bounce.mM93188a3c4a4e50f7988df1b7.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id F418F3370589; Wed, 25 Aug 2021 14:51:30 -0400 (EDT) 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=b3NvkaCT header.a=rsa-sha256 header.s=20161025 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=hummsmith42@gmail.com smtp.helo=mail-wm1-f44.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=date:from:to:subject:message-id:references :mime-version:content-type:content-transfer-encoding:in-reply-to :list-help:list-id:list-post:list-subscribe:reply-to :list-unsubscribe; s=sysmsg-1; t=1629917490; bh=Ou6hMNHvunresMGV lqfHY/xhLbJFkcpZu7V6goBW3kA=; b=N7neUtZbIWUZWo7Tam4z9sBQH5ip8III RhEqbneTvR5lvX8QWyvTU3yyRrEtLnDvCzxu8+KGHetYPvs/MkQzHwC4tdn1tw0r E+nSpbaEglON0Yns4ZExzgfu4D3OItdWBmvss9xwIBLul3PKCzmOhPIBZw2P/QnW rUDMzGCkFaE= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1629917490; b=L9UQgY21mqi/qlEQcasWwnqhxlwBXLrn6QgKSmU+hqHlkJWER1 JqclfIn/lIxlQbUQu/haCmJIUvxJeYNYbv2Om9fwsfXdzGGNonZSHVZwOvXbu9FJ t0HPHEr0FfEgBIH6A5zii1sVIv7ytejd9w87zwHpwsJX2QJdxrl6e4Z1A= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=b3NvkaCT header.a=rsa-sha256 header.s=20161025 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=hummsmith42@gmail.com smtp.helo=mail-wm1-f44.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: tb-mx0.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=b3NvkaCT header.a=rsa-sha256 header.s=20161025 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.128.44 (mail-wm1-f44.google.com); spf=pass smtp.mailfrom=hummsmith42@gmail.com smtp.helo=mail-wm1-f44.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=W/TBfHSp; x-me-sender=none; x-ptr=pass smtp.helo=mail-wm1-f44.google.com policy.ptr=mail-wm1-f44.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt4.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: alt4.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=date:from :to:subject:message-id:references:mime-version:content-type :content-transfer-encoding:in-reply-to:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=gmuuO/jBQvZwmMs52k9sNmV3Iek0Jv2tcpFF62iBkpc=; b=qQ98dELcDOBY ixCMfiQ2Hn/u/Jg2bXx+pT8mDEBLjg4yWwvx5zIatAO4ZvzrcoHXJhuJG7FyeyEg vhGNMf4MkLCT8fUczDjtiiGGMsAXnyq0KumNhmpB85PPfzxQcigI/FbPN1Q6H0Jo zquOCqzU/JHiy45dy6JAbgHR8TSExks= Received: from tb-mx0.topicbox.com (localhost.local [127.0.0.1]) by tb-mx0.topicbox.com (Postfix) with ESMTP id 59F36336FC89 for <9fans@9fans.net>; Wed, 25 Aug 2021 14:49:55 -0400 (EDT) (envelope-from hummsmith42@gmail.com) Received: from tb-mx0.topicbox.com (localhost [127.0.0.1]) by tb-mx0.topicbox.com (Authentication Milter) with ESMTP id 783A02849AD; Wed, 25 Aug 2021 14:49:55 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1629917395; b=sqYHrKWBR1tLDQv59FPct4eRGfYNmu9RzxxfR7d9AZBWqzUOMB tN+rVwolEtKBi/nxX9+Hk08UMn3xSXjPGi7l0ELQBsE4Ggqgy0WfiL9WXVo3CPiu NqQWBpLJF1Fu1NZ+qSgqwqibpNdzM57eiHEkxzh1ngV91c3ApjVJVQ4h03xqrB1f FCr9k+Gco1E559B9XqB9NC4g7EmuClxr4EOU2+/8v20b6A9wYzS5fIWrRiXxhnOk znAWxIclnXq+CWtrtscjZMOlqy4CBz2f7lGyFBG9O3YWgZpyRMHtTisQplbngmpW 3ZIcv7TM5YwVc1zf4RD61pgwvuR2+WuRkeEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=date:from:to:subject:message-id:references :mime-version:content-type:content-transfer-encoding :in-reply-to; s=arcseal; t=1629917395; bh=AscCfyDuKqiY7CvsrWKvsj 1aXaqhKbyquEPYgcm1ZdI=; b=TY4mfcgFud1T//LQ7Avo9/M9nT6MGyFpdipXGR RXhPHLaURB0rBYlcJ5pKryxm5qyKBSC9AsINSLWy7HqwpmJH7mfv01DO+JcXu31j 4A8OdttXONwDY/6nL3DRKfBYu0JefKSbJ/FDazOTxTCgcyAwptuOLxNi7Eyh1aiM pirwg/jGJG3sIgw01gCoDVDN7G1e/xNoh3v8wvGbBiAC9XaedXR+u6maA67hozK7 106A6qRaylBVeKbFtRThWgqcdzaYhxDGtVMGmOa358OW/iEuBijrZcc40Q5Q9Z+z 3i9sEp7d5AAvR/EEDEUEfGZqkraDBeqfOvTsNh6pshRhoLMg== ARC-Authentication-Results: i=1; tb-mx0.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=b3NvkaCT header.a=rsa-sha256 header.s=20161025 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.128.44 (mail-wm1-f44.google.com); spf=pass smtp.mailfrom=hummsmith42@gmail.com smtp.helo=mail-wm1-f44.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=W/TBfHSp; x-me-sender=none; x-ptr=pass smtp.helo=mail-wm1-f44.google.com policy.ptr=mail-wm1-f44.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt4.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: alt4.gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt2.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddtkedgvdekucdltddurdegudehrddttd dmucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgf nhhsuhgsshgtrhhisggvpdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttd enucenucfjughrpeffhffvuffkfhggtggugfgjsehtkedttddttdejnecuhfhrohhmpefj uhhmmhcuoehhuhhmmhhsmhhithhhgedvsehgmhgrihhlrdgtohhmqeenucggtffrrghtth gvrhhnpeeitedvgeejhfdtkeeuiedtudffkeefjeegffdujeegieevhfehhfelleekieej teenucfkphepvddtledrkeehrdduvdekrdeggedpledurdeliedrudehtddruddvkeenuc evlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepihhnvghtpedvtdelrdekhedruddv kedrgeegpdhhvghlohepmhgrihhlqdifmhduqdhfgeegrdhgohhoghhlvgdrtghomhdpmh grihhlfhhrohhmpeeohhhumhhmshhmihhthhegvdesghhmrghilhdrtghomheq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (gmail.com ... _spf.google.com: Sender is authorized to use 'hummsmith42@gmail.com' in 'mfrom' identity (mechanism 'include:_netblocks.google.com' matched)) receiver=tb-mx0.topicbox.com; identity=mailfrom; envelope-from="hummsmith42@gmail.com"; helo=mail-wm1-f44.google.com; client-ip=209.85.128.44 Received: from mail-wm1-f44.google.com (mail-wm1-f44.google.com [209.85.128.44]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx0.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Wed, 25 Aug 2021 14:49:54 -0400 (EDT) (envelope-from hummsmith42@gmail.com) Received: by mail-wm1-f44.google.com with SMTP id m25-20020a7bcb99000000b002e751bcb5dbso405473wmi.5 for <9fans@9fans.net>; Wed, 25 Aug 2021 11:49:54 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=AscCfyDuKqiY7CvsrWKvsj1aXaqhKbyquEPYgcm1ZdI=; b=W/TBfHSp08GwmOoaekiUQZNYLJ1u3RAnV7YeSlU2h3ha/RNxo94CF0O2f5ynDc/n3z igcP2r/RN7LdPyEa/jErbpxdtBeYDbybWdXpQtk33IbtxxlgPdXehTN3xRNXfu3GYw06 VB9OOvGD/iX7NvdBNFfRA1Vh2bU/aTNAQMGDEP5HuZfpEcq46BuTELMzkmmLfbBkYSFG uZO8HtntAak9Jde99U7Metnmx8MJDVN4TESpdjCkv2233YFSzKXNAoyRRZieexXMNLC2 +mvscJHLooSMuhe4gQXEOg18fROKgdrivgU10Mz5I9Y4RRRvKh74RS62YAWCcoPDjTWZ bC8A== X-Gm-Message-State: AOAM532ccZwVqf0d57qS0oB3k7znBYbS5oMab8rmaszk2fSMuzrqW2IZ cQbWFv6j/RABTSesFmasyhLRdXGhxmc= X-Google-Smtp-Source: ABdhPJyR+HFg/DkuvjAYR+dIztZjwd21P5LfFwoxz8dasq6ZFZLVSAMa8xUNs/uwSGh6Nd0Xc8FN9w== X-Received: by 2002:a1c:f019:: with SMTP id a25mr10807136wmb.96.1629917393857; Wed, 25 Aug 2021 11:49:53 -0700 (PDT) Received: from beryllium.local (dyndsl-091-096-150-128.ewe-ip-backbone.de. [91.96.150.128]) by smtp.gmail.com with ESMTPSA id c24sm681227wrb.57.2021.08.25.11.49.53 for <9fans@9fans.net> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 25 Aug 2021 11:49:53 -0700 (PDT) Received: from localhost (beryllium.local [local]) by beryllium.local (OpenSMTPD) with ESMTPA id eb2daf63 for <9fans@9fans.net>; Wed, 25 Aug 2021 20:49:52 +0200 (CEST) Date: Wed, 25 Aug 2021 20:49:52 +0200 From: Humm To: 9fans <9fans@9fans.net> Subject: Re: [9fans] Breaking up long lines in sam into more manageable ones Message-ID: References: <16299156410.9E31f8.221008@composer.9fans.topicbox.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8"; format="flowed" Content-Disposition: inline In-Reply-To: <16299156410.9E31f8.221008@composer.9fans.topicbox.com> Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 3fe76a78-05d5-11ec-ad1a-f99de52d22dd Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UOGRmNzYwODYxYWUyYzhjZC1NOTMxODhhM2M0YTRlNTBmNzk4OGRm?= =?UTF-8?B?MWI3Pg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M93188a3c4a4e50f7988df1b7:1:67RpmHcqu7QuEp3e4BRXkdFK4dCn3YBUmmCRrN6LGuY Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17PIwmn5018672 > I would like to be able to break up long lines in sam in a way > similar to the way I break them up in ed. For ed, I rely on the > external command !fold -s -w80 %. > > This did not work for me in sam. What would be the best way to > achieve this in sam? And is there a format line(s) command I could > use?  | Plan 9-command Send the range to the standard input, and replace it by the standard output, of the Plan 9 command. Thus, run something like `,|fold -s` or `,|fmt` to format long lines in, for example, your emails. -- Humm ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T8df760861ae2c8cd-M93188a3c4a4e50f7988df1b7 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription From 9front-bounces@1ess.inri.net Thu Aug 26 01:29:06 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17Q1T5kn020102 for ; Thu, 26 Aug 2021 01:29:06 GMT Received: from mail-wr1-f51.google.com ([209.85.221.51]) by 4ess; Wed Aug 25 18:33:22 -0400 2021 Received: by mail-wr1-f51.google.com with SMTP id v10so1732461wrd.4 for <9front@9front.org>; Wed, 25 Aug 2021 15:33:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=PRrT6SyHvKrz15NIx0XIl1MbC/tCmF2vDQgSoiI9d7U=; b=BsO4zuRu9dULTsIgsSFt8xZCdd/9DQP2o432qF9/DYyeWP+mde06gPhr+mL7v2isCl GH17N7kvCAbc37bTmFIbTsDcbXH9d0lmpRdQVodpXUuzC+PpKKeN3Pjc954+6bcWjasM /hK1ls+ljYUHMYyHWHuna3RcUUyYMveSa1rfdmd/Wyjym7pSOTJcYAjeOVAr/IPOuDyz 2sT8FDimS+4tNVEDrwllibC8cVTg6CZrPVQXfTnDArBzvxOh6l8xju0ypMfxwHqZI9o6 tE/tEHD5neJ4Jqp08WxZaVL4VEYdIpHC70xXUhBl1wM5kDZCKuJTrpv/3RBOmd+kT16t Mfzg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=PRrT6SyHvKrz15NIx0XIl1MbC/tCmF2vDQgSoiI9d7U=; b=GzJ1W64aN7/HsGT02bL/lhZxg0FtxSzRhCKz9FXTvyDtx/KsuSn+hb2bJkEnYWFdBb tdg0C9VHipi2Q39QvIwfNJHVdSusYbxjIwxg67p6qy+9xB1BftzfW5p+pzbCHyoCd1c7 +DeRV2f89NVhEKzOv1l+Lq9UB4Pl1Lypco8/BCl6v9mDgq2zS24guQhvXVfezSkkHMcO ZkRBsCj2+90eDb3bRKjij37qobIS2R9coeSl7XjwzbnlxS0Kotm1XTNg43T7fHpEoOkm Ib3QatxtFrckVMTgTraZ9iukea4E82pMjNKyMBRfw8qC/RONLrYlhDGZXu8qJnYIpWu3 /5Gw== X-Gm-Message-State: AOAM5310yD+hlaILcwDzG400fpnoAbLx6Duhtn5EQPG5XOq04QoLWf82 IkCFXAICYpxitmF16twuJNqRGtxo7uMtZb3HpHZf7DyrWRAypw== X-Google-Smtp-Source: ABdhPJywOTUgHOhiYXB5gzzEf+d8qdyZcHpkn6Wuw83WQLJmC9ZEXokMOKJT4i2Gp7DseuV3Zci2lNMMcOI1nJN+a7o= X-Received: by 2002:a2e:bc1d:: with SMTP id b29mr28470164ljf.2.1629920221160; Wed, 25 Aug 2021 12:37:01 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a2e:80c9:0:0:0:0:0 with HTTP; Wed, 25 Aug 2021 12:37:00 -0700 (PDT) In-Reply-To: References: From: Stuart Morrow Date: Wed, 25 Aug 2021 20:37:00 +0100 Message-ID: To: 9front@9front.org Content-Type: text/plain; charset="UTF-8" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: lifecycle DOM SOAP over YAML core module Subject: [9front] Re: dt.9f.o sidebar still points to hg Reply-To: 9front@9front.org Precedence: bulk And so does the man page. From 9front-bounces@1ess.inri.net Thu Aug 26 01:29:53 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (th.inri.net [216.126.196.42] (may be forged)) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17Q1TqFX020748 for ; Thu, 26 Aug 2021 01:29:52 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 4ess; Wed Aug 25 18:51:03 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id 9e4c769b (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9front@9front.org>; Wed, 25 Aug 2021 15:50:45 -0700 (PDT) Message-ID: <8F5E7C0A51EB7FA27428D24AEBB76D77@eigenstate.org> To: 9front@9front.org Date: Wed, 25 Aug 2021 18:50:43 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: asynchronous persistence factory-aware solution Subject: Re: [9front] Re: man pages Reply-To: 9front@9front.org Precedence: bulk Quoth Stuart Morrow : > On 25/08/2021, ori@eigenstate.org wrote: > > It'd be helpful to separate incorrect formatting > > from wording tweaks, if you're willing to go to > > that effort. > > You mean in the files that remain untouched after the last commit? > Those would be I'm not sure if I'm missing something, but these changes appear to be in the last commit: cd /dist/plan9front \ && git/export ad26f82e44a5f59383edfde5f4c3727c225f4b0a \ | grep (ioproc|ndb|venti-backup) From 9front-bounces@1ess.inri.net Thu Aug 26 02:08:03 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (th.inri.net [216.126.196.42] (may be forged)) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17Q27hP1003980 for ; Thu, 26 Aug 2021 02:07:43 GMT Received: from mail-ed1-f53.google.com ([209.85.208.53]) by 4ess; Wed Aug 25 21:59:43 -0400 2021 Received: by mail-ed1-f53.google.com with SMTP id g22so2036136edy.12 for <9front@9front.org>; Wed, 25 Aug 2021 18:59:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=SZ/QQLubrHFMgkpGvnjcICh29YsTQkUx2kpjfSDLhpo=; b=YKtqBgCCjSV94RxGdQ5TQzWHHSHFXWlgwS9HL9m2rVf7MUN8JkcLt1S0zHdkwisaMV +xyxpN10OWtA9zpE+rOF62TIacJIB7MkPpRRg/g3uHVI+zeC+HIGBhofCx3uorEU7qPA hVLA6oQZcR1Q0rpkhDp8PHvkfdrLSGDXJQ1k3pglv81RubfbU/gawQv3tPZbiRinxbxL 4rj7bFBvaW06U21p/GrsHHITFjC2vutEPIzGjqMNOPO4LaKj5Igu/7X0GJL6bpZFMwBv THowxmNBOSe/bvpjMqxasxCzVgntEm+Rqq1P4ovqVwDrTwgxeKHVMLsqtHMkwjgHcNMn dkow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=SZ/QQLubrHFMgkpGvnjcICh29YsTQkUx2kpjfSDLhpo=; b=DtRTZT17U56OAoCdR/PP3r7ThWfPxB3Ana60s/OKhlQH/TqGyldM+/w5VzfM26k2lq mkP1KXGKVUKzLXfNpN1Gvvh7U2nx2/G/yPQTSoA3gWvEr2NA/iYU6tqSmC2vpdM21dRJ IkIA9VKiKjz5wDTUsI3KKz6aosX57voueJETNt+W0a4yaLSF/JMrq/YsNIicZcmmil9x p4oglDWEvcpbKZpcUifMFTDQykmUMvk7TfvCFRr3Bzhb4+76n6n/kLKOq9DBkaDV369X HXmy3wwUVOJGb/h6Phy/0uemHIWlHY79oVMPU3+4XqaMuYLkTaIb66zw/ie336W1kMIE /vEA== X-Gm-Message-State: AOAM533hZTt62GxrE2DQCL9hWiP1GuPugP7XlY9mnWJt3/wB8UbAULXQ ZYJKhBjWzlGqt0awTM9/rFsVNLZMMVAzU0hu3oVLI2dW+C/sbg== X-Google-Smtp-Source: ABdhPJzIszoE5kBTi+zJ+f3vUti12Uu547I10UnEiGShphtDxUhNxkXyVpOKB9IwjcylMD5+artV6bBoUTKXrPNozso= X-Received: by 2002:a2e:a4d5:: with SMTP id p21mr13398756ljm.29.1629918078093; Wed, 25 Aug 2021 12:01:18 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a2e:80c9:0:0:0:0:0 with HTTP; Wed, 25 Aug 2021 12:01:17 -0700 (PDT) From: Stuart Morrow Date: Wed, 25 Aug 2021 20:01:17 +0100 Message-ID: To: 9front@9front.org Content-Type: text/plain; charset="UTF-8" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: cloud service-scale property frontend Subject: [9front] dt.9f.o sidebar still points to hg Reply-To: 9front@9front.org Precedence: bulk http://drawterm.9front.org/ From 9front-bounces@1ess.inri.net Thu Aug 26 02:43:44 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17Q2hhtV020176 for ; Thu, 26 Aug 2021 02:43:43 GMT Received: from 5ess.inri.net ([107.191.111.177]) by 4ess; Wed Aug 25 22:32:54 -0400 2021 Received: from smtpclient.apple ([107.117.171.210]) by 5ess; Wed Aug 25 22:32:53 -0400 2021 Content-Type: text/plain; charset=utf-8 From: Stanley Lieber Mime-Version: 1.0 (1.0) Message-Id: <1C536E09-1568-43F8-AECD-07AEA5F4E002@stanleylieber.com> References: In-Reply-To: To: 9front@9front.org Date: Wed, 25 Aug 2021 22:32:52 -0400 X-Mailer: iPad Mail (18G69) List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: object-oriented core method-scale persistence controller Subject: Re: [9front] dt.9f.o sidebar still points to hg Reply-To: 9front@9front.org Precedence: bulk Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17Q2hhtV020176 thanks, this is fixed now. sl > On Aug 25, 2021, at 10:10 PM, Stuart Morrow wrote: > > http://drawterm.9front.org/ > From 9front-bounces@1ess.inri.net Thu Aug 26 03:12:14 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17Q3CDVX004748 for ; Thu, 26 Aug 2021 03:12:13 GMT Received: from 5ess.inri.net ([107.191.111.177]) by 4ess; Wed Aug 25 23:00:01 -0400 2021 Message-ID: <6C58A2AE910BFBE22E35BBC4C33E1F81@5ess.inri.net> Date: Wed, 25 Aug 2021 22:59:45 -0400 From: sl@stanleylieber.com To: 9front@9front.org MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: managed extension-aware SQL over WEB2.0 browser service Subject: [9front] 9fs 9front temporarily offline Reply-To: 9front@9front.org Precedence: bulk complications of working on the mail server: 9fs 9front is temporarily disabled. sorry. sl From 9front-bounces@1ess.inri.net Thu Aug 26 04:04:52 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17Q44p3F029606 for ; Thu, 26 Aug 2021 04:04:51 GMT Received: from 5ess.inri.net ([107.191.111.177]) by 4ess; Wed Aug 25 23:55:02 -0400 2021 Message-ID: Date: Wed, 25 Aug 2021 23:36:29 -0400 From: sl@stanleylieber.com To: 9front@9front.org MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: framework replication high-performance firewall-oriented solution Subject: [9front] plan9.ini fs= should accept full dial strings Reply-To: 9front@9front.org Precedence: bulk let's say we want to do both serve a full file system to certain clients *and* serve a specially constructed namespace to generic clients trying to 9fs us on the standard port. currently, plan9.ini fs= value must be just an ip address or host name. the system translates it internally to tcp![ip]!564. why can't fs= be any valid dial string? sl From 9front-bounces@1ess.inri.net Thu Aug 26 10:22:15 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (th.inri.net [216.126.196.42] (may be forged)) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17QAMF74027792 for ; Thu, 26 Aug 2021 10:22:15 GMT Received: from mail-lf1-f52.google.com ([209.85.167.52]) by 4ess; Thu Aug 26 06:02:26 -0400 2021 Received: by mail-lf1-f52.google.com with SMTP id i28so5677905lfl.2 for <9front@9front.org>; Thu, 26 Aug 2021 03:02:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=+IvgaRu6iuDRgTkz/Dmdlrc6NOitVv2ILkg0O1zj8lE=; b=ueA3M20uFGWtgFncEhaWxRDswUGXATOAZAq19RWu/rrkPSjXvfx4f2qUwpLfevAQtJ s5V4QskNe9t590k0GTGbq43ta33hdaJxH3bpyQnys56Gi34+JI5WCyLRVKUKaen9pgUC hxo888xB9c80RFHT/JVF+fzY9rlut/mzovTq7j8vCjkBr+IQ9auLqWQpBA5piB+jeCoK 0P7IL/TXM8kT137jTnotcAShniWqiwLKL2tzHYPqzexLZ6ltKGH7D3ZTLZ77MyI6oV2f eXH/sq8kkAgwzDtTr+4L0OHff/3llzuD/w/mKBKFMnu5FR3l7A1V7jfmA6ThvRO/4962 voQw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=+IvgaRu6iuDRgTkz/Dmdlrc6NOitVv2ILkg0O1zj8lE=; b=c2pTiOAIJIuvH5VmqmcRxB7X+dBujl2jCf0yL9b6kJDwjfUxcbnQRg9gpzU5SQTR42 EWGP6Mg44/gyEmEBVmDYPe9o3KaBIi7b2tBshDG2yRoTMH/34Zwchc3VMLAQGXje7bzG KoLlZU7a5fdZYirZh9irVoz0iNxXtoUphKnFXyxKdpoOgIewTIqx9BuHKFKJ7vaBEz5O qE0VJuBgoBrLiXTTZ9JxHSt+YwKgGN01KT9qsaf8UbBY3vxYDJPIOl1+bdLBwmOaI2Ay UBimohkPAIagNPjKx0AvW+H+vvysNordhi/eETAwl/JVnQvIuh7z/1C9UX3aaSkTaiId XxLQ== X-Gm-Message-State: AOAM533kYn7nyGbbp7CcJ2SaTUf2hTEZNBgXOx+6GWKaz1YNqSfK+u2Q coix8AswcyVbJiMoxXz5bz4h+gMc5hlkmrO8BVjvTG195KKuTg== X-Google-Smtp-Source: ABdhPJz4Ouzr4Sz+Qu/q7tanEh7PHG7MNmZ91Rq1ioKuEa2bxr9IDtrqq2//URSuW6AgSjuKEC2YEoT5G6CRRH71Jl8= X-Received: by 2002:a05:6512:21c3:: with SMTP id d3mr2026833lft.226.1629972134629; Thu, 26 Aug 2021 03:02:14 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a2e:80c9:0:0:0:0:0 with HTTP; Thu, 26 Aug 2021 03:02:13 -0700 (PDT) In-Reply-To: <8F5E7C0A51EB7FA27428D24AEBB76D77@eigenstate.org> References: <8F5E7C0A51EB7FA27428D24AEBB76D77@eigenstate.org> From: Stuart Morrow Date: Thu, 26 Aug 2021 11:02:13 +0100 Message-ID: To: 9front@9front.org Content-Type: text/plain; charset="UTF-8" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: standard full-stack plugin core control Subject: Re: [9front] Re: man pages Reply-To: 9front@9front.org Precedence: bulk On 25/08/2021, ori@eigenstate.org wrote: > ... these changes appear to be in the last commit: Yeah, you're right. Not sure how I worked that out (either the website or 9front-commits, but they're both right, just count the number of '+++'s). So for what files am I supposed to separate troff/informational changes from grammar ones? In any case your reason for wanting them separate is sound; a patch should do one thing, preferably well. From 9front-bounces@1ess.inri.net Thu Aug 26 11:40:53 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17QBeqMk027380 for ; Thu, 26 Aug 2021 11:40:53 GMT Received: from out2.migadu.com ([188.165.223.204]) by 4ess; Thu Aug 26 07:32:05 -0400 2021 Date: Thu, 26 Aug 2021 12:31:37 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=biobuf.link; s=key1; t=1629977517; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=xh9uvrUrHr2ns5TANLuGXX4fkI+kOriPEY2uy6R/Dro=; b=PcD1/cVqgueNzfh11mkEWgp44nJanI3FOvn3QPTiDD3fZaKMqeel1suLMm3SVL3+FfNf10 xWC63ItuzWYuLWS2Xf3AEACdnKCv6RJ6mALr0ARFT8rXw1m9FSnhc5A0CqX/1GKQ37MKi5 bExk4o0coBcIVbCy0A+FLTpvgW+CrSA= X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: james palmer To: 9front@9front.org In-Reply-To: References: Message-ID: <0A85BD7D-C04C-4028-8168-B943DC56057F@biobuf.link> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 X-Migadu-Flow: FLOW_OUT X-Migadu-Auth-User: james@biobuf.link List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: ORM self-signing realtime grid Subject: Re: [9front] plan9.ini fs= should accept full dial strings Reply-To: 9front@9front.org Precedence: bulk Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17QBeqMk027380 Quoth sl@stanleylieber.com: > let's say we want to do both serve a full file system > to certain clients *and* serve a specially constructed > namespace to generic clients trying to 9fs us on the > standard port. > > currently, plan9.ini fs= value must be just an ip > address or host name. the system translates it > internally to tcp![ip]!564. > > why can't fs= be any valid dial string? > > sl seems to be because the port depends onthe value of bootargs. tcp boot is on 564 and tls boot is 17020. to keep compatibility with existing plan9.ini files the fs variable would need to be parsed to see if a port has been specified. another option might be to treat bootargs as a dialstring (similar to how local filesystems are handled) like so: bootargs=local!/dev/sdE0/fs -> local hjfs bootargs=tls!192.168.0.2 -> tls to the 192.168.0.2 file server bootargs=tcp!biobuf.link!555 -> tcp boot to a remote file server on a non standard port - james From 9front-bounces@1ess.inri.net Thu Aug 26 14:48:37 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 4ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17QEmaY0000103 for ; Thu, 26 Aug 2021 14:48:36 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 4ess; Thu Aug 26 10:33:40 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id 637f080e (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9front@9front.org>; Thu, 26 Aug 2021 07:26:21 -0700 (PDT) Message-ID: <10511866FBD98171F82D0BCAFA6BB60E@eigenstate.org> To: 9front@9front.org Date: Thu, 26 Aug 2021 10:26:20 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: optimized HTTP over ACPI storage realtime-java manager Subject: Re: [9front] Re: man pages Reply-To: 9front@9front.org Precedence: bulk Quoth Stuart Morrow : > On 25/08/2021, ori@eigenstate.org wrote: > > ... these changes appear to be in the last commit: > > Yeah, you're right. Not sure how I worked that out (either the website > or 9front-commits, but they're both right, just count the number of > '+++'s). > > So for what files am I supposed to separate troff/informational > changes from grammar ones? > future patches, if you find more issues and improvements. I'm not asking you to rework anything that's been sent. From bounce.mM59f260c07265cbbe30e9c897.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Thu Aug 26 22:08:07 2021 Return-Path: Received: from tb-ob0.topicbox.com (tb-ob0.topicbox.com [64.147.108.117]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17QM86L9001030 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Thu, 26 Aug 2021 22:08:06 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob0.topicbox.com (Postfix) with ESMTP id 9836531D0B for ; Thu, 26 Aug 2021 18:02:35 -0400 (EDT) (envelope-from bounce.mM59f260c07265cbbe30e9c897.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id DD48734E667C; Thu, 26 Aug 2021 18:02:35 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=to:subject :message-id:in-reply-to:references:date:mime-version :content-type:content-transfer-encoding:from:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=7MjsET88hg2R+CQ5r2ypWEIBk+cKafIVrQt/9Lm7oa8=; b=iwZjmxA+Vvtd iKFQv19V4ulblz5E71D/WZTD2WWqJfxsQG7zyUulDGrjTMYUPeDa5pcgldyRwP9H yhfFNcUxqpJhIjYqYpAo/bnZn2lyMhjo5rVmokSurqiLsHp+NUcvFt3pZvEc1QSn gJGuhRz3rUFqSYHxEnv+kwXn1ET83xw= To: 9fans <9fans@9fans.net> Subject: Re: [9fans] Breaking up long lines in sam into more manageable ones Message-Id: <16300152900.bbF608B.30490@composer.9fans.topicbox.com> In-Reply-To: <26D4D0A3-5AA3-4D58-861D-C0A494068DAC@icloud.com> References: <16299156410.9E31f8.221008@composer.9fans.topicbox.com> <26D4D0A3-5AA3-4D58-861D-C0A494068DAC@icloud.com> Date: Thu, 26 Aug 2021 18:01:30 -0400 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="16300152901.26497B3Ae.30490" Content-Transfer-Encoding: 7bit Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 2b9aab40-06b9-11ec-afb5-89d69134e1fa Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UOGRmNzYwODYxYWUyYzhjZC1NNTlmMjYwYzA3MjY1Y2JiZTMwZTlj?= =?UTF-8?B?ODk3Pg==?= From: "fwrm via 9fans" <9fans@9fans.net> List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M59f260c07265cbbe30e9c897:1:tmxQ-gtdNJ88WBOeyYGWQ0R3FuN7wdu3kRWNkn3rgno --16300152901.26497B3Ae.30490 Date: Thu, 26 Aug 2021 18:01:30 -0400 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wednesday, 25 August 2021, at 9:31 PM, David Leimbach wrote: > Try in the tagline=C2=A0 > Edit ,|fold -s -w80 > Highlight it and middle click it. Yeah but that's acme not sam. You can do: ,|your_cmd ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T8df760861ae2c8cd-M59f26= 0c07265cbbe30e9c897 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription --16300152901.26497B3Ae.30490 Date: Thu, 26 Aug 2021 18:01:30 -0400 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On Wednesday, 25 August 2021, at 9:31 PM, Davi= d Leimbach wrote:
Try in the tagl= ine 
Edit ,|fold -s -w80
Highlight it = and middle click it.

Yeah but= that's acme not sam.

You can do: ,|yo= ur_cmd
= --16300152901.26497B3Ae.30490-- From bounce.mM7bea4a61bbec9c44457d0721.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Thu Aug 26 22:58:27 2021 Return-Path: Received: from tb-ob20.topicbox.com (tb-ob20.topicbox.com [173.228.157.66]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17QMwRoH026641 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Thu, 26 Aug 2021 22:58:27 GMT Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob20.topicbox.com (Postfix) with ESMTP id BEC70304B7 for ; Thu, 26 Aug 2021 18:49:04 -0400 (EDT) (envelope-from bounce.mM7bea4a61bbec9c44457d0721.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id 82A1233A3D80; Thu, 26 Aug 2021 18:49:04 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=icloud.com header.i=@icloud.com header.b=fvemL/wg header.a=rsa-sha256 header.s=1a1hai x-bits=2048; dmarc=pass policy.published-domain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=icloud.com; spf=pass smtp.mailfrom=leimy2k@icloud.com smtp.helo=mr85p00im-zteg06011501.me.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=content-type:content-transfer-encoding :mime-version:subject:date:message-id:references:in-reply-to:to :from:list-help:list-id:list-post:list-subscribe:reply-to :list-unsubscribe; s=sysmsg-1; t=1630018144; bh=0gN7ywMLcWhcnw9J acZE1QSn5kRBLGuHYWOa4TbBu2I=; b=QZ6BJoSxF+EXFMRBLzXhbx0nkOzK4+kt d2PCWctHokB7TsprK/tOAfGe/MqEQgDaPSWjugtE23BYQ/JzNF2E6ICYj9GD+ked mOuyTVk8H5U91eAwexSM7FnF5o3Smsf/h2MrDEYnZjNoN64XR1LAJRl7RSsX5xsN N9bKqcXt450= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1630018144; b=Ixb26m8XpPqvXSRJzTJ3VP8h5rs5R8nHN1qthuRFuhgqgW35dB odq6eWAnJJMmOUnJhldUCDejk2GwJT2H5JaMBz18tcWQvXaoRjVLiU2t7aBkYHzH K8QY4mfwi+aODvODGSg2tESCFWWEstzVs6H/9yLrQtNjQM48Aw2SxemtY= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=icloud.com header.i=@icloud.com header.b=fvemL/wg header.a=rsa-sha256 header.s=1a1hai x-bits=2048; dmarc=pass policy.published-domain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=icloud.com; spf=pass smtp.mailfrom=leimy2k@icloud.com smtp.helo=mr85p00im-zteg06011501.me.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: tb-mx1.topicbox.com; arc=none (no signatures found); bimi=none (No BIMI records found); dkim=pass (2048-bit rsa key sha256) header.d=icloud.com header.i=@icloud.com header.b=fvemL/wg header.a=rsa-sha256 header.s=1a1hai x-bits=2048; dmarc=pass policy.published-domain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=icloud.com; iprev=pass smtp.remote-ip=17.58.23.182 (mr85p00im-zteg06011501.me.com); spf=pass smtp.mailfrom=leimy2k@icloud.com smtp.helo=mr85p00im-zteg06011501.me.com; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mr85p00im-zteg06011501.me.com policy.ptr=mr85p00im-zteg06011501.me.com; x-return-mx=pass header.domain=icloud.com policy.is_org=yes (MX Records found: mx02.mail.icloud.com,mx01.mail.icloud.com); x-return-mx=pass smtp.domain=icloud.com policy.is_org=yes (MX Records found: mx02.mail.icloud.com,mx01.mail.icloud.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h= content-type:content-transfer-encoding:mime-version:subject:date :message-id:references:in-reply-to:to:from:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=BC/7DGwhRvmbgJ/fAv7BdsfLi+b7gqIpS3M4zBGtqFU=; b=fhHuQPE/TZ8Y M0T4wmo7AUC+qQsNu9Btt4zSuoEuQlwBD9/s/GzZiKJ4c153ctgq8iwE0eBUsNfM ctRAOVDvfj+wcrSvDJ5Xh5k3WSHg0tCb9Fe0j+PJt+tv438ZAgJPpdMV/MWSGdJk QU4V5pGpyMZDbDxeO4u7ENLBjBHFBWg= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id B5EA834F0A31 for <9fans@9fans.net>; Thu, 26 Aug 2021 18:47:45 -0400 (EDT) (envelope-from leimy2k@icloud.com) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id 622FACFE5BB; Thu, 26 Aug 2021 18:47:45 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1630018065; b=NI9Qb5YXJfEiNUd7wf1uKhkGfkGV0v1TmrwypNB1Dq+aWc4JP8 tyhf890SfdVds6NA3ks/Mr2Ma/5uKEiP0I1v+NdYD2a8bkW0VUctPpE9D97OiWdQ QoJknEoDyrhQ2SVBVtIP7eKUltAIBogj/Z7jw+7pJDqOlqsyj8GohOlC3ZI4U2C0 /tiKtDqhBxIs1ISc1Tb1F4rodA6ffGQ+2uH+Tn7u+CZKa7IB3bdMPh4vjzseyrJ1 9dpGt+zmwAfYabvvZkYnCBSl45cATHF13s8a+2fI9a66E2Odd8xbwzRuzz2GnTMz SgqC0ByyH9tfhmEQBkQilE6MwfkevV82HVEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=content-type:content-transfer-encoding:from :mime-version:subject:date:message-id:references:in-reply-to:to; s=arcseal; t=1630018065; bh=ZhQFKIbBcxQipgXp1cFCO4xI629+zZnT/ng 3oVGZEgQ=; b=XKEwVA4ufN4KWoizB3+Fmr87LVgSXxk/p9rz3x0PR+2fHooF6/c 7m1ANGSf7NYdQR7lt0t2fatkqdug60x8gmCgw2tWfn2G3rVfuetWkJjz7e03LTdm TJN3kKeXssuH3Yiznv4Rkmn9NlYX8i2Sc7qplyAs+U4GkRoHG9IY3yPhzSc3yXsq e8UNPtZ63/e2f+AEYn2U7qGb9kg1k2Elhb5HcBbr80e510Hpy5BmMb+1OMrzYGZ0 2pna/6HnrA/mgMWO5Z/q6z5z7d6Ic6ERY6HTk5wg5qHnMEz8gg3WJg7RAc1Lp5fs xmtRzhRlMWl8AAjTl5T5fN5u8JPiBWHRnig== ARC-Authentication-Results: i=1; tb-mx1.topicbox.com; arc=none (no signatures found); bimi=none (No BIMI records found); dkim=pass (2048-bit rsa key sha256) header.d=icloud.com header.i=@icloud.com header.b=fvemL/wg header.a=rsa-sha256 header.s=1a1hai x-bits=2048; dmarc=pass policy.published-domain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=icloud.com; iprev=pass smtp.remote-ip=17.58.23.182 (mr85p00im-zteg06011501.me.com); spf=pass smtp.mailfrom=leimy2k@icloud.com smtp.helo=mr85p00im-zteg06011501.me.com; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=mr85p00im-zteg06011501.me.com policy.ptr=mr85p00im-zteg06011501.me.com; x-return-mx=pass header.domain=icloud.com policy.is_org=yes (MX Records found: mx02.mail.icloud.com,mx01.mail.icloud.com); x-return-mx=pass smtp.domain=icloud.com policy.is_org=yes (MX Records found: mx02.mail.icloud.com,mx01.mail.icloud.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddruddutdculddtuddrgeduhedrtddtmdcute fuodetggdotefrodftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggftfghnshhu sghstghrihgsvgdpuffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftddtnecune cujfgurheptgfghfggufffkfhfjgfvofesrgejmherhhdtjeenucfhrhhomhepffgrvhhi ugcunfgvihhmsggrtghhuceolhgvihhmhidvkhesihgtlhhouhgurdgtohhmqeenucggtf frrghtthgvrhhnpeefieehkeegueeiffdvffeijeegffeijefgvdffveevieeggffhvdef tedugfffieenucffohhmrghinhepthhophhitggsohigrdgtohhmnecukfhppedujedrhe ekrddvfedrudekvddpieeirdeluddrudegledruddvvdenucevlhhushhtvghrufhiiigv pedtnecurfgrrhgrmhepihhnvghtpedujedrheekrddvfedrudekvddphhgvlhhopehmrh ekhehptddtihhmqdiithgvghdtiedtudduhedtuddrmhgvrdgtohhmpdhmrghilhhfrhho mhepoehlvghimhihvdhksehitghlohhuugdrtghomheq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (icloud.com: 17.58.23.182 is authorized to use 'leimy2k@icloud.com' in 'mfrom' identity (mechanism 'ip4:17.58.0.0/16' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="leimy2k@icloud.com"; helo=mr85p00im-zteg06011501.me.com; client-ip=17.58.23.182 Received: from mr85p00im-zteg06011501.me.com (mr85p00im-zteg06011501.me.com [17.58.23.182]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Thu, 26 Aug 2021 18:47:45 -0400 (EDT) (envelope-from leimy2k@icloud.com) Received: from smtpclient.apple (rrcs-66-91-149-122.west.biz.rr.com [66.91.149.122]) by mr85p00im-zteg06011501.me.com (Postfix) with ESMTPSA id D4D302A0290 for <9fans@9fans.net>; Thu, 26 Aug 2021 22:47:42 +0000 (UTC) Content-Type: multipart/alternative; boundary="Apple-Mail-F5DC275C-E115-48DC-B86A-165E28FDF98A" Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (1.0) Subject: Re: [9fans] Breaking up long lines in sam into more manageable ones Date: Thu, 26 Aug 2021 12:47:40 -1000 Message-Id: <189F5602-1CCB-43C9-9F42-DC6CFE7AA049@icloud.com> References: <16300152900.bbF608B.30490@composer.9fans.topicbox.com> In-Reply-To: <16300152900.bbF608B.30490@composer.9fans.topicbox.com> To: 9fans <9fans@9fans.net> X-Mailer: iPad Mail (19A5325f) X-Proofpoint-Virus-Version: =?UTF-8?Q?vendor=3Dfsecure_engine=3D1.1.170-22c6f66c430a71ce266a39bfe25bc?= =?UTF-8?Q?2903e8d5c8f:6.0.391,18.0.790,17.0.607.475.0000000_definitions?= =?UTF-8?Q?=3D2021-08-26=5F04:2021-08-26=5F01,2021-08-26=5F04,2020-04-07?= =?UTF-8?Q?=5F01_signatures=3D0?= X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 spamscore=0 phishscore=0 mlxlogscore=554 suspectscore=0 malwarescore=0 clxscore=1015 bulkscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2009150000 definitions=main-2108260126 Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: a4155146-06bf-11ec-8f1f-d18c116e1c5b Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UOGRmNzYwODYxYWUyYzhjZC1NN2JlYTRhNjFiYmVjOWM0NDQ1N2Qw?= =?UTF-8?B?NzIxPg==?= From: "David Leimbach via 9fans" <9fans@9fans.net> List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M7bea4a61bbec9c44457d0721:1:Ecx45j7SBUVKJAJuBGRkwlp6Wod-_s2UtCXlDyhhPJQ --Apple-Mail-F5DC275C-E115-48DC-B86A-165E28FDF98A Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Sent from my iPad > On Aug 26, 2021, at 12:01 PM, fwrm via 9fans <9fans@9fans.net> wrote: >=20 > =EF=BB=BF >> On Wednesday, 25 August 2021, at 9:31 PM, David Leimbach wrote: >> Try in the tagline=20 >> Edit ,|fold -s -w80 >> Highlight it and middle click it. >=20 > Yeah but that's acme not sam. Oh yeah! Sorry=E2=80=A6. >=20 > You can do: ,|your_cmd > 9fans / 9fans / see discussions + participants + delivery options Permali= nk ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T8df760861ae2c8cd-M7bea4= a61bbec9c44457d0721 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription --Apple-Mail-F5DC275C-E115-48DC-B86A-165E28FDF98A Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable

Sent from my iPad

On Aug 26, 2021, at 12:01 PM, fwrm via 9fans <9fans@9fans.net> wrote= :

= 
On Wednesday, 25 August 2021, at 9:31 PM, David Leimbach wrote:
<= /div>
Try in the tagline 
Edit ,|fold -s -w80
Highlight it and middle click it.

Yeah but that's acme not sam= .

Oh yeah! Sorry&hellip= ;.


<= div>You can do: ,|your_cmd
= --Apple-Mail-F5DC275C-E115-48DC-B86A-165E28FDF98A-- From 9front-bounces@1ess.inri.net Fri Aug 27 15:58:53 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17RFwq0l019148 for ; Fri, 27 Aug 2021 15:58:53 GMT Received: from oat.nine.sirjofri.de ([5.45.105.127]) by 4ess; Fri Aug 27 03:30:13 -0400 2021 Received: from sirjofri.de ([95.90.218.213]) by oat; Fri Aug 27 08:47:06 +0200 2021 Date: Fri, 27 Aug 2021 06:47:05 +0000 (UTC) From: sirjofri To: 9front@9front.org Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Correlation-ID: List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: mobile private grid API map/reduce enhancement-oriented manager Subject: [9front] git(1) "see also" consistency Reply-To: 9front@9front.org Precedence: bulk adds commas between "see also" entries to make it consistent with other man pages. --- /sys/man/1/git +++ git @@ -639,9 +639,9 @@ The contents of this file are used as fallbacks for the per-user config. .SH SEE ALSO -.IR replica (1) -.IR patch (1) -.IR gitfs (4) +.IR replica (1), +.IR patch (1), +.IR gitfs (4), .IR diff3 .SH BUGS From 9front-bounces@1ess.inri.net Fri Aug 27 15:58:56 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17RFwtv0010099 for ; Fri, 27 Aug 2021 15:58:55 GMT Received: from mail-io1-f53.google.com ([209.85.166.53]) by 4ess; Fri Aug 27 09:24:45 -0400 2021 Received: by mail-io1-f53.google.com with SMTP id n24so8423372ion.10 for <9front@9front.org>; Fri, 27 Aug 2021 06:24:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:subject:user-agent:in-reply-to:references:message-id :mime-version:content-transfer-encoding; bh=R0iE0TpaXh1OK5UitsdPdWyxYJ8Hopz6mHnSjQ8zCls=; b=Q3oPpGNQcubFP3mQhCjc4+5vuYPDsfh2j4uvUlI6slqaKv5iF+/MTifwnAsWYEgGDR 6/RIUL9rqekBYEoheyeFOq5aRuz8+fdujVoG+7aiyZGD+w6MgWXuASm+eGMpgG8H7qn7 RxyUyGivG8GQKEU0OGnzt3JAheBDMBjW1Atb4rMrh9EdgHr5hBUf5Fq/+HGPfQJhH7Mw sjAtJO94UnYl5jGnoGO+lqD0W66t0A9fBxac0EDvATItT3fxPZz3QWLO20I27Vq/DjnQ q9A041nyfSFcZGabbpo+glGH9nHmf1gGxZO1ajTKlrwzNLXU5AOBRUPLBFDrz3Fjit7m J8pQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:subject:user-agent:in-reply-to :references:message-id:mime-version:content-transfer-encoding; bh=R0iE0TpaXh1OK5UitsdPdWyxYJ8Hopz6mHnSjQ8zCls=; b=ZU2ppHzjzqXA8BEuT+nZ2VzJ03ogCSea2c5X6UdTJA/biqA2siiyswEX56a0yVxb/f Ky6slrvsokQTGs+sx+bhy0/XELpwp4Vq9nW4eR8UWjh1zFpFju7tZuDbS9CX1FMcrD/5 yKEcQKaJWqflgy5Ujc6GE5gMPdttpfNguM7QxUmC6VgfqBVnIETJ7MWfHbXrkND0xl0K pTo/hX/y8G5cgK6Pu8cQJ5YHh4BIW8t6pxbCCvHXcVdcp50BjOGHQWxHoz0KgJWmy5xa f923FkYQZ4Y+2OawcArHARJy4Gg5N9ygPTBGWYwDGduT34nLHFh7MZDwpO0XPpqWfFrt aAQg== X-Gm-Message-State: AOAM530hfC7eUHq+BtbXGOXEDN8JZLZiM639KkY2LaesaE8fd4YfiCiF BwmkoiLl3mQMsI7GT+mEjKyaN7ZW6Do= X-Google-Smtp-Source: ABdhPJz0DK1/GKEa1Ug0UJdYc0shxrgCqI9uuA7cc0RvMzdxq9luLQl0qDfRdTdEeYd8OX/kCllY2g== X-Received: by 2002:a5d:91d2:: with SMTP id k18mr7558884ior.20.1630070672898; Fri, 27 Aug 2021 06:24:32 -0700 (PDT) Received: from ?IPv6:::1? ([2601:246:4e03:dc20:c931:a755:4458:bd45]) by smtp.gmail.com with ESMTPSA id s6sm3224052iow.1.2021.08.27.06.24.31 for <9front@9front.org> (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 27 Aug 2021 06:24:32 -0700 (PDT) Date: Fri, 27 Aug 2021 08:24:28 -0500 From: Amavect To: 9front@9front.org User-Agent: K-9 Mail for Android In-Reply-To: References: Message-ID: <42C33B60-8F7F-497B-BECB-A978F03EA84D@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: virtualized realtime JSON reduce/map storage-based enhancement storage-based manager Subject: Re: [9front] git(1) "see also" consistency Reply-To: 9front@9front.org Precedence: bulk Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by mx.sdf.org id 17RFwtv0010099 On August 27, 2021 1:47:05 AM CDT, sirjofri wrote: >adds commas between "see also" entries to make it consistent Looks ok. Please use git/diff or git/export to make git/import easier. Update if you haven't. >.IR diff3 Looks like this should be fixed, too. Thanks, Amavect From 9front-bounces@1ess.inri.net Fri Aug 27 15:58:58 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17RFwveU015883 for ; Fri, 27 Aug 2021 15:58:57 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 4ess; Fri Aug 27 10:42:22 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id ab596281 (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9front@9front.org>; Fri, 27 Aug 2021 07:41:45 -0700 (PDT) Message-ID: To: 9front@9front.org Date: Fri, 27 Aug 2021 10:41:43 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: full-stack package core realtime-java control Subject: Re: [9front] git(1) "see also" consistency Reply-To: 9front@9front.org Precedence: bulk Quoth sirjofri : > adds commas between "see also" entries to make it consistent with other > man pages. > > --- /sys/man/1/git > +++ git > @@ -639,9 +639,9 @@ > The contents of this file are used as fallbacks for the per-user config. > > .SH SEE ALSO > -.IR replica (1) > -.IR patch (1) > -.IR gitfs (4) > +.IR replica (1), > +.IR patch (1), > +.IR gitfs (4), > .IR diff3 > > .SH BUGS somehow the leading spaces got trimmed -- applied by hand. thanks! From 9front-bounces@1ess.inri.net Fri Aug 27 15:59:51 2021 Return-Path: <9front-bounces@1ess.inri.net> Received: from 1ess.inri.net (1ess.inri.net [216.126.196.35]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17RFxpEX002324 for ; Fri, 27 Aug 2021 15:59:51 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 4ess; Fri Aug 27 11:08:01 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id bb1f2e15 (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9front@9front.org>; Fri, 27 Aug 2021 08:07:32 -0700 (PDT) Message-ID: To: 9front@9front.org Date: Fri, 27 Aug 2021 11:07:31 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: session TOR over HTTP module singleton Subject: Re: [9front] Re: commit 2f8a59f4b5bfe028c022855acc19666d69eed909 Reply-To: 9front@9front.org Precedence: bulk Quoth Anthony Martin : > > rc: add subshell-function syntax > > > > fn foo @{bar} is now equivalent to > > fn foo {@{bar}}. As a side effect, > > this disallows creating functions > > named after keywords without first > > quoting them. > > Respectfully, this is just wrong. @ is a > unary operator. Repurposing it to define > a new special kind of function is a bit > much. > > What does this buy you over being explicit > at the call site? > > fn foo { bar } > > @foo > > One color of function is enough. What's > next? > > fn foo !{ bar } > > to mean that foo always negates the exit > status of its body? > > The new quoting requirement for functions > named after keywords seems fine, on the > other hand. But is it worth the backwards > incompatibility? > > Thanks, > Anthony > After a bunch of time/thought, trying it out, and realizing I'm not really getting much mileage out if it: I'm going to revert this some time next week. From bounce.mM7b0cae6b9565025cd21584fa.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com Fri Aug 27 17:13:06 2021 Return-Path: Received: from tb-ob0.topicbox.com (tb-ob0.topicbox.com [64.147.108.117]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17RHD56g018519 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256 bits) verified NO) for ; Fri, 27 Aug 2021 17:13:06 GMT Received: from tb-mx1.topicbox.com (tb-mx1.nyi.icgroup.com [10.90.30.61]) by tb-ob0.topicbox.com (Postfix) with ESMTP id 268DD36F01 for ; Fri, 27 Aug 2021 04:56:18 -0400 (EDT) (envelope-from bounce.mM7b0cae6b9565025cd21584fa.rf428fd94-eb83-11e9-92f5-7ab8f5b1d025@9fans.bounce.topicbox.com) Received: by tb-mx1.topicbox.com (Postfix, from userid 1132) id 22D503500F3B; Fri, 27 Aug 2021 04:56:18 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=from:to :subject:message-id:in-reply-to:references:date:mime-version :content-type:content-transfer-encoding:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=nOYREq+XqMyxVv1R2EO7AywzwS74v/RTq79xpvXq4x0=; b=XjtGo40QOEsN 0X6SDntvMzYIaYlAPRDY9aECVxyWAVea4SGgvGwpZD6buZ6XycTaBvA5lUCwhuHg ZP0JyR0NoQ/nznvfLbI9/NNEY91rl8kVNz0pXnz8DwkSBv1V23/FE7Pq4W7GXdj/ S+KAq+gQqu21vdh1bKnB5FjgYmA7xbg= From: revcomninos@gmail.com To: 9fans <9fans@9fans.net> Subject: Re: [9fans] Breaking up long lines in sam into more manageable ones Message-Id: <16300545250.AC3dE.892448@composer.9fans.topicbox.com> In-Reply-To: <189F5602-1CCB-43C9-9F42-DC6CFE7AA049@icloud.com> References: <16300152900.bbF608B.30490@composer.9fans.topicbox.com> <189F5602-1CCB-43C9-9F42-DC6CFE7AA049@icloud.com> Date: Fri, 27 Aug 2021 04:55:25 -0400 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="16300545251.7fA680cEB.892448" Content-Transfer-Encoding: 7bit Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 851f251e-0714-11ec-ac19-4bc5242d11b0 Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UOGRmNzYwODYxYWUyYzhjZC1NN2IwY2FlNmI5NTY1MDI1Y2QyMTU4?= =?UTF-8?B?NGZhPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:f428fd94-eb83-11e9-92f5-7ab8f5b1d025:M7b0cae6b9565025cd21584fa:1:dyTjCwVqw980S7nPIG_uUhDN5cZ6ugK6gFVJNB3vP1c --16300545251.7fA680cEB.892448 Date: Fri, 27 Aug 2021 04:55:25 -0400 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Thank you so much for these answers. I greatly appreciate it.=C2=A0 ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T8df760861ae2c8cd-M7b0ca= e6b9565025cd21584fa Delivery options: https://9fans.topicbox.com/groups/9fans/subscription --16300545251.7fA680cEB.892448 Date: Fri, 27 Aug 2021 04:55:25 -0400 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Thank you so much for these answers. I greatly= appreciate it. 
= --16300545251.7fA680cEB.892448-- From 9front-bounces@4ess.inri.net Sat Aug 28 01:10:25 2021 Return-Path: <9front-bounces@4ess.inri.net> Received: from 4ess.inri.net (th.inri.net [216.126.196.42] (may be forged)) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17S1AOHC018842 for ; Sat, 28 Aug 2021 01:10:25 GMT Received: from 5ess.inri.net ([107.191.111.177]) by 4ess; Thu Aug 26 23:24:22 -0400 2021 Message-ID: <42186B6473D73F0FE25FD531324B4159@5ess.inri.net> Date: Thu, 26 Aug 2021 23:24:17 -0400 From: sl@stanleylieber.com To: 9front@9front.org MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: lossless extended core core locator Subject: [9front] sysupdate to restore 9fs 9front functionality Reply-To: 9front@9front.org Precedence: bulk moved our file exports to port 9000. sl From 9front-bounces@4ess.inri.net Sat Aug 28 13:51:19 2021 Return-Path: <9front-bounces@4ess.inri.net> Received: from 4ess.inri.net (th.inri.net [216.126.196.42] (may be forged)) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17SDpI5B010724 for ; Sat, 28 Aug 2021 13:51:18 GMT Received: from mail-io1-f53.google.com ([209.85.166.53]) by 4ess; Sat Aug 28 09:29:02 -0400 2021 Received: by mail-io1-f53.google.com with SMTP id y18so12895812ioc.1 for <9front@9front.org>; Sat, 28 Aug 2021 06:28:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:subject:message-id:in-reply-to:references:organization :mime-version; bh=E9lUd519wfgDw6fPuHGsh4sJiv4un7/+QugPuUv0QR8=; b=Kb6JDLxRquQQl4r7XuZV5gQCVMYedQtq8lOz1+xpxHjbaShZIhsBFJGQI1dMedgVzH 6clzQGH6PhYpx9uifpynClDckT8FXw06Z04LTwrJIM+a9CwGC1T2jgvimc1VUm2lImo4 /Hx+e4ll6G1EKX9g6SzTykTSR5uN5Akzj8IY2Okb/tWimbS/XKK+m+qE+MPXZltG+3Ms EcJz6MiTJtWrGyr2LyB+0qEe47oJXdQm7mJOy3dT3mJ5hHbIYVXwMctmxftatrBJGZ1z icZjXiMnzlPGlqftUysNFwvRMRiAmHP18q1sE7RvLvoWv5mhFCisf3Uf/feIptGUSozQ KyJg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:subject:message-id:in-reply-to :references:organization:mime-version; bh=E9lUd519wfgDw6fPuHGsh4sJiv4un7/+QugPuUv0QR8=; b=FajT625wY6YRKpP4fxwgS3Yi5uvzXEW1bYh14bWQhuRlRbjPcB9gnurhrZx4qv9g+0 qWrYZHnWvVLQuXjdgtykFRpxkkKFqydcoOcz3VmZhH2oRsbuiaSipTzIQT+Y7ZXmQ5vP B4511YAwmQl9/H/f8uurZLMOGqK6k6jGQOvvrga1//9tZlP0F4P/AKklXBbJT71Ky3T/ bUE58g4xUYeubNd+cbCkDfSjn0xReXpBZ/j/zq5GDPbRxAFHhX+XG67pNp5isIYtP4zJ vCikmUpp4IhG0/h84Xjh1DIrGgNfIaH3Z2q5Zi27DEjWhpqeDqNGEzO+Ls06Dlz0prqD KnZg== X-Gm-Message-State: AOAM5337WKZ7DMn0G1oAyJYXb36og3oSd4jhQV4g1tWihCkIIjtVhHyH yB/XvV61VaQQ4bHZVeVB7IjEXfE2l2Q= X-Google-Smtp-Source: ABdhPJzhbKwsc1s/4luLsZ+m+uTLC1IRDah7KrJUMQJgZ6gRAqOSFLFt6GZHqwxhIfOZCpW8eVfGbQ== X-Received: by 2002:a05:6602:130c:: with SMTP id h12mr9108163iov.132.1630157333621; Sat, 28 Aug 2021 06:28:53 -0700 (PDT) Received: from spruce.localdomain ([2601:246:4e03:dc20::b5e8]) by smtp.gmail.com with ESMTPSA id b16sm5063882ila.1.2021.08.28.06.28.53 for <9front@9front.org> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Aug 2021 06:28:53 -0700 (PDT) Date: Sat, 28 Aug 2021 08:28:38 -0500 From: Amavect To: 9front@9front.org Message-ID: <20210828082838.1c8ef277@spruce.localdomain> In-Reply-To: <4BE859C83546EA13A46F9ACEF135720D@eigenstate.org> References: <20210824174745.48c6aa87@spruce.localdomain> <4BE859C83546EA13A46F9ACEF135720D@eigenstate.org> Organization: Amavect Industries X-Mailer: Claws Mail 4.0.0 (GTK+ 3.24.30; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/Tqj1WZbxnHl8w+D.AREQnif" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: content-addressed virtual app service singleton-oriented locator Subject: Re: [9front] [PATCH] cmd/mkfile: major cleanup Reply-To: 9front@9front.org Precedence: bulk --MP_/Tqj1WZbxnHl8w+D.AREQnif Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline On Tue, 24 Aug 2021 19:01:33 -0400 ori@eigenstate.org wrote: > Thanks for the ping -- it looks fine with a quick skim, > and I'll try to look closer in the next few days. Chatted with ori yesterday. He had some good ideas with simplifying $NOMK and $DIRS generation. TODO: init.c doesn't really belong in cmd/ and should probably be moved to /sys/src/boot/ since it complicates cmd/mkfile. That will be a separate patch. Thanks, Amavect From: Amavect Date: Sat, 28 Aug 2021 13:15:02 +0000 Subject: [PATCH] cmd/mkfile: major cleanup Target generation is revised, split into $YTARG and $TARG. $PROGS is inlined to the cmd target. %.cpus is added to allow chaining: mk all.cpus $POWERLESS is added, since dtracy doesn't build yet on ppc. $DIRS regexp is simplified, simplifing $NOMK. $cpuobjtype is replaced with cp's recipe for copying itself on $cputype. $APEDIRS is removed. The none target is renamed to usage, since it prints out usage. The ape target is removed. The dirs target is replaced by all.dirs %.directories is replaced by %.dirs The all target serializes directories after cmds to match the install target recipe. All regexp rules are replaced with nonregexp versions for clarity. The &:n: rule is removed. Just build the $O.$cmd file. .y files now build .c files, not .tab.c files, and remove (bc|units|mpc|pc).c:R: All safeinstall rules are removed. The cleanfiles rule is renamed to cleancmds and simplified. %.clean is removed. Just use mk cleancmds. The install rule serializes cp and yacc before building anything else, avoiding races. The installall recipe is simplified with the install.cpus prereq. %.installall is removed. Just use mk $cmd.install.cpus The $O.cj, %.update, and compilers rules are removed. --- diff 61f37abf576a02c7f1e3561cfaba3c0457f55c9d 5fb0b83b0ca45b5830227f0c82af3a7696ad1acc --- a/sys/src/cmd/mkfile Fri Aug 27 09:13:11 2021 +++ b/sys/src/cmd/mkfile Sat Aug 28 08:15:02 2021 @@ -1,137 +1,74 @@ $target -$BIN/%: $O.% $cpuobjtype._cp - ./$cpuobjtype._cp $O.$stem $BIN/$stem +%.cpus:V: + for(objtype in $CPUS) mk $MKFLAGS $stem -%.directories:V: +%.dirs:V: for(i in $DIRS) @{ cd $i echo mk $i mk $MKFLAGS $stem } -clean:V: cleanfiles clean.directories - -nuke:V: cleanfiles nuke.directories - -directories:V: install.directories +cmds:V: $O.cp $O.yacc ${TARG:%=$O.%} -cleanfiles:V: - rm -f [$OS].out *.[$OS] y.tab.? y.debug y.output [$OS].$TARG [$OS].units.tab $TARG bc.c bc.tab.h units.tab.h units.c mpc.c mpc.tab.h [$OS]._cp +all:V: cmds + mk $MKFLAGS all.dirs -%.clean:V: - rm -f [$OS].$stem $stem.[$OS] +%.install:V: $BIN/% -install:V: - test -e $cpuobjtype._cp || cp /bin/cp $cpuobjtype._cp +install:V: cp.install + mk $MKFLAGS yacc.install mk $MKFLAGS $TARG.install - mk $MKFLAGS directories - -installall:V: - for(objtype in $CPUS) - mk $MKFLAGS install - -%.installall: %.c - test -e $cpuobjtype._cp || cp /bin/cp $cpuobjtype._cp - for (objtype in $CPUS) { - rfork e - mk $stem.install & - } - wait - rm -f $stem.[$OS] y.tab.? $stem.tab.? y.debug y.output [$OS].$stem bc.c bc.tab.h units.c mpc.c - -%.acid: %.$O $HFILES - $CC $CFLAGS -a $stem.c >$target + mk $MKFLAGS install.dirs -(bc|units|mpc|pc).c:R: \1.tab.c - mv $stem1.tab.c $stem1.c +installall:V: install.cpus -$BIN/init: $O.init - cp $prereq /$objtype/init +cleancmds:V: + rm -f *.[$OS] [$OS].* y.tab.? y.debug y.output $YTARG.c *.tab.h -$O.cj: cj.$O - $LD $LDFLAGS -o $O.cj cj.$O /$objtype/lib/libjpg.a +clean:V: cleancmds clean.dirs -%.update:V: - update $stem.c /386/bin/$stem - -compilers:V: - for(i in ?c) - if(! ~ $i cc rc) @{ - cd $i - mk clean - objtype=$cputype mk install - mk clean - } - for(i in ?c) - if(! ~ $i cc rc) @{ - cd $i - mk clean - mk installall - mk clean - } +nuke:V: cleancmds nuke.dirs + rm -f *.acid --MP_/Tqj1WZbxnHl8w+D.AREQnif Content-Type: multipart/mixed; boundary="upas-hxwnlzllvahhhvaiaqwufwugan" Content-Disposition: inline This is a multi-part message in MIME format. --upas-hxwnlzllvahhhvaiaqwufwugan Content-Disposition: inline Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit from postmaster@4ess: The following attachment had content that we can't prove to be harmless. To avoid possible automatic execution, we changed the content headers. The original header was: Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=cmdmkfile2.diff --upas-hxwnlzllvahhhvaiaqwufwugan Content-Type: application/octet-stream Content-Disposition: attachment; filename="cmdmkfile2.diff.suspect" From: Amavect Date: Sat, 28 Aug 2021 13:15:02 +0000 Subject: [PATCH] cmd/mkfile: major cleanup Target generation is revised, split into $YTARG and $TARG. $PROGS is inlined to the cmd target. %.cpus is added to allow chaining: mk all.cpus $POWERLESS is added, since dtracy doesn't build yet on ppc. $DIRS regexp is simplified, simplifing $NOMK. $cpuobjtype is replaced with cp's recipe for copying itself on $cputype. $APEDIRS is removed. The none target is renamed to usage, since it prints out usage. The ape target is removed. The dirs target is replaced by all.dirs %.directories is replaced by %.dirs The all target serializes directories after cmds to match the install target recipe. All regexp rules are replaced with nonregexp versions for clarity. The &:n: rule is removed. Just build the $O.$cmd file. .y files now build .c files, not .tab.c files, and remove (bc|units|mpc|pc).c:R: All safeinstall rules are removed. The cleanfiles rule is renamed to cleancmds and simplified. %.clean is removed. Just use mk cleancmds. The install rule serializes cp and yacc before building anything else, avoiding races. The installall recipe is simplified with the install.cpus prereq. %.installall is removed. Just use mk $cmd.install.cpus The $O.cj, %.update, and compilers rules are removed. --- diff 61f37abf576a02c7f1e3561cfaba3c0457f55c9d 5fb0b83b0ca45b5830227f0c82af3a7696ad1acc --- a/sys/src/cmd/mkfile Fri Aug 27 09:13:11 2021 +++ b/sys/src/cmd/mkfile Sat Aug 28 08:15:02 2021 @@ -1,137 +1,74 @@ $target -$BIN/%: $O.% $cpuobjtype._cp - ./$cpuobjtype._cp $O.$stem $BIN/$stem +%.cpus:V: + for(objtype in $CPUS) mk $MKFLAGS $stem -%.directories:V: +%.dirs:V: for(i in $DIRS) @{ cd $i echo mk $i mk $MKFLAGS $stem } -clean:V: cleanfiles clean.directories - -nuke:V: cleanfiles nuke.directories - -directories:V: install.directories +cmds:V: $O.cp $O.yacc ${TARG:%=$O.%} -cleanfiles:V: - rm -f [$OS].out *.[$OS] y.tab.? y.debug y.output [$OS].$TARG [$OS].units.tab $TARG bc.c bc.tab.h units.tab.h units.c mpc.c mpc.tab.h [$OS]._cp +all:V: cmds + mk $MKFLAGS all.dirs -%.clean:V: - rm -f [$OS].$stem $stem.[$OS] +%.install:V: $BIN/% -install:V: - test -e $cpuobjtype._cp || cp /bin/cp $cpuobjtype._cp +install:V: cp.install + mk $MKFLAGS yacc.install mk $MKFLAGS $TARG.install - mk $MKFLAGS directories - -installall:V: - for(objtype in $CPUS) - mk $MKFLAGS install - -%.installall: %.c - test -e $cpuobjtype._cp || cp /bin/cp $cpuobjtype._cp - for (objtype in $CPUS) { - rfork e - mk $stem.install & - } - wait - rm -f $stem.[$OS] y.tab.? $stem.tab.? y.debug y.output [$OS].$stem bc.c bc.tab.h units.c mpc.c - -%.acid: %.$O $HFILES - $CC $CFLAGS -a $stem.c >$target + mk $MKFLAGS install.dirs -(bc|units|mpc|pc).c:R: \1.tab.c - mv $stem1.tab.c $stem1.c +installall:V: install.cpus -$BIN/init: $O.init - cp $prereq /$objtype/init +cleancmds:V: + rm -f *.[$OS] [$OS].* y.tab.? y.debug y.output $YTARG.c *.tab.h -$O.cj: cj.$O - $LD $LDFLAGS -o $O.cj cj.$O /$objtype/lib/libjpg.a +clean:V: cleancmds clean.dirs -%.update:V: - update $stem.c /386/bin/$stem - -compilers:V: - for(i in ?c) - if(! ~ $i cc rc) @{ - cd $i - mk clean - objtype=$cputype mk install - mk clean - } - for(i in ?c) - if(! ~ $i cc rc) @{ - cd $i - mk clean - mk installall - mk clean - } +nuke:V: cleancmds nuke.dirs + rm -f *.acid --upas-hxwnlzllvahhhvaiaqwufwugan-- --MP_/Tqj1WZbxnHl8w+D.AREQnif-- From postmaster@9p.sdf.org Sat Aug 28 18:12:29 2021 Return-Path: Received: from 9p ([205.166.94.15]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17SICT1J006847 for ; Sat, 28 Aug 2021 18:12:29 GMT Message-ID: Date: Sat, 28 Aug 2021 18:12:27 +0000 From: glenda@9p.sdf.org To: smj@9p.sdf.org MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit hey From postmaster@9p.sdf.org Sat Aug 28 20:08:23 2021 Return-Path: Received: from 9p ([205.166.94.15]) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17SK8NgW002899 for ; Sat, 28 Aug 2021 20:08:23 GMT Message-ID: <59D86FBBC38BB06FC1DD8DA501E29725@9p.sdf.org> Date: Sat, 28 Aug 2021 20:08:20 +0000 From: glenda@9p.sdf.org To: smj@9p.sdf.org MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit hey From 9front-bounces@4ess.inri.net Sat Aug 28 20:28:21 2021 Return-Path: <9front-bounces@4ess.inri.net> Received: from 4ess.inri.net (th.inri.net [216.126.196.42] (may be forged)) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17SKSJCg002496 for ; Sat, 28 Aug 2021 20:28:20 GMT Received: from mail-lj1-f177.google.com ([209.85.208.177]) by 4ess; Sat Aug 28 16:22:36 -0400 2021 Received: by mail-lj1-f177.google.com with SMTP id s12so18150661ljg.0 for <9front@9front.org>; Sat, 28 Aug 2021 13:22:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=1oLmM5a/hUntmNA51r3aEAZvevI6QHUAEaw7Lm5x9XA=; b=Ir+MdiX7937JHZOFmAq1Y402ptodeihAD88gBxm/EqIMsvftJwmbwqla/zUh7UOK/+ KPi1srqvwis3q1k4WOQBBsYQAyfmK1Ei3WgJEaISAHhRkCFDrqCxqFB18+IL80qZUz6V B/FvqSXEAsMFDGalXlzabeZhjIWwAlb7/h0LnUQm23Za4cMi2SKRDs2Y7208U265RzUc CTfCfYFpWFKTNl4FP+tgUAUs+UCwyB3FHCA0yqObP6+odD8U5TY1aXBsXsB4VeNR7zX5 +utKHb8Hq1zVsAcb/QDTZfxttU02ss3p0t1cw0Jne7laaMqU0A8nxPBRnUOj3/9IYDWp znDg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=1oLmM5a/hUntmNA51r3aEAZvevI6QHUAEaw7Lm5x9XA=; b=cH4hqcUWMeUHc5rxav7ashgwGtsHWjGQqtdTaHfg4RVRza2A/HNM1U75rSdBFnFdO6 DO8LntBODq+SOtlsKGNhk0FSmR+Fe8cAqkWwK7QwD6AyMbp9F9wWSo3rKVvDFQXhdGdc TjkQQbk+mMblxfFWkTfFNlrQMranH115KsJ3MSa+XWF6BtnWilyCoxeq8uezPXXPYTMt WpPi4yNFCQsO6ItL6ZFfTjNb8G8SsQnJB4mS9f8tU2guHe3YV2MBVzS/KULtsMRPR4Lm AdcDOO4BppZjROcF4VarRffOYJ7qrVT4myO3BowouzGXu3CzFJqs792cCrapycha9cfq FQkQ== X-Gm-Message-State: AOAM530f2RGgHV3EUPKmMaQk8v9osF5CVG0CZF7ucTkC0aLHz/vF/iDP bNh3/lOmQtITd5F0YCsyHzoEZURhi9uBx9bT2rrJpjoMDYcHvw== X-Google-Smtp-Source: ABdhPJwNfWVC5L/qKq8HU1S4GhnzAv9nVOrK9pZ2lOE1ngPQEzqqZHQ/ca1t9Max3fd7wfczCH3miqDV6NfxHqmKvYg= X-Received: by 2002:a2e:b0f6:: with SMTP id h22mr13595117ljl.336.1630182147276; Sat, 28 Aug 2021 13:22:27 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a2e:80c9:0:0:0:0:0 with HTTP; Sat, 28 Aug 2021 13:22:26 -0700 (PDT) In-Reply-To: <48DB1AA516DB965474E6B2487192B8F8@prosimetrum.com> References: <48DB1AA516DB965474E6B2487192B8F8@prosimetrum.com> From: Stuart Morrow Date: Sat, 28 Aug 2021 21:22:26 +0100 Message-ID: To: 9front@9front.org Content-Type: text/plain; charset="UTF-8" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: event realtime-java optimizer Subject: Re: [9front] htmlfmt anchor corner cases Reply-To: 9front@9front.org Precedence: bulk On 24/01/2021, umbraticus@prosimetrum.com wrote: > Any interest in an updated (html5) and better-integrated libhtml > that could be used by other programs that currently roll their own > parser (mothra, html2ms, maybe even the netsurf port)? https://github.com/google/gumbo-parser ? From smj@sdf.org Sun Aug 29 01:09:52 2021 Return-Path: Received: from ma.sdf.org (ma.sdf.org [205.166.94.33]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17T19qZK016774 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits) verified NO) for ; Sun, 29 Aug 2021 01:09:52 GMT Received: from [127.0.0.1] (helo=ma.sdf.org) by ma.sdf.org with esmtp (Exim 4.92) (envelope-from ) id 1mK9Ka-0003fd-Cr for smj@9p.sdf.org; Sun, 29 Aug 2021 01:09:52 +0000 MIME-Version: 1.0 Date: Sat, 28 Aug 2021 18:09:52 -0700 From: Stephen Jones To: smj@9p.sdf.org Subject: Re: In-Reply-To: <6E3547BD9BFA2BE219A9701DE93BD1AF@9p.sdf.org> References: <6E3547BD9BFA2BE219A9701DE93BD1AF@9p.sdf.org> User-Agent: Roundcube Webmail/1.4.11 Message-ID: X-Sender: smj@sdf.org Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit On 2021-08-28 18:08, smj@9p.sdf.org wrote: > Quoth Stephen Jones : >> On 2021-08-21 12:07, Stephen M. Jones wrote: >> > Quoth Stephen M. Jones : >> >> test >> >> test >> >> >> > >> > hello there. >> >> Thank you!! >> > > Welcome to SDF plan9front Wow, it worked! From 9front-bounces@4ess.inri.net Sun Aug 29 01:55:47 2021 Return-Path: <9front-bounces@4ess.inri.net> Received: from 4ess.inri.net (th.inri.net [216.126.196.42] (may be forged)) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17T1tkDg014100 for ; Sun, 29 Aug 2021 01:55:46 GMT Received: from asquith.prosimetrum.com ([125.236.209.157]) by 4ess; Sat Aug 28 21:50:00 -0400 2021 Message-ID: <83E4335930E122C03C24B026B2DA55E9@prosimetrum.com> Date: Sun, 29 Aug 2021 13:52:11 +1200 From: umbraticus@prosimetrum.com To: 9front@9front.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: core ORM over XMPP dependency-scale grid-aware realtime storage Subject: Re: [9front] htmlfmt anchor corner cases Reply-To: 9front@9front.org Precedence: bulk > https://github.com/google/gumbo-parser ? yeah, I looked at that and a few others; was gauging interest before bothering trying to port, and since I failed to provoke all those avid abaco users... but maybe I will have a go, in the interest of unifying & simplifying all html-touchers. umbraticus From 9front-bounces@4ess.inri.net Sun Aug 29 02:12:12 2021 Return-Path: <9front-bounces@4ess.inri.net> Received: from 4ess.inri.net (th.inri.net [216.126.196.42] (may be forged)) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17T2CBYh024608 for ; Sun, 29 Aug 2021 02:12:12 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 4ess; Sat Aug 28 22:04:31 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id d8613f35 (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9front@9front.org>; Sat, 28 Aug 2021 19:04:15 -0700 (PDT) Message-ID: To: 9front@9front.org Date: Sat, 28 Aug 2021 22:04:14 -0400 From: ori@eigenstate.org MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: object-oriented hypervisor Subject: [9front] git/query: improve LCA results Reply-To: 9front@9front.org Precedence: bulk Currently, git/pull can request you to do spurious merges. We actually ran into this once in the 9front repo: commit 185fe31de404b67441248d91e6321645278ba92a will request a supurious merge if you pull from it. This is because when faced with a commit graph like this: ---a---b---c---d---e \ / +-----f----+ and we want to find the least common ancestor of commits 'b' and 'e', we will return commit 'a'. This is technically the correct answer: we can get to 'a' with 1 step from 'e', and 2 from 'e', for a total of 3 steps, which is shorter than the number of steps to get from 'e' to 'b' directly However, for every practical purpose of the LCA algorithm, if a node is an ancestor of another, we want to return that ancestor, rather than the node which can be reached from all parents in the smallest number of steps. This means that we need to keep scanning until we've visited all potential ancestors between the two nodes, and picking the shortest distance between nodes reachable from 'e' and the nodes reachable from 'b'. We already have code that almost does this, in our findtwixt() code, painting backwards from a set of 'head' and 'tail' nodes in parallel until there are no more nodes reachable from 'head' without crossing over 'tail'. Since we paint until all nodes reachable from head are painted, we're guaranted to encounter the ancestor we want to return if it's present. This change takes findtwixt() and refactors it into a paint function which, when passed 'ancestor=1', will return the lca rather than the full set of covered nodes. Along with these changes are a few refactors to prevent exponential blowups in time when repainting a graph of mostly-done nodes, by bailing out early: this made pulling git (commits a5fa49ff0 => c4203212e36) take tens of seconnds instead of more than tens of minutes. As a bonus, we delete some code by doing this refactor. Since bugs here can lead to issues sysupdating, I'd like some extra eyeballs, testing, and review on this before I commit. diff e6f0abc25e4e237fff97ef9bdd1dc98ee519def8 uncommitted --- a/sys/src/cmd/git/ref.c +++ b/sys/src/cmd/git/ref.c @@ -22,17 +22,11 @@ int stksz; }; -struct XObject { - Object *obj; - Object *mark; - XObject *queue; - XObject *next; -}; - struct Objq { Objq *next; Object *o; int color; + int dist; }; static Object zcommit = { @@ -128,110 +122,6 @@ return 1; } -XObject* -hnode(XObject *ht[], Object *o) -{ - XObject *h; - int hh; - - hh = o->hash.h[0] & 0xff; - for(h = ht[hh]; h; h = h->next) - if(hasheq(&o->hash, &h->obj->hash)) - return h; - - h = emalloc(sizeof(*h)); - h->obj = o; - h->mark = nil; - h->queue = nil; - h->next = ht[hh]; - ht[hh] = h; - return h; -} - -Object* -ancestor(Object *a, Object *b) -{ - Object *o, *p, *r; - XObject *ht[256]; - XObject *h, *q, *q1, *q2; - int i; - - if(a == b) - return a; - if(a == nil || b == nil) - return nil; - r = nil; - memset(ht, 0, sizeof(ht)); - q1 = nil; - - h = hnode(ht, a); - h->mark = a; - h->queue = q1; - q1 = h; - - h = hnode(ht, b); - h->mark = b; - h->queue = q1; - q1 = h; - - while(1){ - q2 = nil; - while(q = q1){ - q1 = q->queue; - q->queue = nil; - o = q->obj; - for(i = 0; i < o->commit->nparent; i++){ - p = readobject(o->commit->parent[i]); - if(p == nil) - goto err; - h = hnode(ht, p); - if(h->mark != nil){ - if(h->mark != q->mark){ - r = h->obj; - goto done; - } - } else { - h->mark = q->mark; - h->queue = q2; - q2 = h; - } - } - } - if(q2 == nil){ -err: - werrstr("no common ancestor"); - break; - } - q1 = q2; - } -done: - for(i=0; inext; - free(h); - } - } - return r; -} - -int -lca(Eval *ev) -{ - Object *a, *b, *o; - - if(ev->nstk < 2){ - werrstr("ancestor needs 2 objects"); - return -1; - } - a = pop(ev); - b = pop(ev); - o = ancestor(a, b); - if(o == nil) - return -1; - push(ev, o); - return 0; -} - static int repaint(Objset *keep, Objset *drop, Object *o) { @@ -249,29 +139,57 @@ for(i = 0; i < o->commit->nparent; i++){ if((p = readobject(o->commit->parent[i])) == nil) return -1; + if(oshas(drop, p->hash)) + goto next; if(repaint(keep, drop, p) == -1) return -1; +next: unref(p); } return 0; } -int -findtwixt(Hash *head, int nhead, Hash *tail, int ntail, Object ***res, int *nres) +static int +haskeep(Objq *q) { + for(; q != nil; q = q->next) + if(q->color == Keep) + return 1; + return 0; +} + +static int +bestpick(Hash *head, int nhead, Hash *tail, int ntail, Objq *q, int dist) +{ + int i; + + if(q->dist < dist) + return 1; + for(i = 0; i < nhead; i++) + if(hasheq(&head[i], &q->o->hash)) + return 1; + for(i = 0; i < ntail; i++) + if(hasheq(&tail[i], &q->o->hash)) + return 1; + return 0; +} + +static int +paint(Hash *head, int nhead, Hash *tail, int ntail, Object ***res, int *nres, int ancestor) +{ Objq *q, *e, *n, **p; Objset keep, drop; - Object *o, *c; - int i, ncolor; + Object *o, *c, *best; + int i, dist, ncolor; e = nil; q = nil; p = &q; + best = nil; + dist = 1<<30; osinit(&keep); osinit(&drop); for(i = 0; i < nhead; i++){ - if(hasheq(&head[i], &Zhash)) - continue; if((o = readobject(head[i])) == nil){ fprint(2, "warning: %H does not point at commit\n", o->hash); werrstr("read head %H: %r", head[i]); @@ -286,13 +204,12 @@ e = emalloc(sizeof(Objq)); e->o = o; e->color = Keep; + e->dist = 0; *p = e; p = &e->next; unref(o); } for(i = 0; i < ntail; i++){ - if(hasheq(&tail[i], &Zhash)) - continue; if((o = readobject(tail[i])) == nil){ werrstr("read tail %H: %r", tail[i]); return -1; @@ -306,6 +223,7 @@ e = emalloc(sizeof(Objq)); e->o = o; e->color = Drop; + e->dist = 0; *p = e; p = &e->next; unref(o); @@ -312,7 +230,7 @@ } dprint(1, "finding twixt commits\n"); - while(q != nil){ + while(haskeep(q)){ if(oshas(&drop, q->o->hash)) ncolor = Drop; else if(oshas(&keep, q->o->hash)) @@ -319,18 +237,36 @@ ncolor = Keep; else ncolor = Blank; - if(ncolor == Drop || ncolor == Keep && q->color == Keep) + dprint(2, "visit: ncolor=%s, qcolor=%s %H\n", + ncolor == Keep ? "keep" : "drop", + q->color == Keep ? "keep" : "drop", + q->o->hash); + if(ncolor == Keep && q->color == Keep){ goto next; - if(ncolor == Keep && q->color == Drop){ + }else if(ncolor == Drop){ + dprint(2, "consider: best %H => %H (dist: %d => %d)\n", best ? best->hash : Zhash, q->o->hash, dist, q->dist); + if(q->color == Keep && bestpick(head, nhead, tail, ntail, q, dist)){ + dprint(2, "ancestor: best %H => %H (dist: %d => %d)\n", best ? best->hash : Zhash, q->o->hash, dist, q->dist); + best = q->o; + dist = q->dist; + } + }else if(ncolor == Keep && q->color == Drop){ + dprint(2, "consider: best %H => %H (dist: %d => %d)\n", best ? best->hash : Zhash, q->o->hash, dist, q->dist); + if(bestpick(head, nhead, tail, ntail, q, dist)){ + //q->dist < dist || hasheq(head, &q->o->hash)){ + dprint(2, "ancestor: best %H => %H (dist: %d => %d)\n", best->hash, q->o->hash, dist, q->dist); + best = q->o; + dist = q->dist; + } if(repaint(&keep, &drop, q->o) == -1) goto error; }else if (ncolor == Blank) { - dprint(2, "visit: %s %H\n", q->color == Keep ? "keep" : "drop", q->o->hash); if(q->color == Keep) osadd(&keep, q->o); else osadd(&drop, q->o); - for(i = 0; i < q->o->commit->nparent; i++){ + o = readobject(q->o->hash); + for(i = 0; i < o->commit->nparent; i++){ if((c = readobject(q->o->commit->parent[i])) == nil) goto error; if(c->type != GCommit){ @@ -341,6 +277,7 @@ dprint(2, "enqueue: %s %H\n", q->color == Keep ? "keep" : "drop", c->hash); n = emalloc(sizeof(Objq)); n->color = q->color; + n->dist = q->dist + 1; n->next = nil; n->o = c; e->next = n; @@ -347,8 +284,9 @@ e = n; unref(c); } + unref(o); }else{ - sysfatal("oops"); + sysfatal("oops: ncolor==%d && qcolor==%d", ncolor, q->color); } next: n = q->next; @@ -355,13 +293,24 @@ free(q); q = n; } - *res = eamalloc(keep.nobj, sizeof(Object*)); - *nres = 0; - for(i = 0; i < keep.sz; i++){ - if(keep.obj[i] != nil && !oshas(&drop, keep.obj[i]->hash)){ - (*res)[*nres] = keep.obj[i]; - (*nres)++; + if(ancestor){ + if(best == nil){ + *nres = 0; + *res = nil; + }else{ + *nres = 1; + *res = eamalloc(1, sizeof(Object*)); + (*res)[0] = best; } + }else{ + *res = eamalloc(keep.nobj, sizeof(Object*)); + *nres = 0; + for(i = 0; i < keep.sz; i++){ + if(keep.obj[i] != nil && !oshas(&drop, keep.obj[i]->hash)){ + (*res)[*nres] = keep.obj[i]; + (*nres)++; + } + } } osclear(&keep); osclear(&drop); @@ -372,6 +321,46 @@ free(q); } return -1; +} + +int +findtwixt(Hash *head, int nhead, Hash *tail, int ntail, Object ***res, int *nres) +{ + return paint(head, nhead, tail, ntail, res, nres, 0); +} + +Object* +ancestor(Object *a, Object *b) +{ + Object **o, *r; + int n; + + if(paint(&a->hash, 1, &b->hash, 1, &o, &n, 1) == -1 || n == 0) + return nil; + r = o[0]; + free(o); + return r; +} + +int +lca(Eval *ev) +{ + Object *a, *b, **o; + int n; + + if(ev->nstk < 2){ + werrstr("ancestor needs 2 objects"); + return -1; + } + n = 0; + a = pop(ev); + b = pop(ev); + paint(&a->hash, 1, &b->hash, 1, &o, &n, 1); + if(n == 0) + return -1; + push(ev, *o); + free(o); + return 0; } static int From 9front-bounces@4ess.inri.net Sun Aug 29 02:41:02 2021 Return-Path: <9front-bounces@4ess.inri.net> Received: from 4ess.inri.net (th.inri.net [216.126.196.42] (may be forged)) by mx.sdf.org (8.15.2/8.14.5) with ESMTP id 17T2f1lI021969 for ; Sun, 29 Aug 2021 02:41:01 GMT Received: from mimir.eigenstate.org ([206.124.132.107]) by 4ess; Sat Aug 28 22:33:35 -0400 2021 Received: from abbatoir.myfiosgateway.com (pool-74-108-56-225.nycmny.fios.verizon.net [74.108.56.225]) by mimir.eigenstate.org (OpenSMTPD) with ESMTPSA id 19681b34 (TLSv1.2:ECDHE-RSA-AES256-SHA:256:NO) for <9front@9front.org>; Sat, 28 Aug 2021 19:33:17 -0700 (PDT) Message-ID: <77A01EE7FDB6C6E09DFECCDC61185541@eigenstate.org> To: 9front@9front.org Date: Sat, 28 Aug 2021 22:33:15 -0400 From: ori@eigenstate.org In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: decentralized database SQL over SSL engine template content-driven optimizer Subject: Re: [9front] git/query: improve LCA results Reply-To: 9front@9front.org Precedence: bulk Quoth ori@eigenstate.org: > Since bugs here can lead to issues sysupdating, I'd > like some extra eyeballs, testing, and review on this > before I commit. A slightly improved version. The `haskeep()` optimization to break out early could cause us to leave before we'd found the best node. diff e6f0abc25e4e237fff97ef9bdd1dc98ee519def8 uncommitted --- a/sys/src/cmd/git/ref.c +++ b/sys/src/cmd/git/ref.c @@ -22,19 +22,19 @@ int stksz; }; -struct XObject { - Object *obj; - Object *mark; - XObject *queue; - XObject *next; -}; - struct Objq { Objq *next; Object *o; int color; + int dist; }; +static char *colors[] = { +[Keep] "keep", +[Drop] "drop", +[Blank] "blank", +}; + static Object zcommit = { .type=GCommit }; @@ -128,110 +128,6 @@ return 1; } -XObject* -hnode(XObject *ht[], Object *o) -{ - XObject *h; - int hh; - - hh = o->hash.h[0] & 0xff; - for(h = ht[hh]; h; h = h->next) - if(hasheq(&o->hash, &h->obj->hash)) - return h; - - h = emalloc(sizeof(*h)); - h->obj = o; - h->mark = nil; - h->queue = nil; - h->next = ht[hh]; - ht[hh] = h; - return h; -} - -Object* -ancestor(Object *a, Object *b) -{ - Object *o, *p, *r; - XObject *ht[256]; - XObject *h, *q, *q1, *q2; - int i; - - if(a == b) - return a; - if(a == nil || b == nil) - return nil; - r = nil; - memset(ht, 0, sizeof(ht)); - q1 = nil; - - h = hnode(ht, a); - h->mark = a; - h->queue = q1; - q1 = h; - - h = hnode(ht, b); - h->mark = b; - h->queue = q1; - q1 = h; - - while(1){ - q2 = nil; - while(q = q1){ - q1 = q->queue; - q->queue = nil; - o = q->obj; - for(i = 0; i < o->commit->nparent; i++){ - p = readobject(o->commit->parent[i]); - if(p == nil) - goto err; - h = hnode(ht, p); - if(h->mark != nil){ - if(h->mark != q->mark){ - r = h->obj; - goto done; - } - } else { - h->mark = q->mark; - h->queue = q2; - q2 = h; - } - } - } - if(q2 == nil){ -err: - werrstr("no common ancestor"); - break; - } - q1 = q2; - } -done: - for(i=0; inext; - free(h); - } - } - return r; -} - -int -lca(Eval *ev) -{ - Object *a, *b, *o; - - if(ev->nstk < 2){ - werrstr("ancestor needs 2 objects"); - return -1; - } - a = pop(ev); - b = pop(ev); - o = ancestor(a, b); - if(o == nil) - return -1; - push(ev, o); - return 0; -} - static int repaint(Objset *keep, Objset *drop, Object *o) { @@ -249,29 +145,48 @@ for(i = 0; i < o->commit->nparent; i++){ if((p = readobject(o->commit->parent[i])) == nil) return -1; + if(oshas(drop, p->hash)) + goto next; if(repaint(keep, drop, p) == -1) return -1; +next: unref(p); } return 0; } -int -findtwixt(Hash *head, int nhead, Hash *tail, int ntail, Object ***res, int *nres) +static int +bestpick(Hash *head, int nhead, Hash *tail, int ntail, Objq *q, int dist) { + int i; + + if(q->dist < dist) + return 1; + for(i = 0; i < nhead; i++) + if(hasheq(&head[i], &q->o->hash)) + return 1; + for(i = 0; i < ntail; i++) + if(hasheq(&tail[i], &q->o->hash)) + return 1; + return 0; +} + +static int +paint(Hash *head, int nhead, Hash *tail, int ntail, Object ***res, int *nres, int ancestor) +{ Objq *q, *e, *n, **p; Objset keep, drop; - Object *o, *c; - int i, ncolor; + Object *o, *c, *best; + int i, dist, ncolor; e = nil; q = nil; p = &q; + best = nil; + dist = 1<<30; osinit(&keep); osinit(&drop); for(i = 0; i < nhead; i++){ - if(hasheq(&head[i], &Zhash)) - continue; if((o = readobject(head[i])) == nil){ fprint(2, "warning: %H does not point at commit\n", o->hash); werrstr("read head %H: %r", head[i]); @@ -282,17 +197,16 @@ unref(o); continue; } - dprint(1, "twixt init: keep %H\n", o->hash); + dprint(1, "init: keep %H\n", o->hash); e = emalloc(sizeof(Objq)); e->o = o; e->color = Keep; + e->dist = 0; *p = e; p = &e->next; unref(o); } for(i = 0; i < ntail; i++){ - if(hasheq(&tail[i], &Zhash)) - continue; if((o = readobject(tail[i])) == nil){ werrstr("read tail %H: %r", tail[i]); return -1; @@ -306,6 +220,7 @@ e = emalloc(sizeof(Objq)); e->o = o; e->color = Drop; + e->dist = 0; *p = e; p = &e->next; unref(o); @@ -319,18 +234,37 @@ ncolor = Keep; else ncolor = Blank; - if(ncolor == Drop || ncolor == Keep && q->color == Keep) + dprint(2, "visit: ncolor=%s, qcolor=%s %H\n", + colors[ncolor], colors[q->color], q->o->hash); + if(ncolor == Keep && q->color == Keep){ goto next; - if(ncolor == Keep && q->color == Drop){ + }else if(ncolor == Drop){ + dprint(2, "consider: best %H => %H (dist: %d => %d)\n", + best ? best->hash : Zhash, q->o->hash, + dist, q->dist); + if(q->color == Keep && bestpick(head, nhead, tail, ntail, q, dist)){ + dprint(2, "ancestor: best %H => %H (dist: %d => %d)\n", + best ? best->hash : Zhash, q->o->hash, + dist, q->dist); + best = q->o; + dist = q->dist; + } + }else if(ncolor == Keep && q->color == Drop){ + dprint(2, "consider: best %H => %H (dist: %d => %d)\n", best ? best->hash : Zhash, q->o->hash, dist, q->dist); + if(bestpick(head, nhead, tail, ntail, q, dist)){ + dprint(2, "ancestor: best %H => %H (dist: %d => %d)\n", best ? best->hash : Zhash, q->o->hash, dist, q->dist); + best = q->o; + dist = q->dist; + } if(repaint(&keep, &drop, q->o) == -1) goto error; }else if (ncolor == Blank) { - dprint(2, "visit: %s %H\n", q->color == Keep ? "keep" : "drop", q->o->hash); if(q->color == Keep) osadd(&keep, q->o); else osadd(&drop, q->o); - for(i = 0; i < q->o->commit->nparent; i++){ + o = readobject(q->o->hash); + for(i = 0; i < o->commit->nparent; i++){ if((c = readobject(q->o->commit->parent[i])) == nil) goto error; if(c->type != GCommit){ @@ -338,9 +272,10 @@ unref(c); continue; } - dprint(2, "enqueue: %s %H\n", q->color == Keep ? "keep" : "drop", c->hash); + dprint(2, "enqueue: %s %H\n", colors[q->color], c->hash); n = emalloc(sizeof(Objq)); n->color = q->color; + n->dist = q->dist + 1; n->next = nil; n->o = c; e->next = n; @@ -347,8 +282,9 @@ e = n; unref(c); } + unref(o); }else{ - sysfatal("oops"); + sysfatal("oops: ncolor==%d && qcolor==%d", ncolor, q->color); } next: n = q->next; @@ -355,13 +291,24 @@ free(q); q = n; } - *res = eamalloc(keep.nobj, sizeof(Object*)); - *nres = 0; - for(i = 0; i < keep.sz; i++){ - if(keep.obj[i] != nil && !oshas(&drop, keep.obj[i]->hash)){ - (*res)[*nres] = keep.obj[i]; - (*nres)++; + if(ancestor){ + if(best == nil){ + *nres = 0; + *res = nil; + }else{ + *nres = 1; + *res = eamalloc(1, sizeof(Object*)); + (*res)[0] = best; } + }else{ + *res = eamalloc(keep.nobj, sizeof(Object*)); + *nres = 0; + for(i = 0; i < keep.sz; i++){ + if(keep.obj[i] != nil && !oshas(&drop, keep.obj[i]->hash)){ + (*res)[*nres] = keep.obj[i]; + (*nres)++; + } + } } osclear(&keep); osclear(&drop); @@ -372,6 +319,46 @@ free(q); } return -1; +} + +int +findtwixt(Hash *head, int nhead, Hash *tail, int ntail, Object ***res, int *nres) +{ + return paint(head, nhead, tail, ntail, res, nres, 0); +} + +Object* +ancestor(Object *a, Object *b) +{ + Object **o, *r; + int n; + + if(paint(&a->hash, 1, &b->hash, 1, &o, &n, 1) == -1 || n == 0) + return nil; + r = o[0]; + free(o); + return r; +} + +int +lca(Eval *ev) +{ + Object *a, *b, **o; + int n; + + if(ev->nstk < 2){ + werrstr("ancestor needs 2 objects"); + return -1; + } + n = 0; + a = pop(ev); + b = pop(ev); + paint(&a->hash, 1, &b->hash, 1, &o, &n, 1); + if(n == 0) + return -1; + push(ev, *o); + free(o); + return 0; } static int From smj@sdf.org Sun Aug 29 04:05:59 2021 Return-Path: Received: from sdf.org (mx [205.166.94.24]) by mx.sdf.org (8.15.2/8.14.5) with ESMTPS id 17T45x8l027970 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits) verified NO) for ; Sun, 29 Aug 2021 04:05:59 GMT Received: (from root@localhost) by sdf.org (8.15.2/8.12.8/Submit) id 17T45w0h014776 for smj@9p.sdf.org; Sun, 29 Aug 2021 04:05:58 GMT Date: Sun, 29 Aug 2021 04:05:58 GMT From: "Stephen M. Jones" Message-Id: <202108290405.17T45w0h014776@sdf.org> test