Git Product home page Git Product logo

go's Introduction

Go Reference

This repository contains packages for interacting with Plan 9 as well as ports of common Plan 9 libraries and tools.

$ go install 9fans.net/go/...@latest

go's People

Contributors

0intro avatar cmarcelo avatar edma2 avatar fhs avatar jroimartin avatar knusbaum avatar lufia avatar majiru avatar mars9 avatar mdempsky avatar mkhl avatar nicolagi avatar psilva261 avatar rjkroege avatar robpike avatar rogpeppe avatar rsc avatar shmsr avatar vdm avatar wgrr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

go's Issues

acme/Watch: dial unix /tmp/ns..:0/acme: not supported by plan 9

I was hoping to get acme commands to run on native Plan 9 edition 4.

Unfortunately, neither acme/Watch nor acme/acmego wasn't able to run. I assume that's because they rely on UDS that is provided by plan9port's version of acme, which is not the case on Plan 9 (?).

I'll be glad to implement the fix, but I'm not fluent enough with Plan 9/acme architectures yet. If you could give me a hint, I could give it a try. In either case, I can test somebodies PR.

sam: crash when piping text into command

$ sam -d
 -. 
|sort
panic: interface conversion: io.WriteCloser is *exec.closeOnce, not *os.File [recovered]
	panic: interface conversion: io.WriteCloser is *exec.closeOnce, not *os.File

goroutine 1 [running]:
main.main.func2.1()
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/sam.go:125 +0x72
panic(0x5077e0, 0xc000102750)
	/home/big/go/src/runtime/panic.go:1031 +0x25b
main.plan9(0xc000152000, 0x7c, 0xc000110048, 0xc000152000, 0xc0001026c0)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/shell.go:72 +0x72c
main.plan9_cmd(0xc000152000, 0xc000124280, 0x0)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/xec.go:294 +0x4d
main.cmdexec(0xc000152000, 0xc000124280, 0x0)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/xec.go:64 +0x5be
main.cmdloop()
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:257 +0x92
main.main.func2()
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/sam.go:127 +0x45
main.main()
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/sam.go:130 +0x84a

how-to <build> in readme

Newbie to both Plan9 and Golang here. Please excuse using Issues as a communication channel - will happily use another if provided.
Trying to build the packages, but makefile returns:

:~/workspace/9fans/go.git/acme$ make
Makefile:1: /usr/local/go/src/Make.inc: No such file or directory
Makefile:7: /usr/local/go/src/Make.pkg: No such file or directory
make: *** No rule to make target '/usr/local/go/src/Make.pkg'.  Stop.

my GOROOT is pointing to the Golang deployment as below:

~/workspace/9fans/go.git/acme$ $GOROOT/bin/go version
go version go1.15.2 linux/amd64

It would be great if README contained a section on build steps.

install error on mac

go install 9fans.net/go/...@latest failed on my Macbook, v12.6.1.

I'm running go version go1.19.3 darwin/arm64

I tried cleaning the module cache but it didn't seem to help. go complains:

../../pkg/mod/9fans.net/[email protected]/cmd/samterm/unix.go:62:21: cannot use fd (variable of type int) as type *os.File in argument to extproc

I'm not very familiar with go so sorry if this an easy fix. The install seemed to work perfectly fine on my Linux box.

sam: crash when scrolling in command window

Open sam and scroll down in command window with down arrow key.

panic: runtime error: slice bounds out of range [-1:] [recovered]
	panic: runtime error: slice bounds out of range [-1:]

goroutine 1 [running]:
main.main.func2.1()
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/sam.go:125 +0x72
panic(0x517520, 0xc0000b0000)
	/home/big/go/src/runtime/panic.go:1031 +0x25b
main.bufread(0xc000094000, 0xffffffffffffffff, 0xc0000ae6d4, 0x1, 0x1)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/buff.go:246 +0x1ba
main.filereadc(0xc000094000, 0xffffffffffffffff, 0xc0000ae728)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/file.go:272 +0x70
main.lookorigin(0xc000094000, 0x0, 0x2)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/moveto.go:47 +0x74
main.inmesg(0x4, 0x1)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/mesg.go:282 +0x1685
main.rcv(0x100000000000001)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/mesg.go:176 +0x215
main.inputc(0x20300000000000)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:92 +0x28a
main.inputline(0x4411f8)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:145 +0x37
main.getch(0xc00002a000)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:169 +0x45
main.skipbl(0x0)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:219 +0x26
main.simpleaddr(0x20)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:582 +0x49
main.compoundaddr(0xc00001c180)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:656 +0x49
main.parsecmd(0x0, 0x0)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:436 +0x85
main.cmdloop()
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:247 +0x55
main.main.func2()
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/sam.go:127 +0x45
main.main()
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/sam.go:130 +0x84a
samterm: host read error: unexpected EOF

license is not recognized by pkg.go.dev

The Go docs aren't visible on pkg.go.dev ("README not displayed due to license restrictions").

 https://pkg.go.dev/9fans.net/go/draw?tab=overview

It would be nice to fix this if possible.

sam: B command crash

$ sam -d
 -. 
B
panic: runtime error: index out of range [0] with length 0 [recovered]
	panic: runtime error: index out of range [0] with length 0

goroutine 1 [running]:
main.main.func2.1()
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/sam.go:125 +0x72
panic(0x517520, 0xc0000b2018)
	/home/big/go/src/runtime/panic.go:1031 +0x25b
main.loadflist(0xc0000a8048, 0x0)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/sam.go:563 +0x3b1
main.getfile(0xc0000a8048, 0xc)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/sam.go:660 +0x2f
main.b_cmd(0xc0000e2000, 0xc0000c6240, 0xa8)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/xec.go:78 +0x125
main.cmdexec(0xc0000e2000, 0xc0000c6240, 0x0)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/xec.go:64 +0x5be
main.cmdloop()
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:257 +0x92
main.main.func2()
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/sam.go:127 +0x45
main.main()
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/sam.go:130 +0x84a

Certificate expired on https://9fans.net prevents `go get`

lukeh@Lukes-MacBook-Pro:~/dd/temp/go/src/github.com$ go get -u -v github.com/rogpeppe/godef
github.com/rogpeppe/godef (download)
Fetching https://9fans.net/go/acme?go-get=1
https fetch failed.
import "9fans.net/go/acme": https fetch: Get https://9fans.net/go/acme?go-get=1: x509: certificate has expired or is not yet valid
package 9fans.net/go/acme: unrecognized import path "9fans.net/go/acme"

Chrome tells me This server could not prove that it is 9fans.net; its security certificate expired yesterday.

cmd/acme: more deadlocks

Making a new issue for deadlocks found after the recent fixes.

I've also instrumented my version to report which goroutine id held the deadlock and where it was acquired.

cmd/acme: completion failed

