Hi, Are you using detailed cpu with classic cache model? For x86 with the classic cache model, atomic memory access like instruction cmpxchg is not supported yet. Thus, things that supposed to be protected by such instructions are probably not thread-safe any more in gem5.
The m5thread library also assumes cmpxchg works. You must be careful when you run pthread applications on gem5 with a detailed x86 core and the classic cache model. 2015-08-05 12:26 GMT-07:00 aasheesh kolli <[email protected]>: > Hi all, > > I am trying to run a simple multi-threaded program in SE mode (X86). I > have linked my program with the m5thread library. However, I am seeing the > following error: > > ********************************************************************* > gem5 Simulator System. http://gem5.org > gem5 is copyrighted software; use the --copyright option for details. > > gem5 compiled Jul 22 2015 13:54:38 > gem5 started Aug 5 2015 12:12:20 > gem5 executing on utopia > command line: ./build/X86/gem5.opt configs/example/se.py -c > ../justdo/justdo_structs/bin/main.bin -o '-i 1 -m 0 -r 1 -t 2 -v' -n 2 > > Global frequency set at 1000000000000 ticks per second > warn: DRAM device capacity (8192 Mbytes) does not match the address range > assigned (512 Mbytes) > 0: system.remote_gdb.listener: listening for remote gdb #0 on port 7000 > 0: system.remote_gdb.listener: listening for remote gdb #1 on port 7001 > **** REAL SIMULATION **** > info: Entering event queue @ 0. Starting simulation... > info: Increasing stack size by one page. > warn: ignoring syscall access(5497601, ...) > new region > root-init0x78eb60 > jdr-init0x78eb80 > warn: Syscall: open: cannot decode flags 0x80000 > Testing: 2 threads for 1 seconds on InsertRemove Test > warn: ignoring syscall rt_sigaction(11, ...) > (further warnings will be suppressed) > starting test > warn: ignoring syscall mprotect(46912518488064, ...) > new log[0] @:0x790760 > new log[1] @:0x2aaaac0008c0 > panic: Tried to read unmapped address 0x814. > @ tick 1358706500 > [invoke:build/X86/arch/x86/faults.cc, line 160] > Memory Usage: 674128 KBytes > Program aborted at cycle 1358706500 > Aborted (core dumped) > **************************************************************** > > The program runs fine when run normally (without gem5). My operating > system details are as below: > > kolliaa@utopia:~/work/gem5$ uname -a > Linux utopia 3.16.0-43-generic #58~14.04.1-Ubuntu SMP Mon Jun 22 10:21:20 > UTC 2015 x86_64 x86_64 x86_64 GNU/Linux > > Any pointers on how to proceed from here would be great! > > -- > Thanks, > Aasheesh > > > > _______________________________________________ > gem5-users mailing list > [email protected] > http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users > -- yw
_______________________________________________ gem5-users mailing list [email protected] http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
