Page MenuHomeFreeBSD

D23414.id67462.diff
No OneTemporary

D23414.id67462.diff

Index: sys/powerpc/powernv/platform_powernv.c
===================================================================
--- sys/powerpc/powernv/platform_powernv.c
+++ sys/powerpc/powernv/platform_powernv.c
@@ -517,17 +517,21 @@
cell_t associativity[5];
int i, res;
- res = OF_getproplen(node, "ibm,associativity");
-
- /* If already at the root, use default domain. */
- if (res == 0)
- return (0);
- else if (res < 0)
- /* If this node doesn't have associativity, check its parent. */
- return (powernv_node_numa_domain(platform, OF_parent(node)));
+ res = OF_getencprop(node, "ibm,associativity",
+ associativity, sizeof(associativity));
+
+ /* If this node doesn't have associativity, check its parent. */
+ if (res < 0) {
+ node = OF_parent(node);
+ /* If already at the root, use default domain. */
+ if (node == 0)
+ return (0);
+ return (powernv_node_numa_domain(platform, node));
+ }
- OF_getencprop(node, "ibm,associativity",
- associativity, res);
+ KASSERT(res >= sizeof(cell_t) * (platform_associativity + 1),
+ ("ibm,associativity property has less than "
+ "platform_associativity (%d) elements", platform_associativity));
for (i = 0; i < numa_max_domain; i++) {
if (numa_domains[i] == associativity[platform_associativity])

File Metadata

Mime Type
text/plain
Expires
Sat, May 16, 5:37 PM (13 h, 25 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
33141485
Default Alt Text
D23414.id67462.diff (1 KB)

Event Timeline