[siemens/jailhouse] a7cff2: x86: Add support for 32-bit displacement in mod 0

9 views
Skip to first unread message

GitHub

unread,
Jan 15, 2016, 4:22:08 AM1/15/16
to jailho...@googlegroups.com
Branch: refs/heads/next
Home: https://github.com/siemens/jailhouse
Commit: a7cff2cab9dfd300708562ed253920980aa0418e
https://github.com/siemens/jailhouse/commit/a7cff2cab9dfd300708562ed253920980aa0418e
Author: Jan Kiszka <jan.k...@siemens.com>
Date: 2016-01-15 (Fri, 15 Jan 2016)

Changed paths:
M hypervisor/arch/x86/mmio.c

Log Message:
-----------
x86: Add support for 32-bit displacement in mod 0

Easy enough to add: a 32-bit address displacement follows the ModR/M
byte, and nothing else.

Turned out to be useful while testing with a sub-page HPET memory
region.

Signed-off-by: Jan Kiszka <jan.k...@siemens.com>


Commit: 6f35c09660ee9bdfc8339dc2d3c4f33adc6d6459
https://github.com/siemens/jailhouse/commit/6f35c09660ee9bdfc8339dc2d3c4f33adc6d6459
Author: Jan Kiszka <jan.k...@siemens.com>
Date: 2016-01-15 (Fri, 15 Jan 2016)

Changed paths:
M hypervisor/control.c
M hypervisor/include/jailhouse/control.h
M hypervisor/setup.c

Log Message:
-----------
core: Introduce and use for_each_mem_region

This iterator simplifies walking over memory regions in cell and system
configs.

Signed-off-by: Jan Kiszka <jan.k...@siemens.com>


Commit: 19ff67fff942b43fc7c4f5aa696138cfee76345c
https://github.com/siemens/jailhouse/commit/19ff67fff942b43fc7c4f5aa696138cfee76345c
Author: Jan Kiszka <jan.k...@siemens.com>
Date: 2016-01-15 (Fri, 15 Jan 2016)

Changed paths:
M hypervisor/arch/arm/mmio.c

Log Message:
-----------
arm: Remove useless warning from arm_mmio_perform_access

This functions is only called with size 1, 2 or 4. This is ensured by
arch_handle_dabt, the only (indirect) caller, which generates the size
accordingly (1 << sas) and filters out sizes > 4.

Signed-off-by: Jan Kiszka <jan.k...@siemens.com>


Commit: a3ad286621b5f190c93d9d08cd2e6c2c31423bb1
https://github.com/siemens/jailhouse/commit/a3ad286621b5f190c93d9d08cd2e6c2c31423bb1
Author: Jan Kiszka <jan.k...@siemens.com>
Date: 2016-01-15 (Fri, 15 Jan 2016)

Changed paths:
M hypervisor/arch/arm/gic-common.c
M hypervisor/arch/arm/gic-v3.c
M hypervisor/arch/arm/include/asm/mmio.h
M hypervisor/arch/arm/mmio.c
M hypervisor/include/jailhouse/mmio.h
M hypervisor/mmio.c

Log Message:
-----------
core: Introduce and use mmio_perform_access

Generalize arm_mmio_perform_access to mmio_perform_access which can also
be used on other architectures, including those with 64-bit MMIO
support.

Signed-off-by: Jan Kiszka <jan.k...@siemens.com>


Commit: ad743fd6be5ae6bc8dcd16067a40d17ce3ed2842
https://github.com/siemens/jailhouse/commit/ad743fd6be5ae6bc8dcd16067a40d17ce3ed2842
Author: Jan Kiszka <jan.k...@siemens.com>
Date: 2016-01-15 (Fri, 15 Jan 2016)

Changed paths:
M hypervisor/control.c
M hypervisor/include/jailhouse/cell-config.h
M hypervisor/include/jailhouse/control.h
M hypervisor/setup.c

Log Message:
-----------
core: Remove memory regions check

Most of the checks will be removed when adding sub-page memory region
support. We rather need some offline validation outside the hypervisor
eventually.

Signed-off-by: Jan Kiszka <jan.k...@siemens.com>


Commit: 1bd483532cfd3a50d81bc4cd8697d79591c7ea83
https://github.com/siemens/jailhouse/commit/1bd483532cfd3a50d81bc4cd8697d79591c7ea83
Author: Jan Kiszka <jan.k...@siemens.com>
Date: 2016-01-15 (Fri, 15 Jan 2016)

Changed paths:
M hypervisor/control.c
M hypervisor/include/jailhouse/cell-config.h
M hypervisor/include/jailhouse/mmio.h
M hypervisor/mmio.c
M hypervisor/setup.c

