From: Russ Cox <rsc@swtch.com>
To: erik quanstrom <quanstro@speakeasy.net>,
Fans of the OS Plan 9 from Bell Labs <9fans@cse.psu.edu>
Subject: Re: [9fans] 9pserv leaking?
Date: Sun, 2 Oct 2005 10:52:37 -0400 [thread overview]
Message-ID: <ee9e417a0510020752k2286a636xbb2d0aa1af9e40ce@mail.gmail.com> (raw)
In-Reply-To: <20051001192406.AF94D14E533@dexter-peak.quanstro.net>
> ; ps auxwww | grep 9pserv
> quanstro 4432 0.0 0.4 137036 1140 tty1 Sl Sep17 0:42 9pserve -u unix!/tmp/ns.quanstro.:0/plumb
> quanstro 19386 0.2 0.2 84180 760 pts/32 Sl 14:09 0:00 9pserve -u unix!/tmp/ns.quanstro.:0/acme
> quanstro 19453 0.0 0.1 1524 500 pts/4 S+ 14:10 0:00 grep 9pserv
This isn't convincing that there's a memory leak.
Maybe you've just had more simultaneous messages
outstanding than acme connections. I on the other
hand run a lot of wins all the time, so my acme 9pserve is
bigger.
rsc 4410 09:32 0:00 732K Sleep 9pserve -u unix!/tmp/ns.x40/factotum
rsc 4506 09:32 0:00 772K Sleep 9pserve -u unix!/tmp/ns.x40/plumb
rsc 4560 09:32 0:15 904K Sleep 9pserve -u unix!/tmp/ns.x40/acme
I tried to reproduce this using plumber but can't find anything:
; NAMESPACE=/tmp/xxx
; mkdir $NAMESPACE
; @{rfork s; plumber >/dev/null >[2=1]}
; fn z {psu -a|grep 9pserve |grep /tmp/xxx}
; fn 1000 { for(i in `{seq 1000}) $* }
; z
rsc 20413 10:24 0:00 624K Sleep 9pserve -u unix!/tmp/xxx/plumb
; 1000 9p read plumb/rules >/dev/null
; z
rsc 20413 10:24 0:39 732K Sleep 9pserve -u unix!/tmp/xxx/plumb
; 1000 9p read plumb/rules >/dev/null
; z
rsc 20413 10:24 1:18 740K Sleep 9pserve -u unix!/tmp/xxx/plumb
; 1000 9p read plumb/rules >/dev/null
; z
rsc 20413 10:24 1:58 740K Sleep 9pserve -u unix!/tmp/xxx/plumb
; 1000 9p readfd plumb/rules >/dev/null
; z
rsc 20413 10:24 2:06 748K Sleep 9pserve -u unix!/tmp/xxx/plumb
; 1000 9p readfd plumb/rules >/dev/null
; z
rsc 20413 10:24 2:14 748K Sleep 9pserve -u unix!/tmp/xxx/plumb
; 1000 9p stat plumb/rules >/dev/null
; z
rsc 20413 10:24 2:52 748K Sleep 9pserve -u unix!/tmp/xxx/plumb
; 1000 9p ls plumb >/dev/null
; z
rsc 20413 10:24 3:35 748K Sleep 9pserve -u unix!/tmp/xxx/plumb
; 9p read plumb/rules >/tmp/a
; for(i in `{seq 1000}) 9p write plumb/rules </tmp/a
9p: fsopen rules: file already open
; z
rsc 20413 10:24 4:13 748K Sleep 9pserve -u unix!/tmp/xxx/plumb
; for(i in `{seq 1000}) 9p writefd plumb/rules </tmp/a
9p: write error: Bad file descriptor
9p: write error: Bad file descriptor
9p: write error: Bad file descriptor
; z
rsc 20413 10:24 4:42 748K Sleep 9pserve -u unix!/tmp/xxx/plumb
; for(i in `{seq 1000}) 9p writefd plumb/rules </tmp/a
; z
rsc 20413 10:24 5:09 748K Sleep 9pserve -u unix!/tmp/xxx/plumb
;
Those errors are odd, of course, but not a memory leak.
Russ
> i looked into this the other day, but didn't get very far.
> the only thing i did notice is that in sendq() the allocated
> bytes for the Qel* are not freed if q->hungup:
That's not it. q->hungup is always zero. (Good thing, too,
since no one looks at the return value of sendq.) I should
clean that up.
next prev parent reply other threads:[~2005-10-02 14:52 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-10-01 19:24 erik quanstrom
2005-10-02 14:52 ` Russ Cox [this message]
2005-10-05 12:17 ` erik quanstrom
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ee9e417a0510020752k2286a636xbb2d0aa1af9e40ce@mail.gmail.com \
--to=rsc@swtch.com \
--cc=9fans@cse.psu.edu \
--cc=quanstro@speakeasy.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).