Browse Source

Plan 9 from Bell Labs 2007-01-16

David du Colombier 17 years ago
parent
commit
57fee54536

+ 5 - 4
dist/replica/_plan9.db

@@ -7333,7 +7333,7 @@ sys/man/1/jpg - 664 sys sys 1166760721 4841
 sys/man/1/kbmap - 664 sys sys 1159419894 846
 sys/man/1/kill - 664 sys sys 1018369246 1193
 sys/man/1/ktrace - 664 sys sys 957920006 1330
-sys/man/1/leak - 664 sys sys 1144685344 3291
+sys/man/1/leak - 664 sys sys 1168893962 3457
 sys/man/1/lens - 664 sys sys 1130425868 1272
 sys/man/1/lex - 664 sys sys 1113743328 1520
 sys/man/1/look - 664 sys sys 1113743326 1357
@@ -12378,12 +12378,12 @@ sys/src/cmd/ip/imap4d/imap4d.h - 664 sys sys 1015013076 6697
 sys/src/cmd/ip/imap4d/list.c - 664 sys sys 1015013076 7619
 sys/src/cmd/ip/imap4d/mbox.c - 664 sys sys 1156547804 16935
 sys/src/cmd/ip/imap4d/mkfile - 664 sys sys 1063897579 332
-sys/src/cmd/ip/imap4d/msg.c - 664 sys sys 1130423893 31401
+sys/src/cmd/ip/imap4d/msg.c - 664 sys sys 1168894057 31415
 sys/src/cmd/ip/imap4d/mutf7.c - 664 sys sys 1015013077 2724
 sys/src/cmd/ip/imap4d/nodes.c - 664 sys sys 1015013077 3173
 sys/src/cmd/ip/imap4d/search.c - 664 sys sys 1015013077 4520
 sys/src/cmd/ip/imap4d/store.c - 664 sys sys 1066317059 1910
-sys/src/cmd/ip/imap4d/utils.c - 664 sys sys 1015013077 2481
+sys/src/cmd/ip/imap4d/utils.c - 664 sys sys 1168894057 2587
 sys/src/cmd/ip/ipconfig.c - 664 sys sys 1166761782 35168
 sys/src/cmd/ip/measure.c - 664 sys sys 944961011 3733
 sys/src/cmd/ip/mkfile - 664 sys sys 1131110598 1243
@@ -13115,7 +13115,7 @@ sys/src/cmd/rc/haventfork.c - 664 sys sys 1055698771 3122
 sys/src/cmd/rc/here.c - 664 sys sys 1135080780 2504
 sys/src/cmd/rc/io.c - 664 sys sys 1132448641 3752
 sys/src/cmd/rc/io.h - 664 sys sys 1132448641 535
-sys/src/cmd/rc/lex.c - 664 sys sys 1142172919 6102
+sys/src/cmd/rc/lex.c - 664 sys sys 1168915241 6199
 sys/src/cmd/rc/mkfile - 664 sys sys 1055698774 812
 sys/src/cmd/rc/pcmd.c - 664 sys sys 1100894086 2681
 sys/src/cmd/rc/pfnc.c - 664 sys sys 1100894087 1320
@@ -15677,3 +15677,4 @@ usr/glenda/lib/profile - 664 glenda glenda 1105128663 890
 usr/glenda/readme.acme - 664 glenda glenda 1019860628 4753
 usr/glenda/readme.rio - 664 glenda glenda 1019860628 6370
 usr/glenda/tmp - 20000000775 glenda glenda 1018802620 0
+386/bin/ip/imap4d - 775 sys sys 1168920102 238175

+ 5 - 5
dist/replica/plan9.db

@@ -300,7 +300,7 @@
 386/bin/ip/httpd/webls - 775 sys sys 1168402322 133548
 386/bin/ip/httpd/wikipost - 775 sys sys 1168402323 114908
 386/bin/ip/httpfile - 775 sys sys 1168402324 284262
-386/bin/ip/imap4d - 775 sys sys 1168402324 238027
+386/bin/ip/imap4d - 775 sys sys 1168920102 238175
 386/bin/ip/ipconfig - 775 sys sys 1168402325 139510
 386/bin/ip/ping - 775 sys sys 1168402325 76725
 386/bin/ip/ppp - 775 sys sys 1168402326 220383
@@ -7333,7 +7333,7 @@ sys/man/1/jpg - 664 sys sys 1166760721 4841
 sys/man/1/kbmap - 664 sys sys 1159419894 846
 sys/man/1/kill - 664 sys sys 1018369246 1193
 sys/man/1/ktrace - 664 sys sys 957920006 1330
-sys/man/1/leak - 664 sys sys 1144685344 3291
+sys/man/1/leak - 664 sys sys 1168893962 3457
 sys/man/1/lens - 664 sys sys 1130425868 1272
 sys/man/1/lex - 664 sys sys 1113743328 1520
 sys/man/1/look - 664 sys sys 1113743326 1357
@@ -12378,12 +12378,12 @@ sys/src/cmd/ip/imap4d/imap4d.h - 664 sys sys 1015013076 6697
 sys/src/cmd/ip/imap4d/list.c - 664 sys sys 1015013076 7619
 sys/src/cmd/ip/imap4d/mbox.c - 664 sys sys 1156547804 16935
 sys/src/cmd/ip/imap4d/mkfile - 664 sys sys 1063897579 332
