summaryrefslogtreecommitdiff
path: root/drivers/of
diff options
context:
space:
mode:
authorOtavio Salvador <otavio@ossystems.com.br>2017-08-06 20:37:05 -0300
committerOtavio Salvador <otavio@ossystems.com.br>2017-08-06 20:37:05 -0300
commit05dc27c41664353ba0ab77aeb1e948ce88f3f1d1 (patch)
treee655cbf9b2b529c5c95cb975c697cc86b9bebeb1 /drivers/of
parent09845b886c1198c9461de424ffd95dde363324c1 (diff)
parent1af952704416d76ad86963f04feb10a3da143901 (diff)
Merge tag 'v4.1.43' into 4.1-2.0.x-imx
Linux 4.1.43 * tag 'v4.1.43': (182 commits) Linux 4.1.43 HID: core: prevent out-of-bound readings ipvs: SNAT packet replies only for NATed connections Revert "dmaengine: ep93xx: Don't drain the transfers in terminate_all()" staging: comedi: ni_mio_common: fix E series ni_ai_insn_read() data kvm: vmx: Do not disable intercepts for BNDCFGS tracing: Use SOFTIRQ_OFFSET for softirq dectection for more accurate results PM / QoS: return -EINVAL for bogus strings sched/topology: Optimize build_group_mask() sched/topology: Fix overlapping sched_group_mask crypto: caam - fix signals handling crypto: atmel - only treat EBUSY as transient if backlog crypto: talitos - Extend max key length for SHA384/512-HMAC and AEAD Add "shutdown" to "struct class". mnt: Make propagate_umount less slow for overlapping mount propagation trees mnt: In propgate_umount handle visiting mounts in any order mnt: In umount propagation reparent in a separate pass vt: fix unchecked __put_user() in tioclinux ioctls exec: Limit arg stack to at most 75% of _STK_LIM s390: reduce ELF_ET_DYN_BASE ...
Diffstat (limited to 'drivers/of')
-rw-r--r--drivers/of/fdt.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
index 63ea1e5b1c95..bf89754fe973 100644
--- a/drivers/of/fdt.c
+++ b/drivers/of/fdt.c
@@ -618,9 +618,12 @@ int __init of_scan_flat_dt(int (*it)(unsigned long node,
const char *pathp;
int offset, rc = 0, depth = -1;
- for (offset = fdt_next_node(blob, -1, &depth);
- offset >= 0 && depth >= 0 && !rc;
- offset = fdt_next_node(blob, offset, &depth)) {
+ if (!blob)
+ return 0;
+
+ for (offset = fdt_next_node(blob, -1, &depth);
+ offset >= 0 && depth >= 0 && !rc;
+ offset = fdt_next_node(blob, offset, &depth)) {
pathp = fdt_get_name(blob, offset, NULL);
if (*pathp == '/')