I haven't had time to go into this more, but as a placeholder, I tried filename completion and got this error (xd -c output because of the nulls in there):

0000000   e  r  r  o  r     a  t  t  e  m  p  t  i  n  g
0000010      c  o  m  p  l  e  t  i  o  n  :     o  p  e
0000020   n     /  h  o  m  e  /  r  o  g  p  e  p  p  e
0000030   /  s  r  c  /  c  o  n  f  i  g  c  a  t  -  c
0000040   u  e  / 00 00 00 00 00 00 00 00 00 00 00 00 00
0000050  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0000060  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0000070  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0000080  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0000090  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000a0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000b0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000c0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000d0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000e0  00 00 00 00 00 00 00 00 00 00  :     i  n  v  a
00000f0   l  i  d     a  r  g  u  m  e  n  t
00000fc 

go.mod: unknown revision 000000000000

when I try to go get -u ./... a project that uses this I just get this error:

...
Fetching https://9fans.net/go?go-get=1
Parsing meta tags from https://9fans.net/go?go-get=1 (status code 200)
get "9fans.net/go": found meta tag get.metaImport{Prefix:"9fans.net/go", VCS:"git", RepoRoot:"https://github.com/9fans/go"} at https://9fans.net/go?go-get=1
go: finding 9fans.net/go v0.0.0-00010101000000-000000000000
go: 9fans.net/[email protected]: unknown revision 000000000000
go: error loading module requirements

I see that there is no tagged release yet but @master should still work, no?

acmego doesn't seem to do anything

Expected behavior:

  • Run acmego
  • Change a go file, using improper indentation
  • Put the file
  • Buffer is modified with go fmt'd contents

Apologies if I'm missing something simple, but it's just not working for me. I have a recently-updated p9p install on Debian.

sam: infinite loop in doubleclick

Double click on a word.

goroutine 1 [runnable]:
main.doubleclick(0xc0001061e0, 0x51)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/moveto.go:176 +0x33a
main.inmesg(0x11, 0x4e2701)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/mesg.go:467 +0x2288
main.rcv(0x1)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/mesg.go:176 +0x215
main.inputc(0xc000139bb8)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:92 +0x28a
main.inputline(0xc000000180)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:145 +0x37
main.getch(0x630a40)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:169 +0x45
main.skipbl(0x49b3ed)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:219 +0x26
main.simpleaddr(0xc0000b62a0)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:582 +0x49
main.compoundaddr(0x0)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:656 +0x49
main.parsecmd(0x0, 0x1)
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:436 +0x85
main.cmdloop()
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/cmd.go:247 +0x55
main.main.func2()
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/sam.go:127 +0x45
main.main()
	/home/fhs/go/pkg/mod/9fans.net/[email protected]/cmd/sam/sam.go:130 +0x84a

cmd/acme: panic switching between fonts

Using Font causes acme to crash when changing from a fixed font to a variable width font.

`panic: fixi

goroutine 13 [running]:
9fans.net/go/cmd/acme/internal/adraw.FindFont(0x7c?, 0x0?, 0x0?, {0x140000d8060?, 0x1f?})
/usr/local/plan9/go/cmd/acme/internal/adraw/font.go:31 +0x66c
9fans.net/go/cmd/acme/internal/ui.Fontx(0x140007f4000?, 0x1f?, 0x140007f4000?, 0x24?, 0x0?, {0x140007f4014?, 0x24?, 0x24?})
/usr/local/plan9/go/cmd/acme/internal/ui/arg.go:71 +0x340
9fans.net/go/cmd/acme/internal/exec.Execute(0x14000b34010, 0x24, 0x24, 0x0, 0x0?)
/usr/local/plan9/go/cmd/acme/internal/exec/exec.go:221 +0x930
main.mousethread()
/usr/local/plan9/go/cmd/acme/acme.go:568 +0xc80
created by main.main
/usr/local/plan9/go/cmd/acme/acme.go:218 +0xf80`

sam: panic on opening window for plumber file

Steps to repro:

  1. open sam
  2. open 9term
  3. B /dev/null (say) in 9term
  4. go to sam, click b3
panic: runtime error: index out of range [0] with length 0

goroutine 1 [running]:
main.externchar(...)
        /mnt/muscle/src/9fans-go/cmd/samterm/io.go:165
main.kbdchar(0xd8)
        /mnt/muscle/src/9fans-go/cmd/samterm/io.go:200 +0x2cc
main.ktype(0x6bca30, 0x3)
        /mnt/muscle/src/9fans-go/cmd/samterm/main.go:534 +0xd3
main.main()
        /mnt/muscle/src/9fans-go/cmd/samterm/main.go:101 +0x534

cmd/acme: ^D doesn't work in win

To repro, in a win window do:

% cat > /tmp/foo
something
^D

The cat never receives EOF and the ^D character goes into the file.

acmego - check for existing instances

acmego doesn't report exisiting acmego instances, which can cause weird behaviour (gofmt text doubling). Maybe there should be a lock file? Or just a pidof-like check?

cmd/acme: Dump creates corrupted acme.dump files

I'm aware that cmd/acme isn't under active maintenance, but filing this here anyway,
because I've just started to use it in earnest after one too many memory corruption issue
with the original acme and it seems like a reasonable place to record issues.

Here's a portion of a corrupted dump file, created by middle-clicking on Dump:

f          2           2           0           0   2.0467836 
          2           6           0           0           0  Look 
e          2           0           0           0   4.0935673 
          6          75       14595           0           1 /home/rogpeppe/other/plan9port/src/cmd/acme/-snazzy2 Del Snarf | Look  Send
/home/rogpeppe/
win
e          2           0           0           0   6.1403509 
         21          58       25466           0           1 /home/rogpeppe/other/9fans/-snazzy2 Del Snarf | Look  Send
/home/rogpeppe/other/9fans/cmd/acme/internal/wind/
win
F          2           3       14274       14280  69.3957115       33847 
         10          86       33847           0           0 /home/rogpeppe/other/plan9port/src/cmd/acme/text.c Del Snarf Redo | Look notdef exec.c

This causes acme to panic on Load because there's a header line with no | character.

cmd/acme: deadlock

I encountered this deadlock. Recording the stack trace for posterity..

/home/rogpeppe/src/go/bin/acme: devel go1.18-8248152528 Thu Nov 4 20:43:07 2021 +0000
	path	9fans.net/go/cmd/acme
	mod	9fans.net/go	(devel)	
	build	compiler	gc
	build	tags	goexperiment.regabiwrappers,goexperiment.regabireflect,goexperiment.regabiargs,goexperiment.pacerredesign
	build	CGO_ENABLED	true
	build	CGO_CPPFLAGS	
	build	CGO_CFLAGS	
	build	CGO_CXXFLAGS	
	build	CGO_LDFLAGS	
	build	gitrevision	36f0d54cd5ceec2ae9064909ace236078b252458
	build	gitcommittime	2021-11-05T13:48:27Z
	build	gituncommitted	false
