! __.SYMDEF 1380061083 0 0 644 1510 ` T_schedTneedstackTyieldT_schedinitT_threadreadyT8_threadflagrendezT8_threadbreakrendezD8_threadrgrpT8_threadrendezvousT.increfT.decrefT_procsplxTthreadnotifyD_threadnopasserT_threadnoteT_procsplhiT<_schedforkT<_threadsetprocD<_threadpasserpidD<_threadnotefdT<_schedexecT<_threadgetprocT<_schedexitD<mainstacksizeT<_systhreadinitT<mainT<_schedexecwaitT_threadmallocT_threadsysfatalTthreadintTthreadintgrpTthreadkillTthreadkillgrpTpiowriteTiosleepTioreadnTioreadTPioprocTPiointerruptTPcloseioprocTtioopenTiodialT`iocloseTiocallTthreadpidTthreadgetnameTthreadsetnameTtprivaddrTprocdataTtprivfreeTthreaddataTthreadsetgrpTthreadidTtprivallocT_workerdataTthreadgetgrpTvthreadexitsallDv_threadexitsallstatusDv_threadwaitchanTvthreadexitsTvthreadwaitchanThxprocexeclThxprocexecTn_threaddebugTn_threadassertDn_threaddebuglevelTZ_newprocTZproccreateTZprocrforkTZ_freethreadTZ_freeprocDZ_threadpqTZthreadcreateTVchanprintTf nbsendpTf nbsendTf recvpTf sendTf sendpTf chanfreeTf altTf chancloseTf recvTf chanclosingTf recvulTf nbsendulTf nbrecvTf nbrecvulTf nbrecvpTf sendulTf chaninitTf chancreateT _xdecT _xincT*_threadinitstack386.8 1380061083 0 0 664 935 ` ~Elauncher386>A~@argp@pS~@fp@pASL?;=threadexits=LRm=_threadinitstack=A~@tp@ p R p$R A   A p@ p Q A p@ p Qp>D p Rp  A p RIxinc386.8 1380061083 0 0 664 284 ` ~Eerrcl-;>cA-;>hA-;>aA-;>nA-;>nA-;>eA-;>lA-;> A-;>wA-; >aA-; >sA-; > A-; >cA-; >lA-;>oA-;>sA-;>eA-;>dA~>_chanfree> A~@cp@ pT&AXchanlockp>DpSL3ϝ=semlock=p@pS>p>DpSL3ϝ=semunlock=LpN= chaninit = A~@ elemcntp @ ~@ elemsizep @ p@ & AU8<& AQ9 .string-; > chaninitpApSp> DpSp SL.r= _threaddebug =pAL=chancreate=Ap @ p @ & AUU<& ASU %pchan-; > create %pApSp> DpS~?cp ?p S =p?~>isopenfor>A~@cp@ pQ & AOy<~@op&@AXxDpS=p? ~@altsp@ p TQpAPQ~?npA?~?apA?p@ WDpS=p?pSLW=_procsplx=p ?p APOp A p ? p  S~? xap   ?p R p  S >p  ? & AO !canexec !>p  ? & AX DpS=p?pS=p ? p?pAPOpR&AXp% ? &%AO%&enqueue'&>p' ? W'DO( D p0  Op1>Dp1S1=p2?p2S2=p3?p3APOp4#? 4@ p4*A=4 p4 4A4A 4 p4 4W45<&5%?AO55Dp7S7=p8?p8S8=p9?p9APOp:A:WE6DpFSF=pG?pGSG=aH? pH SpHASL%ы='_threadrendezvousH'=~?(rpH(?I=pI?pJ>DpJSJ=&L(?AXLL<&M?AOMKD p[  Qp]  ?p] S~>)dequeue])>p] ? W]ODp_S_=p`?p`S`=&a?AXaw<&b?AXbr pc==(Ch-b; > annel*)~pb> DpbSL?;=*_assertb*=pcAcWc}+altexecf+>L)L=,_schedg,=ph?phAPOpi? i@ pi*A=i pi iAiA i pi iiLV5=-chanclosem-=Ar=pr?ps>DpsSs=~@.cps.@ ptR&tAOtDpvSv=pw?pwSw=pxAxpzARpA WDpS=p?pS=WDpS=p/? p.@ Wp>DpS=p?pS=pALV5=0chanclosing0= A=p?p>DpS=p.@ pP&AXDpS=p?pS=p?~>1runop1>@Ap@p?p.@p?~@vp@p?pA?pA?~@nb& @AO * DpS*=pA&?AO 0nbERR-;0 > OR: chan-;8 > nel alt -;@ > returnedpApSp>- DpSp SLJ=fprint=L)L=abort=pAa? p S=p &AO<&AO<&AOLD+f=nbrecv=ApA p Sp.@ p Sp@ p SpA p  S1>LD+f=send=ApA p Sp.@ p Sp@ p SpA S1>LD+f=nbsend=ApA p Sp.@ p Sp@ p SpA p  S1>~> channelsize >Ap.@ ~@ szp @ p Q& Oq<-;H > %d exp-;P > ected ch-;X > annel wi-;` > th eleme-;h > nts of s-;p > ize %d, -;x > got sizepApSp>M DpSp Sp Qp S==LMV== sendul =Ap.@pSpApS >p.@ p Sa@ p S=L((+= recvul = Ap.@pSpApS >p .@ p  S~? va  ? p  S =& AP p.@ p S~@va@ p S=LoD=recvp= Ap.@pSpApS >p.@ p S~?va? p S=&APp$.@ p$ S~@va$@ p$ S$=$$L((+=nbrecvul(= Ap,.@p,Sp,Ap,S, >p-.@ p- S~?va-? p- S-=&-AX-p6.@ p6 S~@va6@ p6 S6=66LoD=nbrecvp:= Ap>.@p>Sp>Ap>S> >p?.@ p? S~?va?? p? S?=&?AX?emptyentryE>ApE.@ pIR&IAXI.string-I;> %d (c--I;> >nentry=-I;> =0 && c--I;> >qentry=-I;> =nil) ||-I;> (c->nen-I;> try && c-I;> ->qentrypI>DpISI*=pI.@ pKA WK  )reallo-S;> c channe-S;> l entriepS>DpSSLP=sysfatalS=pS.@ pTQpT/? aT OpTSpTASpT?TApTSLX=memsetT=pU/?UUY&>A~@ apY @ -];> s: %rQu-];> euing al-];> t %p on -];> channel p]Ap]Sp]>Dp]Sp] Sp]Pp] S~=!_threaddebug]!=p] @ p^.@ p^ Qp_Q p_ S_>p_ @ p_ p`Rp`Oa` Op` O`d)>Apd @ piTpjA WjR %pDeque-l;> uing alt-l;> %p from-l;> channelplAplSpl>DplSpl SplTpl Sl!=pl"? pmRpm/? am OpmAOpoR&oAOoo#_chanfreep#>qWqO<q~>$canexecv$>Apv @p{V p}Vp}A}p~A W~ %pcan -; > rendez a-;(> lt %p chpApSp>DpSpSp  S!=pAW} an %pca-;8> n buffer-;@> alt %p -;H> chan %ppApSp>6DpSpSp  S!=pApA~>%altexecbuffered%> Ap @ pR pR&AX buffer r-;X> ecv alt -;`> %p chan pApSp>PDpSp Sp "?p  S!=p"?~?&.safep&?pUpA pU p &?2&?p p U p &?|&?p p&?a U  Ap ~@'willreplace&'@AX %pbuffe-;p> r send a-;x> lt %p chpApSp>kDpSp Sp "?p  S!=p"?p&?pUpU  pA pU p &?2&?p p U p &?|&?p p&?a U  Ap &'@AX (altcopy(> A~@)srcp)@ p @ ~@*dstp*@ & AO!<& AO,altexec,>8Ap @pV pVpA  ~?-otheropp -?pA~?.bpA.?pV~?/mep/?pA W2 an %pre-;> ndez %s -;> alt %p c-;> han %p a-;> lt %pre-;> cvsendpApSp>DpSpV & AXeDWfDpSp Sp Sp.?pS!=p @ p/? p"? p.?pO ~?waiterp ?pP&AOxp p/?pS~?bufp ?p Sp"?p OpS(>p?pSp?pSp"?p OpS(>WWp.?pOp"? p O-;> unlockin-;> g the chpApSp>DpS!=~>chanlockp>DpS~=semunlock=~@splp@pS~=_procsplx=-;> anlockc-;> hanlock -;> is %ludpApSp>DpSp>pS!=Wp"? p/? p p @pO&AXWp>DpS=p@pS=pA~> errcl5 >A5>A5>AIchanprint.8 1380061083 0 0 664 834 ` ~E.string-;> vsmprint-;> failed:p>DpSLP=sysfatal=p? ~@cp@ p Sp SLD+f= sendp =~? np ?L)L= yield =p ?-;> %r5>AIcreate.8 1380061083 0 0 664 5243 ` ~EnextID>A~>l$1p>DpSL3ϝ=semlock=~>id$1C>p>~?ip?p>DpSL3ϝ=semunlock=p?~>newthread>A~@stacksizep @ &  AL<~> .string-; > bad stac-; > ksize %dp> DpSp SLP= sysfatal =pxA p SpA p SL = _threadmalloc =p @ ~? tp ?p $Op SpAS =p ? p Qp QpSpApSp @pSLX= memset =p ?pS~@fp@pS~@argp@pSLRm=_threadinitstack=~@namep@ p ?~@grpp@ p O& AO:~@pp@ p ? p Qp Q~?idp?pA(Qp ,Q-; > create -; > thread %-; > d.%d nampApSp> DpSp RpSp Qp Sp@pSL.r=_threaddebug=p@pS=p@ p ? CRpR&AXXLa=_newproc=Apx A p SpA p S =pA O~@rforkflagp@ p O~?pp?pSp@pSp@pSp@p Sp @pSp@pS>L7H [=_threadpqp=DpS=p? &=AX e %sp->-;0 > newproc p>- DpSL?;=!_assert!=p? p@ p Sp@ p Sp@ p SpA SpQ pP p Sp @ p S=p? p,Qp,QpOp Op?L)L="_sched"=p?LS])=#proccreate#=Ap@ p Sp@ p Sp@ p SpA S =LEx=$_freeproc$= A~@%pp%@pO W == nilt-;@ > ->stk !=p>? DpS!=p ? p PpS'=p ? p0Pp&?p  S '=W  nilt->-!;P > stk != np!>M Dp!S!!=p!)@ p" Pp"S"'=p#)@p#S#'=#-#;X > il5#>A5#= A5# >`A5#>AI#debug.8 1380061083 0 0 664 2419 ` ~E.string-;> noproc aL?pSp>DpSLC;-= fmtprint =W.DpSp PpSpPp Op S =W.<-;> %d.%d %aL?pSp>DpSp PpS =~@ fmta @p aL?pSp @pS~? argp | ?p SLZvY= fmtvprint =aL?pSp>DpS =aL?pSLe= fmtfdflush =L?;=_threadassert=A=p &AOH d._ %a? p Sp>D p Sp Q p SpQ p P p  SL=sprint=p WV d.%d %s-; > : assert-;(> ion faila ?pSpA pSp>DpS~@sp@p SLD$s5=snprint=a? p SL V=strlen=~?.safep?pApSa?pSp?pSL ed 5>8A5=AIexec.8 1380061083 0 0 664 3026 ` ~E.string-;> procexecp ApSp>DpS~@progp@pSL.r=_threaddebug=Ld=_threadgetproc=p pO pO& ~?tp ?X<~?pp ?pPp0O&AX %snot -;> only thr-;> ead in pp> DpSLP=werrstr=W<~@ pidc& @AO roc#|/-;(> mnt/tempp>$D p Sp>'D p SpASLi"P= bind =&AP* /mnt/te-;8> mp/datap>1D p SpASLO׿= open =p? p$P&AP7<-;@> /mnt/tempASp>@DpSL,= unmount =W<-;H> p/mnt/t-;P> emp/datap>JD p Sp!A p S =p? p(Q&APH 1/mnt/tpASp>ZDpS =W<-;`> emp/mntpASp>dDpS =p? pQ&AXQ /tempp--;p> >needexep>nDpSL?;=_assert=p? p@ p Q~@argsp@ p  QpAQL)L=_sched=p?p(OpS=p? p$Q p Sp  0A p SpA p SL c==05>AIexit.8 1380061083 0 0 664 2536 ` ~E.stringp>D p  0ApSp  ApSp SLӖF=utfecpy=L)L=_sched=L?;=threadexitsall=Ap@ & AXD p @-;> _threa-;> dexitsal-;> lstatus -;> set to %pApSp>DpSLza=_threadexitsallstatusp =p SL.r= _threaddebug =L} H= _tosp =p0O~? mypidp ?W& pthreadpApS~?ip ?p ?pSp>"DpSL4Q=postnote=p? WN int5>0A5=A5=AIid.8 1380061083 0 0 664 3901 ` ~E.string-;> #p/%lud/~?bufa|?pSpApSp>DpSL} H=_tosp=p0Op SLD$s5=snprint=a|? p SpA p SLO׿=open=~?fdp?&AU!privmask-;!>ALGI="tprivalloc"=A~>#privlockp>#DpS=p!> pA Wp >#Dp S  =p!$?!W!#Dp#S# =p$A$$LW=%tprivfree(%=A~@&ip(&@ &* AU*<&* AP*#Dp,S,=p-&@ p-A- - -!>-L-x=(tprivaddr1(=A3=p3Op3&@ a3 O 3XA33-3;> args53>A53!>A53#>AI3iocall.8 1380061083 0 0 664 2064 ` ~E.string-;> interrupp>DpSLP=werrstr=pAp@p O&AX ted!io-p> DpSL?;=_assert=p@pA Op@~@opp@ p Op@a@ p Op@~?msgp?~? intedpA ?W$ >inusei-;> nterruptp>DpS=pApA ?W: ed5>(AIioclose.8 1380061083 0 0 664 839 ` ~E_ioclose>A~@argp@ AQpQpOpSL)=close=LCC=ioclose= A~@iop@ p Sp>D p S~@fdp@ p SL-%=iocall=Iiodial.8 1380061083 0 0 664 1107 ` ~E_iodial> A~@argp@ AQpQpO AQpQpO AQpQpO AQpQpOpSp Sp Sp SLjY=dial=Lx)=iodial=A~@iop@ p Sp>D p S~@addrp@ p S~@localp@ p  S~@dirp @ p S~@ cdfpp @ p SL-%= iocall =Iioopen.8 1380061083 0 0 664 927 ` ~E_ioopen>A~@argp@ AQpQpO AQpQpOp SpSLO׿=open=LȨ=ioopen=A~@iop@ p Sp>D p S~@pathp@ p S~@modep@ p  SL-%=iocall=Iioproc.8 1380061083 0 0 664 3073 ` ~Exioproc>A~@ap@~?iop?W .string-; > x == iop> DpSL?;= _assert =W) x == iop> DpS =p? A p Sp?pOp? pPp?pO&APN ioproc m-; > alloc: %p> DpSLP=sysfatal=pA p SpASL=chancreate=p? pPpA p SpAS=p? pQp>D p Sp Sp A p SLS])=proccreate=p? pQp LM=closeioproc=A~@iop@ & AX<p S=W r5 >(AIioread.8 1380061083 0 0 664 1009 ` ~E_ioread>A~@argp@ AQpQpO AQpQpO AQpQpOp Sp SpSLD p S~@fdp@ p S~@ap@ p  S~@np @ p SL-%= iocall =Iioreadn.8 1380061083 0 0 664 1013 ` ~E_ioreadn>A~@argp@ AQpQpO AQpQpO AQpQpOp Sp SpSLD p S~@fdp@ p S~@ap@ p  S~@np @ p SL-%= iocall =Iiosleep.8 1380061083 0 0 664 838 ` ~E_iosleep>A~@argp@ AQpQpOpSLo =sleep=LR=iosleep= A~@iop@ p Sp>D p S~@np@ p SL-%=iocall=Iiowrite.8 1380061083 0 0 664 1013 ` ~E_iowrite>A~@argp@ AQpQpO AQpQpO AQpQpOp Sp SpSLD p S~@fdp@ p S~@ap@ p  S~@np @ p SL-%= iocall =Ikill.8 1380061083 0 0 664 2813 ` ~Ethreadxxxgrp>AL7H [=_threadpqp=DpSL3ϝ=semlock=p= W tinterrupt>p? p? W threadxxx >Ap=DpS=p= W6p?pS =p=DpS = =W? .string-; > Can't fi-; > nd threa-; > d to kilpApSp> DpSL.r=_threaddebug=LW=threadkillgrp=Ap@pSpApS>LW=threadkill=Ap @pSpApS >LW=threadintgrp=Ap@pSpAS>LW=threadint=Ap @pSpAS >> A~@tp@ W lthreadpApS~@pp@p OpSp> DpSL4Q=postnote=W int5 >(AIlib.8 1380061083 0 0 664 2084 ` ~E.string-;> Malloc o-;> f size %-;> ld failep>DpSp@pSLP=sysfatal=a@ p SL"S]=getcallerpc=~?.safep?p?pSp?pSLب= setmalloctag =p@~> totalmalloc  >&@AS#<-;> d: %rMa-; > lloc of -;(> size %ld-;0> , total pApSp>DpSp@pSp >p SLJ= fprint =L)L= abort =~@ z& @AO+ %ld %s:pApSp>=DpSp Sa?p S =WK<-;@> %s %s pApSp>EDpSa?pS =a?pSL?;=threadexitsall=-;H> 5>PA5 >AImain.8 1380061083 0 0 664 6463 ` ~Emainpp>~>_mainjmpp>D p SLv=setjmp=&AO.string-;> threadma~>mainlauncherp>D p SpSp= p Sp>D p  SpASpASLa=_newproc=p?p?pS=L)L=abort=> A~@argp@ pPpSpPpSL Y=threadmain=-;> inthreap> DpSL?;=threadexits=~>skip>A~@pp@ WE_times>A~?ba8?pSpASpApSLX= memset =-;> dmain/d-;> ev/cputip>D p Sp A p SLO׿=!open!=&APip &%@AOp4&?pS'=~?(rp,(?&%@AOp4&?pS'=p%@ pPp4&? p S>pS'=p%@ p Pp,(?~>)efork)>A-; > me_sche-;(> dexec %sp ApSp>#DpS~@*ep*@pOpSL.r=+_threaddebug+=p*@pOpS$=p*@ pPpSpPpSL3bU=,exec,=-;0> _schede-;8> xec failp ApSp>1DpS+=~?-bufa-?pSpApSL2~*=.rerrstr.=r-?&AX<-;@> ed: %re-;H> xec faila-?pSp>GDpSLi})=/strcpy/=a-? p SL V=0strlen0=~?1.safep|1?p*@p OpSa-?pSp|1?pSL~?pidp?p< A p S~=rfork=p?&AOmainpp>~@pp@ p O~> _mainjmpp> DpSpApSL͕C:= longjmp =p?p@ pP pA p S=p?&AO ed_sche-B;X> dexecwaipB ApBSpB>SDpBSpB4PpBSB+=pDApDSD=WLC.string-S;`> t %dpropS>eDpSSS=S~=_systhreadinitY=AL=privalloc[=~>procpp[>[_=Apa>paOaaLEx=_threadsetproce=Apg>pg@ pg Og-g;h> cexec5g >A~=mainstacksize5g=ALQA=_threadnotefd5g=A5g>A5g>A5g>pALQA=_threadpasserpid5g=AIgnote.8 1380061083 0 0 664 4666 ` ~Eenotes~>notes-;>>DDL<==threadnotify=A~@fp@ ~@in&@AO <~?frompA?~?top ?Ld=_threadgetproc=p O~? topidp ?W onnotelockp> DpSL3ϝ= semlock =p? pA W onnotep  >& X!p ?~>onnotepidp >W DpSL3ϝ=semunlock=& ?!AP)delayednotes>A~@pp@ pT&AX2<pATp>DW8L6XL&AOL.string-;> Unhandle-;> d note %-;> s, proc pApSp>DpSpp? ApSp  SL.r=_threaddebug=&@AOm %p sys:p? A p Sp>D p SpA p SLa·=strncmp=&AXx Got notpApSp>!DpS~@sp@pS=-;(> e %ssysp@ p Sp>-D p SpA p S=&AX :Thread-;8> exitsall-;@> status =pApSp>2DpSp=pS=p=pSL?;=_exits=-;H> '%s' t-;P> hreadintp@ p Sp>OD p SL,=strcmp=&AXD WLX<-;X> libthre-;`> ad: too -;h> many del-;p> ayed notp>YDpSLP=!sysfatal!=p? p  ApSp  ApSp@pSLӖF="utfecpy"=p? p?p OpAQpQ&AXpAS=LGI=#_procsplhi#=A =p  p Op AP  LW=$_procsplx$= A=p@ p p O& AO<pO&AO-;x> es5>A5>A5>DA5 >ALQA=%_threadnopasser5%=A5 >A5>AIref.8 1380061083 0 0 664 717 ` ~E=_xinc=Lq\=decref=Ap@ p SL.=_xdec=Irendez.8 1380061083 0 0 664 3425 ` ~Efinish>A~@tp@ pHQ~?retp?~@valp@ p HQW .string-;> Rendezvo-;> us with -;> thread %pApSp>DpSp,Pp OpS~?tp ?p Pp SL.r=_threaddebug=p? p ?p@Q p Op Sp@ p S>p?p= DpS=p?W0 d.%dRen-; > dezvous -;(> for tag pApSp>DpSp ?pDQpS=p= DpS=L)L=_sched=p? pA<P-;0> %pWoke -;8> after re-;@> ndezvous-;H> ; val ispApSp>3DpSpHPpS=p?pHOL G=_threadflagrendez=A~@tp@pALO~>isdirtypA>L)L=_threadbreakrendez=A&>AX<p= DpS=&>AXpA Wp? p ? W %p5>A5>XA5 =8AIsched.8 1380061083 0 0 664 7153 ` ~E.string-;> Moribund~>_psstate-;>>D-;>> D-;> DeadEx-;>>D-;> ecFork-; >>D-;> Running-;>>D-;>> D-; > ReadyRe-;(> ndezvous-;>>&D~>psstate>A~@sp@ & AU<& AP unknownp>1Dp >L0fj=_schedinit=A~@argp@ ~?pp ?p SLEx=_threadsetproc=p?L} H= _tosp = p0P p  OW top of -;@> schedini-;H> t, _thre-;P> adexitsa-;X> llstatuspApSp>9DpSLza= _threadexitsallstatusp =pSL.r= _threaddebug =p = & AO+ =%p%s %-;h> lud: &x=-;p> %p n=%d -;x> t->stk=%pApSp>dDpSLza=argv0p=pSp =p0Op Sa?pSp Sp QpSLJ=fprint=-;> p %s %l-;> ud: stac-;> k overflpApSp>DpSp=pSp =p0Op S=L)L=abort= =AW<=p p?pOp?&AO ow paus-;> ing, stap? pP p S>~?.safep?pApSp>DpSp?pS =p? A p S =&AX!runthread!>p &Ap?X<-;> te=%sal-;> l thread-;> s gone; -;> exitingpApSp>DpS =p?pSLEx="_schedexit"=p? - ;> running p Ap Sp >Dp Sp ,Pp  Op Sp  Pp  S  =p ? p!?p! Op"Q&"AO"<-#;> %d.%d%d-#;> .%d mark-#;> ed to dip#Ap#Sp#>Dp#S# =W$A~@#pp-#@ p2P&2AX2 esleepi-8;> ng for m-8;> ore workp8Ap8Sp8>Dp8S8 =p9#@ 9Ap9S9=W: t->stat-K;> e == ReapK>DpKSL?;='_assertK'=pK&@ -L;> dyready-L;> ing %d.%pLApLSpL>DpLSpL,PpL OpLSpL PpL SL =pL&@ pM,P MApM$?pN,P NApNSN=pN&@ pN$? pOA(RpPQ&PAXP\ dwaking-X;(> processpXApXSpX>"DpXSpX,RpX OpXSX =WYp %d5d>A5d>8AId