Commit Graph

109 Commits

Author SHA1 Message Date
Ciro Santilli 六四事件 法轮功
1ca732bf75 userland: move more userland/arch/ logic into property tree 2019-05-05 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
eba97f9cef userland: try to make userland executable selection saner
Only allow existing files to be built, stop extension expansion madness.

cli_function: get_cli print booleans properly, was printing without --no-
for negations.
2019-05-05 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
8509f17a84 userland: native testing 2019-05-05 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
5daad53289 thread_pool: support passing thread IDs
Then use that to fix gem5 error log read race.
2019-05-05 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
b49ebb1c8a userland: get a bit closer to perfection 2019-05-05 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
85006363f8 test-user-mode: make perfect like build-userland
Multithreading and target selection.
2019-05-05 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
81a2ba927f userland: build really truly working now
userland test: start work, in a working state, but no features
2019-05-05 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
bbdf6cdc06 userland: maybe it really works 2019-05-05 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
abb67c14b8 preparing test_user_mode, need to generalize stuff as usual 2019-05-05 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
8618025682 mtops.h is perfect now 2019-05-05 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
1cc3ee8657 rename include to lkmc 2019-05-05 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
9c8f95d630 build-userland-in-tree is now a Python command
./build calls it, we did this to allow --download-dependencies to work
perfectly.
2019-05-05 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
aea97698c3 bak 2019-05-05 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
0ef494b681 migrate all 2019-05-05 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
146e568db8 move all our stuff into /lkmc in guest
Motivation: userland is getting several new subdirectories, it would be
too insane to just dump all of that in the guest root filesystem.

To alleviate the cd pain, .profile puts user inside /lkmc by default.
2019-05-05 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
0263c21557 userland: add assembly support
Move arm assembly cheat here, and start some work on x86 cheat as well.
2019-05-05 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
9581fa201c userland: in-tree build and clean 2019-03-13 00:00:02 +00:00
Ciro Santilli 六四事件 法轮功
e32b1cba45 ./build-userland: resolve relative paths 2019-03-13 00:00:03 +00:00
Ciro Santilli 六四事件 法轮功
276688bb33 userland: allow selecting targets, including directories 2019-03-13 00:00:02 +00:00
Ciro Santilli 六四事件 法轮功
bb28e260c5 common: add --force-rebuild option to build scripts 2019-03-13 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
1a0d15ca86 userland: convert make to python 2019-03-12 10:01:38 +00:00
Ciro Santilli 六四事件 法轮功
0deab8f8f7 user mode: use the nonexistent symlink workaround
I was considering setting --static by default to match gem5, but then
that breaks shared libraries like openblas... so let's just use the
ugly workaround for now as it seems to work...
2019-03-12 10:01:38 +00:00
Ciro Santilli 六四事件 法轮功
a9160d2217 Sort all os.listdir and os.walk to keep things more reproducible 2019-03-10 00:00:04 +00:00
Ciro Santilli 六四事件 法轮功
2e3f4c1484 baremetal: refactor build to reduce duplication 2019-03-10 00:00:03 +00:00
Ciro Santilli 六四事件 法轮功
d5e16fd8ae lkmc_vector_equal into lkmc.c
Document lkmc.c
2019-02-20 00:00:04 +00:00
Ciro Santilli 六四事件 法轮功
a8b6f758ba split --prebuilt and --host into --gcc-which and --qemu-which
Only one --host exists at ./build-modules, since that can select the host
kernel, which is independent from the toolchain.

Document that user mode simulation stopped working.
2019-02-16 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
01194dda5c userland: --static implies --userland-build-id static 2019-02-15 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
240ef1f431 linux: dominate defconfig
build-linux: make it more flexible to better meet the task
2019-02-06 00:00:01 +00:00
Ciro Santilli 六四事件 法轮功
125d14805f buildroot: move to glibc
selinux: continue attempt now that we have glibc, but still failing
2019-02-01 00:00:01 +00:00
Ciro Santilli 六四事件 法轮功
0578d8975e android: understand that rw are qcow2 2019-01-31 00:00:01 +00:00
Ciro Santilli 六四事件 法轮功
9012247540 android: understand the disk images 2019-01-30 00:00:01 +00:00
Ciro Santilli 六四事件 法轮功
5b39fd2129 android: add working run script 2019-01-30 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
72cd8f580d build-gem5: --clang 2019-01-25 00:00:03 +00:00
Ciro Santilli 六四事件 法轮功
7b99c45ac2 build-gem5: build individual unit tests 2019-01-25 00:00:02 +00:00
Ciro Santilli 六四事件 法轮功
ce8e363ca1 gem5: expose unit tests 2019-01-25 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
c858e57ed9 build-gem5: fix worktree checkout 2019-01-24 00:00:02 +00:00
Ciro Santilli 六四事件 法轮功
4f6051af1d build android sketch 2019-01-23 00:00:03 +00:00
Ciro Santilli 六四事件 法轮功
da900a579c LKMC v3.0
This is a squash commit, the unsquashed development went through many
unstable phases which would break bisects. The unsquashed branch is:
https://github.com/cirosantilli/linux-kernel-module-cheat/tree/v3.0-unsquash

