diff --git a/kernel/cpuset.c b/kernel/cpuset.c
index 459d601947a82a29693bbaa7444c74542311919e..d2cc67dac8b1445b47fad8ebf120fafba62ccfdc 100644
--- a/kernel/cpuset.c
+++ b/kernel/cpuset.c
@@ -679,7 +679,9 @@ static void rebuild_sched_domains(void)
 				if (apn == b->pn) {
 					cpus_or(*dp, *dp, b->cpus_allowed);
 					b->pn = -1;
-					update_domain_attr(dattr, b);
+					if (dattr)
+						update_domain_attr(dattr
+								   + nslot, b);
 				}
 			}
 			nslot++;