summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2005-09-22Support for compiling and testing on pool via 'qdo' script.Steve Reinhardt
For this to work qdo must be on your path. I've copied it into /usr/local/bin on zizzer. build/SConstruct: Add BATCH and BATCH_CMD options to support compiling/testing on pool via qdo. --HG-- extra : convert_revision : b7fc46465e897f7f15ed4a67f6735886917a6c4b
2005-09-18Tweak the set of coalesced interruptsNathan Binkert
dev/ns_gige.cc: clean up usage of ISR_FOO macros dev/ns_gige_reg.h: Clean up #defines make ISR_RXIDLE and ISR_TXIDLE coalesced --HG-- extra : convert_revision : fd64fc6a441d096fc45737fdcb837de8868ca10a
2005-09-18fix the MAX_CHECKPOINTS stuffNathan Binkert
sim/serialize.cc: Make the max checkpoint thing actually stop after the last checkpoint --HG-- extra : convert_revision : 091179c4706e9876a9b7e826513c5c14ce6b72af
2005-09-17Totally re-work the way that jobfiles are done so there is moreNathan Binkert
information that can be used for other aspects of sending jobs. New graphing output stuff with matplotlib. util/pbs/job.py: Shuffle code around and create the JobDir class which encapsulates all of the functionality needed for making, organizing, and cleaning a job directory. Better status output util/pbs/jobfile.py: Majory re-working of the jobfile code. A job file now consists of several objects that describe how jobs should be run, it includes information about checkpoints, and graphing. util/pbs/send.py: use the new jobfile code. deal with the 15 character limit of pbs by truncating the name and using the raj hack. util/stats/db.py: fix the __str__ function for nodes provide __getitem__ for the Database class util/stats/stats.py: use the jobfile stuff to figure out what the proper naming and organziation of the graphs should be. move all output code to output.py, get rid of ploticus and use matplotlib --HG-- rename : util/categories.py => util/stats/categories.py extra : convert_revision : 0d793cbf6ad9492290e8ec875ce001c84095e1f7
2005-09-17Fix the EtherDump parametersNathan Binkert
dev/etherdump.cc: no default parameters anymore they should be in python python/m5/objects/Ethernet.py: move the maxlen parameter for EtherDump into python --HG-- extra : convert_revision : a796353a68907dfeb22059cd3ad536e6e8f60998
2005-09-17Simple option cleanup in the config files.Nathan Binkert
--HG-- extra : convert_revision : 50b9a1bf79705badabc6e0a6b4402e79997866e6
2005-09-16various changes to the boot scriptsNathan Binkert
configs/boot/iscsi-client.rcS: configs/boot/nfs-client-dbench.rcS: don't use the /proc/m5 stuff, use the m5 binary configs/boot/nfs-client-nhfsstone.rcS: set up checkpoints change nhfsstone configuration configs/boot/nfs-client.rcS: use more memory configs/boot/nfs-server.rcS: change the writeback frequency load a larger simulated disk image. create more nfsd threads --HG-- extra : convert_revision : 242dfd261d62782c06847d64b9f6aa06664a1ec9
2005-09-12only set an approriately sized piece of data. so break where appropriateAli Saidi
Again... how did this work? --HG-- extra : convert_revision : 06dcab4ac9f5760c9847d0fa47fea67c4a46544a
2005-09-12Merge zizzer:/bk/m5Ali Saidi
into zeep.eecs.umich.edu:/z/saidi/work/m5 --HG-- extra : convert_revision : 792c2993791fdce6170c7b875fc6510c74faae65
2005-09-12format string did not match variable size -> stack corruptionAli Saidi
--HG-- extra : convert_revision : b7c5aaa9d1f1242cfe337d6555e476f622a2aa6d
2005-09-12Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5Steve Reinhardt
into zizzer.eecs.umich.edu:/z/stever/bk/m5 --HG-- extra : convert_revision : 2d1c571b1507eb34b22f983d76ca48a7ca61c3b9
2005-09-12More minor tweaks for fenv/cygwin.Steve Reinhardt
build/SConstruct: No need to warn about regression failures w/o fenv.h anymore. --HG-- extra : convert_revision : f40efb849f4c3063ebb58f6e277473467916573d
2005-09-12Merge zizzer:/bk/m5Ali Saidi
into zeep.eecs.umich.edu:/z/saidi/work/m5 --HG-- extra : convert_revision : 3eff9b41fbf30ae0365adf05a71625c92ce1a4c0
2005-09-12fixes for gcc 4.0Ali Saidi
base/mysql.hh: include mysql_version to get rid of that annoying mysql error. make sure refcount is set in all constructors base/pollevent.hh: dev/ethertap.hh: dev/pciconfigall.hh: dev/tsunami_cchip.hh: dev/tsunami_io.hh: dev/tsunami_pchip.hh: sim/param.cc: fix for gcc 4 --HG-- extra : convert_revision : be626af2f40ca402818996ef27249ae256c63ef1
2005-09-11Explicitly handle rounding on FP-to-integer conversions.Steve Reinhardt
Seems to avoid the significant problems on platforms w/o fenv.h. arch/alpha/isa_desc: Explicitly handle rounding on FP-to-integer conversions. Seems to avoid the significant problems on platforms w/o fenv.h. Get rid of FP "Fast" vs "General" distinction... more headache than it's worth. arch/isa_parser.py: Fix bug with "%s" in C++ templates (must escape properly to pass through Python string interpolation). --HG-- extra : convert_revision : de964d764e67e0934ac0ef535f53c974640731fb
2005-09-05Regression tests now run under scons!Steve Reinhardt
For example, 'scons ALPHA_SE/test/opt/quick' will build ALPHA_SE/m5.opt if necessary and run all the self-identified "quick" tests on it. Other possibilities: - Run just test1: scons ALPHA_SE/test/opt/test1 - Run all tests: scons ALPHA_SE/test/opt - Run all tests on debug build: scons ALPHA_SE/test/debug - Update test1 reference outputs in m5-test: scons update_ref=y ALPHA_SE/test/opt/test1 The proper tests will be selected based on the setting of FULL_SYSTEM, ALPHA_TLASER, etc. README: Update directions to use scons-based test invocation. SConscript: Return list of generated build environments to SConstruct so it can associate tests with each of them. Set 'M5Binary' attribute on each env to record name of generated binary to be tested. build/SConstruct: - Support invoking m5-test tests via scons. - Add new non-sticky option category, for 'update_ref'. - Move existing "sticky" option definitions out of build_dir loop. Someday we can generate help text from these. - Make 'CC' and 'CXX' sticky options; use environment vars as defaults if available. - Make config builder more scons-y. python/m5/__init__.py: Make AddToPath() correctly handle relative path arguments. Assumes that sys.path[0] has the directory where the current Python file lives; new m5execfile() function sets this up properly for exec'd files. --HG-- extra : convert_revision : 48896688592e210d8e63f96c34e57474853d0e66
2005-09-02Fixes to build with gcc 4.0.Steve Reinhardt
sim/param.hh: Add "template<>" to explicit template specialization. --HG-- extra : convert_revision : 05e2f4ad8141a8782fe09a0b6824baf56c9fc957
2005-09-02Force Unix EOL even on Windows (i.e. Cygwin).Steve Reinhardt
--HG-- extra : convert_revision : 0aa171dc79c4d06d45e28d2907c7eb6d6fde433e
2005-09-02Get rid of non-essential default-valued options.Steve Reinhardt
This lets SConstruct set things like USE_MYSQL based on the host w/o complaining. build/build_options/ALPHA_FS_TL: build/build_options/ALPHA_FS: build/build_options/ALPHA_SE: Get rid of non-essential default-valued options. --HG-- extra : convert_revision : 96308897d2b9269dbefffa6d50ac491379444030
2005-09-02Bug fix: can't increment an iterator after you eraseSteve Reinhardt
the thing it points to. Somehow Linux doesn't care, but Cygwin sure does. --HG-- extra : convert_revision : 1209a75831f080f17a95433e546d7074f9f07332
2005-09-01Fix to #define True/False option values as 0/1 in header.Steve Reinhardt
--HG-- extra : convert_revision : 7fbae4816a4d0a5ed942e0ad8afed9464dd1ba11
2005-09-01Convert type of max_time and progress_interval parametersSteve Reinhardt
from Latency to Tick, and rename max_time to max_tick. python/m5/objects/Root.py: sim/root.cc: Convert type of max_time and progress_interval from Latency to Tick, and rename max_time to max_tick. --HG-- extra : convert_revision : 2f2aacf6321c3003a0ce834acd8fb726abf27ce3
2005-08-31more scons fixes for mysqlNathan Binkert
build/SConstruct: Only the major and minor mysql version numbers are guaranteed to be integers (e.g. 4.1.10a), and since that's all we care about only try to deal with those. for older versions of mysql, the strings returned by mysql_config may have quotes in them, remove those so things work --HG-- extra : convert_revision : de32f3e76618f0caf4d5578edd61beaeef666eb6
2005-08-31Move options files from <build_dir>/build_options to build_options/<build_dir>.Steve Reinhardt
build/SConstruct: Move options file from <build_dir>/build_options to build_options/<build_dir>. --HG-- extra : convert_revision : 0363f79ef5c9c157d9018fcae9c5e055e38e552d
2005-08-30Add script to generate new build directories.Steve Reinhardt
--HG-- extra : convert_revision : 2d2455ced5b33476bf88483c81ddf447a0658be2
2005-08-30Fix to work with older versions of mysql_config that don't support --include.Steve Reinhardt
Also add mysql version check. --HG-- extra : convert_revision : 36b6174ed1c64e8c5516f6adee71f27e068ceca2
2005-08-30Build options are set via a build_options file in theSteve Reinhardt
build directory instead of being inferred from the name of the build directory. Options are passed to C++ via config/*.hh files instead of via the command line. Build option flags are now always defined to 0 or 1, so checks must use '#if' rather than '#ifdef'. SConscript: MySQL detection moved to SConstruct. Add config/*.hh files (via ConfigFile builder). arch/alpha/alpha_memory.cc: arch/alpha/ev5.cc: arch/alpha/ev5.hh: arch/alpha/isa_traits.hh: base/fast_alloc.hh: base/statistics.cc: base/statistics.hh: base/stats/events.cc: base/stats/events.hh: cpu/base.cc: cpu/base.hh: cpu/base_dyn_inst.cc: cpu/base_dyn_inst.hh: cpu/exec_context.cc: cpu/exec_context.hh: cpu/o3/alpha_cpu.hh: cpu/o3/alpha_cpu_builder.cc: cpu/o3/alpha_cpu_impl.hh: cpu/o3/alpha_dyn_inst.hh: cpu/o3/alpha_dyn_inst_impl.hh: cpu/o3/alpha_params.hh: cpu/o3/commit_impl.hh: cpu/o3/cpu.cc: cpu/o3/cpu.hh: cpu/o3/fetch_impl.hh: cpu/o3/iew.hh: cpu/o3/iew_impl.hh: cpu/o3/regfile.hh: cpu/o3/rename_impl.hh: cpu/o3/rob_impl.hh: cpu/ozone/cpu.hh: cpu/pc_event.cc: cpu/simple/cpu.cc: cpu/simple/cpu.hh: sim/process.cc: sim/process.hh: Convert compile flags from def/undef to 0/1. Set via #include config/*.hh instead of command line. arch/alpha/isa_desc: Convert compile flags from def/undef to 0/1. Set via #include config/*.hh instead of command line. Revamp fenv.h support... most of the ugliness is hidden in base/fenv.hh now. base/mysql.hh: Fix typo in #ifndef guard. build/SConstruct: Build options are set via a build_options file in the build directory instead of being inferred from the name of the build directory. Options are passed to C++ via config/*.hh files instead of via the command line. python/SConscript: Generate m5_build_env directly from scons options instead of indirectly via CPPDEFINES. python/m5/convert.py: Allow '0' and '1' for booleans. Rewrite toBool to use dict. base/fenv.hh: Revamp <fenv.h> support to make it a compile option (so we can test w/o it even if it's present) and to make isa_desc cleaner. --HG-- extra : convert_revision : 8f97dc11185bef5e1865b3269c7341df8525c9ad
2005-08-26Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5Steve Reinhardt
into zizzer.eecs.umich.edu:/z/stever/bk/m5 --HG-- extra : convert_revision : dc9d0dc344389063f7b2026bd7cf737bdab3ee8b
2005-08-26Add explicit check for Python version to SConstruct.Steve Reinhardt
build/SConstruct: Add explicit check for Python version. --HG-- extra : convert_revision : 19ee788f72d63eb301e4be4c0c5729a5025c379f
2005-08-23better debugging of the configuration builder.Nathan Binkert
--HG-- extra : convert_revision : 9c51937e8bcc1ff93e24bd507d662fd50b5de6a0
2005-08-23Clean up the passing of the boot command line to the kernel.Nathan Binkert
kern/linux/linux_system.cc: Don't hard code the address of the command line in the kernel, instead, deduce it from the location of known symbols. don't use strcpy, it's dangerous. kern/linux/linux_system.hh: Don't hard code the address of the command line in the kernel, instead, deduce it from the location of known symbols. --HG-- extra : convert_revision : 128b1d5dbd00b0b8571707da99f86f76e29abfd1
2005-08-23Lots of fixes to serialization and naming of various deviceNathan Binkert
objects. The improper serialization of arrays was particularly bad. dev/alpha_console.cc: dev/isa_fake.cc: dev/ns_gige.cc: dev/pciconfigall.cc: dev/tsunami_cchip.cc: dev/tsunami_io.cc: dev/tsunami_pchip.cc: the pio interface is a different simobject and should have a different name. dev/ethertap.cc: fix serialization. dev/ide_ctrl.cc: - the pio interface is a different simobject and should have a different name. - properly initialize variables - When serializing an array, the size is the number of elements, not the number of bytes! dev/pcidev.cc: When serializing an array, the size is the number of elements, not the number of bytes! dev/tsunami_io.hh: Don't make objects SimObjects if they're not exposed to python. Don't add serialization functions to events, it's generally not what you want. allow the real time clock and interval timer to serialize themselves, must pass a base name since it is not a SimObject and the values will be going into the section of the parent. --HG-- extra : convert_revision : 3fc5de9b858ed770c8f385cf38b53242cf859c33
2005-08-23don't use sprintf. It's not guaranteed to not scribble over memory.Nathan Binkert
base/remote_gdb.cc: use snprintf, it's safer dev/ide_disk.cc: use strncpy instead of snprintf --HG-- extra : convert_revision : 90455e3f6bcb4c771724298a5a0b79a5b483a85c
2005-08-19A few minor fixes to get things to build on Cygwin.Steve Reinhardt
README: Clarify cygwin EIO error explanation. build/SConstruct: Cygwin header files cause uninitialized var warnings. dev/ide_ctrl.cc: Get rid of unnecessary byte-swap calls, some of which were too ambiguous for cygwin (or gcc 3.4.4). dev/pcidev.cc: Disambiguate arg for overloaded byte swap operation (and fix it to be the correct one). --HG-- extra : convert_revision : be37c6315aacbec6332b1d09e726b39b4aa18dce
2005-08-19Minor tweaks for 1.1 release.Steve Reinhardt
README: Updated for release 1.1. Clarified several minor things (I hope). --HG-- extra : convert_revision : a088f670739d33765611ce413b96854a1b51bb0f
2005-08-18Fix another bug from the freebsd mergeNathan Binkert
--HG-- extra : convert_revision : b153b0c12b6678df148839617954a9a4c6fec7d4
2005-08-18Fix a couple of turbolaser problems that were introduced by theNathan Binkert
new freebsd code. dev/ns_gige.cc: g++ doesn't like it when you declare a variable inside a case label. Pull the declaration outside. --HG-- extra : convert_revision : d39e84fc58f2dd5b09c5948eedb4b1d7848e9817
2005-08-16Clean up freebsd_system.cc.Benjamin Nash
kern/freebsd/freebsd_system.cc: Use htog instead of htoa. --HG-- extra : convert_revision : 09224d60ce5bb3827c9f046127ff6fc72fa008d6
2005-08-16Merge zed.eecs.umich.edu:/.automount/fox/y/mserrano/m5_dir/m5Benjamin Nash
into zed.eecs.umich.edu:/z/benash/bk/m5 --HG-- extra : convert_revision : 9b7ca872187a13179118ad0651301d531332dc63
2005-08-16Uart fix.Miguel Serrano
dev/uart8250.cc: Fixed implementation of "transmit interrupt clear". --HG-- extra : convert_revision : cb69d61413ea799d5d3825fe2f0891dd72995561
2005-08-16Merge m5.eecs.umich.edu:/bk/m5Benjamin Nash
into zed.eecs.umich.edu:/z/benash/bk/m5 --HG-- extra : convert_revision : 36bb126381caf84d85a566579225b02c15f8f356
2005-08-16Updates to job scripts to accept more than 15 characters of jobnameNathan Binkert
Make the Link directory even more useful by working with sub-directories. util/pbs/job.py: Expose JOBNAME as a separate parameter from PBS_JOBNAME. If the former exists, it is used as the jobname for starting the job, if it doesn't exist, PBS_JOBNAME is used. This is to get around the 15 character maximum pbs job name length. While we're at it, shuffle things around to hopefully make things a bit more clear. util/pbs/send.py: Make the Link directory functionality more sophisticated, copy sub-directories and links to directories. (we still don't copy dotfiles though) Add the setname() function to contact pbs and use raj's hack to tell the webpage about longer jobnames. (it's gross, don't look) truncate the pbs job name to 15 characters so that it works. --HG-- extra : convert_revision : 4a76b1a1c33721c7ca93e2fbb761f95bc3a2ac69
2005-08-15Merge zed.eecs.umich.edu:/.automount/fox/y/mserrano/m5_dir/m5Benjamin Nash
into zed.eecs.umich.edu:/z/benash/bk/m5 dev/ide_ctrl.cc: dev/ide_ctrl.hh: dev/ide_disk.cc: dev/ide_disk.hh: dev/ns_gige.cc: dev/pciconfigall.cc: dev/pcidev.cc: dev/rtcreg.h: dev/tsunami_io.cc: dev/tsunami_io.hh: dev/uart8250.cc: dev/uart8250.hh: python/m5/objects/Tsunami.py: Merge code. --HG-- extra : convert_revision : e97d5dbcc051d2061622201265430d359f995d48
2005-08-15Changes for getting FreeBSD to run.Miguel Serrano
SConscript: Added more files to compile: dev/pcifake.cc, dev/isa_fake.cc, kern/freebsd/freebsd_system.cc, kern/freebsd/freebsd_events.cc. arch/alpha/isa_traits.hh: Added constant for argument register 2 as it is needed by FreebsdSystem::doCalibrateClocks(). cpu/exec_context.hh: cpu/o3/alpha_cpu.hh: Replaced htoa()s with gtoh() and htog(). cpu/o3/fetch_impl.hh: cpu/simple/cpu.cc: Replaced htoa() with gtoh(). dev/disk_image.cc: Replaced htoa()s with letoh()s. dev/ide_ctrl.cc: Got rid of magic numbers. Added IdeChannel and IdeRegType type names where necessary. dev/ide_ctrl.hh: Got rid of unnecessary macros. Changed RegType_t to IdeRegType. Changed bmi_regs to allow accessing registers by name instead of just by array index. Added IdeChannel enum type to use in place of bool variables which were used to specify IDE channel. dev/ide_disk.cc: Rewrote IdeDisk::read and IdeDisk::write functions to specify registers by name instead of indexing through an array. dev/ide_disk.hh: Updated command register struct. dev/ns_gige.cc: dev/ns_gige.hh: Made ReadConfig and WriteConfig begin with a lower-case letter. writeConfig() now takes a pointer to data as a parameter instead of a copy of data. dev/pciconfigall.cc: writeConfig() now takes a pointer to data as a parameter instead of a copy of data. dev/pcidev.cc: Cleaned up readConfig() and writeConfig() functions. dev/pcidev.hh: Added macros to make code that works with the BARs (base adress registers) more readable. writeConfig() now takes a pointer to data. dev/pcireg.h: Changed PCIConfig struct to make accessing elements more straight forward. Removed type 1 (for PCI-to-PCI bridges) PCI configuration space struct since it is not used. dev/rtcreg.h: Added macros for bit fields in RTC status registers A & B. dev/sinic.cc: Function name change: WriteConfig --> writeConfig. writeConfig() now takes a pointer to data instead of a copy of data. The accessing of elements of PCIConfig structure is updated. dev/sinic.hh: Function name change: WriteConfig --> writeConfig. writeConfig() now takes a pointer to data instead of a copy of data. dev/tsunami_io.cc: Added implementation of new RTC and PIT classes. dev/tsunami_io.hh: Added classes for RTC and PIT modules. dev/tsunamireg.h: Added macros for DMA ports used by Tsunami-Tru64. dev/uart8250.cc: Got rid of a magic number. Transmit (Tx) interrupts should clear upon a read of the Interrupt ID register. dev/uart8250.hh: Added comments and macros dealing with the UART Interrupt ID register. kern/linux/linux_system.cc: Replaced htoa() with htog(). python/m5/objects/Pci.py: PciFake is a python class for Pci Devices that do nothing. python/m5/objects/Tsunami.py: TsunamiFake was renamed as IsaFake. sim/system.cc: Replaced htoa()s with htog()s. dev/isa_fake.cc: New BitKeeper file ``dev/isa_fake.cc'' TsunamiFake was renamed as IsaFake. dev/isa_fake.hh: New BitKeeper file ``dev/isa_fake.hh'' TsunmaiFake was renamed as IsaFake. dev/pitreg.h: New BitKeeper file ``dev/pitreg.h'' Useful macros for working with PIT (Periodic Interval Timer) registers. --HG-- extra : convert_revision : 33f3a8a1034af4f6c71b32dd743e371c8613e780
2005-08-15Fix NextEthernetAddrNathan Binkert
python/m5/config.py: NextEthernetAddr shouldnt' be a Singleton since we want __init__ to be called more than once. Make the EthernetAddr class a "proxy" so that unproxy will be called and NextEthernetAddr will generally work correctly. --HG-- extra : convert_revision : c89bf268e805e202ae71030fcea4833867c7e477
2005-08-12Improve FreeBSD networking support.Benjamin Nash
dev/ns_gige.cc: Added FreeBSD support. Required additional register read/write functionality, hash filtering (faked), and EEPROM read access. dev/ns_gige.hh: Added constants and variables for FreeBSD support. Also created eepromKick() to advance state machine. dev/ns_gige_reg.h: Defined additional register bit fields. dev/pcidev.cc: Fix &= typo. dev/sinic.cc: Remove an INIT_PARAM_DFLT macro. dev/tsunami_io.cc: Fix DPRINTF typo. kern/freebsd/freebsd_system.cc: Edit comments. --HG-- extra : convert_revision : 37aaa1303d57d3784381e85acb3bc1743adeb8c0
2005-07-28Merge zed.eecs.umich.edu:/.automount/fox/y/mserrano/m5_new/m5Benjamin Nash
into zed.eecs.umich.edu:/z/benash/bk/m5 SConscript: dev/ide_disk.hh: Formatting. dev/ide_ctrl.cc: Endianness dev/ide_disk.cc: dev/pcidev.cc: dev/tsunami_io.cc: dev/uart8250.cc: Clean up code. --HG-- extra : convert_revision : cb554f0e3a701371d2106cd7e11a4a22f773acc2
2005-07-28.Miguel Serrano
SConscript: add pcifake dev/ide_ctrl.cc: dev/ide_ctrl.hh: dev/ide_disk.cc: dev/ide_disk.hh: endianess dev/tsunami_io.cc: rtc, date/time --HG-- extra : convert_revision : 21ad27c780749cb6f6eef2b57798c0c292c3f14d
2005-07-28ghgfsdfMiguel Serrano
dev/pciconfigall.cc: removed union. dev/pcidev.cc: . dev/rtcreg.h: more macros to avoid magic numbers. dev/tsunami_io.cc: replaced magic numbers, no more advancing RTC as it isn't reaaly necessary. dev/tsunami_io.hh: removed declarations of things that go unused. dev/uart8250.cc: reading the Interrupt ID register should clear TX interrupt flag. dev/uart8250.hh: useful #defines. kern/freebsd/freebsd_system.cc: kern/freebsd/freebsd_system.hh: nothing. python/m5/objects/Pci.py: new PciFake. --HG-- extra : convert_revision : 88259704f5b215591d1416360180810fcda14d26
2005-07-26Merge m5read@m5.eecs.umich.edu:/bk/m5Benjamin Nash
into zed.eecs.umich.edu:/z/benash/bk/m5 --HG-- extra : convert_revision : 5cfec85dbfc33b942929e6d379275618f2c60c33