[9fans] 9VX failure
Not much more than init: starting /bin/rc Segmentation fault from a freshly compiled 9vx or the 9vx.Linux contained in the HG repository on bitbucket.org. I was hoping to try 9vx.tgz from swtch.com which is not 9vx*.bz2, but that does not behave any differently. The platform Linux fangle 2.6.32-24-generic #42-Ubuntu SMP Fri Aug 20 14:24:04 UTC 2010 i686 GNU/Linux Ubuntu Lucid Lynx on an HP Laptop. ++L
Re: [9fans] 9VX failure
On Sat, Sep 11, 2010 at 09:02:36AM +0200, Lucio De Re wrote: I was hoping to try 9vx.tgz from swtch.com which is not 9vx*.bz2, but that does not behave any differently. s/not 9/now 9/ ++L
Re: [9fans] 9VX failure
I am pretty sure Charle's patch will fix this problem ron
Re: [9fans] 9vx and replica/pull on OS X
Hi, I just did a fresh pull for my sysfromiso tree from bitbucket, mk nuke etc. and it built fine. It's a lot of fun to look at, e.g., http://bitbucket.org/rminnich/sysfromiso/changeset/147b5c83d6f4 and see all the good stuff still being done on this kernel :-) ron
Re: [9fans] 9VX failure
On Sat, Sep 11, 2010 at 09:34:20AM -0700, ron minnich wrote: I am pretty sure Charle's patch will fix this problem Is that included in rminnich/vx32, where default compilation fails with a missing pcap.h? What should I be looking for? ++L
Re: [9fans] 9VX failure
On Sat, Sep 11, 2010 at 10:18 AM, Lucio De Re lu...@proxima.alt.za wrote: On Sat, Sep 11, 2010 at 09:34:20AM -0700, ron minnich wrote: I am pretty sure Charle's patch will fix this problem Is that included in rminnich/vx32, where default compilation fails with a missing pcap.h? the pcap.h thing is unrelated and I think I'm going to change it so that it builds default with no pcap support, since I'm not the only person seeing this build error. no, I have to get his patch included. I had a question in to his customer support people about the patch first before i went with the patch :-) ron
Re: [9fans] 9VX failure
On Sat, Sep 11, 2010 at 10:24:05AM -0700, ron minnich wrote: Is that included in rminnich/vx32, where default compilation fails with a missing pcap.h? the pcap.h thing is unrelated and I think I'm going to change it so that it builds default with no pcap support, since I'm not the only person seeing this build error. no, I have to get his patch included. I had a question in to his customer support people about the patch first before i went with the patch :-) That means that there are two patches required here: Charles' adjustment (why have I not seen it, I wonder) and the pcap.h thing. Can you post them here in the interim? I'm not sure I want to know why pcap.h is being included and not found... ++L
Re: [9fans] 9VX failure
pcap is for the virtual ethernet driver to use the native ip stack. there's another one that uses TAP that yiyus finalized from someone else's efforts (I'm not giving due credit here, sorry). If you don't have pcap just don't build etherve.c. --dho 2010/9/11 Lucio De Re lu...@proxima.alt.za: On Sat, Sep 11, 2010 at 10:24:05AM -0700, ron minnich wrote: Is that included in rminnich/vx32, where default compilation fails with a missing pcap.h? the pcap.h thing is unrelated and I think I'm going to change it so that it builds default with no pcap support, since I'm not the only person seeing this build error. no, I have to get his patch included. I had a question in to his customer support people about the patch first before i went with the patch :-) That means that there are two patches required here: Charles' adjustment (why have I not seen it, I wonder) and the pcap.h thing. Can you post them here in the interim? I'm not sure I want to know why pcap.h is being included and not found... ++L
Re: [9fans] 9VX failure
2010/9/11 Lucio De Re lu...@proxima.alt.za: That bit was easy, just move the leading # from nopcap to etherpcap: From now on, this is the default in my 9vx version: http://bitbucket.org/yiyus/vx32/ If anybody thinks pcap should be compiled by default, please let me know. Now, where do I find Charles' fix for the segmentation error? I'm trying to find that one too. -- - yiyus || JGL . 4l77.com
Re: [9fans] troff fonts with special characters
Hello, this starts to be daunting... When I use troff with the R font, troff uses metrics from /sys/lib/troff/font/R. Then something, when dpost -f is running, must take the real glyphs and put them into the final ps. I guess that something must read /sys/lib/postscript/troff/R to find out that characters 0-0xFF are now from Times-Roman while above (at least to 0x25FF) are from LucidaSansUnicodeXX (XX=01--25). Finally ps is somehow generated (btw. there is no man page for neither aux/tr2post, nor addpsfonts). Now, if I want to add some characters which I miss in troff (mathematics, like U27E8) while using Times-Roman for basic text, it seems I have to - find some font that covers my characters - get the metrics (widths) of my characters (afm2troff.c for T1, some other tool for TrueType, OpenType) - add the metrics for troff (e.g. add characters to /sys/lib/troff/font/R) - add an entry to the table in /sys/lib/postscript/troff/R saying the name of the new font - put the font somewhere where gs will find it - find some bitmap font so that I can also see the characters on screen, or produce such with ttf2subf - prey :) This, if it's really so, sounds really above my powers... Am I wrong? Thanks Ruda
Re: [9fans] 9VX failure
Try 2. sorry. Thanks again to charles for finding that CLD issue. ron hg diff diff -r c7e9b5edb8d4 src/9vx/main.c --- a/src/9vx/main.cSun Dec 27 09:49:22 2009 -0800 +++ b/src/9vx/main.cFri Sep 03 16:58:16 2010 +0100 @@ -55,6 +55,7 @@ static voidbootinit(void); static voidsiginit(void); +static void machkeyinit(void); static char* getuser(void); static char* findroot(void); @@ -80,6 +81,9 @@ char buf[1024]; /* Minimal set up to make print work. */ +#ifndef TLS + machkeyinit(); +#endif setmach(mach0); coherence = nop; quotefmtinstall(); @@ -695,9 +699,6 @@ void mach0init(void) { -#ifndef TLS - machkeyinit(); -#endif conf.nmach = 1; machinit(); /* common per-processor init */ diff -r c7e9b5edb8d4 src/9vx/sched.c --- a/src/9vx/sched.c Sun Dec 27 09:49:22 2009 -0800 +++ b/src/9vx/sched.c Fri Sep 03 16:58:16 2010 +0100 @@ -158,6 +158,8 @@ m-machno, p-pid, p-text, kprocq.n, nrunproc); unlock(kprocq.lk); punlock(run); + while(p-mach != nil) + sched_yield(); return p; } diff -r c7e9b5edb8d4 src/Makefrag --- a/src/Makefrag Sun Dec 27 09:49:22 2009 -0800 +++ b/src/Makefrag Fri Sep 03 16:58:16 2010 +0100 @@ -1,7 +1,7 @@ # Main top-level makefile fragment for the vx32 virtual machine. # Compiler flags common to both host and VX32 environment files. -COMMON_CFLAGS = -g -O3 -MD -std=gnu99 -I. $(CFLAGS) +COMMON_CFLAGS = -g -O2 -MD -std=gnu99 -I. -fno-stack-protector $(CFLAGS) #COMMON_CFLAGS = -g -MD -std=gnu99 -I. $(CFLAGS) COMMON_LDFLAGS = -g -L. $(LDFLAGS) diff -r c7e9b5edb8d4 src/libvx32/run32.S --- a/src/libvx32/run32.S Sun Dec 27 09:49:22 2009 -0800 +++ b/src/libvx32/run32.S Fri Sep 03 16:58:16 2010 +0100 @@ -111,6 +111,7 @@ popl%edi popl%esi popl%ebx + cld ret @@ -128,6 +129,8 @@ // (DS/ES/SS were already restored by vxrun_return.) movwVXEMU_HOST_VS(%eax),VSEG + cld + ret // Don't put anything here!
Re: [9fans] 9VX failure
hg diff diff -r c7e9b5edb8d4 src/9vx/main.c --- a/src/9vx/main.cSun Dec 27 09:49:22 2009 -0800 +++ b/src/9vx/main.cFri Sep 03 16:58:16 2010 +0100 @@ -55,6 +55,7 @@ static voidbootinit(void); static voidsiginit(void); +static void machkeyinit(void); static char* getuser(void); static char* findroot(void); @@ -80,6 +81,9 @@ char buf[1024]; Here you go, thanks Charles! ron /* Minimal set up to make print work. */ +#ifndef TLS + machkeyinit(); +#endif setmach(mach0); coherence = nop; quotefmtinstall(); @@ -695,9 +699,6 @@ void mach0init(void) { -#ifndef TLS - machkeyinit(); -#endif conf.nmach = 1; machinit(); /* common per-processor init */ diff -r c7e9b5edb8d4 src/9vx/sched.c --- a/src/9vx/sched.c Sun Dec 27 09:49:22 2009 -0800 +++ b/src/9vx/sched.c Fri Sep 03 16:58:16 2010 +0100 @@ -158,6 +158,8 @@ m-machno, p-pid, p-text, kprocq.n, nrunproc); unlock(kprocq.lk); punlock(run); + while(p-mach != nil) + sched_yield(); return p; } diff -r c7e9b5edb8d4 src/Makefrag --- a/src/Makefrag Sun Dec 27 09:49:22 2009 -0800 +++ b/src/Makefrag Fri Sep 03 16:58:16 2010 +0100 @@ -1,7 +1,7 @@ # Main top-level makefile fragment for the vx32 virtual machine. # Compiler flags common to both host and VX32 environment files. -COMMON_CFLAGS = -g -O3 -MD -std=gnu99 -I. $(CFLAGS) +COMMON_CFLAGS = -g -O2 -MD -std=gnu99 -I. -fno-stack-protector $(CFLAGS) #COMMON_CFLAGS = -g -MD -std=gnu99 -I. $(CFLAGS) COMMON_LDFLAGS = -g -L. $(LDFLAGS) diff -r c7e9b5edb8d4 src/libvx32/run32.S --- a/src/libvx32/run32.S Sun Dec 27 09:49:22 2009 -0800 +++ b/src/libvx32/run32.S Fri Sep 03 16:58:16 2010 +0100 @@ -111,6 +111,7 @@ popl%edi popl%esi popl%ebx + cld ret @@ -128,6 +129,8 @@ // (DS/ES/SS were already restored by vxrun_return.) movwVXEMU_HOST_VS(%eax),VSEG + cld + ret // Don't put anything here!
Re: [9fans] 9vx and replica/pull on OS X
2010/9/11 Paul Lalonde paul.a.lalo...@gmail.com: I'm getting essentially every file tagged as locally modified; will not update. The option -s for replica could help you with that. I have used replica from 9vx and it works (yes, a lot of warnings, but it works). However, what I usually do is to keep a sysfromiso hg repository at the root of the plan9 tree I'm using with 9vx and bind /sysfromiso to / in my profile. If you really want to use replica, you better use 9vx with a plan9 filesystem. If you don't have a real fossil server you can run one with qemu (or download mycroftiv's gridtoolsplus from 9gridchan.org, which includes ready to use images) and then, with my 9vx version (I think this should work with ron's tree too), you can boot running: $ cat /tmp/127.ini EOF nobootprompt=tcp fs=127.0.0.1 auth=127.0.0.1 user=glenda EOF $ 9vx -p /tmp/127.ini -- - yiyus || JGL . 4l77.com
Re: [9fans] docfonts problem
this doesn't work for me either on p9p, but it does work under plan 9. it's a font problem. do you have the fonts? they do not come with plan9port, because the postscript fonts cannot be redistributed except with plan 9 itself. i believe that if you copy /sys/lib/postscript/font/* to /usr/local/plan9/postscript/font then it should behave the same way in both places. russ
Re: [9fans] email header screwup (and fix)
On Thu, Sep 9, 2010 at 4:13 PM, erik quanstrom quans...@quanstro.net wrote: lately, i've been seeing email with gigantic headers. 120 header lines are not that uncommon. unfortunately upas has sometimes inserts a blank line about (but not exactly) 4k into the file. a bit of digging, upas/send was assuming that if yacc didn't stop at a blank line, one should be inserted. unfortunately, yacc was stopping because it ran out of stack space. the hack is to increase YYMAXDEPTH. ideally, each line should be parsed independently, thus making yacc's depth depend only on the complexity of a line. or change the grammar not to need unlimited stack space. it says fields : '\n' { yydone = 1; } | field '\n' | field '\n' fields ; but i think you can change it to fields : fieldlist '\n' { yydone = 1; } ; fieldlist : | fieldlist field '\n' ; russ
Re: [9fans] troff fonts with special characters
That sounds about right, unfortunately. You might be better off just using TeX. It's better at math, it runs on Plan 9, and your colleagues who don't use Plan 9 will still be able to collaborate on documents with you. Russ
Re: [9fans] 9vx and replica/pull on OS X
OK, just checked, and my vx32 repo at bitbucket.org has the cld patch. I guess yiyus committed it? ron
[9fans] 9vx mk install chokes on gs
any good ideas here? I'm running with 9vx -m 1024. Kind of hard to believe I'm out. mk gs pcc -o 8.out obj/gs.8 obj/adler32.8 obj/compress.8 obj/crc32.8 obj/deflate.8 obj/dscparse.8 obj/gconfig.8 obj/gdevabuf.8 obj/gdevbbox.8 obj/gdevbj10.8 obj/gdevcd8.8 obj/gdevcdj.8 obj/gdevdbit.8 obj/gdevddrw.8 obj/gdevdfax.8 obj/gdevdflt.8 obj/gdevdgbr.8 obj/gdevdjet.8 obj/gdevdljm.8 obj/gdevdsha.8 obj/gdevfax.8 obj/gdevhit.8 obj/gdevifno.8 obj/gdevjpeg.8 obj/gdevm1.8 obj/gdevm16.8 obj/gdevm2.8 obj/gdevm24.8 obj/gdevm32.8 obj/gdevm4.8 obj/gdevm40.8 obj/gdevm48.8 obj/gdevm56.8 obj/gdevm64.8 obj/gdevm8.8 obj/gdevmem.8 obj/gdevmpla.8 obj/gdevnfwd.8 obj/gdevp14.8 obj/gdevpbm.8 obj/gdevpcl.8 obj/gdevpdf.8 obj/gdevpdfb.8 obj/gdevpdfc.8 obj/gdevpdfd.8 obj/gdevpdfg.8 obj/gdevpdfi.8 obj/gdevpdfj.8 obj/gdevpdfk.8 obj/gdevpdfm.8 obj/gdevpdfo.8 obj/gdevpdfp.8 obj/gdevpdfr.8 obj/gdevpdft.8 obj/gdevpdfu.8 obj/gdevpdfv.8 obj/gdevpdt.8 obj/gdevpdtb.8 obj/gdevpdtc.8 obj/gdevpdtd.8 obj/gdevpdte.8 obj/gdevpdtf.8 obj/gdevpdti.8 obj/gdevpdts.8 obj/gdevpdtt.8 obj/gdevpdtv.8 obj/gdevpdtw.8 obj/gdevpipe.8 obj/gdevplan9.8 obj/gdevplnx.8 obj/gdevppla.8 obj/gdevprn.8 obj/gdevps.8 obj/gdevpsdi.8 obj/gdevpsdp.8 obj/gdevpsds.8 obj/gdevpsdu.8 obj/gdevpsf1.8 obj/gdevpsf2.8 obj/gdevpsfm.8 obj/gdevpsft.8 obj/gdevpsfu.8 obj/gdevpsfx.8 obj/gdevpsu.8 obj/gdevstc.8 obj/gdevstc1.8 obj/gdevstc2.8 obj/gdevstc3.8 obj/gdevstc4.8 obj/gdevtfax.8 obj/gdevtifs.8 obj/gdevvec.8 obj/gp_getnv.8 obj/gp_nsync.8 obj/gp_stdia.8 obj/gp_strdl.8 obj/gp_unifn.8 obj/gp_unifs.8 obj/gp_unix.8 obj/gp_unix_cache.8 obj/gpmisc.8 obj/gsalloc.8 obj/gsalpha.8 obj/gsalphac.8 obj/gsargs.8 obj/gsbitcom.8 obj/gsbitops.8 obj/gsbittab.8 obj/gscdefs.8 obj/gscdevn.8 obj/gscedata.8 obj/gscencs.8 obj/gschar.8 obj/gschar0.8 obj/gscie.8 obj/gsciemap.8 obj/gsclipsr.8 obj/gscolor.8 obj/gscolor1.8 obj/gscolor2.8 obj/gscolor3.8 obj/gscoord.8 obj/gscparam.8 obj/gscpixel.8 obj/gscrd.8 obj/gscrdp.8 obj/gscrypt1.8 obj/gscscie.8 obj/gscsepr.8 obj/gscspace.8 obj/gsdevice.8 obj/gsdevmem.8 obj/gsdfilt.8 obj/gsdparam.8 obj/gsdps.8 obj/gsdps1.8 obj/gsdsrc.8 obj/gsfcid.8 obj/gsfcid2.8 obj/gsfcmap.8 obj/gsfcmap1.8 obj/gsflip.8 obj/gsfname.8 obj/gsfont.8 obj/gsfont0.8 obj/gsfont0c.8 obj/gsfunc.8 obj/gsfunc0.8 obj/gsfunc3.8 obj/gsfunc4.8 obj/gsgcache.8 obj/gsgdata.8 obj/gsht.8 obj/gsht1.8 obj/gshtscr.8 obj/gsicc.8 obj/gsimage.8 obj/gsimpath.8 obj/gsinit.8 obj/gsiodev.8 obj/gsistate.8 obj/gslibctx.8 obj/gsline.8 obj/gsmalloc.8 obj/gsmatrix.8 obj/gsmemlok.8 obj/gsmemory.8 obj/gsmemret.8 obj/gsmisc.8 obj/gsnorop.8 obj/gsnotify.8 obj/gsovrc.8 obj/gspaint.8 obj/gsparam.8 obj/gsparams.8 obj/gsparamx.8 obj/gspath.8 obj/gspath1.8 obj/gspcolor.8 obj/gsptype1.8 obj/gsptype2.8 obj/gsroptab.8 obj/gsserial.8 obj/gsshade.8 obj/gsstate.8 obj/gstext.8 obj/gstrans.8 obj/gstype1.8 obj/gstype2.8 obj/gstype42.8 obj/gsutil.8 obj/gswts.8 obj/gxacpath.8 obj/gxbcache.8 obj/gxblend.8 obj/gxccache.8 obj/gxccman.8 obj/gxchar.8 obj/gxchrout.8 obj/gxcht.8 obj/gxclbits.8 obj/gxclfile.8 obj/gxclimag.8 obj/gxclip.8 obj/gxclip2.8 obj/gxclipm.8 obj/gxclist.8 obj/gxclpage.8 obj/gxclpath.8 obj/gxclrast.8 obj/gxclread.8 obj/gxclrect.8 obj/gxclutil.8 obj/gxcmap.8 obj/gxcpath.8 obj/gxctable.8 obj/gxdcconv.8 obj/gxdcolor.8 obj/gxdevndi.8 obj/gxdhtserial.8 obj/gxfcopy.8 obj/gxfdrop.8 obj/gxfill.8 obj/gxhintn.8 obj/gxhldevc.8 obj/gxht.8 obj/gxhtbit.8 obj/gxi12bit.8 obj/gxi16bit.8 obj/gxicolor.8 obj/gxidata.8 obj/gxifast.8 obj/gximag3x.8 obj/gximage.8 obj/gximage1.8 obj/gximage2.8 obj/gximage3.8 obj/gximage4.8 obj/gximono.8 obj/gxipixel.8 obj/gxiscale.8 obj/gxmclip.8 obj/gxoprect.8 obj/gxp1fill.8 obj/gxpaint.8 obj/gxpath.8 obj/gxpath2.8 obj/gxpcmap.8 obj/gxpcopy.8 obj/gxpdash.8 obj/gxpflat.8 obj/gxsample.8 obj/gxshade.8 obj/gxshade1.8 obj/gxshade4.8 obj/gxshade6.8 obj/gxstroke.8 obj/gxsync.8 obj/gxttfb.8 obj/gxtype1.8 obj/gxwts.8 obj/gzspotan.8 obj/ialloc.8 obj/iapi.8 obj/ibnum.8 obj/icc.8 obj/iccinit0.8 obj/iconfig.8 obj/icontext.8 obj/idebug.8 obj/idict.8 obj/idisp.8 obj/idparam.8 obj/idstack.8 obj/igc.8 obj/igcref.8 obj/igcstr.8 obj/iinit.8 obj/ilocate.8 obj/imain.8 obj/imainarg.8 obj/iname.8 obj/inffast.8 obj/inflate.8 obj/inftrees.8 obj/interp.8 obj/ipar ??none??: out of memory pcc: 8l: 8l 2731: error mk: pcc -o ... : exit status=rc 2728: pcc 2730: 8l: 8l 2731: error mk: for(i in 1a ... : exit status=rc 1720: rc 2717: mk 2719: error mk: test -e 8._cp ... : exit status=rc 1321: mk 1708: error mk: date for (i ... : exit status=rc 83: rc 1308: mk 1309: error ron
Re: [9fans] 9vx mk install chokes on gs
On Sat, 11 Sep 2010 16:07:54 -0700 ron minnich rminn...@gmail.com wrote: any good ideas here? I'm running with 9vx -m 1024. Kind of hard to believe I'm out. mk gs pcc -o 8.out obj/gs.8 obj/adler32.8 obj/compress.8 obj/crc32.8 obj/deflate.8 obj/dscparse.8 obj/gconfig.8 obj/gdevabuf.8 obj/iinit.8 obj/ilocate.8 obj/imain.8 obj/imainarg.8 obj/iname.8 obj/inffast.8 obj/inflate.8 obj/inftrees.8 obj/interp.8 obj/ipar ??none??: out of memory pcc: 8l: 8l 2731: error % man 2 exec |vgrep ... BUGS There is a large but finite limit on the size of an argment list, typically around 409,600 bytes. The kernel constant TSTKSIZ controls this. ... Robert Ransom signature.asc Description: PGP signature
Re: [9fans] 9vx mk install chokes on gs
On Sat, Sep 11, 2010 at 4:35 PM, Robert Ransom rransom.8...@gmail.com wrote: BUGS There is a large but finite limit on the size of an argment list, typically around 409,600 bytes. The kernel constant TSTKSIZ controls this. ... Robert Ransom no, I'm running under ratrace and 8l is run and I get to this: 4684 8l Brk 0xdeba 032379d8 00015298 = -1 segments overlap 0x11d294485d874150 0x11d294485d87c620 Oh well :-( ron
Re: [9fans] 9vx mk install chokes on gs
This operating system is so much fun it's unfair at times. term% grep Brk /dev/text | grep 8l 4684 8l Brk 0xdeba 0003ea58 = 0 0x11d2943ddb0c6c28 0x11d2943ddb0ccdd0 4684 8l Brk 0xdeba 000570f8 00017494 1fa8 = 0 0x11d2943ded6477a8 0x11d2943ded64cd98 4684 8l Brk 0xdeba 0006f798 00017492 1faa = 0 0x11d2943df0d4fdb8 0x11d2943df0d553a8 4684 8l Brk 0xdeba 00087e38 0001749e 5966 = 0 0x11d2943df747e2a0 0x11d2943df74834a8 4684 8l Brk 0xdeba 000a04d8 00017493 5966 = 0 0x11d2943dfa538490 0x11d2943dfa53da80 4684 8l Brk 0xdeba 0011a5f8 00017498 5966 = 0 0x11d2943e01998c40 0x11d2943e0199ede8 4684 8l Brk 0xdeba 00194718 0001749c 58ef = 0 0x11d2943e0e012178 0x11d2943e0e017f38 4684 8l Brk 0xdeba 0020e838 00015298 = 0 0x11d2943e2852e0c0 0x11d2943e285336b0 4684 8l Brk 0xdeba 00288958 0001528d = 0 0x11d2943e3fb530d8 0x11d2943e3fb582e0 4684 8l Brk 0xdeba 004eaef8 58ef = 0 0x11d2943e4efa5ed8 0x11d2943e4efac468 4684 8l Brk 0xdeba 0074d498 0001528d = 0 0x11d2943ebc6be720 0x11d2943ebc6c4cb0 4684 8l Brk 0xdeba 009afa38 00015298 = 0 0x11d2943f468a9f28 0x11d2943f468af518 4684 8l Brk 0xdeba 00c11fd8 00017494 58ef = 0 0x11d2943fb61756b0 0x11d2943fb617b858 4684 8l Brk 0xdeba 00e74578 0001749b 58ef = 0 0x11d294402504f7a8 0x11d2944025053a10 4684 8l Brk 0xdeba 010d6b18 0001749f 58ef = 0 0x11d294409abb0fc8 0x11d294409abb5a00 4684 8l Brk 0xdeba 013390b8 0001749d 58ef = 0 0x11d2944108610208 0x11d2944108616b80 4684 8l Brk 0xdeba 0159b658 58ef = 0 0x11d29441807b3178 0x11d29441807b9ed8 4684 8l Brk 0xdeba 017fdbf8 00017497 58ef = 0 0x11d294420ad4e328 0x11d294420ad54ca0 4684 8l Brk 0xdeba 01a60198 00015298 = 0 0x11d29442921f5908 0x11d29442921fb6c8 4684 8l Brk 0xdeba 01cc2738 00017495 5966 = 0 0x11d2944340477448 0x11d294434047ddc0 4684 8l Brk 0xdeba 01f24cd8 0001528d = 0 0x11d29443d7559310 0x11d29443d7561fb0 4684 8l Brk 0xdeba 02187278 01cc2738 = 0 0x11d294448ff77190 0x11d294448ff80600 4684 8l Brk 0xdeba 023e9818 0001528d = 0 0x11d294452b014350 0x11d294452b01a8e0 4684 8l Brk 0xdeba 0264bdb8 00015298 = 0 0x11d29445da7c2138 0x11d29445da7c8ab0 4684 8l Brk 0xdeba 028ae358 58ef = 0 0x11d2944662799f20 0x11d29446627a00c8 4684 8l Brk 0xdeba 02b108f8 58ef = 0 0x11d29446e574eec0 0x11d29446e57563f0 4684 8l Brk 0xdeba 02d72e98 0001528d = 0 0x11d294476893e360 0x11d2944768944120 4684 8l Brk 0xdeba 02fd5438 0001749b 58ef = 0 0x11d29447ed62c638 0x11d29447ed633398 4684 8l Brk 0xdeba 032379d8 00015298 = -1 segments overlap 0x11d294485d874150 0x11d294485d87c620 now how easy was that :-) (although nothing is fixed yet ...) Note that it grabs about 1M on each sbrk ... or a little more. It got to 52M or so and then it was all over. ron ron
Re: [9fans] 9vx mk install chokes on gs
the problematic code is at /sys/src/9/port/segment.c:483,491 for(i = 0; i NSEG; i++) { ns = up-seg[i]; if(ns == 0 || ns == s) continue; if(newtop = ns-base newtop ns-top) { qunlock(s-lk); error(Esoverlap); } } so either gcc is causing the math here to go funky, or 9vx really does have a odd segment layout. what does /proc/$pid/segment say? - erik
Re: [9fans] 9vx mk install chokes on gs
Actually it's really simple. Stack in 9vx begins at 48 MB. A bit small for compiling gs I suppose :-) I'll see how to grow it. ron
Re: [9fans] 9vx mk install chokes on gs
diff -r 6ab31397d4b9 src/9vx/a/mem.h --- a/src/9vx/a/mem.h Sat Sep 11 23:09:14 2010 +0200 +++ b/src/9vx/a/mem.h Sat Sep 11 19:31:19 2010 -0700 @@ -41,7 +41,7 @@ #defineVMAPSIZE(0x1000-VPTSIZE-KMAPSIZE) #defineUZERO 0 /* base of user address space */ #defineUTZERO (UZERO+BY2PG) /* first address in user text */ -#defineUSTKTOP (0x400) /* byte just beyond user stack */ +#defineUSTKTOP (0x800) /* byte just beyond user stack */ #defineUSTKSIZE(16*1024*1024) /* size of user stack */ #defineTSTKTOP (USTKTOP-USTKSIZE) /* end of new stack in sysexec */ #defineTSTKSIZ 100 /* pages in new stack; limits exec args */ rminn...@xcpu2:~/src/plan9/vx32/src$ Fixed. gs builds. I'll do a full make to be sure there are no bad repercussions. ron
Re: [9fans] 9vx mk install chokes on gs
OK, the bigger user stack is committed to my vx32 at bitbucket. ron