Branch: refs/heads/next
Home: https://github.com/siemens/jailhouse
Commit: da353b5769a2a2266f206c1d0e53402e4b99386c
https://github.com/siemens/jailhouse/commit/da353b5769a2a2266f206c1d0e53402e4b99386c
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/asm-defines.c
M hypervisor/arch/arm/entry.S
M hypervisor/arch/arm/include/asm/percpu.h
M hypervisor/arch/arm/setup.c
Log Message:
-----------
arm: Use asm-defines.h for struct per_cpu members
Port the logic over from x86 and also drop CHECK_ASSUMPTION here.
The only slightly ugly detail: the PERCPU_SIZE_SHIFT define is now
duplicated in both asm/percpu.h instances because there is no good
generic header yet to hold it. Can be cleaned up later on.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: fd447ceecb0e2555d017c3b73c9bd5d9b62f1436
https://github.com/siemens/jailhouse/commit/fd447ceecb0e2555d017c3b73c9bd5d9b62f1436
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/smp-vexpress.c
Log Message:
-----------
arm: Add missing printk.h include
Some implicit inclusion disappeared.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: 7c2644bf2bd841b5d97a8f94856eb57b753a2ef9
https://github.com/siemens/jailhouse/commit/7c2644bf2bd841b5d97a8f94856eb57b753a2ef9
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/gic-v3.c
Log Message:
-----------
arm: Fix build warning in gic-v3
Leftover from the mmio_perform_access refactoring.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: 315273ebcf6d3cc2c28bc3744118fb2f66a72a54
https://github.com/siemens/jailhouse/commit/315273ebcf6d3cc2c28bc3744118fb2f66a72a54
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/include/asm/irqchip.h
Log Message:
-----------
arm: Remove unneeded include from irqchip.h
Signed-off-by: Jan Kiszka <[email protected]>
Commit: 0e82670826fd2283d7eb032a3eb11ccf8013c815
https://github.com/siemens/jailhouse/commit/0e82670826fd2283d7eb032a3eb11ccf8013c815
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/include/asm/irqchip.h
M hypervisor/arch/arm/irqchip.c
Log Message:
-----------
arm: Un-inline spi_in_cell
To big to be inlined, and we also want to avoid dereferencing struct
cell in the header due to upcoming include reordering.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: 03475882880dc5ae49d0852c628a8b8958be80ac
https://github.com/siemens/jailhouse/commit/03475882880dc5ae49d0852c628a8b8958be80ac
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/include/asm/irqchip.h
M hypervisor/arch/arm/irqchip.c
Log Message:
-----------
arm: Remove write-only priority field from pending_irq
We do not support interrupt priorities so far, and we may have to model
them differently into queues once we do. Remove the de facto unused
field.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: 3b6a758cb690553583fab3156bce14114775e726
https://github.com/siemens/jailhouse/commit/3b6a758cb690553583fab3156bce14114775e726
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/gic-v2.c
M hypervisor/arch/arm/gic-v3.c
M hypervisor/arch/arm/include/asm/irqchip.h
M hypervisor/arch/arm/irqchip.c
Log Message:
-----------
arm: Remove maintenance flag from pending_irq.type.sgi
It was always cleared.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: d62540a7a2a5a6c769550bd250c359bea3910795
https://github.com/siemens/jailhouse/commit/d62540a7a2a5a6c769550bd250c359bea3910795
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/gic-v2.c
M hypervisor/arch/arm/gic-v3.c
M hypervisor/arch/arm/include/asm/irqchip.h
M hypervisor/arch/arm/irqchip.c
Log Message:
-----------
arm: Remove hw flag from pending_irq
Can be derived from virt_id.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: 05c1d67e0a7913f967a49a76de8cf93dafba1489
https://github.com/siemens/jailhouse/commit/05c1d67e0a7913f967a49a76de8cf93dafba1489
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/gic-v2.c
M hypervisor/arch/arm/include/asm/irqchip.h
M hypervisor/arch/arm/irqchip.c
Log Message:
-----------
arm: Remove cpuid from pending_irq
Was always set to 0.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: 35a46c75c5eb577c9c780340cdbc92d844d1eaca
https://github.com/siemens/jailhouse/commit/35a46c75c5eb577c9c780340cdbc92d844d1eaca
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/gic-v2.c
M hypervisor/arch/arm/gic-v3.c
M hypervisor/arch/arm/include/asm/irqchip.h
M hypervisor/arch/arm/irqchip.c
Log Message:
-----------
arm: Remove irq field from pending_irq
Always identical to virt_id.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: b77b9793126fd278ec3839cbead5bf21a389bdd0
https://github.com/siemens/jailhouse/commit/b77b9793126fd278ec3839cbead5bf21a389bdd0
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/include/asm/irqchip.h
M hypervisor/arch/arm/irqchip.c
Log Message:
-----------
arm: Remove return code from irqchip_inject_pending
It's always 0.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: f5dcc13bcf89d190d35b99cf79a8586ea7c1a93d
https://github.com/siemens/jailhouse/commit/f5dcc13bcf89d190d35b99cf79a8586ea7c1a93d
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/include/asm/irqchip.h
M hypervisor/arch/arm/irqchip.c
Log Message:
-----------
arm: Remove unused return code of irqchip_set_pending
No caller evaluated it so far, and none of them has a use case for it.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: 35b1928d4977040a4a9f4fc1f2a093882182a953
https://github.com/siemens/jailhouse/commit/35b1928d4977040a4a9f4fc1f2a093882182a953
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/gic-v2.c
M hypervisor/arch/arm/gic-v3.c
M hypervisor/arch/arm/include/asm/irqchip.h
M hypervisor/arch/arm/irqchip.c
Log Message:
-----------
arm: Disable maintenance interrupt on successful injection
We enable the maintenance interrupt when all list registers are in use.
However, there was no disabling of it again. Apparently, it rarely
triggered in the field, otherwise we would have seen a lot of
maintenance interrupt storms, thus locked-up systems.
This introduces another callback to enable or disable the maintenance
interrupt. It is now controlled by irqchip_inject_pending, the function
that is also called when handling a maintenance interrupt.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: 9fc9f67f05c9fbe872f647a0d47f54e7dbb9b90f
https://github.com/siemens/jailhouse/commit/9fc9f67f05c9fbe872f647a0d47f54e7dbb9b90f
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/gic-v2.c
M hypervisor/arch/arm/gic-v3.c
M hypervisor/arch/arm/irqchip.c
Log Message:
-----------
arm: Make sure to not queue interrupt that were rejected as duplicates
If the inject_irq callback detect that an interrupt is already queued
in some list register, do not insert it into the software queue, thus
coalesce the event like real hardware does.
The change in the return code of inject_irq is more cosmetic, to reflect
the meaning better.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: 8b121b498b6e2f204c9b128b42e5423118be220b
https://github.com/siemens/jailhouse/commit/8b121b498b6e2f204c9b128b42e5423118be220b
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/gic-v2.c
M hypervisor/arch/arm/gic-v3.c
M hypervisor/arch/arm/include/asm/irqchip.h
M hypervisor/arch/arm/include/asm/percpu.h
M hypervisor/arch/arm/irqchip.c
Log Message:
-----------
arm: Convert software queue of pending interrupts into a ring
This massively simplifies the code and reduces the memory usage in
struct per_cpu. However, adding interrupt priorities later on may
require another rework.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: c8a9a6f84885c366160a394aaaf08715e426eaf4
https://github.com/siemens/jailhouse/commit/c8a9a6f84885c366160a394aaaf08715e426eaf4
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/control.c
M hypervisor/arch/arm/gic-common.c
M hypervisor/arch/arm/include/asm/irqchip.h
M hypervisor/arch/arm/irqchip.c
Log Message:
-----------
arm: Remove try_inject parameter from irqchip_set_pending
We can only perform injection (and we also always want to) if target
CPU equals caller CPU, and this is better checked inside the function.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: e24bab3f5e70d877d470659569f22e2838813d0f
https://github.com/siemens/jailhouse/commit/e24bab3f5e70d877d470659569f22e2838813d0f
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/irqchip.c
Log Message:
-----------
arm: Enable maintenance interrupt also from irqchip_set_pending
In case we set an interrupt pending for the local CPU and cannot queue
it with the hardware, make sure the maintenance interrupt is on.
Otherwise, we risk to delay guest interrupts or cause the guest to get
stuck.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: 6f28047e0f4d78af4a712e6f1f2824e9a030a888
https://github.com/siemens/jailhouse/commit/6f28047e0f4d78af4a712e6f1f2824e9a030a888
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/gic-v2.c
M hypervisor/arch/arm/gic-v3.c
Log Message:
-----------
arm: Enable / disable maintenance interrupt in distributor
We did not get any maintenance interrupts so far because we didn't
enable the source in the distributor so far. Fix this, but also disable
it again when shutting down.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: 25a04fd0f39d7bef4ee38ec470cc0230084e4818
https://github.com/siemens/jailhouse/commit/25a04fd0f39d7bef4ee38ec470cc0230084e4818
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/gic-common.c
Log Message:
-----------
arm: Protect the maintenance PPI from cell changes
We must not allow the cells to manipulate distributor registers or
register bits related to the maintenance interrupt.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: 16446c9c23a44103fc3f7086c6dae4e5c69b4acf
https://github.com/siemens/jailhouse/commit/16446c9c23a44103fc3f7086c6dae4e5c69b4acf
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/irqchip.c
Log Message:
-----------
arm: Make cpu_init and cpu_reset callbacks mandatory
No need for checking them to be NULL, we need them in both
implementations.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: 34e025e1dee9cd33f871d94f74ab9df0444bc48b
https://github.com/siemens/jailhouse/commit/34e025e1dee9cd33f871d94f74ab9df0444bc48b
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/irqchip.c
Log Message:
-----------
arm: Reject unknown GIC versions
We would likely crash anyway due to irqchip containing only NULL
pointers.
Signed-off-by: Jan Kiszka <[email protected]>
Commit: af45eca3e340c05f6c2b2ff3301df8aeaa46938c
https://github.com/siemens/jailhouse/commit/af45eca3e340c05f6c2b2ff3301df8aeaa46938c
Author: Jan Kiszka <[email protected]>
Date: 2016-06-16 (Thu, 16 Jun 2016)
Changed paths:
M hypervisor/arch/arm/gic-v2.c
M hypervisor/arch/arm/gic-v3.c
M hypervisor/arch/arm/irqchip.c
Log Message:
-----------
arm: Consolidate gic_irqchip to irqchip
Likely, we will never support alternative irqchips to the GIC (only
cascaded ones). So this copying-over is not required.
Signed-off-by: Jan Kiszka <[email protected]>
Compare:
https://github.com/siemens/jailhouse/compare/a9f949b08350...af45eca3e340
--
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].
For more options, visit https://groups.google.com/d/optout.