OK, turing.

<- leave blank

Tue Jun 2 21:09:28 EDT 2020

diff -r ff6b294d07a9 sys/src/ape/lib/9/libc.h
--- a/sys/src/ape/lib/9/libc.h Mon Jun 01 00:07:01 2020 +0200
+++ b/sys/src/ape/lib/9/libc.h Tue Jun 02 18:09:28 2020 -0700
@@ -151,7 +151,7 @@
 #define nsec _NSEC
 #define iounit _IOUNIT
 #define sleep _SLEEP
-
+#define getenv(name) strdup(getenv(name))
 #define getwd(buf,len) getcwd(buf,len)
 #define postnote(who,pid,note) kill(pid,SIGTERM)
 #define atnotify(func,in)


Tue Jun 2 20:20:29 EDT 2020
Authentication-Results: minnie.tuhs.org;
	dkim=pass (2048-bit key; unprotected) header.d=gmail.com
	header.i=@gmail.com header.b="b4UHrqty";
	dkim-atps=neutral
From: Rob Pike <robpike@gmail.com>
Date: Wed, 3 Jun 2020 09:09:08 +1000
To: Jon Steinhart <jon@fourwinds.com>
Subject: Re: [TUHS] non-blocking IO - threads
Cc: TUHS main list <tuhs@minnie.tuhs.org>
Errors-To: tuhs-bounces@minnie.tuhs.org
Sender: "TUHS" <tuhs-bounces@minnie.tuhs.org>

To be more forthcoming, there was a long period when the received wisdom
was that threads were unmanageable.  But that was a category error: The
programming model in POSIX and others was what made it hard.  The
fundamental concepts are a tiny step harder than trivial, and it was not
hard to build a programming model that matched them.

The first mistake people made was to split "thread" from "process".  What
those words mean today is not what they meant a generation ago.

For me, it's like the mess sockets made of networking.  Our programming
models could be so much simpler than what we are required to deal with.

-rob




Tue Jun 2 20:20:27 EDT 2020
Authentication-Results: minnie.tuhs.org;
	dkim=pass (2048-bit key; unprotected) header.d=gmail.com
	header.i=@gmail.com header.b="NE5U837k";
	dkim-atps=neutral
From: Rob Pike <robpike@gmail.com>
Date: Wed, 3 Jun 2020 09:05:39 +1000
To: Jon Steinhart <jon@fourwinds.com>
Subject: Re: [TUHS] non-blocking IO - threads
Cc: TUHS main list <tuhs@minnie.tuhs.org>
Errors-To: tuhs-bounces@minnie.tuhs.org
Sender: "TUHS" <tuhs-bounces@minnie.tuhs.org>

It's only messy if you make a messy job of it.

-rob


On Wed, Jun 3, 2020 at 8:36 AM Jon Steinhart <jon@fourwinds.com> wrote:

> Lawrence Stewart writes:
> > I’ve always thought select(2) was a pretty good thing.  In 1995 at Open
> > Market we had a single-process web server that had no difficulties
> > running 1000 to 1200 connections.  I think that was BSD, and later
OSF-1.
>
> So select was a great thing until interactive graphics came along.  Just
> got too messy.  I recall writing assembly language code to support threads
> in the mid to late 1980s, and I remember reading some papers from Sun about
> the same.  Everybody was doing it.  Anybody have enough of the history to
> paint a picture of how we got from there to standardized threads?
>
> Jon
>




Tue Jun 2 19:14:52 EDT 2020
#define _POSIX_SOURCE
#define _PLAN9_SOURCE
#define _RESEARCH_SOURCE

#include <lib9.h>
#include <stdlib.h>
#include <stdio.h>
#include <u.h>
#include <draw.h>
#include <fcntl.h>
#include <unistd.h>


void
resize(int x, int y)
{
	int fd;
	fd = open("/dev/wctl", 1);
	if(fd >= 0){
		fprint(fd, "resize -dx %d -dy %d", x+8, y+8);
		close(fd);
	}
}

static void sysfatal(char *s)
{
	fprint(2, "aaaaa: %s: %r\n", s);
	abort();
}

void main(){
	print("cu\n");
	newwindow("-hide -dy 100");
	print("got here :)\n"); //it actually never gets here
	if(initdraw(nil, nil, argv0) < 0)
		sysfatal("fatalized");

	sysfatal("exited");
}



