On Tue, Mar 29, 2011 at 10:34 AM, Korey Sewell <[email protected]> wrote:
> Good point about regression carefulness Gabe.
>
> Although I'm pretty sure I compiled MIPS before I committed this, I
> had forgot I touched other ISAs and obviously broke one of them.
> That's just an error on my part.
>
> This brings up a few issues:
> - Should the regressions be more resilient? In other words, if POWER
> doesnt compile shouldnt the regressions still *try* for whatever CPU
> model and ISA combinations it does compile for? (i'll add that to the
> regression wants page)

They already do... note that everything else passed.

> - It would be nice to somehow be able to localize the regression tests
> you need to run after making changes. There's about 5 ISAs (?), 4 CPU
> models , FS/SE mode, so if you make a particular change, sometimes its
> unwieldy (albeit still necessary) to run every single test. Is there
> an easy way to test just "what matters"?

There isn't (and it's already on the wish list), but it seems that's
actually part of the problem here: some things broke that you didn't
think you had affected.  OTOH, if you're talking about having the
system automatically detect what needs to be run, it already does that
(to some extent) by being built into scons... it will only compile the
binaries and run the tests that depend on files that have changed,
modulo scons bugs.

>
> - Lastly, An overkill thing would be to have a "buffer-repo" sitting
> between users' local repo and m5-dev. Then, nightly before the
> regressions, you could conceivably test to make sure that builds (or
> whatever other sanity check) and *then* check-in changesets to the
> dev-repo after the initial 1st pass. This would ensure that any pulls
> from m5-dev would always be compilable at the very least.

That's why we have m5-stable, basically.

Steve

