[siemens/jailhouse] 822f76: arm-common: gic-v3: Mark last CPUs GICR as last

2018-04-23 Thread GitHub
  Branch: refs/heads/master
  Home:   https://github.com/siemens/jailhouse
  Commit: 822f7697cfaa5ac492356d24feb273565f04ac45
  
https://github.com/siemens/jailhouse/commit/822f7697cfaa5ac492356d24feb273565f04ac45
  Author: Lokesh Vutla 
  Date:   2018-03-19 (Mon, 19 Mar 2018)

  Changed paths:
M hypervisor/arch/arm-common/gic-v3.c

  Log Message:
  ---
  arm-common: gic-v3: Mark last CPUs GICR as last

There are scenarios where Linux boots up with less number of cores
than the SoC supports. In such cases, finding GICR region marked with
GICR_TYPER_Last is not possible for any non-root cell. This is
because hypervisor gives an unhandled trap to any access of GICR
region that does not correspond to system CPU set.

Fix this by emulating GICR region as last that corresponds to the
last available CPU in the system CPU set.

Signed-off-by: Lokesh Vutla 
Signed-off-by: Jan Kiszka 


  Commit: d540edca6e7d94d9e72476bfb9e51d274be79a67
  
https://github.com/siemens/jailhouse/commit/d540edca6e7d94d9e72476bfb9e51d274be79a67
  Author: Henning Schild 
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
M tools/jailhouse-config-create

  Log Message:
  ---
  tools: config-create: update iomem parser to work on recent kernels

More recent kernels (did not try to identify which version) spell the
string "reserved" with a capital letter in front. Allow any case-
representation of the string.

Reported-by: Anil Kumar 
Signed-off-by: Henning Schild 
Signed-off-by: Jan Kiszka 


  Commit: a667538fb8ef1287f5dd4d5a934a431e3dc97ac2
  
https://github.com/siemens/jailhouse/commit/a667538fb8ef1287f5dd4d5a934a431e3dc97ac2
  Author: Jan Kiszka 
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
M tools/jailhouse-cell-linux

  Log Message:
  ---
  tools: cell-linux: Add support for compressed arm64 kernel images

The arm64 Linux boot protocol allows compressed images but they have to
be decompressed by the bootloader, and that's jailhouse-cell-linux in
our case. Detect those images by trying to decompress them and use the
decompressed version from then on.

Signed-off-by: Jan Kiszka 


  Commit: a7c5161ada079db274eb1f2df94d153cd203afe3
  
https://github.com/siemens/jailhouse/commit/a7c5161ada079db274eb1f2df94d153cd203afe3
  Author: Jan Kiszka 
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
M tools/jailhouse-cell-linux

  Log Message:
  ---
  tools: cell-linux: Use cached kernel image on x86

Now that we read the kernel image completely, use that image for
X86ZeroPage and X86SetupHeader, rather than reading from the file again.

Signed-off-by: Jan Kiszka 


  Commit: e8370e9d85492c1897ed248a76e08b577b498f23
  
https://github.com/siemens/jailhouse/commit/e8370e9d85492c1897ed248a76e08b577b498f23
  Author: Jan Kiszka 
  Date:   2018-04-03 (Tue, 03 Apr 2018)

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

  Log Message:
  ---
  x86: svm: Intercept all SVM instructions

Not doing so can have undesirable side effects, like clearing GIF on
the calling CPU.

Signed-off-by: Jan Kiszka 


  Commit: d7472246dffc1fbe4f5ee0da7c4bae981cf3f3a1
  
https://github.com/siemens/jailhouse/commit/d7472246dffc1fbe4f5ee0da7c4bae981cf3f3a1
  Author: Ralf Ramsauer 
  Date:   2018-04-03 (Tue, 03 Apr 2018)

  Changed paths:
M inmates/lib/arm-common/include/inmate.h
M inmates/lib/arm/include/arch/inmate.h
M inmates/lib/arm64/include/arch/inmate.h

  Log Message:
  ---
  inmates: arm: fix broken heartbeat

