changeset fd9a83e5178a in /z/repo/gem5
details: http://repo.gem5.org/gem5?cmd=changeset;node=fd9a83e5178a
description:
sim: add validation to make sure there is memory where we're loading
the kernel
diffstat:
src/sim/system.cc | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diffs (17 lines):
diff -r 635a7cdec721 -r fd9a83e5178a src/sim/system.cc
--- a/src/sim/system.cc Fri Sep 07 14:20:52 2012 -0500
+++ b/src/sim/system.cc Fri Sep 07 14:20:53 2012 -0500
@@ -266,6 +266,13 @@
* Load the kernel code into memory
*/
if (params()->kernel != "") {
+ // Validate kernel mapping before loading binary
+ if (!(isMemAddr(kernelStart & loadAddrMask) &&
+ isMemAddr(kernelEnd & loadAddrMask))) {
+ fatal("Kernel is mapped to invalid location (not memory). "
+ "kernelStart 0x(%x) - kernelEnd 0x(%x)\n", kernelStart,
+ kernelEnd);
+ }
// Load program sections into memory
kernel->loadSections(physProxy, loadAddrMask);
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev