On Nov. 19, 2014, 4:39 p.m., Gabe Black wrote:
> > Overall, I'd prefer this to be an internal API and have some way of 
> > notifying the VM through the System instead of allowing objects to poke 
> > around directly. See my reply in the email thread for RB #2513.

The device is asking for a specific service from a specific type of VM. 
Pretending an interface is generic when it really isn't is counterproductive. 
Not only does it not provide any additional flexibility, it obfuscates what the 
code is actually doing. What purpose would a device have to declare it has 
internal memory if it isn't so a VM can indirectly find out about it? If there 
isn't one, why shouldn't it make it clear what it's trying to do, instead of 
using a round about approach to get to the same place? If there is, what are 
the odds that a mechanism designed without any preconception of that use will 
fit well?

Also, there's no generalized concept of a VM anywhere else in gem5. Making the 
interface generic (or generic looking) in this one particular place would be a 
half effort at best. When/if there's a second type of VM, then we can determine 
what can/should be generalized. If there's ever as second device which would 
use this mechanism, then we'll know what those requirements look like. If 
there's ever a second use case for this generic device memory abstraction, then 
we can know what it's requirements are. In the mean time, we'd be building 
fancy structures that don't serve much of a purpose, incur a non-trivial 
complexity/implementation cost, and would likely need to be redone in the 
future anyway.


- Gabe


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


On Nov. 18, 2014, 1:29 a.m., Gabe Black wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviews.gem5.org/r/2510/
> -----------------------------------------------------------
> 
> (Updated Nov. 18, 2014, 1:29 a.m.)
> 
> 
> Review request for Default.
> 
> 
> Repository: gem5
> 
> 
> Description
> -------
> 
> Changeset 10546:b4c9aa186307
> ---------------------------
> Let other objects set up memory like regions in a KVM VM.
> 
> 
> Diffs
> -----
> 
>   src/cpu/kvm/vm.hh f66948658a36b6874e84ee5da37e70d351287cb4 
>   src/cpu/kvm/vm.cc f66948658a36b6874e84ee5da37e70d351287cb4 
> 
> Diff: http://reviews.gem5.org/r/2510/diff/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Gabe Black
> 
>

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

Reply via email to