The main improvement of this release was to greatly generalize the testing system.

The key addition was cli_function.py, which allows scripts such as ./run to
be transparently called either from Python or from the command line.

New tests scripts were created using this improved framework: test-baremetal
and test-user-mode.

We were lazy to port some of less important tests to the new setup, TODO's were
added, and we need comes they will be fixed. Getting started is however sacred
as usual and should work.

Other changes include:

-   gem5: update to 7fa4c946386e7207ad5859e8ade0bbfc14000d91

-   run: --tmux-args implies --tmux

-   run: add --userland-args to make userland arguments across QEMU and gem5

    Get rid of --userland-before as a consequence.

-   bring initrd and initramfs back to life

-   build-userland: create --static to make build a bit easier

-   gem5: --gem5-worktree also set --gem5-build-id

-   remove --gem5, use --emulator gem5 everywhere

    Allow passing --emulator multiple times for transparent tests selection
    just like --arch.

-   test-userland: allow selecting just a few tests

-   linux: update to v4.20

-   buildroot: update to 2018.08

    The main motivation for this was to fix the build for Ubuntu 18.10, which
    has glibc 2.28, which broke the 2018.05 build at the m4-host package with:

        #error "Please port gnulib fseeko.c to your platform!

-   getvar --type input

-   failed xen attempt, refactor timer, failed svc attempt, aarch64 use gicv3

-   build-doc: exit 1 on error, add to release testing

-   build: add --apt option to make things easier on other distros

-   build-linux: --no-modules-install
2019-01-22 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
d569854ae1 kernel: add section about /proc/version
Customize user, host and date
2018-12-05 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
f03e6ea2eb linux: add --linux-source-dir to have custom linux source dir 2018-12-04 15:10:02 +00:00
Ciro Santilli 六四事件 法轮功
38ba2b85fc gem5 display: a bit more info on dp650 2018-12-04 15:10:02 +00:00
Ciro Santilli 六四事件 法轮功
bc9e348a44 start simple integration to test dp650
Not yet merged on gem5 mailine, review published at:
https://gem5-review.googlesource.com/c/public/gem5/+/11036/1
2018-12-04 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
ba2976cc7f gem5: fix arm multicore with system.auto_reset_addr = True
baremetal: fix aarch64/no_bootloader/semihost_exit.S which was wrong
because was using unset sp for register block. Tests needed urgently!!
2018-11-26 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
7816f1f635 trace: improve a bit, fix bugs 2018-11-23 00:00:00 +00:00
Ciro Santilli 六四事件 法轮功
8dd01415f5 baremetal: only rebuild required files based on mtime
Move multcore test up with bootloader.
2018-11-22 00:00:03 +00:00
Ciro Santilli 六四事件 法轮功
f73eaaffd2 prebuilt: automatically pick up qemu from PATH if not built like qemu-img 2018-11-22 00:00:02 +00:00
Ciro Santilli 六四事件 法轮功
034bd3600f build-buildroot: fix qemu-img -T order
Fix #42
2018-11-20 00:00:03 +00:00
Ciro Santilli 六四事件 法轮功
33f286b354 run: make qemu-img more resilient to --prebuilt by not doing -T in that case 2018-11-19 22:35:16 +00:00
Ciro Santilli 六四事件 法轮功
238f1ad1c0 common: add --qemu option to override configs 2018-11-13 00:00:02 +00:00
Ciro Santilli 六四事件 法轮功
403d4a9d06 docker: migrate to python 2018-11-11 00:00:01 +00:00