Re: [9fans] Python/Mercurial error
> https://codereview.appspot.com/82660044/ > > Please give a try and review this change to > get it submitted before the Go 1.4 release. I tried this, and compilation becomes seamless. However, a new test error occured as: = ? cmd/nm [no test files] pack.test 1119: suicide: sys: trap: fault read addr=0xeafc pc=0x254b6 *** Test killed: ran too long (3m0s). FAILcmd/pack180.007s ? cmd/yacc[no test files] = I'm still half sleeping, then, David, please submit this result to go team from you. Kenji
Re: [9fans] Python/Mercurial error
On Wed Apr 2 01:20:42 EDT 2014, 0in...@gmail.com wrote: > Two days ago, I've fixed the script mklibc.rc to > generate the libc_plan9.h file properly on 9atom. > > https://codereview.appspot.com/82660044/ > > Please give a try and review this change to > get it submitted before the Go 1.4 release. the script itself reminds me of gcc fixincludes. - erik
Re: [9fans] Partitioning the disk
> As I cannot force plan 9 to use my sata disk, I've decided to buy a sata to > usb convertor. > After compiling the usb tools on 9atom, I can find my disk under /dev/sdU1.0 > and now is the time to > prepare the disk partitions in order to install plan 9. Disk which I want to > use isn't empty > (it contains some of ext4s and swap) but I want to format the entire disk. In > 9atom doc's pages > I've found some example how to initialize the blank disk: > > Initialize the blank disk /dev/sdC0/data. > disk/mbr –m /386/mbr /dev/sdC0/data > disk/fdisk –baw /dev/sdC0/data > disk/prep –bw –a^(9fat nvram fossil cache swap) /dev/sdC0/plan9 > disk/format –b /386/pbslba –d –r 2 /dev/sdC0/9fat \ > /386/9load /386/9pcf /tmp/plan9.ini unfortunately usb disk devices are not directly partitionable. this can be solved on 9atom with sdloop addloop u /dev/sdU1.0/data this will create /dev/sdu0/^(ctl data) which you can then partition with diskparts. (if using the standard distribution use diskparts(8) and the file will be /dev/sdXX/data) if you do a pull as glenda, or alternately mount /srv/boot /n/root && 9fs atom && disk/mkfs -vkU -s /n/atom/plan9^`{pwd} -d . <{echo +} you can then try "mkusbboot -p `{echo +}". this may actually work. let me know if it has not, as i haven't had a chance to test it. > BTW. If there is any method to compile all the 9atom sources at once(simpler > that writting rc script)? cd /sys/src; mk install && mk clean there is not enough room on the usb key to install all. - erik
Re: [9fans] Partitioning the disk
> if you do a pull as glenda, or alternately > > mount /srv/boot /n/root && > 9fs atom && > disk/mkfs -vkU -s /n/atom/plan9^`{pwd} -d . <{echo +} > > you can then try "mkusbboot -p `{echo +}". this may actually work. srv: dial tcp!atom.9atom.org!fs: cs: can't translate address: '/srv/dns' file does not exist. It seems to me like an issue with internet connection. Am I right? One more question to this command. You've used pwd in it, so what directory should I be in, in order to run command successfully? Why do I need to run this first mount command(the /n/root seems to be used nowhere)? > there is not enough room on the usb key to install all. The other problem is that after compiling usb and all it dependences when I've rebooted the plan 9 atom all programs disappeared and I've needed to compile them again. Is there any method to make the changes to the disk persistent?
Re: [9fans] Partitioning the disk
On Wed Apr 2 17:49:51 EDT 2014, szymon.olewnic...@rid.pl wrote: > > if you do a pull as glenda, or alternately > > > > mount /srv/boot /n/root && > > 9fs atom && > > disk/mkfs -vkU -s /n/atom/plan9^`{pwd} -d . <{echo +} > > > > you can then try "mkusbboot -p `{echo +}". this may actually work. > srv: dial tcp!atom.9atom.org!fs: cs: can't translate address: > '/srv/dns' file > does not exist. > It seems to me like an issue with internet connection. Am I right? > One more question to this command. You've used pwd in it, so what directory > should I be in, in > order to run command successfully? Why do I need to run this first mount > command(the /n/root seems > to be used nowhere)? yes. you can either run ndb/dns -r and ndb/cs and then try again, or replace "9fs atom" with attaip=208.71.233.235 nflag=-n srv $nflag -q tcp!$attaip atom && mount $nflag /srv/atom /n/atom atom > > there is not enough room on the usb key to install all. > The other problem is that after compiling usb and all it dependences when > I've rebooted > the plan 9 atom all programs disappeared and I've needed to compile them > again. Is there any method to > make the changes to the disk persistent? changes to the disk are persistent. i suspect the executables are misplaced. are you booting from the hard drive? - erik
[9fans] fossil memory corruption
small but potentially deadly diff -c /n/dump/2014/0402/sys/src/cmd/fossil/9fsys.c 9fsys.c /n/dump/2014/0402/sys/src/cmd/fossil/9fsys.c:34,40 - 9fsys.c:34,40 char* curfsys; } sbox; - static char *_argv0; + char *_argv0; #define argv0 _argv0 static char FsysAll[] = "all"; diff -c /n/dump/2014/0402/sys/src/cmd/fossil/Ccli.c Ccli.c /n/dump/2014/0402/sys/src/cmd/fossil/Ccli.c:33,38 - Ccli.c:33,40 return 0; } + extern char *_argv0; + int cliExec(char* buf) { /n/dump/2014/0402/sys/src/cmd/fossil/Ccli.c:57,62 - Ccli.c:59,65 vtUnlock(cbox.lock); if(!(r = cbox.cmd[i].cmd(argc, argv))) consPrint("%s\n", vtGetError()); + _argv0 = nil; /* evade defn of ARGBEGIN */ vtMemFree(p); return r; }
Re: [9fans] fossil memory corruption
i should explain further, since this is sneaky. since we're calling ARGBEGIN lots of times, we hit a special case. the defn is #define ARGBEGINfor((argv0||(argv0=*argv)),argv++,argc--;\ a subsequent call to ARGBEGIN will not reset argv0, and worse, argv0 can be pointing to bogus memory. - erik
Re: [9fans] Python/Mercurial error
>> https://codereview.appspot.com/82660044/ >> >> Please give a try and review this change to >> get it submitted before the Go 1.4 release. Sorry, David. I made mistake to copy your patch file to Plan9 system (I've not set abaco yet). I retried your above patch, and perfectly seamless results which are included here. Kenji # Building C bootstrap tool. cmd/dist # Building compilers and Go bootstrap tool for host, plan9/386. lib9 libbio warning: /usr/sys/src/go/src/libbio/bputrune.c:39[/usr/sys/src/go/src/libbio/bputrune.c:1450] result of operation not used libmach warning: /usr/sys/src/go/src/libmach/8db.c:207[/usr/sys/src/go/src/libmach/8db.c:2158] unreachable code FUNC warning: /usr/sys/src/go/src/libmach/sym.c:374[/usr/sys/src/go/src/libmach/sym.c:2198] useless or misleading comparison: UINT < 0 liblink misc/pprof cmd/objdump cmd/prof cmd/cc warning: /usr/sys/src/go/src/cmd/cc/y.tab.c:1785[/usr/sys/src/go/src/cmd/cc/y.tab.c:4593] result of operation not used warning: /usr/sys/src/go/src/cmd/cc/y.tab.c:1785[/usr/sys/src/go/src/cmd/cc/y.tab.c:4593] result of operation not used warning: /usr/sys/src/go/src/cmd/cc/y.tab.c:1791[/usr/sys/src/go/src/cmd/cc/y.tab.c:4599] result of operation not used warning: /usr/sys/src/go/src/cmd/cc/y.tab.c:1791[/usr/sys/src/go/src/cmd/cc/y.tab.c:4599] result of operation not used warning: /usr/sys/src/go/src/cmd/cc/y.tab.c:1788[/usr/sys/src/go/src/cmd/cc/y.tab.c:4596] set and not used: yymsg warning: /usr/sys/src/go/src/cmd/cc/y.tab.c:1868[/usr/sys/src/go/src/cmd/cc/y.tab.c:4671] set and not used: yytoken warning: /usr/sys/src/go/src/cmd/cc/y.tab.c:1952[/usr/sys/src/go/src/cmd/cc/y.tab.c:4751] set and not used: yyptr cmd/gc warning: /usr/sys/src/go/src/cmd/gc/y.tab.c:2049[/usr/sys/src/go/src/cmd/gc/y.tab.c:5497] useless or misleading comparison: ULONG <= 0x warning: /usr/sys/src/go/src/cmd/gc/y.tab.c:2072[/usr/sys/src/go/src/cmd/gc/y.tab.c:5518] useless or misleading comparison: ULONG <= 0x warning: /usr/sys/src/go/src/cmd/gc/y.tab.c:2080[/usr/sys/src/go/src/cmd/gc/y.tab.c:5526] useless or misleading comparison: ULONG <= 0x warning: /usr/sys/src/go/src/cmd/gc/y.tab.c:2124[/usr/sys/src/go/src/cmd/gc/y.tab.c:5568] result of operation not used warning: /usr/sys/src/go/src/cmd/gc/y.tab.c:2124[/usr/sys/src/go/src/cmd/gc/y.tab.c:5568] result of operation not used warning: /usr/sys/src/go/src/cmd/gc/y.tab.c:2127[/usr/sys/src/go/src/cmd/gc/y.tab.c:5571] set and not used: yymsg warning: /usr/sys/src/go/src/cmd/gc/y.tab.c:2234[/usr/sys/src/go/src/cmd/gc/y.tab.c:5673] set and not used: yytoken warning: /usr/sys/src/go/src/cmd/gc/y.tab.c:2309[/usr/sys/src/go/src/cmd/gc/y.tab.c:5742] set and not used: yyptr cmd/8l cmd/8a warning: /usr/sys/src/go/src/cmd/8a/y.tab.c:1376[/usr/sys/src/go/src/cmd/8a/y.tab.c:4282] result of operation not used warning: /usr/sys/src/go/src/cmd/8a/y.tab.c:1376[/usr/sys/src/go/src/cmd/8a/y.tab.c:4282] result of operation not used warning: /usr/sys/src/go/src/cmd/8a/y.tab.c:1379[/usr/sys/src/go/src/cmd/8a/y.tab.c:4285] set and not used: yymsg warning: /usr/sys/src/go/src/cmd/8a/y.tab.c:1567[/usr/sys/src/go/src/cmd/8a/y.tab.c:4461] set and not used: yyptr cmd/8c cmd/8g pkg/runtime pkg/errors pkg/sync/atomic pkg/sync pkg/io pkg/unicode pkg/unicode/utf8 pkg/unicode/utf16 pkg/bytes pkg/math pkg/strings pkg/strconv pkg/bufio pkg/sort pkg/container/heap pkg/encoding/base64 pkg/syscall pkg/time pkg/os pkg/reflect pkg/fmt pkg/encoding pkg/encoding/json pkg/flag pkg/path/filepath pkg/path pkg/io/ioutil pkg/log pkg/regexp/syntax pkg/regexp pkg/go/token pkg/go/scanner pkg/go/ast pkg/go/parser pkg/os/exec pkg/os/signal pkg/net/url pkg/text/template/parse pkg/text/template pkg/go/doc pkg/go/build cmd/go # Building packages and commands for plan9/386. runtime errors sync/atomic sync io unicode unicode/utf8 bytes bufio math strconv reflect encoding/binary syscall time os fmt debug/dwarf debug/elf strings debug/gosym debug/macho debug/pe sort flag log cmd/addr2line hash crypto crypto/md5 go/token path/filepath go/scanner go/ast io/ioutil go/parser text/tabwriter go/printer os/exec cmd/cgo go/format path cmd/fix container/heap encoding encoding/base64 unicode/utf16 encoding/json encoding/xml regexp/syntax regexp net/url text/template/parse text/template go/doc go/build compress/flate hash/crc32 compress/gzip container/list crypto/subtle crypto/cipher crypto/aes crypto/des math/rand math/big crypto/elliptic crypto/ecdsa crypto/hmac crypto/rand crypto/rc4 crypto/rsa crypto/sha1 crypto/sha256 crypto/dsa encoding/asn1 crypto/x509/pkix encoding/hex encoding/pem net crypto/x509 crypto/tls mime net/textproto mime/multipart net/http os/signal cmd/go runtime/pprof cmd/gofmt debug/goobj cmd/link debug/plan9obj cmd/nm cmd/pack cmd/yacc archive/tar archive/zip compress/bzip2 compress/lzw hash/adler32 compress/zlib container/ring crypto/sha512 database/sql/driver database/sql encoding/ascii85 encoding/base32 encoding/csv
Re: [9fans] Python/Mercurial error
> the script itself reminds me of gcc fixincludes. This is probably not ideal, but the alternative would be to split libc.h in three parts: libc.h, fmt.h and utf.h and only include libc.h in Go (because Go has his own variants of libfmt and libutf). -- David du Colombier
Re: [9fans] Python/Mercurial error
On Thu Apr 3 01:51:59 EDT 2014, 0in...@gmail.com wrote: > > the script itself reminds me of gcc fixincludes. > > This is probably not ideal, but the alternative would be > to split libc.h in three parts: libc.h, fmt.h and utf.h > and only include libc.h in Go (because Go has his own > variants of libfmt and libutf). why is the alternative to modify plan 9, and why can't they live with the system fmt/rune routines? - erik
Re: [9fans] Python/Mercurial error
> Sorry, David. > I made mistake to copy your patch file to Plan9 > system (I've not set abaco yet). > > I retried your above patch, and perfectly seamless results > which are included here. I don't think the error you encountered was related to the patch, since it's only related to a compilation issue on 9atom. As long as the Go compilation succeed on 9atom, the patch was successfully applied. > ? cmd/nm [no test files] > pack.test 1119: suicide: sys: trap: fault read addr=0xeafc > pc=0x254b6 *** Test killed: ran too long (3m0s). > FAIL cmd/pack180.007s > ? cmd/yacc[no test files] It was probably a real error. However, other 9atom users have not encountered it and it didn't fail for you the second time you tried, so it would tend to prove that it doesn't happen every time. -- David du Colombier
Re: [9fans] Python/Mercurial error
> > ? cmd/nm [no test files] > > pack.test 1119: suicide: sys: trap: fault read addr=0xeafc > > pc=0x254b6 *** Test killed: ran too long (3m0s). > > FAILcmd/pack180.007s > > ? cmd/yacc[no test files] > > It was probably a real error. However, other 9atom > users have not encountered it and it didn't fail > for you the second time you tried, so it would > tend to prove that it doesn't happen every time. does go make assumptions about where the stack is? - erik
Re: [9fans] Python/Mercurial error
On Apr 3, 2014, at 12:58 AM, erik quanstrom wrote: > > On Thu Apr 3 01:51:59 EDT 2014, 0in...@gmail.com wrote: >>> the script itself reminds me of gcc fixincludes. >> >> This is probably not ideal, but the alternative would be >> to split libc.h in three parts: libc.h, fmt.h and utf.h >> and only include libc.h in Go (because Go has his own >> variants of libfmt and libutf). > > why is the alternative to modify plan 9, and why can't they > live with the system fmt/rune routines? Go will likely require its own libraries for everything in the near future. The Plan 9 variants will have to accept that as it is just too time consuming to try and keep the headers clean and still use the original Plan 9 libraries that started the core Go implementation. - jas
Re: [9fans] Python/Mercurial error
> why is the alternative to modify plan 9, and why can't they > live with the system fmt/rune routines? They are incompatible. For example, some Fmt verbs (like %F) does produce slightly different output. It was an explicit requirement from the Go team to use their variants of these libraries. -- David du Colombier
Re: [9fans] Python/Mercurial error
> They are incompatible. For example, some Fmt verbs (like %F) does produce > slightly different output. It was an explicit requirement from the Go team > to use their variants of these libraries. do you see why i think that relationship is upside down? - erik