Hi Mark,

On 11/23/2016 03:46 PM, Mark Rutland wrote:
> On Wed, Nov 23, 2016 at 01:52:22PM +0100, Ralf Ramsauer wrote:
>> Hi,
>>
>> I first noticed that on the LeMaker Hikey: After jailhouse is
>> (successfully) enabled, the CPU board gets incredibly hot (after a few
>> seconds), though the root Linux still idles and no cells are created so
>> far. When jailhouse is disabled again, it immediately cools down within
>> seconds.
> 
> I suspect that the issue here is that jailhouse doesn't handle
> PSCI_CPU_SUSPEND, but the host kernel is trying to use PSCI_CPU_SUSPEND
> for idle, as the hikey dts has idle states.
> 
> AFAICT, jailhouse will trap the SMC, but will immediately return
> PSCI_NOT_SUPPORTED, since psci_dispatch [1] doesn't have a case for
> PSCI_CPU_SUSPEND. The host then immediately tries PSCI again. We burn
> CPU cycles jumping back-and-forth when we should be idle.
> 
> It should be possible to look under sysfs to see how many times a CPU
> entered/exited PSCI idle states. IIRC there's a directory under
> /sys/devices/system/cpu/cpu<N>/ with idle residency information.
> 
> I think jailhouse needs to gain some PSCI_CPU_SUSPEND support. It should
> be able to at least use WFI safely, and ideally it would call into the
> real PSCI implementation for deeper states.
thanks. That's the issue. These are the cell statistics with
CONFIG_ARM_CPUIDLE enabled:

COUNTER                              SUM   PER SEC
vmexits_psci                    15521049    289782

So we were exiting almost 300k/sec because of PSCI.

After disabling CONFIG_ARM_CPUIDLE:
vmexits_psci                           0         0

Thanks
  Ralf
> 
> Thanks,
> Mark.
> 
> [1] 
> https://github.com/siemens/jailhouse/blob/master/hypervisor/arch/arm-common/psci.c
> 

-- 
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.

Reply via email to