Since 9675814c6fe3e6 ("arm/arm64: Reject hypercalls with wrong immediate
code"), Jailhouse rejects all HVCs with immediate codes other than
0x4a48.

This breaks the assumption that the heartbeat() pseudo HVC makes on all
ARM platforms.

We must provide 0x4a48 as immediate code, but use an invalid function
argument in order to return to our cell. 0xdeadbeef sounds reasonable.

Let's use this cance to consolidate arm and arm64 code and use our
common jailhouse_call interface.

Fixes: 9675814c6fe3e6 ("arm/arm64: Reject hypercalls with wrong immediate code")
Signed-off-by: Ralf Ramsauer 
Signed-off-by: Jan Kiszka 


  Commit: 152738bbb72c9f584fe6bc9d618ba72f3354ae84
  
https://github.com/siemens/jailhouse/commit/152738bbb72c9f584fe6bc9d618ba72f3354ae84
  Author: f...@ozog.com 
  Date:   2018-04-12 (Thu, 12 Apr 2018)

  Changed paths:
M driver/main.c

  Log Message:
  ---
  driver: ensure jailhouse is not enabled when VT-X is disabled by firmware

Whithout the check,
jailhouse enable configs/x86/sysconfig.cell
results 

[siemens/jailhouse] 822f76: arm-common: gic-v3: Mark last CPUs GICR as last

2018-04-11 Thread GitHub
  Branch: refs/heads/coverity_scan
  Home:   https://github.com/siemens/jailhouse
  Commit: 822f7697cfaa5ac492356d24feb273565f04ac45
  
https://github.com/siemens/jailhouse/commit/822f7697cfaa5ac492356d24feb273565f04ac45
  Author: Lokesh Vutla 
  Date:   2018-03-19 (Mon, 19 Mar 2018)

  Changed paths:
M hypervisor/arch/arm-common/gic-v3.c

  Log Message:
  ---
  arm-common: gic-v3: Mark last CPUs GICR as last

There are scenarios where Linux boots up with less number of cores
than the SoC supports. In such cases, finding GICR region marked with
GICR_TYPER_Last is not possible for any non-root cell. This is
because hypervisor gives an unhandled trap to any access of GICR
region that does not correspond to system CPU set.

Fix this by emulating GICR region as last that corresponds to the
last available CPU in the system CPU set.

Signed-off-by: Lokesh Vutla 
Signed-off-by: Jan Kiszka 


  Commit: d540edca6e7d94d9e72476bfb9e51d274be79a67
  
https://github.com/siemens/jailhouse/commit/d540edca6e7d94d9e72476bfb9e51d274be79a67
  Author: Henning Schild 
  Date:   2018-03-26 (Mon, 26 Mar 2018)

  Changed paths:
M tools/jailhouse-config-create

  Log Message:
  ---
  tools: config-create: update iomem parser to work on recent kernels

More recent kernels (did not try to identify which version) spell the
string "reserved" with a capital letter in front. Allow any case-
representation of the string.

Reported-by: Anil Kumar 
Signed-off-by: Henning Schild 
Signed-off-by: Jan Kiszka 


  Commit: a667538fb8ef1287f5dd4d5a934a431e3dc97ac2
  
https://github.com/siemens/jailhouse/commit/a667538fb8ef1287f5dd4d5a934a431e3dc97ac2
  Author: Jan Kiszka 
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
M tools/jailhouse-cell-linux

  Log Message:
  ---
  tools: cell-linux: Add support for compressed arm64 kernel images

The arm64 Linux boot protocol allows compressed images but they have to
be decompressed by the bootloader, and that's jailhouse-cell-linux in
our case. Detect those images by trying to decompress them and use the
decompressed version from then on.

Signed-off-by: Jan Kiszka 


  Commit: a7c5161ada079db274eb1f2df94d153cd203afe3
  
https://github.com/siemens/jailhouse/commit/a7c5161ada079db274eb1f2df94d153cd203afe3
  Author: Jan Kiszka 
  Date:   2018-03-27 (Tue, 27 Mar 2018)

  Changed paths:
M tools/jailhouse-cell-linux

  Log Message:
  ---
  tools: cell-linux: Use cached kernel image on x86

Now that we read the kernel image completely, use that image for
X86ZeroPage and X86SetupHeader, rather than reading from the file again.

Signed-off-by: Jan Kiszka 


  Commit: e8370e9d85492c1897ed248a76e08b577b498f23
  
https://github.com/siemens/jailhouse/commit/e8370e9d85492c1897ed248a76e08b577b498f23
  Author: Jan Kiszka 
  Date:   2018-04-03 (Tue, 03 Apr 2018)

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

  Log Message:
  ---
  x86: svm: Intercept all SVM instructions

Not doing so can have undesirable side effects, like clearing GIF on
the calling CPU.

Signed-off-by: Jan Kiszka 


  Commit: d7472246dffc1fbe4f5ee0da7c4bae981cf3f3a1
  
https://github.com/siemens/jailhouse/commit/d7472246dffc1fbe4f5ee0da7c4bae981cf3f3a1
  Author: Ralf Ramsauer 
  Date:   2018-04-03 (Tue, 03 Apr 2018)

  Changed paths:
M inmates/lib/arm-common/include/inmate.h
M inmates/lib/arm/include/arch/inmate.h
M inmates/lib/arm64/include/arch/inmate.h

  Log Message:
  ---
  inmates: arm: fix broken heartbeat

Since 9675814c6fe3e6 ("arm/arm64: Reject hypercalls with wrong immediate
code"), Jailhouse rejects all HVCs with immediate codes other than
0x4a48.

This breaks the assumption that the heartbeat() pseudo HVC makes on all
ARM platforms.

We must provide 0x4a48 as immediate code, but use an invalid function
argument in order to return to our cell. 0xdeadbeef sounds reasonable.

Let's use this cance to consolidate arm and arm64 code and use our
common jailhouse_call interface.

Fixes: 9675814c6fe3e6 ("arm/arm64: Reject hypercalls with wrong immediate code")
Signed-off-by: Ralf Ramsauer 
Signed-off-by: Jan Kiszka 


Compare: 
https://github.com/siemens/jailhouse/compare/086b4fbf91db...d7472246dffc

-- 
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 jailhouse-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[siemens/jailhouse] 822f76: arm-common: gic-v3: Mark last CPUs GICR as last

2018-03-20 Thread GitHub
  Branch: refs/heads/next
  Home:   https://github.com/siemens/jailhouse
  Commit: 822f7697cfaa5ac492356d24feb273565f04ac45
  
https://github.com/siemens/jailhouse/commit/822f7697cfaa5ac492356d24feb273565f04ac45
  Author: Lokesh Vutla 
  Date:   2018-03-19 (Mon, 19 Mar 2018)

  Changed paths:
M hypervisor/arch/arm-common/gic-v3.c

  Log Message:
  ---
  arm-common: gic-v3: Mark last CPUs GICR as last

There are scenarios where Linux boots up with less number of cores
than the SoC supports. In such cases, finding GICR region marked with
GICR_TYPER_Last is not possible for any non-root cell. This is
because hypervisor gives an unhandled trap to any access of GICR
region that does not correspond to system CPU set.

Fix this by emulating GICR region as last that corresponds to the
last available CPU in the system CPU set.

Signed-off-by: Lokesh Vutla 
Signed-off-by: Jan Kiszka 


-- 
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 jailhouse-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.