SIGQUIT: quit
PC=0x48ba08 m=0 sigcode=0

goroutine 847 [syscall, 3289 minutes]:
syscall.Syscall6(0xf7, 0x1, 0x74717, 0xc000172e28, 0x1000004, 0x0, 0x0)
	/home/rogpeppe/go/src/syscall/asm_linux_amd64.s:43 +0x5 fp=0xc000172dd8 sp=0xc000172dd0 pc=0x48b9e5
os.(*Process).blockUntilWaitable(0xc000324540)
	/home/rogpeppe/go/src/os/wait_waitid.go:32 +0x9c fp=0xc000172ec8 sp=0xc000172dd8 pc=0x4a33fc
os.(*Process).wait(0xc000324540)
	/home/rogpeppe/go/src/os/exec_unix.go:22 +0x28 fp=0xc000172f28 sp=0xc000172ec8 pc=0x49f448
os.(*Process).Wait(...)
	/home/rogpeppe/go/src/os/exec.go:132
os/exec.(*Cmd).Wait(0xc0001f62c0)
	/home/rogpeppe/go/src/os/exec/exec.go:507 +0x54 fp=0xc000172fa0 sp=0xc000172f28 pc=0x4c0e14
9fans.net/go/cmd/acme/internal/exec.runproc.func1()
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1054 +0x25 fp=0xc000172fe0 sp=0xc000172fa0 pc=0x562f25
runtime.goexit()
	/home/rogpeppe/go/src/runtime/asm_amd64.s:1579 +0x1 fp=0xc000172fe8 sp=0xc000172fe0 pc=0x462821
created by 9fans.net/go/cmd/acme/internal/exec.runproc
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1053 +0xffc

goroutine 1 [chan receive, 3936 minutes]:
main.main()
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:222 +0xd58

goroutine 7 [chan receive, 3936 minutes]:
main.main.func5()
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:116 +0x38
created by main.main
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:115 +0x6cf

goroutine 52 [chan send, 2 minutes]:
9fans.net/go/draw.mouseproc(0x0?, 0xc0000c0000, 0x4c0cca?, 0x0?)
	/home/rogpeppe/other/9fans/draw/mouse.go:63 +0x5c
created by 9fans.net/go/draw.(*Display).InitMouse
	/home/rogpeppe/other/9fans/draw/mouse.go:49 +0x12e

goroutine 53 [IO wait, 2 minutes]:
internal/poll.runtime_pollWait(0x7ff738ea6ca8, 0x72)
	/home/rogpeppe/go/src/runtime/netpoll.go:233 +0x89
internal/poll.(*pollDesc).wait(0xc0000a6120?, 0xc0006fd7d4?, 0x1)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:83 +0x32
internal/poll.(*pollDesc).waitRead(...)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:88
internal/poll.(*FD).Read(0xc0000a6120, {0xc0006fd7d4, 0x4, 0x4})
	/home/rogpeppe/go/src/internal/poll/fd_unix.go:167 +0x25a
os.(*File).read(...)
	/home/rogpeppe/go/src/os/file_posix.go:31
os.(*File).Read(0xc0000a2020, {0xc0006fd7d4?, 0xc000150af0?, 0x44a672?})
	/home/rogpeppe/go/src/os/file.go:119 +0x5e
io.ReadAtLeast({0x5ed740, 0xc0000a2020}, {0xc0006fd7d4, 0x4, 0x4}, 0x4)
	/home/rogpeppe/go/src/io/io.go:331 +0x9a
io.ReadFull(...)
	/home/rogpeppe/go/src/io/io.go:350
9fans.net/go/draw/drawfcall.ReadMsg({0x5ed740, 0xc0000a2020})
	/home/rogpeppe/other/9fans/draw/drawfcall/msg.go:232 +0x59
9fans.net/go/draw/drawfcall.(*Conn).RPC(0xc0001000a0, 0xc000150d28, 0xc000a3c6c0)
	/home/rogpeppe/other/9fans/draw/drawfcall/mux.go:93 +0x425
9fans.net/go/draw/drawfcall.(*Conn).ReadKbd(0x0?)
	/home/rogpeppe/other/9fans/draw/drawfcall/mux.go:156 +0x7c
9fans.net/go/draw.kbdproc(0xc0000c0000, 0x0?)
	/home/rogpeppe/other/9fans/draw/keyboard.go:43 +0x48
created by 9fans.net/go/draw.(*Display).InitKeyboard
	/home/rogpeppe/other/9fans/draw/keyboard.go:37 +0x8a

goroutine 54 [IO wait, 2 minutes]:
internal/poll.runtime_pollWait(0x7ff738ea6908, 0x72)
	/home/rogpeppe/go/src/runtime/netpoll.go:233 +0x89
internal/poll.(*pollDesc).wait(0xc000190400?, 0xc0006c4a80?, 0x0)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:83 +0x32
internal/poll.(*pollDesc).waitRead(...)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:88
internal/poll.(*FD).Read(0xc000190400, {0xc0006c4a80, 0x4, 0x80})
	/home/rogpeppe/go/src/internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc000190400, {0xc0006c4a80?, 0x100c00012a9d8?, 0x7ff7385c33a0?})
	/home/rogpeppe/go/src/net/fd_posix.go:55 +0x29
net.(*conn).Read(0xc0000a2088, {0xc0006c4a80?, 0xc00005db28?, 0x44a672?})
	/home/rogpeppe/go/src/net/net.go:183 +0x45
io.ReadAtLeast({0x5ed6e0, 0xc0000a2088}, {0xc0006c4a80, 0x4, 0x80}, 0x4)
	/home/rogpeppe/go/src/io/io.go:331 +0x9a
io.ReadFull(...)
	/home/rogpeppe/go/src/io/io.go:350
9fans.net/go/plan9.ReadFcall({0x5ed6e0, 0xc0000a2088})
	/home/rogpeppe/other/9fans/plan9/fcall.go:421 +0x5b
9fans.net/go/plan9/client.(*conn).read(0xc0000a8000)
	/home/rogpeppe/other/9fans/plan9/client/conn.go:209 +0x51
9fans.net/go/plan9/client.(*conn).rpc(0xc0000a8000, 0xc00005dca0, 0x0)
	/home/rogpeppe/other/9fans/plan9/client/conn.go:266 +0x2b8
9fans.net/go/plan9/client.(*Fid).readAt(0xc0000af290, {0xc0003ae000, 0x1000, 0x8?}, 0xffffffffffffffff)
	/home/rogpeppe/other/9fans/plan9/client/fid.go:190 +0x19e
9fans.net/go/plan9/client.(*Fid).Read(0x3?, {0xc0003ae000?, 0xc00005de30?, 0x436da0?})
	/home/rogpeppe/other/9fans/plan9/client/fid.go:155 +0x25