Log Message:
-----------
core: Add support for sub-page MMIO regions

This allows to specify memory regions for MMIO accesses that do not
start or end on page boundaries. Instead of mapping full pages into the
cell, sub-page MMIO requires to intercept the page accesses, validate
all parameters against the target memory region and then perform the
access in hypervisor context, provided the validation was successful.

As the access can now fail in hypervisor context, we need to be more
picky: besides read/write permissions, alignment and access widths can
be checked additionally. These attributes are specified via the
JAILHOUSE_MEM_IO_* flags.

Sub-page MMIO is surely not a fast path. It not only requires world
switches between cell and hypervisor, the current implementation also
uses dynamic mappings. This is easier to implement than a static mapping
scheme, but surely not faster. We may revisit this design later on,
ideally towards a 1:1 mapping scheme.

Signed-off-by: Jan Kiszka <jan.k...@siemens.com>


Commit: a7fde67f5cd71c34edeacc9709668046fec5e83b
https://github.com/siemens/jailhouse/commit/a7fde67f5cd71c34edeacc9709668046fec5e83b
Author: Jan Kiszka <jan.k...@siemens.com>
Date: 2016-01-15 (Fri, 15 Jan 2016)

Changed paths:
M configs/bananapi-gic-demo.c
M configs/bananapi-uart-demo.c
M configs/bananapi.c

Log Message:
-----------
configs: Update Banana Pi configs to make use of unaligned MMIO regions

Split up the MMIO page 0x1c20000 on the Alwinner A20 into CCU,
interrupts controller, GPIOs and the timer. GPIOs are further broken up
to allow assigning port H to the gic-demo cell, along with the CCU (to
control the UART timing).

Signed-off-by: Jan Kiszka <jan.k...@siemens.com>


Commit: 41f929d96b77113b1d5701fba4af30ed529cffee
https://github.com/siemens/jailhouse/commit/41f929d96b77113b1d5701fba4af30ed529cffee
Author: Daniel Sangorrin <daniel.s...@toshiba.co.jp>
Date: 2016-01-15 (Fri, 15 Jan 2016)

Changed paths:
M configs/bananapi.c
M configs/jetson-tk1.c
M configs/vexpress.c
M driver/main.c
M hypervisor/arch/arm/dbg-write.c
M hypervisor/include/jailhouse/cell-config.h
M hypervisor/include/jailhouse/header.h
M hypervisor/paging.c

Log Message:
-----------
console: rename uart to console

Jailhouse may support different console devices other than
the UART. For that reason, we adopt a more generic name.

Signed-off-by: Daniel Sangorrin <daniel.s...@toshiba.co.jp>
Signed-off-by: Jan Kiszka <jan.k...@siemens.com>


Commit: ab51debab3bd89eb94adec27ed12151920f8cba2
https://github.com/siemens/jailhouse/commit/ab51debab3bd89eb94adec27ed12151920f8cba2
Author: Daniel Sangorrin <daniel.s...@toshiba.co.jp>
Date: 2016-01-15 (Fri, 15 Jan 2016)

Changed paths:
A Documentation/vga-console.txt
M hypervisor/arch/x86/dbg-write.c

Log Message:
-----------
vga: Add support for VGA text buffer output on x86

Hypervisor messages are useful for debugging and are
typically handed out to the serial port. Unfortunately, x86
computers often lack of a serial port. This patch allows
hypervisor messages to be redirected to a screen by leveraging
the traditional VGA text buffer mode.

Signed-off-by: Daniel Sangorrin <daniel.s...@toshiba.co.jp>
Signed-off-by: Jan Kiszka <jan.k...@siemens.com>


Compare: https://github.com/siemens/jailhouse/compare/d5cef80b033a...ab51debab3bd

GitHub

unread,
Jan 21, 2016, 5:04:52 AM1/21/16
to jailho...@googlegroups.com
Branch: refs/heads/coverity_scan
Commit: 24ebdd8f5bedb8f76bd0e45c2e6b80876d8137c0
https://github.com/siemens/jailhouse/commit/24ebdd8f5bedb8f76bd0e45c2e6b80876d8137c0
Author: Daniel Sangorrin <daniel.s...@toshiba.co.jp>
Date: 2016-01-21 (Thu, 21 Jan 2016)

Changed paths:
M configs/bananapi.c
M configs/jetson-tk1.c
M configs/vexpress.c
M driver/main.c
M hypervisor/arch/arm/dbg-write.c
M hypervisor/include/jailhouse/cell-config.h
M hypervisor/include/jailhouse/header.h
M hypervisor/paging.c

Log Message:
-----------
console: rename uart to console

Jailhouse may support different console devices other than
the UART. For that reason, we adopt a more generic name.

