Return to BSD News archive
Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!news.mel.connect.com.au!munnari.OZ.AU!news.ecn.uoknor.edu!news.wildstar.net!imci5!pull-feed.internetmci.com!news.internetMCI.com!newsfeed.internetmci.com!swrinde!howland.reston.ans.net!Germany.EU.net!Dortmund.Germany.EU.net!interface-business.de!usenet From: j@ida.interface-business.de (J Wunsch) Newsgroups: comp.unix.bsd.misc Subject: Re: Why does this program panic 4.4BSD? Date: 24 May 1996 13:52:01 GMT Organization: interface business GmbH, Dresden Lines: 61 Message-ID: <4o4eu1$mr6@innocence.interface-business.de> References: <4o2kn3$21u@panix2.panix.com> Reply-To: joerg_wunsch@interface-business.de (Joerg Wunsch) NNTP-Posting-Host: ida.interface-business.de X-Newsreader: knews 0.9.6 X-Phone: +49-351-31809-14 X-Fax: +49-351-3361187 X-PGP-Fingerprint: DC 47 E6 E4 FF A6 E9 8F 93 21 E0 7D F9 12 D6 4E tls@panix.com (Thor Lancelot Simon) wrote: > The following code appears to quite reliably panic every 4.4 derivative I've > run it on, when run by an ordinary, unprivileged user. Your code wasn't compilable on my FreeBSD system (several header files are also required when _not_ using SunOS -- i wonder how you got it to find O_RDONLY on your other 4.4BSD derivatives?), but the following works fine for me: j@ida 664% uname -a FreeBSD ida.interface-business.de 2.2-current FreeBSD 2.2-current\ #0: Tue May 21 13:43:20 MET DST 1996\ j@ida.interface-business.de:/usr/src/sys/compile/IDA i386 j@ida 665% cat foo.c #define MEGS 4 #include <unistd.h> #include <fcntl.h> #include <sys/types.h> #include <sys/mman.h> int main(void) { int i; caddr_t c; c = mmap(0, (MEGS * 1024 * 1024), PROT_READ, MAP_SHARED, open("/dev/zero", O_RDONLY), 0 ); while(1) { for(i = 0; i < MEGS; i++) { if(i != 0) munlock(c + (i - 1) * 1024 * 1024, 1 * 1024 * 1024); mlock(c + i * 1024 * 1024, (1 * 1024 * 1024)); sleep(1); } } } j@ida 666% cc -Wall -O foo.c j@ida 667% ./a.out ^Z Suspended j@ida 668% bg [1] ./a.out & j@ida 669% ps -l UID PID PPID CPU PRI NI VSZ RSS WCHAN STAT TT TIME COMMAND 107 362 361 1 18 0 940 732 pause Ss p4 0:10.55 -tcsh (tcsh) 107 13668 362 0 18 0 136 444 pause S p4 0:00.02 ./a.out 107 13669 362 4 29 0 456 288 - R+ p4 0:00.01 ps -l j@ida 670% ps -l UID PID PPID CPU PRI NI VSZ RSS WCHAN STAT TT TIME COMMAND 107 362 361 0 18 0 940 732 pause Ss p4 0:10.57 -tcsh (tcsh) 107 13668 362 0 18 0 136 444 pause S p4 0:00.02 ./a.out 107 13670 362 2 28 0 456 288 - R+ p4 0:00.01 ps -l j@ida 671% kill %1 [1] Terminated ./a.out -- J"org Wunsch Unix support engineer joerg_wunsch@interface-business.de http://www.interface-business.de/~j