diff --git a/drivers/of/resolver.c b/drivers/of/resolver.c index 708daca1d5229d7f2622c11442131596ebdeb990..76c09cb57eae3f9174b1ec1e9c9ccba5203cee90 100644 --- a/drivers/of/resolver.c +++ b/drivers/of/resolver.c @@ -216,7 +216,7 @@ static int adjust_local_phandle_references(struct device_node *local_fixups, for (i = 0; i < count; i++) { off = be32_to_cpu(((__be32 *)prop_fix->value)[i]); - if (off >= prop->length || (off + 4) > prop->length) + if ((off + 4) > prop->length) return -EINVAL; phandle = be32_to_cpu(*(__be32 *)(prop->value + off));