bufio.(*Reader).fill(0xc0000d2300)
	/home/rogpeppe/go/src/bufio/bufio.go:106 +0x103
bufio.(*Reader).ReadByte(0xc0000d2300)
	/home/rogpeppe/go/src/bufio/bufio.go:262 +0x2c
9fans.net/go/plumb.(*reader).readLine(0xc00005def0)
	/home/rogpeppe/other/9fans/plumb/plumb.go:144 +0x56
9fans.net/go/plumb.(*Message).Recv(0xc000aa55c0, {0x5ed4e0, 0xc0000d2300})
	/home/rogpeppe/other/9fans/plumb/plumb.go:109 +0x98
main.plumbthread()
	/home/rogpeppe/other/9fans/cmd/acme/look1.go:68 +0x36c
created by main.startplumbing
	/home/rogpeppe/other/9fans/cmd/acme/look1.go:93 +0x25

goroutine 55 [IO wait]:
internal/poll.runtime_pollWait(0x7ff738ea6bc0, 0x72)
	/home/rogpeppe/go/src/runtime/netpoll.go:233 +0x89
internal/poll.(*pollDesc).wait(0xc0000a69c0?, 0xc000458000?, 0x1)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:83 +0x32
internal/poll.(*pollDesc).waitRead(...)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:88
internal/poll.(*FD).Read(0xc0000a69c0, {0xc000458000, 0x4, 0x80})
	/home/rogpeppe/go/src/internal/poll/fd_unix.go:167 +0x25a
os.(*File).read(...)
	/home/rogpeppe/go/src/os/file_posix.go:31
os.(*File).Read(0xc0001280a8, {0xc000458000?, 0xc00014cca0?, 0x44a672?})
	/home/rogpeppe/go/src/os/file.go:119 +0x5e
io.ReadAtLeast({0x5ed740, 0xc0001280a8}, {0xc000458000, 0x4, 0x80}, 0x4)
	/home/rogpeppe/go/src/io/io.go:331 +0x9a
io.ReadFull(...)
	/home/rogpeppe/go/src/io/io.go:350
9fans.net/go/plan9.ReadFcall({0x5ed740, 0xc0001280a8})
	/home/rogpeppe/other/9fans/plan9/fcall.go:421 +0x5b
main.fsysproc()
	/home/rogpeppe/other/9fans/cmd/acme/fsys1.go:136 +0x7c
created by main.fsysinit
	/home/rogpeppe/other/9fans/cmd/acme/fsys1.go:126 +0x39c

goroutine 39 [IO wait, 3936 minutes]:
internal/poll.runtime_pollWait(0x7ff738ea6e78, 0x72)
	/home/rogpeppe/go/src/runtime/netpoll.go:233 +0x89
internal/poll.(*pollDesc).wait(0xc0000d2180?, 0xc0001abfb8?, 0x1)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:83 +0x32
internal/poll.(*pollDesc).waitRead(...)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:88
internal/poll.(*FD).Read(0xc0000d2180, {0xc0001abfb8, 0x2000, 0x2000})
	/home/rogpeppe/go/src/internal/poll/fd_unix.go:167 +0x25a
os.(*File).read(...)
	/home/rogpeppe/go/src/os/file_posix.go:31
os.(*File).Read(0xc000010010, {0xc0001abfb8?, 0x0?, 0x0?})
	/home/rogpeppe/go/src/os/file.go:119 +0x5e
main.acmeerrorproc()
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:318 +0xaf
created by main.acmeerrorinit
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:335 +0x9e

goroutine 40 [select, 2 minutes]:
main.keyboardthread()
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:366 +0x132
created by main.main
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:215 +0xcf1

goroutine 41 [semacquire, 2 minutes]:
sync.runtime_SemacquireMutex(0x0?, 0x0?, 0x1?)
	/home/rogpeppe/go/src/runtime/sema.go:71 +0x25
sync.(*Mutex).lockSlow(0x72a730)
	/home/rogpeppe/go/src/sync/mutex.go:153 +0x165
sync.(*Mutex).Lock(...)
	/home/rogpeppe/go/src/sync/mutex.go:81
main.bigLock(...)
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:768
main.xfidlog(0xc00086e100, {0x5b100e, 0x5})
	/home/rogpeppe/other/9fans/cmd/acme/logf.go:146 +0xfb
main.mousethread()
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:463 +0x50c
created by main.main
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:216 +0xcfd

goroutine 42 [semacquire, 2 minutes]:
sync.runtime_SemacquireMutex(0xc000182fe8?, 0x0?, 0x1?)
	/home/rogpeppe/go/src/runtime/sema.go:71 +0x25
sync.(*Mutex).lockSlow(0x6e6a60)
	/home/rogpeppe/go/src/sync/mutex.go:153 +0x165
sync.(*Mutex).Lock(...)
	/home/rogpeppe/go/src/sync/mutex.go:81
main.waitthread()
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:644 +0x5f1
created by main.main
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:217 +0xd09

goroutine 43 [select]:
main.xfidallocthread()
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:710 +0x79
created by main.main
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:218 +0xd15

goroutine 44 [chan receive, 4 minutes]:
main.newwindowthread()
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:735 +0x45
created by main.main
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:219 +0xd25

goroutine 66 [semacquire]:
sync.runtime_SemacquireMutex(0xc0001067c8?, 0xa0?, 0xc000b8df80?)
	/home/rogpeppe/go/src/runtime/sema.go:71 +0x25
sync.(*Mutex).lockSlow(0x72a730)
	/home/rogpeppe/go/src/sync/mutex.go:153 +0x165
sync.(*Mutex).Lock(...)
	/home/rogpeppe/go/src/sync/mutex.go:81
main.bigLock(...)
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:768
main.xfidctl(0xc000013400)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:70 +0x8c
created by main.xfidallocthread
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:719 +0x176

goroutine 10 [chan receive, 3284 minutes]:
main.xfideventread(0xc0003ba0c0, 0xc000373600)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:1007 +0x108
main.xfidread(0xc0003ba0c0)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:329 +0x57f
main.xfidctl(0xc0003ba0c0)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:71 +0x9b
created by main.xfidallocthread
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:719 +0x176

goroutine 916 [IO wait, 3289 minutes]:
internal/poll.runtime_pollWait(0x7ff738ea6568, 0x72)
	/home/rogpeppe/go/src/runtime/netpoll.go:233 +0x89
internal/poll.(*pollDesc).wait(0xc000077e00?, 0xc0003cc000?, 0x1)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:83 +0x32
internal/poll.(*pollDesc).waitRead(...)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:88
internal/poll.(*FD).Read(0xc000077e00, {0xc0003cc000, 0x8000, 0x8000})
	/home/rogpeppe/go/src/internal/poll/fd_unix.go:167 +0x25a
