On Tue, 13 Apr 2021 06:14:42 GMT, David Holmes <dhol...@openjdk.org> wrote:

> This strikes me as the wrong fix to the problem. isCpuSetSameAsHostCpuSet is 
> only intended to be used as a simple optimization when the configured cpuset 
> happens to match the hosts. What you are looking for is a fix to the problem 
> when there is no cpuset set at all.

I pushed new commit to move the fix into `getCpuLoad()`.

> It strikes me that in getCpuLoad() if there are no quotas and no 
> effective-cpu-set and no cpusets.cpus value, then it should fallback to using 
> the host values rather than returning -1. That said, the problem may also be 
> that we have a containerMetrics object when no container is actually active! 
> Perhaps that is the true bug here?

I think this problem is similar to 
[JDK-8264482](https://bugs.openjdk.java.net/browse/JDK-8264482) (PR #3280 ). 
Currently both HotSpot and MBean check whether cgroups exists, but the the host 
(not into the container) might have it. We've discussed about it in #3280 , 
then I think it is difficult to modify to check whether the VM is in the 
container. Thus I think it is reasonable to just return host CPU load value at 
here.

-------------

PR: https://git.openjdk.java.net/jdk/pull/3447

Reply via email to