mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-28 23:23:55 +08:00
powerpc/cacheinfo: Warn if cache object chain becomes unordered
This can catch cases where the device tree has gotten mishandled into an inconsistent state at runtime, e.g. the cache nodes for both the source and the destination are present after a migration. Signed-off-by: Nathan Lynch <nathanl@linux.ibm.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20190627051537.7298-5-nathanl@linux.ibm.com
This commit is contained in:
parent
1b3da8ffaa
commit
6ec54363f1
@ -420,6 +420,15 @@ static void link_cache_lists(struct cache *smaller, struct cache *bigger)
|
||||
}
|
||||
|
||||
smaller->next_local = bigger;
|
||||
|
||||
/*
|
||||
* The cache->next_local list sorts by level ascending:
|
||||
* L1d -> L1i -> L2 -> L3 ...
|
||||
*/
|
||||
WARN_ONCE((smaller->level == 1 && bigger->level > 2) ||
|
||||
(smaller->level > 1 && bigger->level != smaller->level + 1),
|
||||
"linking L%i cache %pOFP to L%i cache %pOFP; skipped a level?\n",
|
||||
smaller->level, smaller->ofnode, bigger->level, bigger->ofnode);
|
||||
}
|
||||
|
||||
static void do_subsidiary_caches_debugcheck(struct cache *cache)
|
||||
|
Loading…
Reference in New Issue
Block a user