os.(*File).read(...)
	/home/rogpeppe/go/src/os/file_posix.go:31
os.(*File).Read(0xc0000a2090, {0xc0003cc000?, 0xc000358360?, 0x4c0e14?})
	/home/rogpeppe/go/src/os/file.go:119 +0x5e
io.copyBuffer({0x5ed4c0, 0xc000358360}, {0x5ed740, 0xc0000a2090}, {0x0, 0x0, 0x0})
	/home/rogpeppe/go/src/io/io.go:426 +0x1b2
io.Copy(...)
	/home/rogpeppe/go/src/io/io.go:385
9fans.net/go/cmd/acme/internal/exec.fsopenfd.func2()
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1142 +0x45
created by 9fans.net/go/cmd/acme/internal/exec.fsopenfd
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1141 +0x118

goroutine 8 [chan receive, 2 minutes]:
main.xfideventread(0xc0001462c0, 0xc00098c000)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:1007 +0x108
main.xfidread(0xc0001462c0)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:329 +0x57f
main.xfidctl(0xc0001462c0)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:71 +0x9b
created by main.xfidallocthread
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:719 +0x176

goroutine 2670 [IO wait, 2 minutes]:
internal/poll.runtime_pollWait(0x7ff738ea5ff8, 0x72)
	/home/rogpeppe/go/src/runtime/netpoll.go:233 +0x89
internal/poll.(*pollDesc).wait(0xc00055bc00?, 0xc000458900?, 0x0)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:83 +0x32
internal/poll.(*pollDesc).waitRead(...)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:88
internal/poll.(*FD).Read(0xc00055bc00, {0xc000458900, 0x4, 0x80})
	/home/rogpeppe/go/src/internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc00055bc00, {0xc000458900?, 0x100c0003c4c80?, 0x7ff738eacb60?})
	/home/rogpeppe/go/src/net/fd_posix.go:55 +0x29
net.(*conn).Read(0xc000128288, {0xc000458900?, 0xc0003c4d00?, 0x44a672?})
	/home/rogpeppe/go/src/net/net.go:183 +0x45
io.ReadAtLeast({0x5ed6e0, 0xc000128288}, {0xc000458900, 0x4, 0x80}, 0x4)
	/home/rogpeppe/go/src/io/io.go:331 +0x9a
io.ReadFull(...)
	/home/rogpeppe/go/src/io/io.go:350
9fans.net/go/plan9.ReadFcall({0x5ed6e0, 0xc000128288})
	/home/rogpeppe/other/9fans/plan9/fcall.go:421 +0x5b
9fans.net/go/plan9/client.(*conn).read(0xc000153ea0)
	/home/rogpeppe/other/9fans/plan9/client/conn.go:209 +0x51
9fans.net/go/plan9/client.(*conn).rpc(0xc000153ea0, 0xc0003c4e48, 0xc000114a80)
	/home/rogpeppe/other/9fans/plan9/client/conn.go:266 +0x2b8
9fans.net/go/plan9/client.(*Fid).Close(0xc000114a80)
	/home/rogpeppe/other/9fans/plan9/client/fid.go:46 +0x95
9fans.net/go/cmd/acme/internal/exec.fsopenfd.func2()
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1144 +0x65
created by 9fans.net/go/cmd/acme/internal/exec.fsopenfd
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1141 +0x118

goroutine 82 [semacquire]:
sync.runtime_SemacquireMutex(0xc0001834c8?, 0xa0?, 0xc00045df80?)
	/home/rogpeppe/go/src/runtime/sema.go:71 +0x25
sync.(*Mutex).lockSlow(0x72a730)
	/home/rogpeppe/go/src/sync/mutex.go:153 +0x165
sync.(*Mutex).Lock(...)
	/home/rogpeppe/go/src/sync/mutex.go:81
main.bigLock(...)
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:768
main.xfidctl(0xc000146700)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:70 +0x8c
created by main.xfidallocthread
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:719 +0x176

goroutine 14 [chan receive, 143 minutes]:
main.xfideventread(0xc000146000, 0xc000387080)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:1007 +0x108
main.xfidread(0xc000146000)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:329 +0x57f
main.xfidctl(0xc000146000)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:71 +0x9b
created by main.xfidallocthread
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:719 +0x176

goroutine 793 [syscall, 3459 minutes]:
syscall.Syscall6(0xf7, 0x1, 0x6fb6c, 0xc000638628, 0x1000004, 0x0, 0x0)
	/home/rogpeppe/go/src/syscall/asm_linux_amd64.s:43 +0x5
os.(*Process).blockUntilWaitable(0xc00072e060)
	/home/rogpeppe/go/src/os/wait_waitid.go:32 +0x9c
os.(*Process).wait(0xc00072e060)
	/home/rogpeppe/go/src/os/exec_unix.go:22 +0x28
os.(*Process).Wait(...)
	/home/rogpeppe/go/src/os/exec.go:132
os/exec.(*Cmd).Wait(0xc0001f6000)
	/home/rogpeppe/go/src/os/exec/exec.go:507 +0x54
9fans.net/go/cmd/acme/internal/exec.runproc.func1()
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1054 +0x25
created by 9fans.net/go/cmd/acme/internal/exec.runproc
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1053 +0xffc

goroutine 115 [IO wait, 2 minutes]:
internal/poll.runtime_pollWait(0x7ff738ea6480, 0x72)
	/home/rogpeppe/go/src/runtime/netpoll.go:233 +0x89
internal/poll.(*pollDesc).wait(0xc000195000?, 0xc000458a00?, 0x0)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:83 +0x32
internal/poll.(*pollDesc).waitRead(...)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:88
internal/poll.(*FD).Read(0xc000195000, {0xc000458a00, 0x4, 0x80})
	/home/rogpeppe/go/src/internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc000195000, {0xc000458a00?, 0x100c0003c6b48?, 0x7ff738eacb60?})
	/home/rogpeppe/go/src/net/fd_posix.go:55 +0x29
net.(*conn).Read(0xc0000100c0, {0xc000458a00?, 0xc0003c6bc8?, 0x44a672?})
	/home/rogpeppe/go/src/net/net.go:183 +0x45
io.ReadAtLeast({0x5ed6e0, 0xc0000100c0}, {0xc000458a00, 0x4, 0x80}, 0x4)
	/home/rogpeppe/go/src/io/io.go:331 +0x9a
io.ReadFull(...)
	/home/rogpeppe/go/src/io/io.go:350
9fans.net/go/plan9.ReadFcall({0x5ed6e0, 0xc0000100c0})
	/home/rogpeppe/other/9fans/plan9/fcall.go:421 +0x5b
9fans.net/go/plan9/client.(*conn).read(0xc0003bc2a0)
	/home/rogpeppe/other/9fans/plan9/client/conn.go:209 +0x51
9fans.net/go/plan9/client.(*conn).rpc(0xc0003bc2a0, 0xc0003c6d38, 0x0)
	/home/rogpeppe/other/9fans/plan9/client/conn.go:266 +0x2b8
9fans.net/go/plan9/client.(*Fid).writeAt(0xc000114b70, {0xc00044c000, 0x3d, 0x8000}, 0xffffffffffffffff)
	/home/rogpeppe/other/9fans/plan9/client/fid.go:367 +0x188
9fans.net/go/plan9/client.(*Fid).WriteAt(0x3d?, {0xc00044c000, 0x3d, 0x8000}, 0xffffffffffffffff)
	/home/rogpeppe/other/9fans/plan9/client/fid.go:342 +0xf8
9fans.net/go/plan9/client.(*Fid).Write(0xc0000100f0?, {0xc00044c000?, 0xc000114b70?, 0x4c0e14?})
	/home/rogpeppe/other/9fans/plan9/client/fid.go:325 +0x25
io.copyBuffer({0x5ed4c0, 0xc000114b70}, {0x5ed740, 0xc0000100f0}, {0x0, 0x0, 0x0})
	/home/rogpeppe/go/src/io/io.go:428 +0x204
io.Copy(...)
	/home/rogpeppe/go/src/io/io.go:385
9fans.net/go/cmd/acme/internal/exec.fsopenfd.func2()
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1142 +0x45
created by 9fans.net/go/cmd/acme/internal/exec.fsopenfd
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1141 +0x118

goroutine 2667 [syscall, 9 minutes]:
syscall.Syscall6(0xf7, 0x1, 0xd17aa, 0xc000173e28, 0x1000004, 0x0, 0x0)
	/home/rogpeppe/go/src/syscall/asm_linux_amd64.s:43 +0x5
os.(*Process).blockUntilWaitable(0xc0006203c0)
	/home/rogpeppe/go/src/os/wait_waitid.go:32 +0x9c
os.(*Process).wait(0xc0006203c0)
	/home/rogpeppe/go/src/os/exec_unix.go:22 +0x28
os.(*Process).Wait(...)
	/home/rogpeppe/go/src/os/exec.go:132
os/exec.(*Cmd).Wait(0xc0001f6160)
	/home/rogpeppe/go/src/os/exec/exec.go:507 +0x54
9fans.net/go/cmd/acme/internal/exec.runproc.func1()
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1054 +0x25
created by 9fans.net/go/cmd/acme/internal/exec.runproc
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1053 +0xffc

goroutine 2666 [IO wait, 9 minutes]:
internal/poll.runtime_pollWait(0x7ff7384c86d8, 0x72)
	/home/rogpeppe/go/src/runtime/netpoll.go:233 +0x89
internal/poll.(*pollDesc).wait(0xc0008b90e0?, 0xc00042e000?, 0x1)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:83 +0x32
internal/poll.(*pollDesc).waitRead(...)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:88
internal/poll.(*FD).Read(0xc0008b90e0, {0xc00042e000, 0x8000, 0x8000})
	/home/rogpeppe/go/src/internal/poll/fd_unix.go:167 +0x25a
os.(*File).read(...)
	/home/rogpeppe/go/src/os/file_posix.go:31
os.(*File).Read(0xc0000fe040, {0xc00042e000?, 0xc0000ae540?, 0xc000566ad8?})
	/home/rogpeppe/go/src/os/file.go:119 +0x5e
io.copyBuffer({0x5ed4c0, 0xc0000ae540}, {0x5ed740, 0xc0000fe040}, {0x0, 0x0, 0x0})
	/home/rogpeppe/go/src/io/io.go:426 +0x1b2
io.Copy(...)
	/home/rogpeppe/go/src/io/io.go:385
9fans.net/go/cmd/acme/internal/exec.fsopenfd.func2()
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1142 +0x45
created by 9fans.net/go/cmd/acme/internal/exec.fsopenfd
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1141 +0x118

goroutine 119 [chan receive, 4 minutes]:
main.xfideventread(0xc000012080, 0xc000f53b80)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:1007 +0x108
main.xfidread(0xc000012080)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:329 +0x57f
main.xfidctl(0xc000012080)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:71 +0x9b
created by main.xfidallocthread
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:719 +0x176

goroutine 806 [IO wait, 3459 minutes]:
internal/poll.runtime_pollWait(0x7ff738ea60e0, 0x72)
	/home/rogpeppe/go/src/runtime/netpoll.go:233 +0x89
internal/poll.(*pollDesc).wait(0xc00048f4a0?, 0xc0004f4000?, 0x1)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:83 +0x32
internal/poll.(*pollDesc).waitRead(...)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:88
internal/poll.(*FD).Read(0xc00048f4a0, {0xc0004f4000, 0x8000, 0x8000})
	/home/rogpeppe/go/src/internal/poll/fd_unix.go:167 +0x25a
os.(*File).read(...)
	/home/rogpeppe/go/src/os/file_posix.go:31
os.(*File).Read(0xc000010070, {0xc0004f4000?, 0xc000114900?, 0xc0000be418?})
	/home/rogpeppe/go/src/os/file.go:119 +0x5e
io.copyBuffer({0x5ed4c0, 0xc000114900}, {0x5ed740, 0xc000010070}, {0x0, 0x0, 0x0})
	/home/rogpeppe/go/src/io/io.go:426 +0x1b2
io.Copy(...)
	/home/rogpeppe/go/src/io/io.go:385
9fans.net/go/cmd/acme/internal/exec.fsopenfd.func2()
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1142 +0x45
created by 9fans.net/go/cmd/acme/internal/exec.fsopenfd
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1141 +0x118

goroutine 612 [semacquire, 2 minutes]:
sync.runtime_SemacquireMutex(0xc0001194c8?, 0xa0?, 0xc000461f80?)
	/home/rogpeppe/go/src/runtime/sema.go:71 +0x25
sync.(*Mutex).lockSlow(0x72a730)
	/home/rogpeppe/go/src/sync/mutex.go:153 +0x165
sync.(*Mutex).Lock(...)
	/home/rogpeppe/go/src/sync/mutex.go:81
main.bigLock(...)
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:768
main.xfidctl(0xc000776180)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:70 +0x8c
created by main.xfidallocthread
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:719 +0x176

goroutine 456 [chan receive, 553 minutes]:
main.xfidctl(0xc0000acd80)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:69 +0x59
created by main.xfidallocthread
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:719 +0x176

goroutine 1602 [semacquire, 2 minutes]:
sync.runtime_SemacquireMutex(0xc0001199a8?, 0xa0?, 0xc0000f7f80?)
	/home/rogpeppe/go/src/runtime/sema.go:71 +0x25
sync.(*Mutex).lockSlow(0x72a730)
	/home/rogpeppe/go/src/sync/mutex.go:153 +0x165
