[gem5-dev] Change in gem5/gem5[develop]: sim: Use off_t for mmap offset arguments

2020-04-01 Thread Matthew Poremba (Gerrit)
Matthew Poremba has uploaded this change for review. (  
https://gem5-review.googlesource.com/c/public/gem5/+/27367 )



Change subject: sim: Use off_t for mmap offset arguments
..

sim: Use off_t for mmap offset arguments

The GuestABI used to call the system-calls infers the size of values
read from the registers based on the function signature of the system
call. For mmap this was causing offset to be truncated to a 32-bit
value. In the GPUComputeDriver mmap, the offset must be a 64-bit
value. This fixes a bug where the doorbell memory was not setup and
causing GPU applications to fail.

Change-Id: I75d9b32c0470d1907c68826ef81cf6cd46f60ea7
---
M src/sim/syscall_emul.hh
1 file changed, 2 insertions(+), 2 deletions(-)



diff --git a/src/sim/syscall_emul.hh b/src/sim/syscall_emul.hh
index e1a23a0..a2e0f38 100644
--- a/src/sim/syscall_emul.hh
+++ b/src/sim/syscall_emul.hh
@@ -1643,7 +1643,7 @@
 SyscallReturn
 mmapFunc(SyscallDesc *desc, ThreadContext *tc,
  Addr start, uint64_t length, int prot, int tgt_flags,
- int tgt_fd, int offset)
+ int tgt_fd, off_t offset)
 {
 auto p = tc->getProcessPtr();
 Addr page_bytes = tc->getSystemPtr()->getPageBytes();
@@ -1826,7 +1826,7 @@
 SyscallReturn
 mmap2Func(SyscallDesc *desc, ThreadContext *tc,
   Addr start, uint64_t length, int prot, int tgt_flags,
-  int tgt_fd, int offset)
+  int tgt_fd, off_t offset)
 {
 return mmapFunc(desc, tc, start, length, prot, tgt_flags,
 tgt_fd, offset *  
tc->getSystemPtr()->getPageBytes());


--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/27367
To unsubscribe, or for help writing mail filters, visit  
https://gem5-review.googlesource.com/settings


Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: I75d9b32c0470d1907c68826ef81cf6cd46f60ea7
Gerrit-Change-Number: 27367
Gerrit-PatchSet: 1
Gerrit-Owner: Matthew Poremba 
Gerrit-MessageType: newchange
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

[gem5-dev] Change in gem5/gem5[develop]: configs: Enabling SimObj CLI for baremetal platform

2020-04-01 Thread Giacomo Travaglini (Gerrit)
Giacomo Travaglini has submitted this change. (  
https://gem5-review.googlesource.com/c/public/gem5/+/27347 )


Change subject: configs: Enabling SimObj CLI for baremetal platform
..

configs: Enabling SimObj CLI for baremetal platform

Change-Id: I0d4059976c8fb6a1d796998af302eaa764609f86
Signed-off-by: Giacomo Travaglini 
Reviewed-by: Ciro Santilli 
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/27347
Tested-by: Gem5 Cloud Project GCB service account  
<345032938...@cloudbuild.gserviceaccount.com>

Tested-by: kokoro 
---
M configs/example/arm/baremetal.py
1 file changed, 10 insertions(+), 0 deletions(-)

Approvals:
  Ciro Santilli: Looks good to me, approved
  Giacomo Travaglini: Looks good to me, approved
  kokoro: Regressions pass
  Gem5 Cloud Project GCB service account: Regressions pass



diff --git a/configs/example/arm/baremetal.py  
b/configs/example/arm/baremetal.py

index 1eb2a82..87e8952 100644
--- a/configs/example/arm/baremetal.py
+++ b/configs/example/arm/baremetal.py
@@ -225,12 +225,22 @@
 "(default: gem5's stderr)")
 parser.add_argument("args", default=[], nargs="*",
 help="Semihosting arguments to pass to benchmark")
+parser.add_argument("-P", "--param", action="append", default=[],
+help="Set a SimObject parameter relative to the root node. "
+ "An extended Python multi range slicing syntax can be used "
+ "for arrays. For example: "
+ "'system.cpu[0,1,3:8:2].max_insts_all_threads = 42' "
+ "sets max_insts_all_threads for cpus 0, 1, 3, 5 and 7 "
+ "Direct parameters of the root object are not accessible, "
+ "only parameters of its children.")

 args = parser.parse_args()

 root = Root(full_system=True)
 root.system = create(args)

+root.apply_config(args.param)
+
 if args.restore is not None:
 m5.instantiate(args.restore)
 else:

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/27347
To unsubscribe, or for help writing mail filters, visit  
https://gem5-review.googlesource.com/settings


Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: I0d4059976c8fb6a1d796998af302eaa764609f86
Gerrit-Change-Number: 27347
Gerrit-PatchSet: 2
Gerrit-Owner: Giacomo Travaglini 
Gerrit-Reviewer: Ciro Santilli 
Gerrit-Reviewer: Gem5 Cloud Project GCB service account  
<345032938...@cloudbuild.gserviceaccount.com>

Gerrit-Reviewer: Giacomo Travaglini 
Gerrit-Reviewer: kokoro 
Gerrit-MessageType: merged
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

[gem5-dev] Change in gem5/gem5[develop]: util: Update the m5 util Makefiles to not use javah.

2020-04-01 Thread Gabe Black (Gerrit)
Gabe Black has submitted this change. (  
https://gem5-review.googlesource.com/c/public/gem5/+/27210 )


Change subject: util: Update the m5 util Makefiles to not use javah.
..

util: Update the m5 util Makefiles to not use javah.

In more recent versions of the JDK, the javah tool has been dropped. The
same job can be accomplished by passing a -h option to javac, telling it
where to put the header files javah would have generated.

Change-Id: Ibc543d5fa222848458f45b1945f8050b85b77ca2
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/27210
Maintainer: Jason Lowe-Power 
Tested-by: kokoro 
Reviewed-by: Daniel Carvalho 
---
M util/m5/src/Makefile.aarch64
M util/m5/src/Makefile.arm
2 files changed, 2 insertions(+), 6 deletions(-)

Approvals:
  Daniel Carvalho: Looks good to me, approved
  Jason Lowe-Power: Looks good to me, approved
  kokoro: Regressions pass



diff --git a/util/m5/src/Makefile.aarch64 b/util/m5/src/Makefile.aarch64
index c1c084d..7724b85 100644
--- a/util/m5/src/Makefile.aarch64
+++ b/util/m5/src/Makefile.aarch64
@@ -46,7 +46,6 @@
 AR=$(CROSS_COMPILE)ar

 JC=javac
-JH=javah
 JR=jar
 ### JDK_PATH must be set to build gem5OpJni
 #JDK_PATH=/path/to/jdk/version_number
@@ -81,8 +80,7 @@
$(CC) --shared -o lib$@.so $(JNI_OBJS)

 gem5OpJni.jar:
-   $(JC) jni/gem5Op.java; \
-   $(JH) jni.gem5Op; \
+   $(JC) jni/gem5Op.java -h .; \
$(JR) cvf $@ jni/*.class

 lua_gem5Op.o: lua_gem5Op.c
diff --git a/util/m5/src/Makefile.arm b/util/m5/src/Makefile.arm
index 042cf00..2588f09 100644
--- a/util/m5/src/Makefile.arm
+++ b/util/m5/src/Makefile.arm
@@ -46,7 +46,6 @@
 AR=$(CROSS_COMPILE)ar

 JC=javac
-JH=javah
 JR=jar
 ### JDK_PATH must be set to build gem5OpJni
 #JDK_PATH=/path/to/jdk/version_number
@@ -82,8 +81,7 @@
$(CC) --shared -o lib$@.so $(JNI_OBJS)

 gem5OpJni.jar:
-   $(JC) jni/gem5Op.java; \
-   $(JH) jni.gem5Op; \
+   $(JC) jni/gem5Op.java -h .; \
$(JR) cvf $@ jni/*.class

 lua_gem5Op.o: lua_gem5Op.c

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/27210
To unsubscribe, or for help writing mail filters, visit  
https://gem5-review.googlesource.com/settings


Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: Ibc543d5fa222848458f45b1945f8050b85b77ca2
Gerrit-Change-Number: 27210
Gerrit-PatchSet: 4
Gerrit-Owner: Gabe Black 
Gerrit-Reviewer: Bobby R. Bruce 
Gerrit-Reviewer: Daniel Carvalho 
Gerrit-Reviewer: Earl Ou 
Gerrit-Reviewer: Gabe Black 
Gerrit-Reviewer: Giacomo Travaglini 
Gerrit-Reviewer: Jason Lowe-Power 
Gerrit-Reviewer: Yu-hsin Wang 
Gerrit-Reviewer: kokoro 
Gerrit-MessageType: merged
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

[gem5-dev] Change in gem5/gem5[develop]: util, sparc: Use M5OP_FOREACH to define the m5op entry points for sparc.

2020-04-01 Thread Gabe Black (Gerrit)
Gabe Black has submitted this change. (  
https://gem5-review.googlesource.com/c/public/gem5/+/27207 )


Change subject: util,sparc: Use M5OP_FOREACH to define the m5op entry  
points for sparc.

..

util,sparc: Use M5OP_FOREACH to define the m5op entry points for sparc.

Change-Id: I9b125c843425ef4a7a59061d5897dd8e83e06abb
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/27207
Tested-by: kokoro 
Reviewed-by: Jason Lowe-Power 
Reviewed-by: Daniel Carvalho 
Maintainer: Bobby R. Bruce 
---
M util/m5/m5op_sparc.S
1 file changed, 13 insertions(+), 116 deletions(-)

Approvals:
  Jason Lowe-Power: Looks good to me, but someone else must approve
  Daniel Carvalho: Looks good to me, approved
  Bobby R. Bruce: Looks good to me, approved
  kokoro: Regressions pass



diff --git a/util/m5/m5op_sparc.S b/util/m5/m5op_sparc.S
index fe70e0a..9ed9a99 100644
--- a/util/m5/m5op_sparc.S
+++ b/util/m5/m5op_sparc.S
@@ -31,120 +31,17 @@

 #include 

-#define INST(func, rs1, rs2, rd) \
-.long (m5_op) << 30 | (rd) << 25 | (m5_op3) << 19 | (func) << 7 |   
\

-  (rs1) << 14 | (rs2) << 0;
+.macro m5op_func name, func
+.section ".text";
+.align  4;
+.global \name;
+.type   \name, #function;
+\name:
+retl
+.long   (m5_op) << 30 | (m5_op3) << 19 | (\func) << 7;
+.size   \name, (.-\name)
+.endm

-
-#define LEAF(func)\
-.section ".text"; \
-.align   4;   \
-.global  func;\
-.typefunc, #function; \
-func:
-
-#define END(func) \
-.sizefunc, (.-func)
-
-#define DEBUGBREAK INST(M5OP_DEBUG_BREAK, 0, 0, 0)
-#define M5EXIT INST(M5OP_EXIT, 0, 0, 0)
-#define PANIC INST(M5OP_PANIC, 0, 0, 0)
-#define READFILE INST(M5OP_READ_FILE, 0, 0, 0)
-
-LEAF(m5_exit)
-retl
-M5EXIT
-END(m5_exit)
-
-LEAF(m5_panic)
-retl
-PANIC
-END(m5_panic)
-
-LEAF(m5_read_file)
-retl
-READFILE
-END(m5_read_file)
-
-LEAF(m5_debug_break)
-retl
-DEBUGBREAK
-END(m5_debug_break)
-
-/* !! All code below here just panics !! */
-LEAF(m5_arm)
-retl
-PANIC
-END(m5_arm)
-
-LEAF(m5_quiesce)
-retl
-PANIC
-END(m5_quiesce)
-
-LEAF(m5_quiesce_ns)
-retl
-PANIC
-END(m5_quiesce_ns)
-
-LEAF(m5_quiesce_cycle)
-retl
-PANIC
-END(m5_quiesce_cycle)
-
-LEAF(m5_quiesce_time)
-retl
-PANIC
-END(m5_quiesce_time)
-
-LEAF(m5_init_param)
-retl
-PANIC
-END(m5_init_param)
-
-LEAF(m5_load_symbol)
-retl
-PANIC
-END(m5_load_symbol)
-
-LEAF(m5_reset_stats)
-retl
-PANIC
-END(m5_reset_stats)
-
-LEAF(m5_dump_stats)
-retl
-PANIC
-END(m5_dump_stats)
-
-LEAF(m5_dump_reset_stats)
-retl
-PANIC
-END(m5_dump_reset_stats)
-
-LEAF(m5_checkpoint)
-retl
-PANIC
-END(m5_checkpoint)
-
-LEAF(m5_switch_cpu)
-retl
-PANIC
-END(m5_switch_cpu)
-
-LEAF(m5_add_symbol)
-retl
-PANIC
-END(m5_add_symbol)
-
-LEAF(m5_anbegin)
-retl
-PANIC
-END(m5_anbegin)
-
-LEAF(m5_anwait)
-retl
-PANIC
-END(m5_anwait)
-
-
+#define M5OP(name, func) m5op_func name, func
+M5OP_FOREACH
+#undef M5OP

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/27207
To unsubscribe, or for help writing mail filters, visit  
https://gem5-review.googlesource.com/settings


Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: I9b125c843425ef4a7a59061d5897dd8e83e06abb
Gerrit-Change-Number: 27207
Gerrit-PatchSet: 4
Gerrit-Owner: Gabe Black 
Gerrit-Reviewer: Bobby R. Bruce 
Gerrit-Reviewer: Daniel Carvalho 
Gerrit-Reviewer: Earl Ou 
Gerrit-Reviewer: Gabe Black 
Gerrit-Reviewer: Giacomo Travaglini 
Gerrit-Reviewer: Jason Lowe-Power 
Gerrit-Reviewer: Yu-hsin Wang 
Gerrit-Reviewer: kokoro 
Gerrit-MessageType: merged
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

Re: [gem5-dev] Making the verification bit sicky(ier) in gerrit

2020-04-01 Thread Gabe Black
I just went ahead and did it with git. I don't think going through the
gerrit UI with the configuration as we have it now would have worked.

Gabe

On Wed, Apr 1, 2020 at 3:21 AM Gabe Black  wrote:

> That is definitely something that can (and has at least once) gone wrong,
> but I know it can go wrong even with the current setup since it did :-) I'm
> not 100% sure if this will work, but I tried to edit the configuration for
> the label through the gerrit interface over here:
>
> https://gem5-review.googlesource.com/c/All-Projects/+/27330
>
> I think it's still going to insist on the verification bit getting set on
> that CL, but I don't think anything is going to pick it up and set that
> bit... I might need to jam it in directly through git, or some other
> hackery to make the actual change.
>
> Gabe
>
> On Wed, Apr 1, 2020 at 2:30 AM Giacomo Travaglini <
> giacomo.travagl...@arm.com> wrote:
>
>> Name clash is not the only scenario where you have conflicting patches.
>> It might be that I have two patches targeting different portions of the
>> code where I am not breaking the build but I am breaking simulation.
>> Two patches that work on their own but they break gem5 once combined.
>>
>> This is just to be accurate; there are definitely downsides but
>> considering the frequency of these cases I am fine on trying to reduce the
>> computational load
>>
>> Giacomo
>>
>> -Original Message-
>> From: gem5-dev  On Behalf Of Daniel Carvalho
>> Sent: 01 April 2020 10:09
>> To: gem5 Developer List 
>> Subject: Re: [gem5-dev] Making the verification bit sicky(ier) in gerrit
>>
>>  I believe that in the case 2 changes from different people add a
>> variable with the same name to the same scope, the rebase could still be
>> trivial, yet the second change will generate a compilation error due to
>> variable declaration repetition. Similar situations (variable removal,
>> things being done twice, etc) could raise other compilation errors, and
>> even runtime errors.
>> Anyway, I think this is quite rare (IIRC, a compilation error like this
>> happened only once since I joined), and it will be caught right away on the
>> following kokoro run, so the benefits far outweigh any potential issue.
>> Regards,Daniel
>> Em quarta-feira, 1 de abril de 2020 06:57:27 GMT+2, Bobby Bruce <
>> bbr...@ucdavis.edu> escreveu:
>>
>>  Sounds like a great idea to me. I fail to see any downside.
>> --
>> Dr. Bobby R. Bruce
>> Room 2235,
>> Kemper Hall, UC Davis
>> Davis,
>> CA, 95616
>>
>> web: https://www.bobbybruce.net
>>
>>
>> On Tue, Mar 31, 2020 at 7:03 PM Gabe Black  wrote:
>>
>> > Hi folks. I (and probably many of you) have noticed that gerrit
>> > sometimes decides something needs to be rebased when it doesn't really
>> > seem to, and that rebase ends up forcing a rerun of verification which
>> > delays getting a patch checked in, and incurs extra cost for gem5 for
>> > the compute resources which run the verification.
>> >
>> > I asked for potential solutions from the gerrit team within google,
>> > and they suggested turning on this property of the verified label:
>> >
>> >
>> > https://gerrit-review.googlesource.com/Documentation/config-labels.htm
>> > l#label_copyAllScoresOnTrivialRebase
>> >
>> > They said that since we already have the "Rebase Always" merge
>> > strategy selected it wouldn't reduce the level of verification for
>> > changes, and while it wouldn't avoid having to do trivial rebases
>> > (there's a button in gerrit for that), it would avoid having to rerun
>> verification.
>> >
>> > Note that this would not make the verification label permanent, it
>> > would just mean that as long as the rebase was trivial (no commit
>> > message change, no diff change including context lines) then it would
>> stay verified.
>> >
>> > Does that sound like a good idea to everyone? If so, I can look into
>> > how to make that happen.
>> >
>> > Gabe
>> > ___
>> > gem5-dev mailing list
>> > gem5-dev@gem5.org
>> > http://m5sim.org/mailman/listinfo/gem5-dev
>> ___
>> gem5-dev mailing list
>> gem5-dev@gem5.org
>> http://m5sim.org/mailman/listinfo/gem5-dev
>> ___
>> gem5-dev mailing list
>> gem5-dev@gem5.org
>> http://m5sim.org/mailman/listinfo/gem5-dev
>> IMPORTANT NOTICE: The contents of this email and any attachments are
>> confidential and may also be privileged. If you are not the intended
>> recipient, please notify the sender immediately and do not disclose the
>> contents to any other person, use it for any purpose, or store or copy the
>> information in any medium. Thank you.
>> ___
>> gem5-dev mailing list
>> gem5-dev@gem5.org
>> http://m5sim.org/mailman/listinfo/gem5-dev
>
>
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

[gem5-dev] Change in gem5/gem5[develop]: util, x86: Use M5OP_FOREACH to define the m5op entry points for x86.

2020-04-01 Thread Gabe Black (Gerrit)
Gabe Black has submitted this change. (  
https://gem5-review.googlesource.com/c/public/gem5/+/27208 )


Change subject: util,x86: Use M5OP_FOREACH to define the m5op entry points  
for x86.

..

util,x86: Use M5OP_FOREACH to define the m5op entry points for x86.

Change-Id: Idbfa3341a5e0d2cf57ce7dbe8cf45834b3aa067a
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/27208
Tested-by: kokoro 
Reviewed-by: Jason Lowe-Power 
Reviewed-by: Daniel Carvalho 
Maintainer: Bobby R. Bruce 
---
M util/m5/m5op_x86.S
1 file changed, 3 insertions(+), 24 deletions(-)

Approvals:
  Jason Lowe-Power: Looks good to me, approved
  Daniel Carvalho: Looks good to me, approved
  Bobby R. Bruce: Looks good to me, approved
  kokoro: Regressions pass



diff --git a/util/m5/m5op_x86.S b/util/m5/m5op_x86.S
index 453cdc9..cd83a94 100644
--- a/util/m5/m5op_x86.S
+++ b/util/m5/m5op_x86.S
@@ -79,27 +79,6 @@

 #endif

-TWO_BYTE_OP(m5_arm, M5OP_ARM)
-TWO_BYTE_OP(m5_quiesce, M5OP_QUIESCE)
-TWO_BYTE_OP(m5_quiesce_ns, M5OP_QUIESCE_NS)
-TWO_BYTE_OP(m5_quiesce_cycle, M5OP_QUIESCE_CYCLE)
-TWO_BYTE_OP(m5_quiesce_time, M5OP_QUIESCE_TIME)
-TWO_BYTE_OP(m5_rpns, M5OP_RPNS)
-TWO_BYTE_OP(m5_wake_cpu, M5OP_WAKE_CPU)
-TWO_BYTE_OP(m5_exit, M5OP_EXIT)
-TWO_BYTE_OP(m5_fail, M5OP_FAIL)
-TWO_BYTE_OP(m5_init_param, M5OP_INIT_PARAM)
-TWO_BYTE_OP(m5_load_symbol, M5OP_LOAD_SYMBOL)
-TWO_BYTE_OP(m5_reset_stats, M5OP_RESET_STATS)
-TWO_BYTE_OP(m5_dump_stats, M5OP_DUMP_STATS)
-TWO_BYTE_OP(m5_dump_reset_stats, M5OP_DUMP_RESET_STATS)
-TWO_BYTE_OP(m5_checkpoint, M5OP_CHECKPOINT)
-TWO_BYTE_OP(m5_read_file, M5OP_READ_FILE)
-TWO_BYTE_OP(m5_write_file, M5OP_WRITE_FILE)
-TWO_BYTE_OP(m5_debug_break, M5OP_DEBUG_BREAK)
-TWO_BYTE_OP(m5_switch_cpu, M5OP_SWITCH_CPU)
-TWO_BYTE_OP(m5_add_symbol, M5OP_ADD_SYMBOL)
-TWO_BYTE_OP(m5_panic, M5OP_PANIC)
-TWO_BYTE_OP(m5_work_begin, M5OP_WORK_BEGIN)
-TWO_BYTE_OP(m5_work_end, M5OP_WORK_END)
-TWO_BYTE_OP(m5_dist_toggle_sync, M5OP_DIST_TOGGLE_SYNC)
+#define M5OP(name, number) TWO_BYTE_OP(name, number)
+M5OP_FOREACH
+#undef M5OP

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/27208
To unsubscribe, or for help writing mail filters, visit  
https://gem5-review.googlesource.com/settings


Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: Idbfa3341a5e0d2cf57ce7dbe8cf45834b3aa067a
Gerrit-Change-Number: 27208
Gerrit-PatchSet: 4
Gerrit-Owner: Gabe Black 
Gerrit-Reviewer: Bobby R. Bruce 
Gerrit-Reviewer: Daniel Carvalho 
Gerrit-Reviewer: Earl Ou 
Gerrit-Reviewer: Gabe Black 
Gerrit-Reviewer: Giacomo Travaglini 
Gerrit-Reviewer: Jason Lowe-Power 
Gerrit-Reviewer: Yu-hsin Wang 
Gerrit-Reviewer: kokoro 
Gerrit-MessageType: merged
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

[gem5-dev] Change in gem5/gem5[develop]: util: Update jni_gem5Op.c so it will compile again.

2020-04-01 Thread Gabe Black (Gerrit)
Gabe Black has submitted this change. (  
https://gem5-review.googlesource.com/c/public/gem5/+/27211 )


Change subject: util: Update jni_gem5Op.c so it will compile again.
..

util: Update jni_gem5Op.c so it will compile again.

The header for the m5op entry points had moved. Also the names of the
entry points had been normalized to have a consistent structure. Neither
of those changes were ported to this file, making it no longer compile.

Change-Id: I890c0486bd19fe2692cce92983290e854dc87afa
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/27211
Maintainer: Jason Lowe-Power 
Tested-by: kokoro 
Reviewed-by: Daniel Carvalho 
---
M util/m5/src/jni_gem5Op.c
1 file changed, 15 insertions(+), 16 deletions(-)

Approvals:
  Daniel Carvalho: Looks good to me, approved
  Jason Lowe-Power: Looks good to me, approved
  kokoro: Regressions pass



diff --git a/util/m5/src/jni_gem5Op.c b/util/m5/src/jni_gem5Op.c
index 4d10750..ba61fc0 100644
--- a/util/m5/src/jni_gem5Op.c
+++ b/util/m5/src/jni_gem5Op.c
@@ -37,42 +37,41 @@

 #include 

+#include "gem5/m5ops.h"
 #include "jni_gem5Op.h"
-#include "m5op.h"

-/**
-   C library interface for gem5Op JNI
-
-*/
+/*
+ * C library interface for gem5Op JNI
+ */

 JNIEXPORT void JNICALL
 Java_jni_gem5Op_arm(JNIEnv *env, jobject obj, jlong j_address)
 {
-arm(j_address);
+m5_arm(j_address);
 }

 JNIEXPORT void JNICALL
 Java_jni_gem5Op_quiesce(JNIEnv *env, jobject obj)
 {
-quiesce();
+m5_quiesce();
 }

 JNIEXPORT void JNICALL
 Java_jni_gem5Op_quiesceNs(JNIEnv *env, jobject obj, jlong j_ns)
 {
-quiesceNs(j_ns);
+m5_quiesce_ns(j_ns);
 }

 JNIEXPORT void JNICALL
 Java_jni_gem5Op_quiesceCycle(JNIEnv *env, jobject obj, jlong j_cycles)
 {
-quiesceCycle(j_cycles);
+m5_quiesce_cycle(j_cycles);
 }

 JNIEXPORT jlong JNICALL
 Java_jni_gem5Op_quiesceTime(JNIEnv *env, jobject obj)
 {
-uint64_t time = quiesceTime();
+uint64_t time = m5_quiesce_time();
 if (time & 0x8000ULL)
 printf("Truncated return value from quiesceTime() to 63 bits\n");
 return (time & 0x7FFFULL);
@@ -81,7 +80,7 @@
 JNIEXPORT jlong JNICALL
 Java_jni_gem5Op_rpns(JNIEnv *env, jobject obj)
 {
-uint64_t time = rpns();
+uint64_t time = m5_rpns();
 if (time & 0x8000ULL)
 printf("Truncated return value from rpns() to 63 bits\n");
 return (time & 0x7FFFULL);
@@ -90,7 +89,7 @@
 JNIEXPORT void JNICALL
 Java_jni_gem5Op_wakeCPU(JNIEnv *env, jobject obj, jlong j_cpuid)
 {
-wakeCPU(j_cpuid);
+m5_wake_cpu(j_cpuid);
 }

 JNIEXPORT void JNICALL
@@ -109,7 +108,7 @@
 Java_jni_gem5Op_initparam(JNIEnv *env, jobject obj, jlong j_key_str1,
   jlong j_key_str2)
 {
-uint64_t param = m5_initparam(j_key_str1, j_key_str2);
+uint64_t param = m5_init_param(j_key_str1, j_key_str2);
 if (param & 0x8000ULL)
 printf("Truncated return value from m_initparam() to 63 bits\n");
 return (param & 0x7FFFULL);
@@ -140,19 +139,19 @@
 Java_jni_gem5Op_dumpreset_1stats(JNIEnv *env, jobject obj,
  jlong j_ns_delay, jlong j_ns_period)
 {
-m5_dumpreset_stats(j_ns_delay, j_ns_period);
+m5_dump_reset_stats(j_ns_delay, j_ns_period);
 }

 JNIEXPORT void JNICALL
 Java_jni_gem5Op_debugbreak(JNIEnv *env, jobject obj)
 {
-m5_debugbreak();
+m5_debug_break();
 }

 JNIEXPORT void JNICALL
 Java_jni_gem5Op_switchcpu (JNIEnv *env, jobject obj)
 {
-m5_switchcpu();
+m5_switch_cpu();
 }

 JNIEXPORT void JNICALL

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/27211
To unsubscribe, or for help writing mail filters, visit  
https://gem5-review.googlesource.com/settings


Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: I890c0486bd19fe2692cce92983290e854dc87afa
Gerrit-Change-Number: 27211
Gerrit-PatchSet: 4
Gerrit-Owner: Gabe Black 
Gerrit-Reviewer: Bobby R. Bruce 
Gerrit-Reviewer: Daniel Carvalho 
Gerrit-Reviewer: Earl Ou 
Gerrit-Reviewer: Gabe Black 
Gerrit-Reviewer: Giacomo Travaglini 
Gerrit-Reviewer: Jason Lowe-Power 
Gerrit-Reviewer: Yu-hsin Wang 
Gerrit-Reviewer: kokoro 
Gerrit-MessageType: merged
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

[gem5-dev] Change in gem5/gem5[develop]: util: Move source files into a src directory.

2020-04-01 Thread Gabe Black (Gerrit)
Gabe Black has submitted this change. (  
https://gem5-review.googlesource.com/c/public/gem5/+/27209 )


Change subject: util: Move source files into a src directory.
..

util: Move source files into a src directory.

This also moves the Makefiles, which will still produce build output in
the src directory. This is to prepare for a scons based build system
which will create a separate build directory with build artifacts.

Change-Id: I7c6d325e1d0a428656b2e3070b5e942515543696
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/27209
Tested-by: kokoro 
Reviewed-by: Daniel Carvalho 
Maintainer: Bobby R. Bruce 
---
R util/m5/src/Android.mk
R util/m5/src/Makefile.aarch64
R util/m5/src/Makefile.arm
R util/m5/src/Makefile.sparc
R util/m5/src/Makefile.thumb
R util/m5/src/Makefile.x86
R util/m5/src/jni/gem5Op.java
R util/m5/src/jni_gem5Op.c
R util/m5/src/lua_gem5Op.c
R util/m5/src/m5.c
R util/m5/src/m5_mmap.c
R util/m5/src/m5_mmap.h
R util/m5/src/m5op_arm.S
R util/m5/src/m5op_arm_A64.S
R util/m5/src/m5op_sparc.S
R util/m5/src/m5op_x86.S
16 files changed, 5 insertions(+), 5 deletions(-)

Approvals:
  Daniel Carvalho: Looks good to me, approved
  Bobby R. Bruce: Looks good to me, approved
  kokoro: Regressions pass



diff --git a/util/m5/Android.mk b/util/m5/src/Android.mk
similarity index 100%
rename from util/m5/Android.mk
rename to util/m5/src/Android.mk
diff --git a/util/m5/Makefile.aarch64 b/util/m5/src/Makefile.aarch64
similarity index 98%
rename from util/m5/Makefile.aarch64
rename to util/m5/src/Makefile.aarch64
index f0b6494..c1c084d 100644
--- a/util/m5/Makefile.aarch64
+++ b/util/m5/src/Makefile.aarch64
@@ -52,7 +52,7 @@
 #JDK_PATH=/path/to/jdk/version_number

 CFLAGS=-O2 -I $(JDK_PATH)/include/ -I $(JDK_PATH)/include/linux \
-   -I../../include -march=armv8-a
+   -I../../../include -march=armv8-a
 LDFLAGS=-static -L. -lm5

 LIB_OBJS=m5op_arm_A64.o m5_mmap.o
diff --git a/util/m5/Makefile.arm b/util/m5/src/Makefile.arm
similarity index 98%
rename from util/m5/Makefile.arm
rename to util/m5/src/Makefile.arm
index 1fd1840..042cf00 100644
--- a/util/m5/Makefile.arm
+++ b/util/m5/src/Makefile.arm
@@ -52,7 +52,7 @@
 #JDK_PATH=/path/to/jdk/version_number

 CFLAGS=-O2 -I $(JDK_PATH)/include/ -I $(JDK_PATH)/include/linux \
-   -I../../include -march=armv7-a
+   -I../../../include -march=armv7-a
 LDFLAGS=-L. -lm5 -static

 LIB_OBJS=m5op_arm.o m5_mmap.o
diff --git a/util/m5/Makefile.sparc b/util/m5/src/Makefile.sparc
similarity index 97%
rename from util/m5/Makefile.sparc
rename to util/m5/src/Makefile.sparc
index 9f19db9..2424784 100644
--- a/util/m5/Makefile.sparc
+++ b/util/m5/src/Makefile.sparc
@@ -32,7 +32,7 @@
 AS=$(CROSS_COMPILE)as
 LD=$(CROSS_COMPILE)ld

-CFLAGS=-O2 -m64 -I../../include
+CFLAGS=-O2 -m64 -I../../../include
 OBJS=m5.o m5op_sparc.o m5_mmap.o

 all: m5
diff --git a/util/m5/Makefile.thumb b/util/m5/src/Makefile.thumb
similarity index 98%
rename from util/m5/Makefile.thumb
rename to util/m5/src/Makefile.thumb
index 1d7ad51..1eb5b3d 100644
--- a/util/m5/Makefile.thumb
+++ b/util/m5/src/Makefile.thumb
@@ -46,7 +46,7 @@
 AR=$(CROSS_COMPILE)ar

 #CFLAGS=-O2 -march=armv7 -mthumb -I../../include
-CFLAGS=-O2 -mthumb -I../../include
+CFLAGS=-O2 -mthumb -I../../../include
 LDFLAGS=-L. -lm5

 OBJS=m5.o
diff --git a/util/m5/Makefile.x86 b/util/m5/src/Makefile.x86
similarity index 97%
rename from util/m5/Makefile.x86
rename to util/m5/src/Makefile.x86
index fae81bb..59493ce 100644
--- a/util/m5/Makefile.x86
+++ b/util/m5/src/Makefile.x86
@@ -28,7 +28,7 @@
 AS=as
 LD=ld

-CFLAGS?=-O2 -DM5OP_ADDR=0x -I../../include
+CFLAGS?=-O2 -DM5OP_ADDR=0x -I../../../include
 OBJS=m5.o m5op_x86.o m5_mmap.o
 LUA_HEADER_INCLUDE=$(shell pkg-config --cflags-only-I lua51)
 LUA_OBJS=lua_gem5Op.opic m5op_x86.opic m5_mmap.opic
diff --git a/util/m5/jni/gem5Op.java b/util/m5/src/jni/gem5Op.java
similarity index 100%
rename from util/m5/jni/gem5Op.java
rename to util/m5/src/jni/gem5Op.java
diff --git a/util/m5/jni_gem5Op.c b/util/m5/src/jni_gem5Op.c
similarity index 100%
rename from util/m5/jni_gem5Op.c
rename to util/m5/src/jni_gem5Op.c
diff --git a/util/m5/lua_gem5Op.c b/util/m5/src/lua_gem5Op.c
similarity index 100%
rename from util/m5/lua_gem5Op.c
rename to util/m5/src/lua_gem5Op.c
diff --git a/util/m5/m5.c b/util/m5/src/m5.c
similarity index 100%
rename from util/m5/m5.c
rename to util/m5/src/m5.c
diff --git a/util/m5/m5_mmap.c b/util/m5/src/m5_mmap.c
similarity index 100%
rename from util/m5/m5_mmap.c
rename to util/m5/src/m5_mmap.c
diff --git a/util/m5/m5_mmap.h b/util/m5/src/m5_mmap.h
similarity index 100%
rename from util/m5/m5_mmap.h
rename to util/m5/src/m5_mmap.h
diff --git a/util/m5/m5op_arm.S b/util/m5/src/m5op_arm.S
similarity index 100%
rename from util/m5/m5op_arm.S
rename to util/m5/src/m5op_arm.S
diff --git a/util/m5/m5op_arm_A64.S b/util/m5/src/m5op_arm_A64.S
similarity index 100%
rename from 

[gem5-dev] Change in gem5/gem5[develop]: util: Undef M5OP at the end of assembly files that use M5OP_FOREACH.

2020-04-01 Thread Gabe Black (Gerrit)
Gabe Black has submitted this change. (  
https://gem5-review.googlesource.com/c/public/gem5/+/27206 )


Change subject: util: Undef M5OP at the end of assembly files that use  
M5OP_FOREACH.

..

util: Undef M5OP at the end of assembly files that use M5OP_FOREACH.

This may not be necessary since M5OP is defined/used at the end of the
function, but it's best to clean up after ourselves.

Change-Id: I524d92cb8dc44c6004dfa8109f3b17f56dba763e
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/27206
Tested-by: kokoro 
Reviewed-by: Daniel Carvalho 
Reviewed-by: Giacomo Travaglini 
Maintainer: Bobby R. Bruce 
---
M util/m5/m5op_arm.S
M util/m5/m5op_arm_A64.S
2 files changed, 2 insertions(+), 0 deletions(-)

Approvals:
  Giacomo Travaglini: Looks good to me, approved
  Daniel Carvalho: Looks good to me, approved
  Bobby R. Bruce: Looks good to me, approved
  kokoro: Regressions pass



diff --git a/util/m5/m5op_arm.S b/util/m5/m5op_arm.S
index b4f7fb3..bd3bb4d 100644
--- a/util/m5/m5op_arm.S
+++ b/util/m5/m5op_arm.S
@@ -62,3 +62,4 @@
 .text
 #define M5OP(name, func) m5op_func name, func
 M5OP_FOREACH
+#undef M5OP
diff --git a/util/m5/m5op_arm_A64.S b/util/m5/m5op_arm_A64.S
index 011da0a..c0224e2 100644
--- a/util/m5/m5op_arm_A64.S
+++ b/util/m5/m5op_arm_A64.S
@@ -61,3 +61,4 @@
 .text
 #define M5OP(name, func) m5op_func name, func
 M5OP_FOREACH
+#undef M5OP

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/27206
To unsubscribe, or for help writing mail filters, visit  
https://gem5-review.googlesource.com/settings


Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: I524d92cb8dc44c6004dfa8109f3b17f56dba763e
Gerrit-Change-Number: 27206
Gerrit-PatchSet: 4
Gerrit-Owner: Gabe Black 
Gerrit-Reviewer: Bobby R. Bruce 
Gerrit-Reviewer: Ciro Santilli 
Gerrit-Reviewer: Daniel Carvalho 
Gerrit-Reviewer: Earl Ou 
Gerrit-Reviewer: Gabe Black 
Gerrit-Reviewer: Giacomo Travaglini 
Gerrit-Reviewer: Jason Lowe-Power 
Gerrit-Reviewer: Yu-hsin Wang 
Gerrit-Reviewer: kokoro 
Gerrit-MessageType: merged
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

[gem5-dev] Change in gem5/gem5[develop]: configs: Enabling SimObj CLI for baremetal platform

2020-04-01 Thread Giacomo Travaglini (Gerrit)

Hello Ciro Santilli,

I'd like you to do a code review. Please visit

https://gem5-review.googlesource.com/c/public/gem5/+/27347

to review the following change.


Change subject: configs: Enabling SimObj CLI for baremetal platform
..

configs: Enabling SimObj CLI for baremetal platform

Change-Id: I0d4059976c8fb6a1d796998af302eaa764609f86
Signed-off-by: Giacomo Travaglini 
Reviewed-by: Ciro Santilli 
---
M configs/example/arm/baremetal.py
1 file changed, 10 insertions(+), 0 deletions(-)



diff --git a/configs/example/arm/baremetal.py  
b/configs/example/arm/baremetal.py

index 1eb2a82..87e8952 100644
--- a/configs/example/arm/baremetal.py
+++ b/configs/example/arm/baremetal.py
@@ -225,12 +225,22 @@
 "(default: gem5's stderr)")
 parser.add_argument("args", default=[], nargs="*",
 help="Semihosting arguments to pass to benchmark")
+parser.add_argument("-P", "--param", action="append", default=[],
+help="Set a SimObject parameter relative to the root node. "
+ "An extended Python multi range slicing syntax can be used "
+ "for arrays. For example: "
+ "'system.cpu[0,1,3:8:2].max_insts_all_threads = 42' "
+ "sets max_insts_all_threads for cpus 0, 1, 3, 5 and 7 "
+ "Direct parameters of the root object are not accessible, "
+ "only parameters of its children.")

 args = parser.parse_args()

 root = Root(full_system=True)
 root.system = create(args)

+root.apply_config(args.param)
+
 if args.restore is not None:
 m5.instantiate(args.restore)
 else:

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/27347
To unsubscribe, or for help writing mail filters, visit  
https://gem5-review.googlesource.com/settings


Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: I0d4059976c8fb6a1d796998af302eaa764609f86
Gerrit-Change-Number: 27347
Gerrit-PatchSet: 1
Gerrit-Owner: Giacomo Travaglini 
Gerrit-Reviewer: Ciro Santilli 
Gerrit-MessageType: newchange
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

Re: [gem5-dev] Making the verification bit sicky(ier) in gerrit

2020-04-01 Thread Gabe Black
That is definitely something that can (and has at least once) gone wrong,
but I know it can go wrong even with the current setup since it did :-) I'm
not 100% sure if this will work, but I tried to edit the configuration for
the label through the gerrit interface over here:

https://gem5-review.googlesource.com/c/All-Projects/+/27330

I think it's still going to insist on the verification bit getting set on
that CL, but I don't think anything is going to pick it up and set that
bit... I might need to jam it in directly through git, or some other
hackery to make the actual change.

Gabe

On Wed, Apr 1, 2020 at 2:30 AM Giacomo Travaglini <
giacomo.travagl...@arm.com> wrote:

> Name clash is not the only scenario where you have conflicting patches.
> It might be that I have two patches targeting different portions of the
> code where I am not breaking the build but I am breaking simulation.
> Two patches that work on their own but they break gem5 once combined.
>
> This is just to be accurate; there are definitely downsides but
> considering the frequency of these cases I am fine on trying to reduce the
> computational load
>
> Giacomo
>
> -Original Message-
> From: gem5-dev  On Behalf Of Daniel Carvalho
> Sent: 01 April 2020 10:09
> To: gem5 Developer List 
> Subject: Re: [gem5-dev] Making the verification bit sicky(ier) in gerrit
>
>  I believe that in the case 2 changes from different people add a variable
> with the same name to the same scope, the rebase could still be trivial,
> yet the second change will generate a compilation error due to variable
> declaration repetition. Similar situations (variable removal, things being
> done twice, etc) could raise other compilation errors, and even runtime
> errors.
> Anyway, I think this is quite rare (IIRC, a compilation error like this
> happened only once since I joined), and it will be caught right away on the
> following kokoro run, so the benefits far outweigh any potential issue.
> Regards,Daniel
> Em quarta-feira, 1 de abril de 2020 06:57:27 GMT+2, Bobby Bruce <
> bbr...@ucdavis.edu> escreveu:
>
>  Sounds like a great idea to me. I fail to see any downside.
> --
> Dr. Bobby R. Bruce
> Room 2235,
> Kemper Hall, UC Davis
> Davis,
> CA, 95616
>
> web: https://www.bobbybruce.net
>
>
> On Tue, Mar 31, 2020 at 7:03 PM Gabe Black  wrote:
>
> > Hi folks. I (and probably many of you) have noticed that gerrit
> > sometimes decides something needs to be rebased when it doesn't really
> > seem to, and that rebase ends up forcing a rerun of verification which
> > delays getting a patch checked in, and incurs extra cost for gem5 for
> > the compute resources which run the verification.
> >
> > I asked for potential solutions from the gerrit team within google,
> > and they suggested turning on this property of the verified label:
> >
> >
> > https://gerrit-review.googlesource.com/Documentation/config-labels.htm
> > l#label_copyAllScoresOnTrivialRebase
> >
> > They said that since we already have the "Rebase Always" merge
> > strategy selected it wouldn't reduce the level of verification for
> > changes, and while it wouldn't avoid having to do trivial rebases
> > (there's a button in gerrit for that), it would avoid having to rerun
> verification.
> >
> > Note that this would not make the verification label permanent, it
> > would just mean that as long as the rebase was trivial (no commit
> > message change, no diff change including context lines) then it would
> stay verified.
> >
> > Does that sound like a good idea to everyone? If so, I can look into
> > how to make that happen.
> >
> > Gabe
> > ___
> > gem5-dev mailing list
> > gem5-dev@gem5.org
> > http://m5sim.org/mailman/listinfo/gem5-dev
> ___
> gem5-dev mailing list
> gem5-dev@gem5.org
> http://m5sim.org/mailman/listinfo/gem5-dev
> ___
> gem5-dev mailing list
> gem5-dev@gem5.org
> http://m5sim.org/mailman/listinfo/gem5-dev
> IMPORTANT NOTICE: The contents of this email and any attachments are
> confidential and may also be privileged. If you are not the intended
> recipient, please notify the sender immediately and do not disclose the
> contents to any other person, use it for any purpose, or store or copy the
> information in any medium. Thank you.
> ___
> gem5-dev mailing list
> gem5-dev@gem5.org
> http://m5sim.org/mailman/listinfo/gem5-dev
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

Re: [gem5-dev] Making the verification bit sicky(ier) in gerrit

2020-04-01 Thread Giacomo Travaglini
Name clash is not the only scenario where you have conflicting patches.
It might be that I have two patches targeting different portions of the code 
where I am not breaking the build but I am breaking simulation.
Two patches that work on their own but they break gem5 once combined.

This is just to be accurate; there are definitely downsides but considering the 
frequency of these cases I am fine on trying to reduce the computational load

Giacomo

-Original Message-
From: gem5-dev  On Behalf Of Daniel Carvalho
Sent: 01 April 2020 10:09
To: gem5 Developer List 
Subject: Re: [gem5-dev] Making the verification bit sicky(ier) in gerrit

 I believe that in the case 2 changes from different people add a variable with 
the same name to the same scope, the rebase could still be trivial, yet the 
second change will generate a compilation error due to variable declaration 
repetition. Similar situations (variable removal, things being done twice, etc) 
could raise other compilation errors, and even runtime errors.
Anyway, I think this is quite rare (IIRC, a compilation error like this 
happened only once since I joined), and it will be caught right away on the 
following kokoro run, so the benefits far outweigh any potential issue.
Regards,Daniel
Em quarta-feira, 1 de abril de 2020 06:57:27 GMT+2, Bobby Bruce 
 escreveu:

 Sounds like a great idea to me. I fail to see any downside.
--
Dr. Bobby R. Bruce
Room 2235,
Kemper Hall, UC Davis
Davis,
CA, 95616

web: https://www.bobbybruce.net


On Tue, Mar 31, 2020 at 7:03 PM Gabe Black  wrote:

> Hi folks. I (and probably many of you) have noticed that gerrit
> sometimes decides something needs to be rebased when it doesn't really
> seem to, and that rebase ends up forcing a rerun of verification which
> delays getting a patch checked in, and incurs extra cost for gem5 for
> the compute resources which run the verification.
>
> I asked for potential solutions from the gerrit team within google,
> and they suggested turning on this property of the verified label:
>
>
> https://gerrit-review.googlesource.com/Documentation/config-labels.htm
> l#label_copyAllScoresOnTrivialRebase
>
> They said that since we already have the "Rebase Always" merge
> strategy selected it wouldn't reduce the level of verification for
> changes, and while it wouldn't avoid having to do trivial rebases
> (there's a button in gerrit for that), it would avoid having to rerun 
> verification.
>
> Note that this would not make the verification label permanent, it
> would just mean that as long as the rebase was trivial (no commit
> message change, no diff change including context lines) then it would stay 
> verified.
>
> Does that sound like a good idea to everyone? If so, I can look into
> how to make that happen.
>
> Gabe
> ___
> gem5-dev mailing list
> gem5-dev@gem5.org
> http://m5sim.org/mailman/listinfo/gem5-dev
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev
IMPORTANT NOTICE: The contents of this email and any attachments are 
confidential and may also be privileged. If you are not the intended recipient, 
please notify the sender immediately and do not disclose the contents to any 
other person, use it for any purpose, or store or copy the information in any 
medium. Thank you.
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

Re: [gem5-dev] Making the verification bit sicky(ier) in gerrit

2020-04-01 Thread Daniel Carvalho
 I believe that in the case 2 changes from different people add a variable with 
the same name to the same scope, the rebase could still be trivial, yet the 
second change will generate a compilation error due to variable declaration 
repetition. Similar situations (variable removal, things being done twice, etc) 
could raise other compilation errors, and even runtime errors.
Anyway, I think this is quite rare (IIRC, a compilation error like this 
happened only once since I joined), and it will be caught right away on the 
following kokoro run, so the benefits far outweigh any potential issue.
Regards,Daniel
Em quarta-feira, 1 de abril de 2020 06:57:27 GMT+2, Bobby Bruce 
 escreveu:  
 
 Sounds like a great idea to me. I fail to see any downside.
--
Dr. Bobby R. Bruce
Room 2235,
Kemper Hall, UC Davis
Davis,
CA, 95616

web: https://www.bobbybruce.net


On Tue, Mar 31, 2020 at 7:03 PM Gabe Black  wrote:

> Hi folks. I (and probably many of you) have noticed that gerrit sometimes
> decides something needs to be rebased when it doesn't really seem to, and
> that rebase ends up forcing a rerun of verification which delays getting a
> patch checked in, and incurs extra cost for gem5 for the compute resources
> which run the verification.
>
> I asked for potential solutions from the gerrit team within google, and
> they suggested turning on this property of the verified label:
>
>
> https://gerrit-review.googlesource.com/Documentation/config-labels.html#label_copyAllScoresOnTrivialRebase
>
> They said that since we already have the "Rebase Always" merge strategy
> selected it wouldn't reduce the level of verification for changes, and
> while it wouldn't avoid having to do trivial rebases (there's a button in
> gerrit for that), it would avoid having to rerun verification.
>
> Note that this would not make the verification label permanent, it would
> just mean that as long as the rebase was trivial (no commit message change,
> no diff change including context lines) then it would stay verified.
>
> Does that sound like a good idea to everyone? If so, I can look into how to
> make that happen.
>
> Gabe
> ___
> gem5-dev mailing list
> gem5-dev@gem5.org
> http://m5sim.org/mailman/listinfo/gem5-dev
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev  
___
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev