> On Nov. 14, 2016, 7:19 p.m., Michael LeBeane wrote:
> > src/sim/futex_map.hh, line 81
> > <http://reviews.gem5.org/r/3702/diff/2/?file=63440#file63440line81>
> >
> >     Why not something simple, like:
> >     
> >     return std::hash(addr) ^ (std::hash(tgid) << 1)

The return value has to be size_t which from the C standard will at least have 
a max value of 65536 
(http://stackoverflow.com/questions/918787/whats-sizeofsize-t-on-32-bit-vs-the-various-64-bit-data-models).
 The key values are uint64_t. Since the value is cap starts at 65536, I wanted 
to make sure that the entire number was being fed into the hash. That's why I 
work through with the for loop that breaks uint64_t apart based on 
sizeof(size_t).

I chose the largest prime number less than the max to start as the hash value. 
It could've been anything though; the choice was arbitrary.

So, is this OK? This functor is really just a dumb widget to satisfy std::hash. 
I don't expect the futex_map to grow to be so large that the hash value matters 
much.


> On Nov. 14, 2016, 7:19 p.m., Michael LeBeane wrote:
> > src/sim/system.hh, line 74
> > <http://reviews.gem5.org/r/3702/diff/2/?file=63446#file63446line74>
> >
> >     spurious whitespace change

The include style checker does this on it's own. I can't qref the patch without 
this being done (or hacking on it a bit).


- Brandon


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviews.gem5.org/r/3702/#review9052
-----------------------------------------------------------


On Nov. 14, 2016, 9:30 p.m., Brandon Potter wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviews.gem5.org/r/3702/
> -----------------------------------------------------------
> 
> (Updated Nov. 14, 2016, 9:30 p.m.)
> 
> 
> Review request for Default.
> 
> 
> Repository: gem5
> 
> 
> Description
> -------
> 
> Changeset 11728:9ca77be78b02
> ---------------------------
> syscall_emul: [PATCH 21/22] rewrite code related to system call exits
> 
> The changeset refactors exit, exit_group, and futex related exit
> functionality.
> 
> 
> Diffs
> -----
> 
>   src/sim/syscall_emul.hh c38fcdaa5fe508dbb18cc084e758ad0ce8e2e2f4 
>   src/sim/se_signal.hh PRE-CREATION 
>   src/sim/futex_map.hh PRE-CREATION 
>   src/sim/process.cc c38fcdaa5fe508dbb18cc084e758ad0ce8e2e2f4 
>   src/sim/syscall_emul.cc c38fcdaa5fe508dbb18cc084e758ad0ce8e2e2f4 
>   src/sim/system.hh c38fcdaa5fe508dbb18cc084e758ad0ce8e2e2f4 
>   src/sim/se_signal.cc PRE-CREATION 
> 
> Diff: http://reviews.gem5.org/r/3702/diff/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Brandon Potter
> 
>

_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to