Hi,

Didn't have much time to work at it in the last period, so it took a while.

There are two similar patch batches: PATCH v2.1 and PATCH v2.2.

v2.1 is the version with the colored ioremapping in the Linux driver. I've 
tried to keep the replication of the code to a minimum, but the main coloring 
loop has to be replicated in both driver and hypervisor.

v2.2 is the version with the temporary "root mapping offset" that allows 
reusing the plain Linux ioremap.

I've removed all other "additional" patches and just focused on the bulk of the 
coloring implementation.

Overall the changes are:
git diff --stat siemens/master driver/ hypervisor/ include/
v2.1) 15 files changed, 515 insertions(+), 22 deletions(-)
v2.2) 15 files changed, 468 insertions(+), 24 deletions(-)

PATCH v2.1 is also here 
https://gitlab.com/bastoni/jailhouse/-/tree/for_upstream/202103_coloring_driver
PATCH v2.2 is also here 
https://gitlab.com/bastoni/jailhouse/-/tree/for_upstream/202103_coloring

Feedback/comment welcome,

Thanks,
Andrea

Andrea Bastoni (7):
  arm-common: bitops: add most-significant-bit operation
  include: cache-partitioning via coloring, add configuration
  hypervisor: arm64, arm-common: add cache-partitioning via coloring
  driver: provide colored ioremap operation
  configs: arm64: add example configuration for colored ZCU102 inmate
  configs: arm64: add coloring example for qemu-arm64
  configs: arm64: hook-in coloring parameters for ZCU102

Luca Miccio (2):
  pyjailhouse: add support for colored regions
  Documentation: add description and usage of cache coloring support

 Documentation/cache-coloring.md               | 177 ++++++++++++++++++
 configs/arm64/qemu-arm64-inmate-demo-col.c    | 134 +++++++++++++
 configs/arm64/qemu-arm64.c                    |   3 +
 configs/arm64/zynqmp-zcu102-inmate-demo-col.c |  75 ++++++++
 configs/arm64/zynqmp-zcu102.c                 |   3 +
 driver/cell.c                                 |  11 +-
 driver/main.c                                 |  75 ++++++++
 driver/main.h                                 |   3 +
 .../arch/arm-common/include/asm/bitops.h      |  10 +
 .../arch/arm-common/include/asm/coloring.h    |  45 +++++
 .../arch/arm-common/include/asm/dcaches.h     |   8 +
 hypervisor/arch/arm-common/mmu_cell.c         |  68 +++++--
 hypervisor/arch/arm64/Kbuild                  |   1 +
 hypervisor/arch/arm64/coloring.c              | 109 +++++++++++
 hypervisor/arch/arm64/include/asm/coloring.h  | 140 ++++++++++++++
 hypervisor/arch/arm64/setup.c                 |   3 +
 hypervisor/control.c                          |   6 +
 hypervisor/include/jailhouse/control.h        |   4 +
 include/jailhouse/cell-config.h               |   9 +
 include/jailhouse/coloring.h                  |  45 +++++
 pyjailhouse/config_parser.py                  |   9 +-
 21 files changed, 913 insertions(+), 25 deletions(-)
 create mode 100644 Documentation/cache-coloring.md
 create mode 100644 configs/arm64/qemu-arm64-inmate-demo-col.c
 create mode 100644 configs/arm64/zynqmp-zcu102-inmate-demo-col.c
 create mode 100644 hypervisor/arch/arm-common/include/asm/coloring.h
 create mode 100644 hypervisor/arch/arm64/coloring.c
 create mode 100644 hypervisor/arch/arm64/include/asm/coloring.h
 create mode 100644 include/jailhouse/coloring.h

-- 
2.30.2

-- 
You received this message because you are subscribed to the Google Groups 
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jailhouse-dev/20210322194411.82520-1-andrea.bastoni%40tum.de.

Reply via email to