Tue Jun 2 16:02:00 EDT 2020
/sys/src/cmd/7l % mk install
7c -FTVw asm.c
7c -FTVw asmout.c
7c -FTVw ../7c/enam.c
7c -FTVw bits.c
7c -FTVw cnam.c
7c -FTVw compat.c
7c -FTVw dyn.c
7c -FTVw list.c
7c -FTVw noop.c
7c -FTVw obj.c
7c -FTVw optab.c
7c -FTVw span.c
7c -FTVw pass.c
7c -FTVw mod.c
7l -o 7.out asm.7 asmout.7 enam.7 bits.7 cnam.7 compat.7 dyn.7 list.7 noop.7 obj.7
optab.7 span.7 pass.7 mod.7
7l 294152: suicide: sys: trap: fault read addr=0xe3320003e3b9001b pc=0x219a8
mk: 7l -o ...  : exit status=rc 294150: 7l 294152: sys: trap: fault read
addr=0xe3320003e3b9001b pc=0x219a8

Tue Jun 2 09:52:13 EDT 2020
fukken$ file tools/asm6
tools/asm6: ELF 64-bit LSB shared object, x86-64, version 1
fukken$ ldd tools/asm6
tools/asm6:
	Start End Type Open Ref GrpRef Name
	00000f508f211000 00000f508f223000 exe 1 0 0 tools/asm6
	00000f5339038000 00000f533912b000 rlib 0 1 0 /usr/lib/libc.so.96.0
	00000f52c068f000 00000f52c068f000 ld.so 0 1 0 /usr/libexec/ld.so


Mon Jun 1 23:38:40 EDT 2020
@{cd bin/source; mk install
@{cd news/src; mk install
@{cd wiki/src; mk install
mk win
6l -o 6.out fs.6 main.6 pipe.6 util.6 win.6 /amd64/lib/lib9p.a
__sendinput: incompatible type signatures a961d68b(fs.6) and 62c0f894(main.6) for
respond
readbuf: incompatible type signatures a961d68b(fs.6) and
62c0f894(/amd64/lib/lib9p.a(readstr)) for readstr
threadlistensrv: incompatible type signatures 1fb49b4a(fs.6) and
54ea35c3(/amd64/lib/lib9p.a(threadpostmountsrv)) for threadpostmountsrv
removefile: incompatible type signatures 64452090(fs.6) and
c389b2c8(/amd64/lib/lib9p.a(alloctree)) for createfile
walkfile: incompatible type signatures efb915ff(fs.6) and
6a5d39f7(/amd64/lib/lib9p.a(alloctree)) for alloctree
mk: 6l -o ...  : exit status=rc 1110445: 6l 1110447: error
mk: for (i in ...  : exit status=rc 1110436: rc 1110438: mk 1110444: error
mk: @{cd bin/source; mk ...  : exit status=rc 1110428: rc 1110430: mk 1110435:
error
mk: date for (i ...  : exit status=rc 1105929: rc 1110422: mk 1110427: error

Mon Jun 1 23:36:02 EDT 2020
@{cd bin/source; mk install
@{cd news/src; mk install
@{cd wiki/src; mk install
mk win
6l -o 6.out fs.6 main.6 pipe.6 util.6 win.6 /amd64/lib/lib9p.a
__sendinput: incompatible type signatures a961d68b(fs.6) and 62c0f894(main.6) for
respond
readbuf: incompatible type signatures a961d68b(fs.6) and
62c0f894(/amd64/lib/lib9p.a(readstr)) for readstr
threadlistensrv: incompatible type signatures 1fb49b4a(fs.6) and
54ea35c3(/amd64/lib/lib9p.a(threadpostmountsrv)) for threadpostmountsrv
removefile: incompatible type signatures 64452090(fs.6) and
c389b2c8(/amd64/lib/lib9p.a(alloctree)) for createfile
walkfile: incompatible type signatures efb915ff(fs.6) and
6a5d39f7(/amd64/lib/lib9p.a(alloctree)) for alloctree
mk: 6l -o ...  : exit status=rc 1110445: 6l 1110447: error
mk: for (i in ...  : exit status=rc 1110436: rc 1110438: mk 1110444: error
mk: @{cd bin/source; mk ...  : exit status=rc 1110428: rc 1110430: mk 1110435:
error
mk: date for (i ...  : exit status=rc 1105929: rc 1110422: mk 1110427: error

Mon Jun 1 21:30:12 EDT 2020
https://www.indystar.com/story/news/local/indianapolis/2020/06/01/indianapolis-protests-police-demonstrators-walk-together/5313988002/


Mon Jun 1 12:38:41 EDT 2020
/usr/glenda/emu8080; cat daa-precond.c
cat: error reading daa-precond.c: phase error -- cannot happen
/usr/glenda/emu8080; cat /dev/kmesg | tail -1
checktag pc=3c9e cw"/dev/sdC0/fscache"w"/dev/sdC0/fsworm"(4b196) tag/path=Tnone/0;
expected Tfile

Mon Jun 1 11:25:50 EDT 2020
Pi-hole 4.4.0 Remote Code Execution

next