Hi Xiaoqin,
First, if TCP_NODELAY is not being set, that could be your performance
problem right there. I have no idea what the problem is with setting
your socket options. I guess that you compile your own Samba version,
so maybe it's time to start investigating your build.
My version of HP CIFS Server on 3.0.5 does not exhibit any of the
symptoms as seen in your logs. You can pull down the latest build of
CIFS 3.0.5 (for testing only) from:
http://www.software.hp.com/portal/swdepot/displayProductInfo.do?productNumber=CIFSTP3
On 2.2 CIFS and Opensource can co-exist on the same system (only one can
run), but I have not tested this on 3.0 yet. So you could test with
CIFS for the socket options to see if you have a build problem.
Second, if you are running opensource, then you are probably calling
pread/pwrite. If you are doing that, then you need phlk_28512. That
can slow down reads/writes too.
Eric Roseme
Hewlett-Packard
xiaoqin_qiu@agilent.com wrote:
> Hi,
>
> In the last a couple of weeks, Eric helped me fixed a couple of my new
samba 3.0.5 running on HP-UX 11i hang issues. Right now, people still experience
slowness when they run some applications on the samba shares OR recursive list
directories on the samba shares.
>
> There was not a lot of errors in the individual log files. However,there
are some errors in log.smbd and log.0.0.0.0 file.
>
> 1) what is log.0.0.0.0 file? Is it a problem that it exists?
>
> 2) In log.smbd file, I saw the following type of errors:
>
> [2004/09/08 09:23:51, 0] lib/util_sock.c:get_peer_addr(978)
> getpeername failed. Error was Invalid argument
> [2004/09/08 09:27:52, 0] smbd/server.c:open_sockets_smbd(382)
> open_sockets_smbd: accept: No buffer space available
> [2004/09/08 09:30:15, 0] smbd/server.c:open_sockets_smbd(382)
> open_sockets_smbd: accept: No buffer space available
> [2004/09/08 09:31:17, 0] lib/util_sock.c:set_socket_options(185)
> Failed to set socket option SO_KEEPALIVE (Error Invalid argument)
> [2004/09/08 09:31:17, 0] lib/util_sock.c:set_socket_options(185)
> Failed to set socket option TCP_NODELAY (Error Invalid argument)
> [2004/09/08 09:31:17, 0] lib/util_sock.c:get_peer_addr(978)
> getpeername failed. Error was Invalid argument
> [2004/09/08 09:33:08, 0] smbd/server.c:open_sockets_smbd(382)
> open_sockets_smbd: accept: No buffer space available
>
> 3) In log.0.0.0.0 file, I saw the following type of errors:
>
> [2004/09/08 15:54:22, 0] lib/util_sock.c:get_peer_addr(978)
> getpeername failed. Error was Invalid argument
> [2004/09/08 15:54:22, 0] lib/access.c:check_access(326)
> [2004/09/08 15:54:22, 0] lib/util_sock.c:get_peer_addr(978)
> getpeername failed. Error was Invalid argument
> Denied connection from (0.0.0.0)
> [2004/09/08 15:54:22, 1] smbd/process.c:process_smb(883)
> [2004/09/08 15:54:22, 0] lib/util_sock.c:get_peer_addr(978)
> getpeername failed. Error was Invalid argument
> Connection denied from 0.0.0.0
> [2004/09/08 15:54:22, 0] lib/util_sock.c:write_socket_data(413)
> write_socket_data: write failure. Error = Broken pipe
> [2004/09/08 15:54:22, 0] lib/util_sock.c:write_socket(437)
> write_socket: Error writing 5 bytes to socket 23: ERRNO = Broken pipe
> [2004/09/08 15:54:22, 0] lib/util_sock.c:send_smb(629)
> Error writing 5 bytes to client. -1. (Broken pipe)
>
> Are these real problems and how to get rid of them?
>
> BTW, we have the following configuration in smb.conf file:
>
> socket options = TCP_NODELAY
>
> Thank you very much for your help!
>
> Xiaoqin Qiu
> Agilent Technologies, Inc.