Signed-off-by: Daniel Sangorrin <daniel.s...@toshiba.co.jp>
Signed-off-by: Jan Kiszka <jan.k...@siemens.com>


Commit: 1cec750a5cfffc1e0942021c29120e2d5d061688
https://github.com/siemens/jailhouse/commit/1cec750a5cfffc1e0942021c29120e2d5d061688
Author: Daniel Sangorrin <daniel.s...@toshiba.co.jp>
Date: 2016-01-21 (Thu, 21 Jan 2016)

Changed paths:
A Documentation/vga-console.txt
M hypervisor/arch/x86/dbg-write.c

Log Message:
-----------
vga: Add support for VGA text buffer output on x86

Hypervisor messages are useful for debugging and are
typically handed out to the serial port. Unfortunately, x86
computers often lack of a serial port. This patch allows
hypervisor messages to be redirected to a screen by leveraging
the traditional VGA text buffer mode.

Signed-off-by: Daniel Sangorrin <daniel.s...@toshiba.co.jp>
[Jan: avoid row_line writeback in panic case, remove redundant braces]
Signed-off-by: Jan Kiszka <jan.k...@siemens.com>


Commit: 841837ae06f3c98981f8e2ecaeeea1c4a2ba6636
https://github.com/siemens/jailhouse/commit/841837ae06f3c98981f8e2ecaeeea1c4a2ba6636
Author: Jan Kiszka <jan.k...@siemens.com>
Date: 2016-01-21 (Thu, 21 Jan 2016)

Changed paths:
M .travis.yml

Log Message:
-----------
ci: Drop COVERITY_SCAN_TOKEN from Travis configuration

This is better managed via the Travis CI project settings.

Signed-off-by: Jan Kiszka <jan.k...@siemens.com>


Compare: https://github.com/siemens/jailhouse/compare/707328a0730c...841837ae06f3

GitHub

unread,
Jan 26, 2016, 7:10:43 AM1/26/16
to jailho...@googlegroups.com
Branch: refs/heads/master
Commit: aec43c06d9adf28077f992b80047eb8a9351f04c
https://github.com/siemens/jailhouse/commit/aec43c06d9adf28077f992b80047eb8a9351f04c
Author: Jan Kiszka <jan.k...@siemens.com>
Date: 2016-01-21 (Thu, 21 Jan 2016)

Changed paths:
M ci/gen-kernel-build.sh
M ci/kernel-config-banana-pi
M ci/kernel-config-vexpress
M ci/kernel-config-x86

Log Message:
-----------
ci: Update build environment to kernel 4.4

The renovation will be needed when adding arm64 to CI.

Signed-off-by: Jan Kiszka <jan.k...@siemens.com>


Commit: 148c58028fc24db9889fa3db5a876f9a5c9a0eab
https://github.com/siemens/jailhouse/commit/148c58028fc24db9889fa3db5a876f9a5c9a0eab
Author: Jan Kiszka <jan.k...@siemens.com>
Date: 2016-01-21 (Thu, 21 Jan 2016)

Changed paths:
M ci/build-all-configs.sh

Log Message:
-----------
ci: Break the build properly if anything goes wrong

If the make failed, we didn't bail out properly so far, leaving false
negatives of test builds behind.

Signed-off-by: Jan Kiszka <jan.k...@siemens.com>


Commit: ac90dc4cc1bf0b90f319a3d32ed6b5093aa1a209
https://github.com/siemens/jailhouse/commit/ac90dc4cc1bf0b90f319a3d32ed6b5093aa1a209
Author: Jan Kiszka <jan.k...@siemens.com>
Date: 2016-01-22 (Fri, 22 Jan 2016)

Changed paths:
M .travis.yml

Log Message:
-----------
ci: Work around Travis Trusty issue #5326

Current Trusty beta leaves non-system installations of python in the
PATH. Therefore, we fail to find the Mako package during build.

Signed-off-by: Jan Kiszka <jan.k...@siemens.com>


Commit: 3f7b8249d8fa7069ddad882239292aae321caf0a
https://github.com/siemens/jailhouse/commit/3f7b8249d8fa7069ddad882239292aae321caf0a
Author: Jan Kiszka <jan.k...@siemens.com>
Date: 2016-01-23 (Sat, 23 Jan 2016)

Changed paths:
M .travis.yml

Log Message:
-----------
ci: Switch to Wily for packages too old in Trusty

Vivid is EOL soon, so move on now.

Signed-off-by: Jan Kiszka <jan.k...@siemens.com>


Compare: https://github.com/siemens/jailhouse/compare/707328a0730c...3f7b8249d8fa
Reply all
Reply to author
Forward
0 new messages