Skip to content

Commit 0e9d24c

Browse files
committed
kvm: arm stub
1 parent 8e03699 commit 0e9d24c

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

README.adoc

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2850,6 +2850,31 @@ We don't enable KVM by default because:
28502850

28512851
One important use case for KVM is to fast forward gem5 execution, often to skip boot, take a <<gem5-checkpoint>>, and then move on to a more detailed and slow simulation
28522852

2853+
=== KVM arm
2854+
2855+
TODO: we haven't gotten it to work yet, but it should be doable, and this is an outline of how to do it. Just don't expect this to tested very often for now.
2856+
2857+
We can test KVM on arm by running this repository inside an Ubuntu arm QEMU VM.
2858+
2859+
This produces no speedup of course, since the VM is already slow since it cannot use KVM on the x86 host.
2860+
2861+
First, obtain an Ubuntu arm64 virtual machine as explained at: https://askubuntu.com/questions/281763/is-there-any-prebuilt-qemu-ubuntu-image32bit-online/1081171#1081171
2862+
2863+
Then, from inside that image:
2864+
2865+
....
2866+
sudo apt-get install git
2867+
git clone https://github.com/cirosantilli/linux-kernel-module-cheat
2868+
cd linux-kernel-module-cheat
2869+
sudo ./setup -y
2870+
....
2871+
2872+
and then proceed exactly as in <<prebiult>>.
2873+
2874+
We don't want to build the full Buildroot image inside the VM as that would be way too slow, thus the recommendation for the prebuilt setup.
2875+
2876+
TODO: do the right thing and cross compile QEMU and gem5. gem5's Python parts might be a pain. QEMU should be easy: https://stackoverflow.com/questions/26514252/cross-compile-qemu-for-arm
2877+
28532878
== User mode simulation
28542879

28552880
Both QEMU and gem5 have an user mode simulation mode in addition to full system simulation that we consider elsewhere in this project.

0 commit comments

Comments
 (0)