sync.(*Mutex).Lock(...)
	/home/rogpeppe/go/src/sync/mutex.go:81
main.bigLock(...)
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:768
main.xfidctl(0xc000777800)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:70 +0x8c
created by main.xfidallocthread
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:719 +0x176

goroutine 1955 [syscall, 1759 minutes]:
syscall.Syscall6(0xf7, 0x1, 0x9ec65, 0xc000634e28, 0x1000004, 0x0, 0x0)
	/home/rogpeppe/go/src/syscall/asm_linux_amd64.s:43 +0x5
os.(*Process).blockUntilWaitable(0xc000a4fdd0)
	/home/rogpeppe/go/src/os/wait_waitid.go:32 +0x9c
os.(*Process).wait(0xc000a4fdd0)
	/home/rogpeppe/go/src/os/exec_unix.go:22 +0x28
os.(*Process).Wait(...)
	/home/rogpeppe/go/src/os/exec.go:132
os/exec.(*Cmd).Wait(0xc0001f69a0)
	/home/rogpeppe/go/src/os/exec/exec.go:507 +0x54
9fans.net/go/cmd/acme/internal/exec.runproc.func1()
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1054 +0x25
created by 9fans.net/go/cmd/acme/internal/exec.runproc
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1053 +0xffc

goroutine 2529 [IO wait, 270 minutes]:
internal/poll.runtime_pollWait(0x7ff7384c87c0, 0x72)
	/home/rogpeppe/go/src/runtime/netpoll.go:233 +0x89
internal/poll.(*pollDesc).wait(0xc000a0e240?, 0xc00034c000?, 0x1)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:83 +0x32
internal/poll.(*pollDesc).waitRead(...)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:88
internal/poll.(*FD).Read(0xc000a0e240, {0xc00034c000, 0x8000, 0x8000})
	/home/rogpeppe/go/src/internal/poll/fd_unix.go:167 +0x25a
os.(*File).read(...)
	/home/rogpeppe/go/src/os/file_posix.go:31
os.(*File).Read(0xc0000fe030, {0xc00034c000?, 0xc000358720?, 0x4c0e14?})
	/home/rogpeppe/go/src/os/file.go:119 +0x5e
io.copyBuffer({0x5ed4c0, 0xc000358720}, {0x5ed740, 0xc0000fe030}, {0x0, 0x0, 0x0})
	/home/rogpeppe/go/src/io/io.go:426 +0x1b2
io.Copy(...)
	/home/rogpeppe/go/src/io/io.go:385
9fans.net/go/cmd/acme/internal/exec.fsopenfd.func2()
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1142 +0x45
created by 9fans.net/go/cmd/acme/internal/exec.fsopenfd
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1141 +0x118

goroutine 1937 [IO wait, 1759 minutes]:
internal/poll.runtime_pollWait(0x7ff738ea6738, 0x72)
	/home/rogpeppe/go/src/runtime/netpoll.go:233 +0x89
internal/poll.(*pollDesc).wait(0xc0004aa000?, 0xc000a2c000?, 0x1)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:83 +0x32
internal/poll.(*pollDesc).waitRead(...)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:88
internal/poll.(*FD).Read(0xc0004aa000, {0xc000a2c000, 0x8000, 0x8000})
	/home/rogpeppe/go/src/internal/poll/fd_unix.go:167 +0x25a
os.(*File).read(...)
	/home/rogpeppe/go/src/os/file_posix.go:31
os.(*File).Read(0xc0000fe1d0, {0xc000a2c000?, 0xc000a2a1e0?, 0x4c0e14?})
	/home/rogpeppe/go/src/os/file.go:119 +0x5e
io.copyBuffer({0x5ed4c0, 0xc000a2a1e0}, {0x5ed740, 0xc0000fe1d0}, {0x0, 0x0, 0x0})
	/home/rogpeppe/go/src/io/io.go:426 +0x1b2
io.Copy(...)
	/home/rogpeppe/go/src/io/io.go:385
9fans.net/go/cmd/acme/internal/exec.fsopenfd.func2()
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1142 +0x45
created by 9fans.net/go/cmd/acme/internal/exec.fsopenfd
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1141 +0x118

goroutine 2669 [IO wait, 4 minutes]:
internal/poll.runtime_pollWait(0x7ff7384c8168, 0x72)
	/home/rogpeppe/go/src/runtime/netpoll.go:233 +0x89
internal/poll.(*pollDesc).wait(0xc000aa59e0?, 0xc000980000?, 0x1)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:83 +0x32
internal/poll.(*pollDesc).waitRead(...)
	/home/rogpeppe/go/src/internal/poll/fd_poll_runtime.go:88
internal/poll.(*FD).Read(0xc000aa59e0, {0xc000980000, 0x8000, 0x8000})
	/home/rogpeppe/go/src/internal/poll/fd_unix.go:167 +0x25a
os.(*File).read(...)
	/home/rogpeppe/go/src/os/file_posix.go:31
os.(*File).Read(0xc0000101f8, {0xc000980000?, 0xc0000af2f0?, 0x0?})
	/home/rogpeppe/go/src/os/file.go:119 +0x5e
io.copyBuffer({0x5ed4c0, 0xc0000af2f0}, {0x5ed740, 0xc0000101f8}, {0x0, 0x0, 0x0})
	/home/rogpeppe/go/src/io/io.go:426 +0x1b2
io.Copy(...)
	/home/rogpeppe/go/src/io/io.go:385
9fans.net/go/cmd/acme/internal/exec.fsopenfd.func2()
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1142 +0x45
created by 9fans.net/go/cmd/acme/internal/exec.fsopenfd
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1141 +0x118

goroutine 2562 [syscall, 270 minutes]:
syscall.Syscall6(0xf7, 0x1, 0xc8a71, 0xc000517e28, 0x1000004, 0x0, 0x0)
	/home/rogpeppe/go/src/syscall/asm_linux_amd64.s:43 +0x5
os.(*Process).blockUntilWaitable(0xc00080c090)
	/home/rogpeppe/go/src/os/wait_waitid.go:32 +0x9c
os.(*Process).wait(0xc00080c090)
	/home/rogpeppe/go/src/os/exec_unix.go:22 +0x28
os.(*Process).Wait(...)
	/home/rogpeppe/go/src/os/exec.go:132
os/exec.(*Cmd).Wait(0xc0001f6420)
	/home/rogpeppe/go/src/os/exec/exec.go:507 +0x54
9fans.net/go/cmd/acme/internal/exec.runproc.func1()
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1054 +0x25
created by 9fans.net/go/cmd/acme/internal/exec.runproc
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1053 +0xffc

goroutine 1936 [semacquire, 2 minutes]:
sync.runtime_SemacquireMutex(0xc0006bf808?, 0xa0?, 0xc000b23f80?)
	/home/rogpeppe/go/src/runtime/sema.go:71 +0x25