>
>
> On Tue, Mar 29, 2011 at 1:21 PM, Gabe Black <[email protected]> wrote:
>> Compilation of POWER was broken by this change when the closing bracket
>> for a namespace was removed:
>>
>> changeset:   8181:f789b9aac5f4
>> user:        Korey Sewell <[email protected]>
>> date:        Sat Mar 26 09:23:52 2011 -0400
>> summary:     mips: cleanup ISA-specific code
>>
>> Compilation was unavoidably broken, and that means this code was not
>> compiled before being checked in. According to the logs, three of the
>> last four commits were to fix outdated regression output, broken
>> configuration scripts, and broken compilation, all of which could have
>> been detected before hand.
>>
>> We all have to be more careful. When was the last time someone could
>> download the dev repository and actually run everything successfully?
>> How many people downloaded a broken version of M5 in that time? As the
>> number of committers increases, it becomes more and more important to
>> push clean changes. If 100 people each break the simulator 1% of the
>> time, the simulator will be broken most of the time.
>>
>> It's also important to keep an eye on the regression output after you
>> push something and investigate any failures you see. I don't want to be
>> the regression police.
>>
>> Gabe
>>
>> On 03/29/11 03:50, Cron Daemon wrote:
>>> scons: *** [build/POWER_SE/kern/linux/linux.fo] Error 1
>>> scons: *** [build/POWER_SE/arch/power/insts/branch.fo] Error 1
>>> scons: *** [build/POWER_SE/arch/power/insts/mem.fo] Error 1
>>> scons: *** [build/POWER_SE/arch/power/insts/integer.fo] Error 1
>>> scons: *** [build/POWER_SE/arch/power/insts/floating.fo] Error 1
>>> scons: *** [build/POWER_SE/arch/power/insts/condition.fo] Error 1
>>> scons: *** [build/POWER_SE/arch/power/insts/static_inst.fo] Error 1
>>> scons: *** [build/POWER_SE/arch/power/pagetable.fo] Error 1
>>> scons: *** [build/POWER_SE/arch/power/tlb.fo] Error 1
>>> scons: *** [build/POWER_SE/arch/power/utility.fo] Error 1
>>> scons: *** [build/POWER_SE/arch/power/process.fo] Error 1
>>> scons: *** [build/POWER_SE/arch/power/linux/process.fo] Error 1
>>> scons: *** [build/POWER_SE/arch/power/decoder.fo] Error 1
>>> scons: *** [build/POWER_SE/arch/power/atomic_simple_cpu_exec.fo] Error 1
>>> scons: *** [build/POWER_SE/arch/power/o3_cpu_exec.fo] Error 1
>>> scons: *** [build/POWER_SE/arch/power/timing_simple_cpu_exec.fo] Error 1
>>> scons: *** [build/POWER_SE/sim/faults.fo] Error 1
>>> scons: *** [build/POWER_SE/sim/stat_control.fo] Error 1
>>> scons: *** [build/POWER_SE/sim/pseudo_inst.fo] Error 1
>>> scons: *** [build/POWER_SE/sim/system.fo] Error 1
>>> scons: *** [build/POWER_SE/sim/tlb.fo] Error 1
>>> scons: *** [build/POWER_SE/sim/syscall_emul.fo] Error 1
>>> scons: *** [build/POWER_SE/sim/process.fo] Error 1
>>> scons: *** [build/POWER_SE/mem/physical.fo] Error 1
>>> scons: *** [build/POWER_SE/mem/page_table.fo] Error 1
>>> scons: *** [build/POWER_SE/mem/translating_port.fo] Error 1
>>> scons: *** [build/POWER_SE/mem/cache/base.fo] Error 1
>>> scons: *** [build/POWER_SE/mem/cache/prefetch/base.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/base.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/exetrace.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/inteltrace.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/nativetrace.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/pc_event.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/quiesce_event.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/static_inst.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/simple_thread.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/thread_context.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/thread_state.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/simple/atomic.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/simple/base.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/simple/timing.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/bpred_unit.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/commit.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/base_dyn_inst.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/cpu.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/cpu_builder.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/decode.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/fetch.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/free_list.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/dyn_inst.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/iew.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/inst_queue.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/lsq.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/lsq_unit.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/mem_dep_unit.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/rename.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/rename_map.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/scoreboard.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/rob.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/o3/thread_context.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/pred/ras.fo] Error 1
>>> scons: *** [build/POWER_SE/cpu/pred/btb.fo] Error 1
>>> scons: *** [build/POWER_SE/base/remote_gdb.fo] Error 1
>>> ***** build/ALPHA_SE/tests/fast/quick/00.hello/alpha/linux/simple-atomic 
>>> passed.
>>> ***** build/ALPHA_SE/tests/fast/quick/00.hello/alpha/linux/simple-timing 
>>> passed.
>>> ***** build/ALPHA_SE/tests/fast/quick/30.eio-mp/alpha/eio/simple-timing-mp 
>>> passed.
>>> ***** build/ALPHA_SE/tests/fast/quick/01.hello-2T-smt/alpha/linux/o3-timing 
>>> passed.
>>> ***** build/ALPHA_SE/tests/fast/quick/20.eio-short/alpha/eio/simple-atomic 
>>> passed.
>>> ***** build/ALPHA_SE/tests/fast/quick/20.eio-short/alpha/eio/simple-timing 
>>> passed.
>>> ***** build/ALPHA_SE/tests/fast/quick/30.eio-mp/alpha/eio/simple-atomic-mp 
>>> passed.
>>> ***** build/ALPHA_SE/tests/fast/quick/00.hello/alpha/tru64/simple-timing 
>>> passed.
>>> ***** build/ALPHA_SE/tests/fast/quick/00.hello/alpha/tru64/o3-timing passed.
>>> ***** build/ALPHA_SE/tests/fast/quick/00.hello/alpha/tru64/simple-atomic 
>>> passed.
>>> ***** 
>>> build/ALPHA_SE/tests/fast/quick/00.hello/alpha/tru64/simple-timing-ruby 
>>> passed.
>>> ***** build/ALPHA_SE/tests/fast/quick/60.rubytest/alpha/linux/rubytest-ruby 
>>> passed.
>>> ***** 
>>> build/ALPHA_SE/tests/fast/quick/00.hello/alpha/linux/simple-timing-ruby 
>>> passed.
>>> ***** build/ALPHA_SE/tests/fast/quick/00.hello/alpha/linux/o3-timing passed.
>>> ***** build/ALPHA_SE/tests/fast/quick/00.hello/alpha/linux/inorder-timing 
>>> passed.
>>> ***** build/ALPHA_SE/tests/fast/quick/50.memtest/alpha/linux/memtest-ruby 
>>> passed.
>>> ***** 
>>> build/ALPHA_SE_MOESI_hammer/tests/fast/quick/60.rubytest/alpha/linux/rubytest-ruby-MOESI_hammer
>>>  passed.
>>> ***** 
>>> build/ALPHA_SE_MOESI_hammer/tests/fast/quick/00.hello/alpha/tru64/simple-timing-ruby-MOESI_hammer
>>>  passed.
>>> ***** 
>>> build/ALPHA_SE_MOESI_hammer/tests/fast/quick/00.hello/alpha/linux/simple-timing-ruby-MOESI_hammer
>>>  passed.
>>> ***** build/ALPHA_SE/tests/fast/quick/50.memtest/alpha/linux/memtest passed.
>>> ***** 
>>> build/ALPHA_SE_MESI_CMP_directory/tests/fast/quick/60.rubytest/alpha/linux/rubytest-ruby-MESI_CMP_directory
>>>  passed.
>>> ***** 
>>> build/ALPHA_SE_MESI_CMP_directory/tests/fast/quick/00.hello/alpha/tru64/simple-timing-ruby-MESI_CMP_directory
>>>  passed.
>>> ***** 
>>> build/ALPHA_SE_MESI_CMP_directory/tests/fast/quick/00.hello/alpha/linux/simple-timing-ruby-MESI_CMP_directory
>>>  passed.
>>> ***** 
>>> build/ALPHA_SE_MOESI_hammer/tests/fast/quick/50.memtest/alpha/linux/memtest-ruby-MOESI_hammer
>>>  passed.
>>> ***** 
>>> build/ALPHA_SE_MOESI_CMP_directory/tests/fast/quick/00.hello/alpha/tru64/simple-timing-ruby-MOESI_CMP_directory
>>>  passed.
>>> ***** 
>>> build/ALPHA_SE_MOESI_CMP_directory/tests/fast/quick/60.rubytest/alpha/linux/rubytest-ruby-MOESI_CMP_directory
>>>  passed.
>>> ***** 
>>> build/ALPHA_SE_MOESI_CMP_directory/tests/fast/quick/00.hello/alpha/linux/simple-timing-ruby-MOESI_CMP_directory
>>>  passed.
>>> ***** 
>>> build/ALPHA_SE_MOESI_CMP_token/tests/fast/quick/60.rubytest/alpha/linux/rubytest-ruby-MOESI_CMP_token
>>>  passed.
>>> ***** 
>>> build/ALPHA_SE_MOESI_CMP_token/tests/fast/quick/00.hello/alpha/tru64/simple-timing-ruby-MOESI_CMP_token
>>>  passed.
>>> ***** 
>>> build/ALPHA_SE_MOESI_CMP_token/tests/fast/quick/00.hello/alpha/linux/simple-timing-ruby-MOESI_CMP_token
>>>  passed.
>>> ***** 
>>> build/ALPHA_SE_MESI_CMP_directory/tests/fast/quick/50.memtest/alpha/linux/memtest-ruby-MESI_CMP_directory
>>>  passed.
>>> ***** 
>>> build/ALPHA_FS/tests/fast/quick/10.linux-boot/alpha/linux/tsunami-simple-atomic-dual
>>>  passed.
>>> ***** 
>>> build/ALPHA_FS/tests/fast/quick/10.linux-boot/alpha/linux/tsunami-simple-timing
>>>  passed.
>>> ***** 
>>> build/ALPHA_FS/tests/fast/quick/10.linux-boot/alpha/linux/tsunami-simple-atomic
>>>  passed.
>>> ***** 
>>> build/ALPHA_FS/tests/fast/quick/10.linux-boot/alpha/linux/tsunami-simple-timing-dual
>>>  passed.
>>> ***** 
>>> build/ALPHA_FS/tests/fast/quick/80.netperf-stream/alpha/linux/twosys-tsunami-simple-atomic
>>>  passed.
>>> ***** build/MIPS_SE/tests/fast/quick/00.hello/mips/linux/o3-timing passed.
>>> ***** build/MIPS_SE/tests/fast/quick/00.hello/mips/linux/simple-atomic 
>>> passed.
>>> ***** build/MIPS_SE/tests/fast/quick/00.hello/mips/linux/simple-timing 
>>> passed.
>>> ***** build/MIPS_SE/tests/fast/quick/00.hello/mips/linux/simple-timing-ruby 
>>> passed.
>>> ***** build/MIPS_SE/tests/fast/quick/00.hello/mips/linux/inorder-timing 
>>> passed.
>>> ***** 
>>> build/ALPHA_SE_MOESI_CMP_token/tests/fast/quick/50.memtest/alpha/linux/memtest-ruby-MOESI_CMP_token
>>>  passed.
>>> ***** 
>>> build/ALPHA_SE_MOESI_CMP_directory/tests/fast/quick/50.memtest/alpha/linux/memtest-ruby-MOESI_CMP_directory
>>>  passed.
>>> ***** 
>>> build/SPARC_SE/tests/fast/quick/40.m5threads-test-atomic/sparc/linux/simple-atomic-mp
>>>  passed.
>>> ***** build/SPARC_SE/tests/fast/quick/00.hello/sparc/linux/simple-timing 
>>> passed.
>>> ***** 
>>> build/SPARC_SE/tests/fast/quick/40.m5threads-test-atomic/sparc/linux/simple-timing-mp
>>>  passed.
>>> ***** build/SPARC_SE/tests/fast/quick/00.hello/sparc/linux/simple-atomic 
>>> passed.
>>> ***** build/SPARC_SE/tests/fast/quick/02.insttest/sparc/linux/simple-atomic 
>>> passed.
>>> ***** 
>>> build/SPARC_SE/tests/fast/quick/00.hello/sparc/linux/simple-timing-ruby 
>>> passed.
>>> ***** build/SPARC_SE/tests/fast/quick/02.insttest/sparc/linux/o3-timing 
>>> passed.
>>> ***** build/SPARC_SE/tests/fast/quick/02.insttest/sparc/linux/simple-timing 
>>> passed.
>>> ***** 
>>> build/SPARC_SE/tests/fast/quick/40.m5threads-test-atomic/sparc/linux/o3-timing-mp
>>>  passed.
>>> ***** build/ARM_SE/tests/fast/quick/00.hello/arm/linux/o3-timing passed.
>>> ***** build/ARM_SE/tests/fast/quick/00.hello/arm/linux/simple-atomic passed.
>>> ***** build/ARM_SE/tests/fast/quick/00.hello/arm/linux/simple-timing passed.
>>> ***** 
>>> build/X86_FS/tests/fast/quick/10.linux-boot/x86/linux/pc-simple-atomic 
>>> passed.
>>> ***** build/X86_SE/tests/fast/quick/00.hello/x86/linux/simple-timing passed.
>>> ***** build/X86_SE/tests/fast/quick/00.hello/x86/linux/simple-timing-ruby 
>>> passed.
>>> ***** build/X86_SE/tests/fast/quick/00.hello/x86/linux/simple-atomic passed.
>>> ***** build/X86_SE/tests/fast/quick/00.hello/x86/linux/o3-timing passed.
>>> ***** 
>>> build/X86_FS/tests/fast/quick/10.linux-boot/x86/linux/pc-simple-timing 
>>> passed.
>>> ***** 
>>> build/ARM_FS/tests/fast/quick/10.linux-boot/arm/linux/realview-simple-atomic
>>>  passed.
>>> ***** 
>>> build/ARM_FS/tests/fast/quick/10.linux-boot/arm/linux/realview-simple-timing
>>>  passed.
>>>
>>> See /z/m5/regression/regress-2011-03-29-03:00:01 for details.
>>>
>>> _______________________________________________
>>> m5-dev mailing list
>>> [email protected]
>>> http://m5sim.org/mailman/listinfo/m5-dev
>>
>> _______________________________________________
>> m5-dev mailing list
>> [email protected]
>> http://m5sim.org/mailman/listinfo/m5-dev
>>
>
>
>
> --
> - Korey
> _______________________________________________
> m5-dev mailing list
> [email protected]
> http://m5sim.org/mailman/listinfo/m5-dev
>
_______________________________________________
m5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to