Page MenuHomeFreeBSD

powerpc64: Ignore NVlink memory regions
ClosedPublic

Authored by breno.leitao_gmail.com on May 18 2018, 5:41 PM.

Details

Summary

On POWER9, there are entries in /memory@ which are not standard memory
regions.

These new memory entries are related to NVLINK and the recommend way to
check if this is a memory region that the OS should use
is parsing 'linux,usable-memory' property instead of 'reg'. In machine AC922, both properties has _different_ values in fact.

If you use these NVlink memory regions as standard memory regions, you
are going to hit a machine check exception (MCE) with DAR
~0xc00003fffffd7000 and dsisr = 0x8000.

Diff Detail

Lint
Lint OK
Unit
No Unit Test Coverage
Build Status
Buildable 16675
Build 16580: arc lint + arc unit

Event Timeline

This looks good, even if the deice tree situation is a bit lamentable. Two questions:

  1. Is there a document describing this that we can reference?
  2. If this is just part of the PowerNV platform, maybe the code belongs in platform_powernv.c instead?
  1. Is there a document describing this that we can reference?

I was not able to find any documentation. Looking at the web, I found a patch[1] that documents it quickly in Linux, but it seems it was never accepted. I will ask internally.

  1. If this is just part of the PowerNV platform, maybe the code belongs in platform_powernv.c instead?

At this time, yes, but I am hearing about NVLink and GPU pass-through, so, it will not surprise me if it show up in pseries.

[1] https://patchwork.kernel.org/patch/9487597/

nwhitehorn accepted this revision.May 18 2018, 6:14 PM
  1. Is there a document describing this that we can reference?

I was not able to find any documentation. Looking at the web, I found a patch[1] that documents it quickly in Linux, but it seems it was never accepted. I will ask internally.

Fascinating. It's how things work anyway, and the comment is good.

  1. If this is just part of the PowerNV platform, maybe the code belongs in platform_powernv.c instead?

At this time, yes, but I am hearing about NVLink and GPU pass-through, so, it will not surprise me if it show up in pseries.

Ah, right. Let's keep it here then.

[1] https://patchwork.kernel.org/patch/9487597/

This revision is now accepted and ready to land.May 18 2018, 6:14 PM
jhibbits closed this revision.May 19 2018, 3:56 AM

r333825/r333826