sync.(*Mutex).lockSlow(0x72a730)
	/home/rogpeppe/go/src/sync/mutex.go:153 +0x165
sync.(*Mutex).Lock(...)
	/home/rogpeppe/go/src/sync/mutex.go:81
main.bigLock(...)
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:768
main.xfidctl(0xc00012c680)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:70 +0x8c
created by main.xfidallocthread
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:719 +0x176

goroutine 2693 [syscall, 4 minutes]:
syscall.Syscall6(0xf7, 0x1, 0xd1a46, 0xc000637e28, 0x1000004, 0x0, 0x0)
	/home/rogpeppe/go/src/syscall/asm_linux_amd64.s:43 +0x5
os.(*Process).blockUntilWaitable(0xc0008eb260)
	/home/rogpeppe/go/src/os/wait_waitid.go:32 +0x9c
os.(*Process).wait(0xc0008eb260)
	/home/rogpeppe/go/src/os/exec_unix.go:22 +0x28
os.(*Process).Wait(...)
	/home/rogpeppe/go/src/os/exec.go:132
os/exec.(*Cmd).Wait(0xc0001f66e0)
	/home/rogpeppe/go/src/os/exec/exec.go:507 +0x54
9fans.net/go/cmd/acme/internal/exec.runproc.func1()
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1054 +0x25
created by 9fans.net/go/cmd/acme/internal/exec.runproc
	/home/rogpeppe/other/9fans/cmd/acme/internal/exec/exec.go:1053 +0xffc

goroutine 2314 [chan receive, 30 minutes]:
main.xfideventread(0xc0000ac700, 0xc0006b4580)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:1007 +0x108
main.xfidread(0xc0000ac700)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:329 +0x57f
main.xfidctl(0xc0000ac700)
	/home/rogpeppe/other/9fans/cmd/acme/xfid.go:71 +0x9b
created by main.xfidallocthread
	/home/rogpeppe/other/9fans/cmd/acme/acme.go:719 +0x176

rax    0xf7
rbx    0xc00002c000
rcx    0x48ba0a
rdx    0xc000172e28
rdi    0x1
rsi    0x74717
rbp    0xc000172eb8
rsp    0xc000172dd0
r8     0x0
r9     0x0
r10    0x1000004
r11    0x202
r12    0xc000172e58
r13    0x30
r14    0xc000107a00
r15    0x7ff73b03ea61
rip    0x48ba08
rflags 0x202
cs     0x33
fs     0x0
gs     0x0

cmd/acme: window directories missing from fs

If I run 9p ls acme, I see something like this:

----------- M 0 rogpeppe rogpeppe 0 Nov  4 07:29 ''
d-r-x------ M 0 rogpeppe rogpeppe 0 Nov  4 07:29 acme
--rw------- M 0 rogpeppe rogpeppe 0 Nov  4 07:29 cons
----------- M 0 rogpeppe rogpeppe 0 Nov  4 07:29 consctl
d---------- M 0 rogpeppe rogpeppe 0 Nov  4 07:29 draw
---w------- M 0 rogpeppe rogpeppe 0 Nov  4 07:29 editout
--r-------- M 0 rogpeppe rogpeppe 0 Nov  4 07:29 index
--rw------- M 0 rogpeppe rogpeppe 0 Nov  4 07:29 label
--r-------- M 0 rogpeppe rogpeppe 0 Nov  4 07:29 log
d-r-x------ M 0 rogpeppe rogpeppe 0 Nov  4 07:29 new

None of the window directories are present (although they can be walked to) and there's that odd empty-named file with no permissions.

go/draw does not work on native plan9 system.

Note: I was running the latest version of 9front in virtualbox.

I was rewriting a small graphics example I found in C that used libdraw to make a bouncing ball in Go using go/draw. Somehow I missed the first line on the pkg.go.dev which states that the package connects to devdraw from plan9port. This essentially means that go/draw doesn't work on plain plan9 OS or a fork of it?

Is there any plans to add support for native plan9 or does someone know of an equivalent beyond using cgo?

Win.Seek("body", 0, io.SeekEnd) always returns 0

Win.Seek always returns 0 in case of io.SeekEnd, io.SeekCurrent. Does it understand them correctly?

Is there any other way to get the size of window data in bytes?

I wrote a simple tool for acme that runs guru on selected entity. It can run different guru commands for three selection kinds: pointing at, select, select before.

The problem is that guru requires byte offsets but Win.ReadAddr returns character offsets (maybe it is guru bug).

I've managed to obtain the required byte offsets of selection but it is based on hack that requires read data from current selection to the end of file and next read the whole body.

sam: -r maschine panics from type assertion

$ sam -r host
panic: interface conversion: io.WriteCloser is *exec.closeOnce, not *os.File

goroutine 1 [running]:
main.connectto(0x7ffffbe2c038, 0xf, 0xc00008a170, 0x0, 0x0)
/home/fs/go/src/github.com/9fans/go/cmd/sam/io.go:232 +0x476
main.startup(0x7ffffbe2c038, 0xf, 0x0, 0xc0000bff40, 0x1, 0x1, 0xc00008a170, 0x0, 0x0)
/home/fs/go/src/github.com/9fans/go/cmd/sam/io.go:237 +0xbf
main.main()
/home/fs/go/src/github.com/9fans/go/cmd/sam/sam.go:97 +0x6f1

Somethat similar to the fixed problem in #53.

9fans.net has disappeared into thin air

As per issue #3, I have been trying to install godef and running up against the problem indicated in their issue (rogpeppe/godef#4) in addition to the issue above. The last comment in #3 says that the server is back in The Cloud but that it might disappear into thin air. So I am raising this issue to highlight that it has indeed disappeared into thin air. Might it be prudent to point the 9fans.net package name to github.com/9fans instead?

TL/DR, suggested fix: change 9fans.net/go/* to github.com/9fans/go/*

test issue

Discussed in #63

Originally posted by rsc July 21, 2021
Test issue comment.

9fans.net is down

I can't install godef since godef requires acme and 9fans.net is down.

package acme // import "9fans.net/go/acme"

9pserve: announce unix!/tmp/ns.hherman.:0/acme: No such file or directory

I'm trying to work out why this is happening, but in the mean time I thought you might also like to know about it. I've deleted a few of the plan9 binaries from my machine that were colliding with programs I use normally (e.g zip or tar), so possibly I've deleted something important. If this rings any bells, pointers would be much appreciated!

acme: regex not mathing as much as possible

Considering the following text:

abc xyz

The following Edit command:

Edit ,x/[a-z]+/ s/.*/T&/g

Should result in

Tabc Txyz

But it seems like x is capturing single chars only, instead the full 3 char group, so the command results in :

TaTbTc TxTyTz

I tried to find the problem to fix it myself but could not find where the bug is. It seems to work fine in go sam and plan9port acme.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.