-sys/src/cmd/ip/imap4d/msg.c - 664 sys sys 1130423893 31401
+sys/src/cmd/ip/imap4d/msg.c - 664 sys sys 1168894057 31415
 sys/src/cmd/ip/imap4d/mutf7.c - 664 sys sys 1015013077 2724
 sys/src/cmd/ip/imap4d/nodes.c - 664 sys sys 1015013077 3173
 sys/src/cmd/ip/imap4d/search.c - 664 sys sys 1015013077 4520
 sys/src/cmd/ip/imap4d/store.c - 664 sys sys 1066317059 1910
-sys/src/cmd/ip/imap4d/utils.c - 664 sys sys 1015013077 2481
+sys/src/cmd/ip/imap4d/utils.c - 664 sys sys 1168894057 2587
 sys/src/cmd/ip/ipconfig.c - 664 sys sys 1166761782 35168
 sys/src/cmd/ip/measure.c - 664 sys sys 944961011 3733
 sys/src/cmd/ip/mkfile - 664 sys sys 1131110598 1243
@@ -13115,7 +13115,7 @@ sys/src/cmd/rc/haventfork.c - 664 sys sys 1055698771 3122
 sys/src/cmd/rc/here.c - 664 sys sys 1135080780 2504
 sys/src/cmd/rc/io.c - 664 sys sys 1132448641 3752
 sys/src/cmd/rc/io.h - 664 sys sys 1132448641 535
-sys/src/cmd/rc/lex.c - 664 sys sys 1142172919 6102
+sys/src/cmd/rc/lex.c - 664 sys sys 1168915241 6199
 sys/src/cmd/rc/mkfile - 664 sys sys 1055698774 812
 sys/src/cmd/rc/pcmd.c - 664 sys sys 1100894086 2681
 sys/src/cmd/rc/pfnc.c - 664 sys sys 1100894087 1320

+ 5 - 0
dist/replica/plan9.log

@@ -47359,3 +47359,8 @@
 1168704007 4 c sys/src/cmd/cc/pswt.c - 664 sys sys 1168702348 2219
 1168720206 0 c 386/bin/8c - 775 sys sys 1168719909 365769
 1168720206 1 c 386/bin/ip/httpd/httpd - 775 sys sys 1168719910 295204
+1168894807 0 c sys/man/1/leak - 664 sys sys 1168893962 3457
+1168894807 1 c sys/src/cmd/ip/imap4d/msg.c - 664 sys sys 1168894057 31415
+1168894807 2 c sys/src/cmd/ip/imap4d/utils.c - 664 sys sys 1168894057 2587
+1168916407 0 c sys/src/cmd/rc/lex.c - 664 sys sys 1168915241 6199
+1168921806 0 c 386/bin/ip/imap4d - 775 sys sys 1168920102 238175

+ 9 - 0
sys/man/1/leak

@@ -156,6 +156,11 @@ first by count and then by total size:
 .B /rc/bin/leak
 .br
 .B /rc/bin/kmem
+.SH SEE ALSO
+.IR getcallerpc (2),
+.I setmalloctag
+in
+.IR malloc (2)
 .SH BUGS
 .I Leak
 and
@@ -167,3 +172,7 @@ Since the ANSI/POSIX environment uses a different
 allocator,
 .I leak
 will not work on APE programs.
+.PP
+It's not speedy, and
+.I acidleak
+can consume more memory than the process(es) being examined.

+ 1 - 0
sys/src/cmd/ip/imap4d/msg.c

@@ -133,6 +133,7 @@ freeMsg(Msg *m)
 		k = k->next;
 		freeMsg(last);
 	}
+	free(m->fs);
 	free(m);
 }
 

+ 3 - 0
sys/src/cmd/ip/imap4d/utils.c

@@ -154,6 +154,7 @@ emalloc(ulong n)
 	p = malloc(n);
 	if(p == nil)
 		bye("server out of memory");
+	setmalloctag(p, getcallerpc(&n));
 	return p;
 }
 
@@ -165,6 +166,7 @@ ezmalloc(ulong n)
 	p = malloc(n);
 	if(p == nil)
 		bye("server out of memory");
+	setmalloctag(p, getcallerpc(&n));
 	memset(p, 0, n);
 	return p;
 }
@@ -175,5 +177,6 @@ erealloc(void *p, ulong n)
 	p = realloc(p, n);
 	if(p == nil)
 		bye("server out of memory");
+	setrealloctag(p, getcallerpc(&p));
 	return p;
 }

+ 8 - 3
sys/src/cmd/rc/lex.c

@@ -24,6 +24,7 @@ idchr(int c)
 int future = EOF;
 int doprompt = 1;
 int inquote;
+int incomm;
 /*
  * Look ahead in the input stream
  */
@@ -68,7 +69,7 @@ getnext(void)
 	c = rchr(runq->cmdfd);
 	if(!inquote && c=='\\'){
 		c = rchr(runq->cmdfd);
-		if(c=='\n'){
+		if(c=='\n' && !incomm){		/* don't continue a comment */
 			doprompt = 1;
 			c=' ';
 		}
@@ -107,11 +108,15 @@ skipwhite(void)
 	int c;
 	for(;;){
 		c = nextc();
-		if(c=='#'){	/* Why did this used to be  if(!inquote && c=='#') ?? */
+		/* Why did this used to be  if(!inquote && c=='#') ?? */
+		if(c=='#'){
+			incomm = 1;
 			for(;;){
 				c = nextc();
-				if(c=='\n' || c==EOF)
+				if(c=='\n' || c==EOF) {
+					incomm = 0;
 					break;
+				}
 				advance();
 			}
 		}