This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: inetutils 1.5 / ftpd problem: 426 Data connection: No buffer space available.


Charles,

> Well, one of the differences between ftpd-1.3.2 and ftpd-1.5 is that
> the newer version uses mmap on the (local) file. ftpd.c is the /only/
> source file in inetutils that uses mmap.
>
> So, I recompiled with HAVE_MMAP turned off (but still using 4k
> chunks).  Give this a try:
>
> http://cygwin.cwilson.fastmail.fm/ITP/ftpd-no-mmap-4k.exe.bz2
>
> I get behavior here which is very similar to what I reported for the
> 4k-WITH-mmap version:
> (1) sane memory profile
> (2) topology one, 9-10 Mbps 2-3% cpu
> (3) topology two, 14-15 Mbps, 4-6% cpu [*]
>
> I'm not sure what benefit mmap has in this case -- unless you can
> exploit some zero-copy kernel code for transferring data from disk to
> ethernet device. But I don't think Windows has anything like that. I
> certainly don't *see* any benefit, in my limited testing on this set
> of hardware.
>
> If this *does* fix the problem, it may point to an issue with
> cygwin-1.5's mmap implementation, or with XP's handling of the
> underlying NtCreateSection()...mmap is not supposed to be
> CPU-intensive.

Ok, with this version memory stays at a constant 3600kb, cpu usage
hovers at around 50%, and performance is quick (55 seconds to transfer
the file).

Its *possible* that the cpu usage is a red herring - the server is
running in VMware and that may introduce some peculiarities of its
own; however in.ftpd from inetutils 1.3.6 did maintain very low cpu
usage.

Thanks,

Ant.

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]