chip@ateng.UUCP (Chip Salzenberg) (07/23/88)
Several people have complained that their copies of pathalias for the '286 have suddenly stopped working. I am in the same boat. Does there exist in the world a set of pathalias sources for the '286 that can correctly process the latest world maps without dumping core? PLEASE, let us know! -- Chip Salzenberg <chip@ateng.uu.net> or <uunet!ateng!chip> A T Engineering My employer may or may not agree with me. You make me wanna break the laws of time and space You make me wanna eat pork
rms@gubba.SPDCC.COM (Rich Sands) (07/23/88)
In article <333@ateng.UUCP> chip@ateng.UUCP (Chip Salzenberg) writes: >Several people have complained that their copies of pathalias for the '286 >have suddenly stopped working. I am in the same boat. > >Does there exist in the world a set of pathalias sources for the '286 that >can correctly process the latest world maps without dumping core? > >PLEASE, let us know! >-- >Chip Salzenberg <chip@ateng.uu.net> or <uunet!ateng!chip> >A T Engineering My employer may or may not agree with me. > You make me wanna break the laws of time and space > You make me wanna eat pork The world maps have gotten so large that the hash table within pathalias must be larger than 64k. It is malloced as a contiguous array, and so when the program calls malloc with some number larger than 64k, malloc gives back a block of memory that is <size> - 64k big. Pathalias thinks its got a big chunk of memory and after awhile, does an array access that causes a segmentation violation. The solution is to go through pathalias and replace every reference to the hash table to a function call, and make the table into two separate arrays when it must be larger than 64k, with the function call grabbing the appropriate array element from one of the two arrays. This technique can be extended to as many pieces as are necessary (though it will be awhile before a third array is needed in pathalias, I would guess). I have done this, as well as changed some constants involving hash table utilization to favor space efficiency over speed. The large array trick I mentioned above further slows the program and is a disgusting hack, but who cares - it runs at 3:00 am when the machine has nothing else better to do. My changes work on an AT&T 6300+ running Simultask (Sys V). I've never tried it under Xenix so your milage may vary. If you want the patches, drop me a line and I'll send them. If I get enough response, I'll post. -- -- rms UUCP: {ihnp4,harvard,husc6,linus,ima,bbn,m2c}!spdcc!gubba!rms Internet: rms@gubba.spdcc.com Compuserve: 71360,1067 BIX: richsands
jack@turnkey.TCC.COM (Jack F. Vogel) (07/24/88)
In article <333@ateng.UUCP> chip@ateng.UUCP (Chip Salzenberg) writes: >Several people have complained that their copies of pathalias for the '286 >have suddenly stopped working. I am in the same boat. >Does there exist in the world a set of pathalias sources for the '286 that >can correctly process the latest world maps without dumping core? Chip (and anyone else in need), You can obtain either working source or binary via anonymous uucp from turnkey. This code was reworked by greg@gryphon.CTS.COM and it works fine on the existing world maps. The public phone number for turnkey is 714-662-7450. Set up your Systems entry to send an initial return then login as nuucp, no password. Callins at both 2400 and 1200 (sorry no 'blazer' at this point :-{. If you want just binary request "pathalias.Z" The source archive is called "palias.tar.Z", it is ready to compile. Finally, if you are curious about what else is available request the file 'files' (anonymous logins cannot uux `ls` so don't waste your time). Oh yes, naturally all the above are in the public directory. Best of luck, -- Jack F. Vogel Turnkey Computer Consultants, Costa Mesa, CA UUCP: ...{nosc|uunet}!turnkey!jack Internet: jack@turnkey.TCC.COM