You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(33) |
Nov
(15) |
Dec
(28) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
(13) |
Feb
(61) |
Mar
(5) |
Apr
|
May
(19) |
Jun
(22) |
Jul
|
Aug
(17) |
Sep
(7) |
Oct
|
Nov
|
Dec
|
2006 |
Jan
|
Feb
|
Mar
(6) |
Apr
|
May
|
Jun
|
Jul
|
Aug
(4) |
Sep
|
Oct
|
Nov
|
Dec
|
2007 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
2010 |
Jan
|
Feb
(48) |
Mar
(10) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2014 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Peter C. <pc...@us...> - 2010-02-03 01:27:03
|
Update of /cvsroot/ipbench/ipbench2/src/tests/nfsstone In directory sfp-cvsdas-1.v30.ch3.sourceforge.com:/tmp/cvs-serv20202/src/tests/nfsstone Modified Files: nfsstones.c Log Message: Many minor mods: --- rename ipbench.py and ipbenchd.py to remove suffix --- Check return values on system() , nice() etc., to allow building with -Werror --- Fix installation varation between Ubuntu and Debian: site-packages vs dist-packages. Index: nfsstones.c =================================================================== RCS file: /cvsroot/ipbench/ipbench2/src/tests/nfsstone/nfsstones.c,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** nfsstones.c 5 May 2005 02:43:57 -0000 1.14 --- nfsstones.c 3 Feb 2010 01:26:51 -0000 1.15 *************** *** 213,217 **** } ! if ((lock_fd = open(lock, O_RDWR|O_CREAT)) < OK) { perror("lock_file"); return FAIL; --- 213,217 ---- } ! if ((lock_fd = open(lock, O_RDWR|O_CREAT, 0600)) < OK) { perror("lock_file"); return FAIL; |
From: Peter C. <pc...@us...> - 2010-02-03 01:27:03
|
Update of /cvsroot/ipbench/ipbench2/src In directory sfp-cvsdas-1.v30.ch3.sourceforge.com:/tmp/cvs-serv20202/src Modified Files: Makefile.am Log Message: Many minor mods: --- rename ipbench.py and ipbenchd.py to remove suffix --- Check return values on system() , nice() etc., to allow building with -Werror --- Fix installation varation between Ubuntu and Debian: site-packages vs dist-packages. Index: Makefile.am =================================================================== RCS file: /cvsroot/ipbench/ipbench2/src/Makefile.am,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** Makefile.am 22 Feb 2005 05:53:32 -0000 1.11 --- Makefile.am 3 Feb 2010 01:26:51 -0000 1.12 *************** *** 8,12 **** #make sure these scripts get distributed ! dist_bin_SCRIPTS=ipbench.py ipbenchd.py noinst_HEADERS = ipbench.h --- 8,16 ---- #make sure these scripts get distributed ! dist_bin_SCRIPTS=ipbench ipbenchd ! ! % : %.py ! cp $< $@ ! chmod +x $@ noinst_HEADERS = ipbench.h |
From: Peter C. <pc...@us...> - 2010-02-03 01:26:59
|
Update of /cvsroot/ipbench/ipbench2/src/tests/cpu_target_lukem In directory sfp-cvsdas-1.v30.ch3.sourceforge.com:/tmp/cvs-serv20202/src/tests/cpu_target_lukem Modified Files: cpu_target_lukem.c Log Message: Many minor mods: --- rename ipbench.py and ipbenchd.py to remove suffix --- Check return values on system() , nice() etc., to allow building with -Werror --- Fix installation varation between Ubuntu and Debian: site-packages vs dist-packages. Index: cpu_target_lukem.c =================================================================== RCS file: /cvsroot/ipbench/ipbench2/src/tests/cpu_target_lukem/cpu_target_lukem.c,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** cpu_target_lukem.c 5 May 2005 02:42:21 -0000 1.13 --- cpu_target_lukem.c 3 Feb 2010 01:26:51 -0000 1.14 *************** *** 109,113 **** /* put ourselves at a low priority */ ! nice(20); /* create the idle thread */ --- 109,114 ---- /* put ourselves at a low priority */ ! if (nice(20) == -1) ! dbprintf("nice for cpu measurement: %s\n", strerror(errno)); /* create the idle thread */ |
From: Peter C. <pc...@us...> - 2010-02-03 01:26:59
|
Update of /cvsroot/ipbench/ipbench2/debian In directory sfp-cvsdas-1.v30.ch3.sourceforge.com:/tmp/cvs-serv20202/debian Modified Files: control ipbench-client.install ipbench-controller.install ipbench-target.install Log Message: Many minor mods: --- rename ipbench.py and ipbenchd.py to remove suffix --- Check return values on system() , nice() etc., to allow building with -Werror --- Fix installation varation between Ubuntu and Debian: site-packages vs dist-packages. Index: ipbench-client.install =================================================================== RCS file: /cvsroot/ipbench/ipbench2/debian/ipbench-client.install,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** ipbench-client.install 22 Dec 2004 03:30:17 -0000 1.1 --- ipbench-client.install 3 Feb 2010 01:26:51 -0000 1.2 *************** *** 1,3 **** ! debian/tmp/usr/bin/ipbenchd.py ! debian/tmp/usr/lib/python*/site-packages/*client* ! debian/tmp/usr/lib/python*/site-packages/*Client* --- 1 ---- ! debian/tmp/usr/lib/python*/{site,dist}-packages/*[cC]lient* Index: ipbench-controller.install =================================================================== RCS file: /cvsroot/ipbench/ipbench2/debian/ipbench-controller.install,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** ipbench-controller.install 22 Dec 2004 03:30:17 -0000 1.1 --- ipbench-controller.install 3 Feb 2010 01:26:51 -0000 1.2 *************** *** 1 **** ! debian/tmp/usr/bin/ipbench.py \ No newline at end of file --- 1 ---- ! debian/tmp/usr/bin/ipbench Index: control =================================================================== RCS file: /cvsroot/ipbench/ipbench2/debian/control,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** control 1 Feb 2010 23:59:43 -0000 1.7 --- control 3 Feb 2010 01:26:51 -0000 1.8 *************** *** 8,12 **** Package: ipbench-client Architecture: any ! Depends: ${shlibs:Depends}, ipbench-plugins, python Description: Client machine files for ipbench2 ipbench is a distributed networking suite with a variety of tests and --- 8,12 ---- Package: ipbench-client Architecture: any ! Depends: ${shlibs:Depends}, ipbench-plugins, python, ipbench-daemon Description: Client machine files for ipbench2 ipbench is a distributed networking suite with a variety of tests and *************** *** 18,22 **** Package: ipbench-target Architecture: any ! Depends: ${shlibs:Depends}, ipbench-plugins, python Description: Target machine files for ipbench2 ipbench is a distributed networking suite with a variety of tests and --- 18,22 ---- Package: ipbench-target Architecture: any ! Depends: ${shlibs:Depends}, ipbench-plugins, python, ipbench-daemon Description: Target machine files for ipbench2 ipbench is a distributed networking suite with a variety of tests and *************** *** 61,62 **** --- 61,75 ---- a easiliy extended API for writing new ones. More information can be found at http://ipbench.sf.net + + Package: ipbench-controller + Architecture: all + Depends: ${shlibs:Depends}, python, ipbench-client, ipbench-target + Description: Controller script for ipbench2 + ipbench is a distributed networking suite with a variety of tests and + a easiliy extended API for writing new ones. More information can be + found at http://ipbench.sf.net, + This package contains the control script. + + Package: ipbench-daemon + Architecture: all + Depends: python Index: ipbench-target.install =================================================================== RCS file: /cvsroot/ipbench/ipbench2/debian/ipbench-target.install,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** ipbench-target.install 22 Dec 2004 03:30:17 -0000 1.1 --- ipbench-target.install 3 Feb 2010 01:26:51 -0000 1.2 *************** *** 1,3 **** ! debian/tmp/usr/bin/ipbenchd.py ! debian/tmp/usr/lib/python*/site-packages/*target* ! debian/tmp/usr/lib/python*/site-packages/*Target* --- 1 ---- ! debian/tmp/usr/lib/python*/{site,dist}-packages/*[Tt]arget* |
From: Peter C. <pc...@us...> - 2010-02-03 01:26:59
|
Update of /cvsroot/ipbench/ipbench2 In directory sfp-cvsdas-1.v30.ch3.sourceforge.com:/tmp/cvs-serv20202 Modified Files: ChangeLog Log Message: Many minor mods: --- rename ipbench.py and ipbenchd.py to remove suffix --- Check return values on system() , nice() etc., to allow building with -Werror --- Fix installation varation between Ubuntu and Debian: site-packages vs dist-packages. Index: ChangeLog =================================================================== RCS file: /cvsroot/ipbench/ipbench2/ChangeLog,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** ChangeLog 28 Aug 2006 01:35:23 -0000 1.23 --- ChangeLog 3 Feb 2010 01:26:50 -0000 1.24 *************** *** 1,2 **** --- 1,6 ---- + 2010-02-02 Peter Chubb <pe...@ge...> + + * Fix compilation on Ubuntu Jaunty. + 2006-08-28 Ian Wienand <ianw@localdomain> |
From: Peter C. <pc...@us...> - 2010-02-03 01:26:59
|
Update of /cvsroot/ipbench/ipbench2/src/pymod In directory sfp-cvsdas-1.v30.ch3.sourceforge.com:/tmp/cvs-serv20202/src/pymod Modified Files: Makefile.am Log Message: Many minor mods: --- rename ipbench.py and ipbenchd.py to remove suffix --- Check return values on system() , nice() etc., to allow building with -Werror --- Fix installation varation between Ubuntu and Debian: site-packages vs dist-packages. Index: Makefile.am =================================================================== RCS file: /cvsroot/ipbench/ipbench2/src/pymod/Makefile.am,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** Makefile.am 28 Aug 2006 01:36:14 -0000 1.15 --- Makefile.am 3 Feb 2010 01:26:51 -0000 1.16 *************** *** 5,9 **** CLEANFILES = ipbench_client_wrap.c ipbench_target_wrap.c ipbench.py ipbench_client.i ipbench_target.i ipbench_client.py ipbench_target.py ! libpythondir = $(PYTHON_SITE_PKG) libpython_LTLIBRARIES = libipbenchClientPython.la libipbenchTargetPython.la --- 5,9 ---- CLEANFILES = ipbench_client_wrap.c ipbench_target_wrap.c ipbench.py ipbench_client.i ipbench_target.i ipbench_client.py ipbench_target.py ! libpythondir = $(pythondir) libpython_LTLIBRARIES = libipbenchClientPython.la libipbenchTargetPython.la |
From: Peter C. <pc...@us...> - 2010-02-03 00:45:40
|
Update of /cvsroot/ipbench/ipbench2/debian In directory sfp-cvsdas-1.v30.ch3.sourceforge.com:/tmp/cvs-serv11653 Modified Files: changelog Log Message: Updated Debian changelog. Index: changelog =================================================================== RCS file: /cvsroot/ipbench/ipbench2/debian/changelog,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** changelog 8 Mar 2006 00:01:07 -0000 1.3 --- changelog 3 Feb 2010 00:24:32 -0000 1.4 *************** *** 1,2 **** --- 1,10 ---- + ipbench (2.0.1-3) unstable; urgency=low + + * Fix compilation problems on Ubuntu + * Package ipbench-controller + * Move from python-xml to eventtree for compatibility with python 2.[56]. + + -- Peter Chubb <Peter Chubb <pet...@ni...>> Wed, 03 Feb 2010 11:23:09 +1100 + ipbench (2.0.1-2) unstable; urgency=low |
From: Peter C. <pc...@us...> - 2010-02-03 00:21:37
|
Update of /cvsroot/ipbench/ipbench2/src In directory sfp-cvsdas-1.v30.ch3.sourceforge.com:/tmp/cvs-serv10643 Modified Files: ipbench.py Log Message: Changed from python-xml to elementtree, in a way that (seems to) work for python 2.5 and 2.6. Index: ipbench.py =================================================================== RCS file: /cvsroot/ipbench/ipbench2/src/ipbench.py,v retrieving revision 1.34 retrieving revision 1.35 diff -C2 -d -r1.34 -r1.35 *** ipbench.py 13 Sep 2005 04:01:55 -0000 1.34 --- ipbench.py 3 Feb 2010 00:21:03 -0000 1.35 *************** *** 9,14 **** import select from optparse import OptionParser ! from xml import xpath ! from xml.dom.ext.reader import Sax2 options = None --- 9,13 ---- import select from optparse import OptionParser ! from xml.etree.ElementTree import parse options = None *************** *** 273,280 **** if (options.config): dbprint("Reading config from " + options.config) ! reader = Sax2.Reader() ! doc = reader.fromStream(open(options.config)) ! tests = xpath.Evaluate( "/ipbench/test", doc) if (len(tests) > 1): print "Error in config: please only have one <test> section" --- 272,279 ---- if (options.config): dbprint("Reading config from " + options.config) ! doc = parse(options.config).getroot() ! ! tests = doc.findAll('/ipbench/test') if (len(tests) > 1): print "Error in config: please only have one <test> section" *************** *** 283,302 **** # go through attributes for <test> for test in tests: ! for args in test.attributes: ! if (args.name == "name"): ! dbprint("[main] setting test from config file to " + args.value) ! options.test = str(args.value) ! if (args.name == "args"): ! dbprint("[main] setting default test args from config file to " + args.value) ! options.test_args = str(args.value) ! if (args.name == "port"): ! dbprint("[main] setting default test port from config file to " + args.value) ! options.test_port = int(args.value) ! if (args.name == "target"): ! dbprint("[main] setting default test target from config file to " + args.value) ! options.test_target = str(args.value) ! if (args.name == "controller_args"): ! dbprint("[main] setting default controller test args from config file to " + args.value) ! options.controller_args = str(args.value) # the test should be known by now --- 282,290 ---- # go through attributes for <test> for test in tests: ! options.test = str(test.get("name", None)) ! options.test_args = str(test.get('args', '')) ! options.test_port = int(test.get('port', '0')) ! options.test_target = str(test.get('target', '')) ! options.controller_args = str(test.get('controller_args', '')) # the test should be known by now *************** *** 307,311 **** # go through each <client>, override default values from attributes and add it to the # clients[] list ! data = xpath.Evaluate("client",test) for cclients in data: newclient = { --- 295,299 ---- # go through each <client>, override default values from attributes and add it to the # clients[] list ! data = doc.findAll('/ipbench/test/client') for cclients in data: newclient = { *************** *** 316,335 **** "test_target":str(options.test_target) } ! for arg in cclients.attributes: ! if (arg.name == "hostname"): ! newclient["hostname"] = arg.value ! continue ! if (arg.name == "port"): ! newclient["port"] = int(arg.value) ! continue ! if (arg.name == "test_port"): ! newclient["test_port"] = int(arg.value) ! continue ! if (arg.name == "test_args"): ! newclient["test_args"] = arg.value ! continue ! if (arg.name == "test_target"): ! newclient["test_target"] = arg.value ! continue if (newclient["hostname"] == None): print "Please specifiy a hostname for the client!" --- 304,313 ---- "test_target":str(options.test_target) } ! newclient["hostname"] = cclients.get('hostname', None) ! newclient["port"] = int(cclients.get('port', options.port)) ! newclient["test_port"] = int(cclients.get('test_port', options.test_port)) ! newclient["test_args"] = cclients.get('test_args', str(options.test_args)) ! newclient["test_target"] = cclients.get('test_target', str(options.test_target)) ! if (newclient["hostname"] == None): print "Please specifiy a hostname for the client!" *************** *** 338,358 **** #now look for the <target_test> section, add to the targets list ! target_tests = xpath.Evaluate( "/ipbench/target_test", doc) for target_test in target_tests: ! for args in target_test.attributes: ! if (args.name == "name"): ! dbprint("[main] setting target test from config file to " + args.value) ! target_test_name = args.value ! if (args.name == "args"): ! dbprintf("[main] setting target args from config file to " + args.value) ! options.target_test_args = args.value ! if (args.name == "controller_args"): ! dbprintf("[main] setting target controller args from config file to " + args.value) ! options.target_controller_args = str(args.value) ! # it is possible that there will be multiple <target_test> sections, each ! # with multiple <targets> in them. so make sure we only select those ! # targets for the target test we are currently looking at. ! tclients = xpath.Evaluate("/ipbench/target_test[@name=\'"+target_test_name+"\']/target",doc) if (not (len(tclients) > 0)): print "Please specifiy some targets in the <target_test> section!" --- 316,330 ---- #now look for the <target_test> section, add to the targets list ! target_tests = doc.FindAll("/ipbench/target_test") for target_test in target_tests: ! target_test_name = test.get('name') ! options.target_test_args = test.get('args') ! options.target_controller_args = str(test.get('controller_args')) ! # it is possible that there will be multiple <target_test> ! # sections, each with multiple <targets> in them. so ! # make sure we only select those targets for the target ! # test we are currently looking at. ! tclients = doc.findAll("/ipbench/target_test[@name=\'"+target_test_name+"\']/target") if (not (len(tclients) > 0)): print "Please specifiy some targets in the <target_test> section!" *************** *** 365,378 **** "test": str(target_test_name) #comes encoded in utf-16 } ! for arg in tclient.attributes: ! if (arg.name == "hostname"): ! newtarget["hostname"] = arg.value ! continue ! if (arg.name == "port"): ! newtarget["port"] = int(arg.value) ! continue ! if (arg.name == "test_args"): ! newtarget["test_args"] = arg.value ! continue if (newtarget["hostname"] == None): --- 337,345 ---- "test": str(target_test_name) #comes encoded in utf-16 } ! for arg in tclient.keys(): ! newtarget["hostname"] = tclient.get('hostname', ! options.target_test_hostname) ! newtarget["port"] = int(tclient.get(port, options.target_test_port)) ! newtarget["test_args"] = str(tclient.get('test_args', options.target_test_args)) if (newtarget["hostname"] == None): |
From: Peter C. <pc...@us...> - 2010-02-02 00:00:04
|
Update of /cvsroot/ipbench/ipbench2/src/tests/nfs_latency/libnfs In directory sfp-cvsdas-1.v30.ch3.sourceforge.com:/tmp/cvs-serv4021/src/tests/nfs_latency/libnfs Modified Files: rpc.c Log Message: Updated to current Debian (python-xml no longer exists); fixed compilation without debug_rpc. Index: rpc.c =================================================================== RCS file: /cvsroot/ipbench/ipbench2/src/tests/nfs_latency/libnfs/rpc.c,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** rpc.c 19 Aug 2005 06:11:01 -0000 1.6 --- rpc.c 1 Feb 2010 23:59:52 -0000 1.7 *************** *** 28,37 **** #endif static void ! rpc_print(char *text, unsigned char *data, size_t length){ size_t i, j; - if(0) rpc_print(text, data, length); - printf("%s\n", text); --- 28,36 ---- #endif + #ifdef DEBUG_RPC static void ! rpc_print(const char *text, unsigned char *data, size_t length){ size_t i, j; printf("%s\n", text); *************** *** 48,52 **** } } ! int rpc_send(struct pbuf *pbuf, int fd, struct callback *c) --- 47,55 ---- } } ! #else ! static void rpc_print(const char *text, unsigned char *data, size_t length) ! { ! } ! #endif int rpc_send(struct pbuf *pbuf, int fd, struct callback *c) *************** *** 66,70 **** return -1; /* don't send zero length rpc */ ! //rpc_print("sending:", pbuf->buf, pbuf->pos); r = send(fd, pbuf->buf, pbuf->pos, 0); --- 69,73 ---- return -1; /* don't send zero length rpc */ ! rpc_print("sending:", (unsigned char *)pbuf->buf, pbuf->pos); r = send(fd, pbuf->buf, pbuf->pos, 0); *************** *** 116,120 **** } ! //rpc_print("received:", pbuf->buf, x); /* find and execute callback function */ --- 119,123 ---- } ! rpc_print("received:", (unsigned char *)pbuf->buf, x); /* find and execute callback function */ |
From: Peter C. <pc...@us...> - 2010-02-02 00:00:00
|
Update of /cvsroot/ipbench/ipbench2/debian In directory sfp-cvsdas-1.v30.ch3.sourceforge.com:/tmp/cvs-serv4021/debian Modified Files: control Log Message: Updated to current Debian (python-xml no longer exists); fixed compilation without debug_rpc. Index: control =================================================================== RCS file: /cvsroot/ipbench/ipbench2/debian/control,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** control 7 Mar 2006 05:10:32 -0000 1.6 --- control 1 Feb 2010 23:59:43 -0000 1.7 *************** *** 4,12 **** Maintainer: Ian Wienand <ia...@ge...> Standards-Version: 3.6.1 ! Build-Depends: debmake, cdbs, swig, python-dev Package: ipbench-client Architecture: any ! Depends: ${shlibs:Depends}, ipbench-plugins, python, python-xml Description: Client machine files for ipbench2 ipbench is a distributed networking suite with a variety of tests and --- 4,12 ---- Maintainer: Ian Wienand <ia...@ge...> Standards-Version: 3.6.1 ! Build-Depends: cdbs, swig, python-dev Package: ipbench-client Architecture: any ! Depends: ${shlibs:Depends}, ipbench-plugins, python Description: Client machine files for ipbench2 ipbench is a distributed networking suite with a variety of tests and *************** *** 18,22 **** Package: ipbench-target Architecture: any ! Depends: ${shlibs:Depends}, ipbench-plugins, python, python-xml Description: Target machine files for ipbench2 ipbench is a distributed networking suite with a variety of tests and --- 18,22 ---- Package: ipbench-target Architecture: any ! Depends: ${shlibs:Depends}, ipbench-plugins, python Description: Target machine files for ipbench2 ipbench is a distributed networking suite with a variety of tests and |
From: Ian W. <del...@us...> - 2007-11-16 05:35:05
|
Update of /cvsroot/ipbench/ipbench2/src/tests/cpu_target In directory sc8-pr-cvs2.sourceforge.net:/tmp/cvs-serv11069 Modified Files: cpu_target.c Log Message: fix warning from newer gcc Index: cpu_target.c =================================================================== RCS file: /cvsroot/ipbench/ipbench2/src/tests/cpu_target/cpu_target.c,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** cpu_target.c 5 May 2005 02:40:34 -0000 1.12 --- cpu_target.c 16 Nov 2007 05:35:00 -0000 1.13 *************** *** 294,298 **** { char *c, *cmd, *val; ! char *arg_ptr, *cmd_ptr; c = strtok_r(arg, ",", &arg_ptr); --- 294,298 ---- { char *c, *cmd, *val; ! char *arg_ptr = NULL, *cmd_ptr = NULL; c = strtok_r(arg, ",", &arg_ptr); |
From: Ian W. <del...@us...> - 2006-08-28 01:36:18
|
Update of /cvsroot/ipbench/ipbench2/src/pymod In directory sc8-pr-cvs2.sourceforge.net:/tmp/cvs-serv18650 Modified Files: Makefile.am Log Message: un-confuse cvs Index: Makefile.am =================================================================== RCS file: /cvsroot/ipbench/ipbench2/src/pymod/Makefile.am,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** Makefile.am 7 Mar 2006 05:10:51 -0000 1.14 --- Makefile.am 28 Aug 2006 01:36:14 -0000 1.15 *************** *** 1,3 **** - #AM_CFLAGS=$(WARNINGCFLAGS) <- swig produces too many warnings for this --- 1,2 ---- |
From: Ian W. <del...@us...> - 2006-08-28 01:35:27
|
Update of /cvsroot/ipbench/ipbench2/src/pymod In directory sc8-pr-cvs2.sourceforge.net:/tmp/cvs-serv18172/src/pymod Modified Files: ipbench.c ipbench.i.in Log Message: fix up a bunch of warnings Index: ipbench.c =================================================================== RCS file: /cvsroot/ipbench/ipbench2/src/pymod/ipbench.c,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** ipbench.c 9 May 2005 00:54:10 -0000 1.14 --- ipbench.c 28 Aug 2006 01:35:23 -0000 1.15 *************** *** 20,24 **** struct ipbench_plugin *ipbench_plugin; ! static struct client_data *client_data, target_data; /* number of clients */ --- 20,30 ---- struct ipbench_plugin *ipbench_plugin; ! #ifdef IPBENCH_TEST_CLIENT ! static struct client_data *client_data; ! #elif defined(IPBENCH_TEST_TARGET) ! static struct client_data target_data; ! #else ! # error "IPBNECH_TEST_CLIENT or IPBENCH_TEST_TARGET must be #defined" ! #endif /* number of clients */ *************** *** 71,76 **** int load_plugin(const char *plugin_name) { - int sts = 0; - int n; struct dirent **namelist; --- 77,80 ---- *************** *** 79,83 **** struct ipbench_plugin *p; char *path = IPBENCH_PLUGIN_DIR; /* defined on the command line */ ! dbprintf("Finding plugins in %s\n", path); /* recurse through looking for plugins */ --- 83,87 ---- struct ipbench_plugin *p; char *path = IPBENCH_PLUGIN_DIR; /* defined on the command line */ ! dbprintf("Finding plugins in %s\n", path); /* recurse through looking for plugins */ *************** *** 141,144 **** --- 145,173 ---- } + int start(void) + { + int sts = 0; + + sts = ipbench_plugin->start(&timer_start); + if (sts) + return ipbench_error(ipbench_RuntimeError, "start failed"); + + return 0; + } + + int stop(void) + { + int sts; + struct timeval timer_stop, timer_diff; + + sts = ipbench_plugin->stop(&timer_stop); + if (sts) + return ipbench_error(ipbench_RuntimeError, "stop failed"); + + timersub(&timer_stop, &timer_start, &timer_diff); + run_secs = timer_diff.tv_sec + timer_diff.tv_usec * 1e-6; + + return 0; + } #ifdef IPBENCH_TEST_CLIENT *************** *** 171,175 **** { int ret; ! dbprintf("[setup] : %s\n", clientargs); --- 200,204 ---- { int ret; ! dbprintf("[setup] : %s\n", clientargs); *************** *** 177,181 **** ret = ipbench_plugin->setup(clientargs); ! if (ret == -1) return ipbench_error(ipbench_RuntimeError, "Setup failed"); --- 206,210 ---- ret = ipbench_plugin->setup(clientargs); ! if (ret == -1) return ipbench_error(ipbench_RuntimeError, "Setup failed"); *************** *** 185,214 **** #endif - int start(void) - { - int sts; - - sts = ipbench_plugin->start(&timer_start); - if (sts) - return ipbench_error(ipbench_RuntimeError, "start failed"); - - } - - int stop(void) - { - int sts; - struct timeval timer_stop, timer_diff; - - sts = ipbench_plugin->stop(&timer_stop); - if (sts) - return ipbench_error(ipbench_RuntimeError, "stop failed"); - - timersub(&timer_stop, &timer_start, &timer_diff); - run_secs = timer_diff.tv_sec + timer_diff.tv_usec * 1e-6; - - return 0; - } - - /* This returns its data in marshalled_data, the size in marshall_data_size. * This is accessed from python as a vector (return value, data) --- 214,217 ---- Index: ipbench.i.in =================================================================== RCS file: /cvsroot/ipbench/ipbench2/src/pymod/ipbench.i.in,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** ipbench.i.in 5 May 2005 02:47:04 -0000 1.9 --- ipbench.i.in 28 Aug 2006 01:35:23 -0000 1.10 *************** *** 3,13 **** %module ipbench_[type] %{ #include "except.h" #include "plugin.h" extern struct ipbench_plugin *ipbench_plugin; - %} #define IPBENCH_TEST_[type] %include "exception.i" %include "typemaps.i" --- 3,47 ---- %module ipbench_[type] %{ + #include "except.h" #include "plugin.h" extern struct ipbench_plugin *ipbench_plugin; #define IPBENCH_TEST_[type] + extern int enable_debug(void); + + extern int get_default_port(void); + + #ifdef IPBENCH_TEST_client + extern int setup_controller(int, char*); + #elif defined IPBENCH_TEST_target + extern int setup_controller(char*); + #endif + + extern int load_plugin(const char *); + + #ifdef IPBENCH_TEST_client + extern int setup(char *, int, char *); + #elif defined IPBENCH_TEST_target + extern int setup(char *); + #endif + + extern int start(void); + + extern int stop(void); + + extern int marshall(void **marshalled_data, int *marshalled_data_size); + + #ifdef IPBENCH_TEST_client + extern int unmarshall(int, char *data, int len, int); + #elif defined IPBENCH_TEST_target + extern int unmarshall(char *data, int len, int); + #endif + + extern int output(void); + + %} + %include "exception.i" %include "typemaps.i" *************** *** 20,25 **** --- 54,63 ---- } + #define IPBENCH_TEST_[type] + extern int enable_debug(void); + extern int get_default_port(void); + #ifdef IPBENCH_TEST_client extern int setup_controller(int, char*); *************** *** 27,31 **** --- 65,71 ---- extern int setup_controller(char*); #endif + extern int load_plugin(const char *); + #ifdef IPBENCH_TEST_client extern int setup(char *, int, char *); *************** *** 33,40 **** --- 73,84 ---- extern int setup(char *); #endif + extern int start(void); + extern int stop(void); + %cstring_output_allocate_size(void **marshalled_data, int *marshalled_data_size, ipbench_plugin->marshall_cleanup($1)); extern int marshall(void **marshalled_data, int *marshalled_data_size); + %apply (char *STRING, int LENGTH) { (char *data, int len) }; #ifdef IPBENCH_TEST_client *************** *** 43,45 **** --- 87,90 ---- extern int unmarshall(char *data, int len, int); #endif + extern int output(void); \ No newline at end of file |
From: Ian W. <del...@us...> - 2006-08-28 01:35:27
|
Update of /cvsroot/ipbench/ipbench2 In directory sc8-pr-cvs2.sourceforge.net:/tmp/cvs-serv18172 Modified Files: ChangeLog Log Message: fix up a bunch of warnings Index: ChangeLog =================================================================== RCS file: /cvsroot/ipbench/ipbench2/ChangeLog,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** ChangeLog 8 Mar 2006 00:01:07 -0000 1.22 --- ChangeLog 28 Aug 2006 01:35:23 -0000 1.23 *************** *** 1,2 **** --- 1,8 ---- + 2006-08-28 Ian Wienand <ianw@localdomain> + + * src/pymod/ipbench.c: fix up some warnings + * src/pymod/ipbench.i.in: move around so that functions have + definitions, fixes a few warnings. + 2006-03-08 Peter Chubb <pe...@ge...> |
From: Ian W. <del...@us...> - 2006-08-28 00:49:47
|
Update of /cvsroot/ipbench/www In directory sc8-pr-cvs2.sourceforge.net:/tmp/cvs-serv559 Modified Files: index.html Log Message: update cvs address Index: index.html =================================================================== RCS file: /cvsroot/ipbench/www/index.html,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** index.html 7 Dec 2004 00:06:02 -0000 1.10 --- index.html 28 Aug 2006 00:48:58 -0000 1.11 *************** *** 90,95 **** Please grab the latest sources from CVS<br> <p><tt> ! cvs -d:pserver:ano...@cv...:/cvsroot/ipbench login<br> ! cvs -z3 -d:pserver:ano...@cv...:/cvsroot/ipbench co ipbench2 </tt></p> --- 90,95 ---- Please grab the latest sources from CVS<br> <p><tt> ! cvs -d:pserver:ano...@ip...:/cvsroot/ipbench login<br> ! cvs -z3 -d:pserver:ano...@ip...:/cvsroot/ipbench co ipbench2 </tt></p> |
From: Peter C. <pc...@us...> - 2006-03-08 01:32:18
|
Update of /cvsroot/ipbench/ipbench2/src/tests/nfs_latency In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13112/src/tests/nfs_latency Modified Files: nfs_latency.c Log Message: Change %lld to % PRIu64 for portability to 64-bit hosts Index: nfs_latency.c =================================================================== RCS file: /cvsroot/ipbench/ipbench2/src/tests/nfs_latency/nfs_latency.c,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** nfs_latency.c 14 Sep 2005 00:45:41 -0000 1.13 --- nfs_latency.c 8 Mar 2006 01:32:00 -0000 1.14 *************** *** 1,2 **** --- 1,3 ---- + #include <inttypes.h> #include "nfs_latency.h" #include "nfs_glue.h" *************** *** 427,441 **** avg_latency = average_uint64(aggregate, aggregate_count); ! printf("%lld,", (tot_requests*1000000) / avg_runtime); ! printf("%lld,", (tot_replies*1000000) / avg_runtime); ! printf("%lld,", aggregate[0]); ! printf("%lld,", avg_latency); ! printf("%lld,", aggregate[aggregate_count/2]); ! printf("%lld,", aggregate[aggregate_count-1]); ! printf("%lld,", aggregate_count); ! printf("%lld,", runtime[0]); ! printf("%lld,", avg_runtime); ! printf("%lld,", runtime[nelem/2]); ! printf("%lld", runtime[nelem-1]); printf("\n"); --- 428,442 ---- avg_latency = average_uint64(aggregate, aggregate_count); ! printf("%" PRIu64 ",", (tot_requests*1000000) / avg_runtime); ! printf("%" PRIu64 ",", (tot_replies*1000000) / avg_runtime); ! printf("%" PRIu64 ",", aggregate[0]); ! printf("%" PRIu64 ",", avg_latency); ! printf("%" PRIu64 ",", aggregate[aggregate_count/2]); ! printf("%" PRIu64 ",", aggregate[aggregate_count-1]); ! printf("%" PRIu64 ",", aggregate_count); ! printf("%" PRIu64 ",", runtime[0]); ! printf("%" PRIu64 ",", avg_runtime); ! printf("%" PRIu64 ",", runtime[nelem/2]); ! printf("%" PRIu64, runtime[nelem-1]); printf("\n"); |
From: Peter C. <pc...@us...> - 2006-03-08 00:01:13
|
Update of /cvsroot/ipbench/ipbench2 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1664 Modified Files: ChangeLog Log Message: New version; fixed installation problems Index: ChangeLog =================================================================== RCS file: /cvsroot/ipbench/ipbench2/ChangeLog,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** ChangeLog 7 Mar 2006 05:10:51 -0000 1.21 --- ChangeLog 8 Mar 2006 00:01:07 -0000 1.22 *************** *** 1,2 **** --- 1,8 ---- + 2006-03-08 Peter Chubb <pe...@ge...> + + * debian/ipbench-plugins.install: Don't install libraries as part + of this package; instead depend on libipbench package (which is + done automatically). + 2006-03-07 Ian Wienand <ia...@ge...> |
From: Peter C. <pc...@us...> - 2006-03-08 00:01:12
|
Update of /cvsroot/ipbench/ipbench2/debian In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1664/debian Modified Files: changelog ipbench-plugins.install Log Message: New version; fixed installation problems Index: ipbench-plugins.install =================================================================== RCS file: /cvsroot/ipbench/ipbench2/debian/ipbench-plugins.install,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** ipbench-plugins.install 22 Dec 2004 03:30:17 -0000 1.1 --- ipbench-plugins.install 8 Mar 2006 00:01:07 -0000 1.2 *************** *** 1,2 **** ! debian/tmp/usr/lib/libipbench.* ! debian/tmp/usr/lib/ipbench/* \ No newline at end of file --- 1 ---- ! debian/tmp/usr/lib/ipbench/* Index: changelog =================================================================== RCS file: /cvsroot/ipbench/ipbench2/debian/changelog,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** changelog 21 Dec 2004 05:06:30 -0000 1.2 --- changelog 8 Mar 2006 00:01:07 -0000 1.3 *************** *** 1,2 **** --- 1,11 ---- + ipbench (2.0.1-2) unstable; urgency=low + + * Port to AMD64 + * Add NFS benchmarks + * Various minor bugfixes + * Fix installation + + -- Peter Chubb <pe...@ge...> Wed, 8 Mar 2006 10:45:40 +1100 + ipbench (2.0.1-1) unstable; urgency=low |
From: Ian W. <del...@us...> - 2006-03-07 05:10:54
|
Update of /cvsroot/ipbench/ipbench2 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26026 Modified Files: ChangeLog Log Message: respect DESTDIR Index: ChangeLog =================================================================== RCS file: /cvsroot/ipbench/ipbench2/ChangeLog,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** ChangeLog 29 Jun 2005 01:39:21 -0000 1.20 --- ChangeLog 7 Mar 2006 05:10:51 -0000 1.21 *************** *** 1,2 **** --- 1,6 ---- + 2006-03-07 Ian Wienand <ia...@ge...> + + * src/pymod/Makefile.am : respect DESTDIR + 2005-06-29 Ian Wienand <ia...@ge...> |
From: Ian W. <del...@us...> - 2006-03-07 05:10:54
|
Update of /cvsroot/ipbench/ipbench2/src/pymod In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26026/src/pymod Modified Files: Makefile.am Log Message: respect DESTDIR Index: Makefile.am =================================================================== RCS file: /cvsroot/ipbench/ipbench2/src/pymod/Makefile.am,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** Makefile.am 29 Jun 2005 01:37:52 -0000 1.13 --- Makefile.am 7 Mar 2006 05:10:51 -0000 1.14 *************** *** 22,30 **** #the shared library install-exec-hook: ! $(mkinstalldirs) $(PYTHON_SITE_PKG) ! cd $(PYTHON_SITE_PKG) && rm -f _ipbench_client.so && $(LN_S) libipbenchClientPython.so _ipbench_client.so ! cp ipbench_client.py $(PYTHON_SITE_PKG) ! cd $(PYTHON_SITE_PKG) && rm -f _ipbench_target.so && $(LN_S) libipbenchTargetPython.so _ipbench_target.so ! cp ipbench_target.py $(PYTHON_SITE_PKG) ipbench_client.i: $(srcdir)/ipbench.i.in --- 22,30 ---- #the shared library install-exec-hook: ! $(mkinstalldirs) $(DESTDIR)$(pythondir) ! cd $(DESTDIR)$(pythondir) && rm -f _ipbench_client.so && $(LN_S) libipbenchClientPython.so _ipbench_client.so ! cp ipbench_client.py $(DESTDIR)/$(pythondir) ! cd $(DESTDIR)$(pythondir) && rm -f _ipbench_target.so && $(LN_S) libipbenchTargetPython.so _ipbench_target.so ! cp ipbench_target.py $(DESTDIR)/$(pythondir) ipbench_client.i: $(srcdir)/ipbench.i.in |
From: Ian W. <del...@us...> - 2006-03-07 05:10:36
|
Update of /cvsroot/ipbench/ipbench2/debian In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25905 Modified Files: control Log Message: fix commas in dependencies Index: control =================================================================== RCS file: /cvsroot/ipbench/ipbench2/debian/control,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** control 21 Dec 2004 05:57:53 -0000 1.5 --- control 7 Mar 2006 05:10:32 -0000 1.6 *************** *** 4,12 **** Maintainer: Ian Wienand <ia...@ge...> Standards-Version: 3.6.1 ! Build-Depends: debmake cdbs swig python-dev Package: ipbench-client Architecture: any ! Depends: ${shlibs:Depends} ipbench-plugins python python-xml Description: Client machine files for ipbench2 ipbench is a distributed networking suite with a variety of tests and --- 4,12 ---- Maintainer: Ian Wienand <ia...@ge...> Standards-Version: 3.6.1 ! Build-Depends: debmake, cdbs, swig, python-dev Package: ipbench-client Architecture: any ! Depends: ${shlibs:Depends}, ipbench-plugins, python, python-xml Description: Client machine files for ipbench2 ipbench is a distributed networking suite with a variety of tests and *************** *** 18,22 **** Package: ipbench-target Architecture: any ! Depends: ${shlibs:Depends} ipbench-plugins python python-xml Description: Target machine files for ipbench2 ipbench is a distributed networking suite with a variety of tests and --- 18,22 ---- Package: ipbench-target Architecture: any ! Depends: ${shlibs:Depends}, ipbench-plugins, python, python-xml Description: Target machine files for ipbench2 ipbench is a distributed networking suite with a variety of tests and |
From: Luke M. <lu...@us...> - 2005-09-14 02:39:53
|
Update of /cvsroot/ipbench/ipbench2/src/tests/nfs_latency In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16916 Modified Files: nfs_glue.c Log Message: re-structure to pre-generate workload during initialisation Index: nfs_glue.c =================================================================== RCS file: /cvsroot/ipbench/ipbench2/src/tests/nfs_latency/nfs_glue.c,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** nfs_glue.c 13 Sep 2005 04:04:15 -0000 1.5 --- nfs_glue.c 14 Sep 2005 02:39:45 -0000 1.6 *************** *** 22,96 **** static struct cookie nfs_file_handle; ! int resolve(char *name, struct sockaddr_in *sock){ ! struct hostent *hp; ! ! if((hp = gethostbyname(name))==NULL) ! return -1; ! ! memset(sock, 0, sizeof(struct sockaddr_in)); ! memcpy(&sock->sin_addr, hp->h_addr, hp->h_length); ! ! assert(hp->h_addrtype == PF_INET); ! ! sock->sin_family = PF_INET; ! sock->sin_port = htons(0); ! ! return 0; ! } ! ! static void ! open_cb(uintptr_t token, int status, struct cookie *fh, fattr_t *pattrs){ ! static int idem = 0; ! ! assert(idem==0); ! idem = 1; ! ! if(status==NFS_OK){ ! nfs_file_handle = *fh; ! initialised = 1; ! }else{ ! initialised = -1; ! } ! ! return; ! } ! ! int ! init_and_open(char *hostname, char *mountpoint, char *filename){ ! struct sockaddr_in addr; ! struct cookie pfh; ! ! microuptime_calibrate(); ! ! if(resolve(hostname, &addr) < 0){ ! printf("error resolving \"%s\"\n", hostname); ! exit(-1); ! } ! ! /* XXX these should be dynamically controlled */ ! callback_init(10,100000); ! ! map_init(&addr); ! mnt_init(&addr); ! nfs_init(&addr); ! ! mnt_get_export_list(); ! mnt_mount(mountpoint, &pfh); ! nfs_lookup(&pfh, filename, open_cb, 0); ! ! while(initialised==0){ ! struct pbuf buf; ! rpc_recv(&buf, nfs_fd, -1); ! } ! if(initialised < 0){ ! return -1; ! } ! return 0; ! } ! #define READ_OFFSET 0 ! #define READ_SIZE 1024 uint64_t last_sample = 0; --- 22,44 ---- static struct cookie nfs_file_handle; ! #define READ_OFFSET 0 ! #define READ_SIZE 1024 ! struct read_request{ ! struct pbuf pbuf; ! }; ! struct write_request{ ! struct pbuf pbuf; ! uint8_t data[READ_SIZE]; ! }; ! struct nfs_request{ ! void (*callback)(struct callback *c, struct pbuf *pbuf); ! union{ ! struct read_request r; ! struct write_request w; ! } *request; ! } *nfs_cache = NULL; uint64_t last_sample = 0; *************** *** 106,148 **** } - struct read_request{ - struct pbuf pbuf; - }; - /* * instead of using nfs_read(), we generate ourselves a read with a * special timing callback. */ ! static int ! generate_read_request(uint64_t timestamp){ ! static struct read_request *rr = NULL; ! struct callback c; ! ! if(rr==NULL){ ! /* initialise write request */ ! readargs_t args; ! rr = malloc(sizeof(struct read_request)); ! assert(rr!=NULL); ! /* set up buffer */ ! initbuf(&rr->pbuf, NFS_NUMBER, NFS_VERSION, NFSPROC_READ); ! args.file = nfs_file_handle; ! args.offset = READ_OFFSET; ! args.count = READ_SIZE; ! args.totalcount = 0; /* unused as per RFC */ ! addtobuf(&rr->pbuf, &args, sizeof(args), 1); ! }else{ ! /* just set a new xid */ ! reset_xid(rr->pbuf.buf); ! } ! /* set up callback */ ! c.func = read_callback; ! c.param.time.timestamp = timestamp; ! return rpc_send(&rr->pbuf, nfs_fd, &c); } --- 54,83 ---- } /* * instead of using nfs_read(), we generate ourselves a read with a * special timing callback. */ ! static struct nfs_request ! create_read_request(){ ! struct nfs_request rr; ! readargs_t args; ! /* initialise read request */ ! rr.request = malloc(sizeof(struct read_request)); ! assert(rr.request!=NULL); ! /* set up buffer */ ! initbuf(&rr.request->r.pbuf, NFS_NUMBER, NFS_VERSION, NFSPROC_READ); ! args.file = nfs_file_handle; ! args.offset = READ_OFFSET; ! args.count = READ_SIZE; ! args.totalcount = 0; /* unused as per RFC */ ! addtobuf(&rr.request->r.pbuf, &args, sizeof(args), 1); ! rr.callback = read_callback; ! return rr; } *************** *** 157,208 **** } - struct write_request{ - struct pbuf pbuf; - uint8_t data[READ_SIZE]; - }; - /* * instead of using nfs_write(), we generate ourselves a read with a * special timing callback. */ ! static int ! generate_write_request(uint64_t timestamp){ ! static struct write_request *wr = NULL; ! struct callback c; ! if(wr==NULL){ ! /* initialise write request */ ! int i; ! writeargs_t args; - wr = malloc(sizeof(struct write_request)); - assert(wr!=NULL); ! printf("generating write data...\n"); ! for(i=0; i<READ_SIZE; i++){ ! wr->data[i] = (uint8_t)(random() & 0xFF); ! } ! printf("generating write data done.\n"); ! /* set up buffer */ ! initbuf(&wr->pbuf, NFS_NUMBER, NFS_VERSION, NFSPROC_WRITE); ! args.file = nfs_file_handle; ! args.offset = READ_OFFSET; ! args.beginoffset = 0; /* unused as per RFC */ ! args.totalcount = 0; /* unused as per RFC */ ! addtobuf(&wr->pbuf, &args, sizeof(args), 1); ! adddata(&wr->pbuf, wr->data, READ_SIZE, 0); ! }else{ ! /* just set a new xid */ ! reset_xid(wr->pbuf.buf); ! } ! /* set up callback */ ! c.func = write_callback; ! c.param.time.timestamp = timestamp; ! return rpc_send(&wr->pbuf, nfs_fd, &c); } --- 92,144 ---- } /* * instead of using nfs_write(), we generate ourselves a read with a * special timing callback. */ ! static struct nfs_request ! create_write_request(){ ! struct nfs_request wr; ! int i; ! writeargs_t args; ! /* initialise write request */ ! wr.request = malloc(sizeof(struct write_request)); ! assert(wr.request!=NULL); ! printf("generating write data...\n"); ! for(i=0; i<READ_SIZE; i++){ ! wr.request->w.data[i] = (uint8_t)(random() & 0xFF); ! } ! printf("generating write data done.\n"); ! /* set up buffer */ ! initbuf(&wr.request->w.pbuf, NFS_NUMBER, NFS_VERSION, NFSPROC_WRITE); ! args.file = nfs_file_handle; ! args.offset = READ_OFFSET; ! args.beginoffset = 0; /* unused as per RFC */ ! args.totalcount = 0; /* unused as per RFC */ ! addtobuf(&wr.request->w.pbuf, &args, sizeof(args), 1); ! /* XXX why is data sticking around once encoded? */ ! adddata(&wr.request->w.pbuf, wr.request->w.data, READ_SIZE, 0); ! wr.callback = write_callback; ! return wr; ! } ! ! int ! initialise_cache(){ ! assert(nfs_cache==NULL); ! ! nfs_cache = malloc(sizeof(struct nfs_request)*2); ! assert(nfs_cache!=NULL); ! ! nfs_cache[0] = create_read_request(); ! nfs_cache[1] = create_write_request(); ! ! return 0; } *************** *** 212,228 **** int generate_request(uint64_t timestamp){ assert(initialised==1); ! //switch(random()&1){ ! switch(1){ ! case 0: ! return generate_read_request(timestamp); ! case 1: ! return generate_write_request(timestamp); ! } ! assert(!"should not get here\n"); ! return -1; } --- 148,168 ---- int generate_request(uint64_t timestamp){ + struct callback c; + int i; + assert(initialised==1); ! /* pick a random cache entry */ ! //i = 0; ! i = random()&1; ! /* set a new xid */ ! reset_xid(nfs_cache[i].request->r.pbuf.buf); ! /* set up callback */ ! c.func = nfs_cache[i].callback; ! c.param.time.timestamp = timestamp; ! ! return rpc_send(&nfs_cache[i].request->r.pbuf, nfs_fd, &c); } *************** *** 244,245 **** --- 184,256 ---- return 0; } + + int resolve(char *name, struct sockaddr_in *sock){ + struct hostent *hp; + + if((hp = gethostbyname(name))==NULL) + return -1; + + memset(sock, 0, sizeof(struct sockaddr_in)); + memcpy(&sock->sin_addr, hp->h_addr, hp->h_length); + + assert(hp->h_addrtype == PF_INET); + + sock->sin_family = PF_INET; + sock->sin_port = htons(0); + + return 0; + } + + static void + open_cb(uintptr_t token, int status, struct cookie *fh, fattr_t *pattrs){ + static int idem = 0; + + assert(idem==0); + idem = 1; + + if(status==NFS_OK){ + nfs_file_handle = *fh; + initialised = 1; + }else{ + initialised = -1; + } + + return; + } + + int + init_and_open(char *hostname, char *mountpoint, char *filename){ + struct sockaddr_in addr; + struct cookie pfh; + + microuptime_calibrate(); + + if(resolve(hostname, &addr) < 0){ + printf("error resolving \"%s\"\n", hostname); + exit(-1); + } + + /* XXX these should be dynamically controlled */ + callback_init(10,100000); + + map_init(&addr); + mnt_init(&addr); + nfs_init(&addr); + + mnt_get_export_list(); + mnt_mount(mountpoint, &pfh); + nfs_lookup(&pfh, filename, open_cb, 0); + + while(initialised==0){ + struct pbuf buf; + rpc_recv(&buf, nfs_fd, -1); + } + + if(initialised < 0){ + return -1; + } + + initialise_cache(); + + return 0; + } |
From: Luke M. <lu...@us...> - 2005-09-14 00:47:17
|
Update of /cvsroot/ipbench/ipbench2/src/tests/nfs_latency/libnfs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20293 Modified Files: callback.c Log Message: relax xid=last_xid+1 assertion Index: callback.c =================================================================== RCS file: /cvsroot/ipbench/ipbench2/src/tests/nfs_latency/libnfs/callback.c,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** callback.c 21 Jun 2005 02:57:38 -0000 1.1 --- callback.c 14 Sep 2005 00:47:09 -0000 1.2 *************** *** 46,50 **** if(xid != (last_xid+1)){ printf("xid=%d, last_xid=%d\n", xid, last_xid); ! assert(xid == (last_xid+1)); } } --- 46,50 ---- if(xid != (last_xid+1)){ printf("xid=%d, last_xid=%d\n", xid, last_xid); ! assert(xid > last_xid); } } |
From: Luke M. <lu...@us...> - 2005-09-14 00:45:54
|
Update of /cvsroot/ipbench/ipbench2/src/tests/nfs_latency In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20094 Modified Files: nfs_latency.c Log Message: Fix format specification Index: nfs_latency.c =================================================================== RCS file: /cvsroot/ipbench/ipbench2/src/tests/nfs_latency/nfs_latency.c,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** nfs_latency.c 13 Sep 2005 04:02:53 -0000 1.12 --- nfs_latency.c 14 Sep 2005 00:45:41 -0000 1.13 *************** *** 374,378 **** printf("Median latency,"); printf("Max latency,"); ! printf("Samples"); printf("Min runtime,"); printf("Average runtime,"); --- 374,378 ---- printf("Median latency,"); printf("Max latency,"); ! printf("Samples,"); printf("Min runtime,"); printf("Average runtime,"); |
From: Luke M. <lu...@us...> - 2005-09-13 04:05:19
|
Update of /cvsroot/ipbench/ipbench2/src/tests/nfs_latency/libnfs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4164/src/tests/nfs_latency/libnfs Modified Files: xdr.c xdr.h Log Message: add rest_xid function to re-write the xid of a request Index: xdr.h =================================================================== RCS file: /cvsroot/ipbench/ipbench2/src/tests/nfs_latency/libnfs/xdr.h,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** xdr.h 21 Jun 2005 02:57:38 -0000 1.1 --- xdr.h 13 Sep 2005 04:05:12 -0000 1.2 *************** *** 23,26 **** --- 23,27 ---- int extract_xid(char *data); + int reset_xid(char *data); #endif /* __XDR_H */ Index: xdr.c =================================================================== RCS file: /cvsroot/ipbench/ipbench2/src/tests/nfs_latency/libnfs/xdr.c,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** xdr.c 21 Jun 2005 02:57:38 -0000 1.1 --- xdr.c 13 Sep 2005 04:05:11 -0000 1.2 *************** *** 260,261 **** --- 260,271 ---- return ntohl(xid); } + + int + reset_xid(char *data) + { + int xid, tmp; + xid = get_xid(); + tmp = htonl(xid); + memcpy(data, &tmp, sizeof(int)); + return xid; + } |