mirror of
https://github.com/cirosantilli/linux-kernel-module-cheat.git
synced 2026-01-27 20:14:27 +01:00
bak
This commit is contained in:
63
README.adoc
63
README.adoc
@@ -193,7 +193,7 @@ We tend to support the following Ubuntu host versions at least:
|
|||||||
|
|
||||||
==== About the QEMU Buildroot setup
|
==== About the QEMU Buildroot setup
|
||||||
|
|
||||||
link:https://en.wikipedia.org/wiki/Buildroot[] is a set of `make` scripts that downloads from source and compiles compatible versions of:
|
link:https://en.wikipedia.org/wiki/Buildroot[Buildroot] is a set of `make` scripts that downloads from source and compiles compatible versions of:
|
||||||
|
|
||||||
* GCC
|
* GCC
|
||||||
* Linux kernel
|
* Linux kernel
|
||||||
@@ -238,9 +238,9 @@ For the most part, if you just add the `--gem5` option or `-gem5` suffix to all
|
|||||||
|
|
||||||
....
|
....
|
||||||
./configure --gem5 && \
|
./configure --gem5 && \
|
||||||
./build --arch aarch64 --gem5 && \
|
./build --arch aarch64 --gem5 && \
|
||||||
./build-gem5 --arch aarch64 && \
|
./build-gem5 --arch aarch64 && \
|
||||||
./run --arch aarch64 --gem5 &&\
|
./run --arch aarch64 --gem5 &&\
|
||||||
:;
|
:;
|
||||||
....
|
....
|
||||||
|
|
||||||
@@ -702,7 +702,7 @@ kmscube[706]: unhandled level 2 translation fault (11) at 0x00000000, esr 0x9200
|
|||||||
|
|
||||||
Tested on: link:http://github.com/cirosantilli/linux-kernel-module-cheat/commit/38fd6153d965ba20145f53dc1bb3ba34b336bde9[38fd6153d965ba20145f53dc1bb3ba34b336bde9]
|
Tested on: link:http://github.com/cirosantilli/linux-kernel-module-cheat/commit/38fd6153d965ba20145f53dc1bb3ba34b336bde9[38fd6153d965ba20145f53dc1bb3ba34b336bde9]
|
||||||
|
|
||||||
==== Graphic mode gem5 aarch64
|
===== Graphic mode gem5 aarch64
|
||||||
|
|
||||||
For `aarch64` we also need `-c kernel_config_fragment/display`:
|
For `aarch64` we also need `-c kernel_config_fragment/display`:
|
||||||
|
|
||||||
@@ -790,40 +790,25 @@ every time.
|
|||||||
|
|
||||||
To automate that, use the methods described at: <<init>>
|
To automate that, use the methods described at: <<init>>
|
||||||
|
|
||||||
|
=== Text mode
|
||||||
|
|
||||||
|
By default, we show the serial console directly on the current terminal, without opening a QEMU window.
|
||||||
|
|
||||||
|
Quit QEMU immediately:
|
||||||
|
|
||||||
|
....
|
||||||
|
Ctrl-A X
|
||||||
|
....
|
||||||
|
|
||||||
|
https://superuser.com/questions/1087859/how-to-quit-the-qemu-monitor-when-not-using-a-gui
|
||||||
|
|
||||||
|
Alternative methods:
|
||||||
|
|
||||||
|
* `quit` command on the <<qemu-monitor>>
|
||||||
|
* `pkill qemu`
|
||||||
|
|
||||||
=== printk
|
=== printk
|
||||||
|
|
||||||
=== Text mode
|
|
||||||
|
|
||||||
By default, we show the serial console directly on the current terminal, without opening a QEMU window.
|
|
||||||
|
|
||||||
Quit QEMU immediately:
|
|
||||||
|
|
||||||
....
|
|
||||||
Ctrl-A X
|
|
||||||
....
|
|
||||||
|
|
||||||
https://superuser.com/questions/1087859/how-to-quit-the-qemu-monitor-when-not-using-a-gui
|
|
||||||
|
|
||||||
Alternative methods:
|
|
||||||
|
|
||||||
* `quit` command on the <<qemu-monitor>>
|
|
||||||
* `pkill qemu`
|
|
||||||
=== Text mode
|
|
||||||
|
|
||||||
By default, we show the serial console directly on the current terminal, without opening a QEMU window.
|
|
||||||
|
|
||||||
Quit QEMU immediately:
|
|
||||||
|
|
||||||
....
|
|
||||||
Ctrl-A X
|
|
||||||
....
|
|
||||||
|
|
||||||
https://superuser.com/questions/1087859/how-to-quit-the-qemu-monitor-when-not-using-a-gui
|
|
||||||
|
|
||||||
Alternative methods:
|
|
||||||
|
|
||||||
* `quit` command on the <<qemu-monitor>>
|
|
||||||
* `pkill qemu`
|
|
||||||
We use `printk` a lot in our kernel modules, and it shows on the terminal by default, along with stdout and what you type.
|
We use `printk` a lot in our kernel modules, and it shows on the terminal by default, along with stdout and what you type.
|
||||||
|
|
||||||
Hide all `printk` messages:
|
Hide all `printk` messages:
|
||||||
@@ -4762,7 +4747,7 @@ Bibliography:
|
|||||||
Brute force monitor every shared interrupt that will accept us:
|
Brute force monitor every shared interrupt that will accept us:
|
||||||
|
|
||||||
....
|
....
|
||||||
./run --eval-busybox 'insmod /irq.ko' -x
|
./run --eval-busybox 'insmod /irq.ko' --graphic
|
||||||
....
|
....
|
||||||
|
|
||||||
Source: link:packages/kernel_modules/irq.c[].
|
Source: link:packages/kernel_modules/irq.c[].
|
||||||
@@ -4838,7 +4823,7 @@ CONFIG_DUMMY_IRQ=m
|
|||||||
And then you can do
|
And then you can do
|
||||||
|
|
||||||
....
|
....
|
||||||
./run -x
|
./run --graphic
|
||||||
....
|
....
|
||||||
|
|
||||||
and in guest:
|
and in guest:
|
||||||
|
|||||||
Reference in New Issue
Block a user