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
Packages and commands for using Plan 9 from Go
License: MIT License
Originally posted by rsc July 21, 2021
Test issue comment.
TESt
Test issue comment.
$ sam -d
-.
!date
!
When I try to execute 4s
on Windows with devdraw
from http://sam.cat-v.org/_files/win32_sam.zip, it hangs and uses up all memory, never creating a new window.
Steps to reproduce:
devdraw.exe
in your PATH.go get 9fans.net/go/games/4s
%GOPATH%/bin/4s
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.
Hi, I wanted to know now that acme is being implemented in Go, can we add support for persian/arabic language to it ?
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 -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
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
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.
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?
To reproduce, middle-click on sleep 1 &
in a window tag.
The sleep
appears in the row tag but never goes away.
The HTTPS certificate on https://9fans.net has expired.
Fetching https://9fans.net/go/acme?go-get=1
https fetch failed: Get https://9fans.net/go/acme?go-get=1: x509: certificate has expired or is not yet valid
To reproduce: start selecting, drag mouse off the bottom of the window keeping mouse button held down. The selection does not continue to grow.
$ 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
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.
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
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
I can't install godef since godef requires acme and 9fans.net is down.
package acme // import "9fans.net/go/acme"
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 -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.
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.
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
Steps to repro:
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
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.
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/*
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.
Expected behavior:
Apologies if I'm missing something simple, but it's just not working for me. I have a recently-updated p9p install on Debian.
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.
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.
308 case Rread:
309 n, b = gbit32(b)
310 if len(b) != int(n) {
311 panic(1)
312 }
313 f.Data = b
314 b = nil
After 313, add the line
f.Count = uint32(len(b))
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!
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.
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.
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?
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?
acmego not responding to window puts since 4083899.
To reproduce, middle click on sleep 1000
.
Then middle click on Kill sleep
.
The sleep
process remains intact.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.