From owner-freebsd-net Wed Aug 18 13:16: 1 1999 Delivered-To: freebsd-net@freebsd.org Received: from alpo.whistle.com (alpo.whistle.com [207.76.204.38]) by hub.freebsd.org (Postfix) with ESMTP id 916BF14F01 for ; Wed, 18 Aug 1999 13:15:49 -0700 (PDT) (envelope-from julian@whistle.com) Received: from current1.whistle.com (current1.whistle.com [207.76.205.22]) by alpo.whistle.com (8.9.1a/8.9.1) with SMTP id NAA14712 for ; Wed, 18 Aug 1999 13:14:15 -0700 (PDT) Date: Wed, 18 Aug 1999 13:15:27 -0700 (PDT) From: Julian Elischer To: net@freebsd.org Subject: [Fwd: Samba 2.0.5 on FreeBSD 3.1-RELEASE - very very slow writing to Samba from win98] (fwd) Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-net@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Ok, here is a problem.... Samba (the newest version) has slowed down on FreeBSD by an order of magnitude. The cnage that was made was to replace soem read() calls from sockets to recv() calls, and making use of the MSG_WAITALL flag. Under alltheother Unix versions, (inc linux) this has resulted in a smaller number of syscalls. They don't want to have a #ifdef __FreeBSD__ in the sources so they have asked for help in isolating the problem. Here is a piece of email that details some specifics... anyone have any ideas? I looked at the code in soreceive() and it doesn't seem to have changed for ages, and (to brief inspection) seems to be correct. (as regards to MSG_WAITALL anyhow). julian ---------- Forwarded message ---------- Date: Wed, 18 Aug 1999 09:17:42 -0700 From: Jeremy Allison To: Julian Elischer Subject: [Fwd: Samba 2.0.5 on FreeBSD 3.1-RELEASE - very very slow writing to Samba from win98] Julian - confirmation it's the MSG_WAITALL flag that's causing the problem. Jeremy. Johan Kerckaert wrote: > > Hi, > > Jeremy Allison wrote: > > Ok, thanks for the confirmation. Now I nweed to work out > > with the FreeBSD guys why this change has such a great > > effect. It may be that the use of the MSG_WAITALL flag in > > the recv() call is causing problems. > > Indeed, I tried replacing the MSG_WAITALL flag with 0 in the recv () calls, > in util_sock.c, and then it's ok > Using recv calls is also faster than using read calls: > I got 1.3 Mb/s using read, 1.6 Mb/s using recv () with no flags, on a 100 Mbit > crossover. > > Kind regards, > -- > Johan Kerckaert > BricsNet -- -------------------------------------------------------- Buying an operating system without source is like buying a self-assembly Space Shuttle with no instructions. -------------------------------------------------------- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message