diff options
| author | ryo <ryo@NetBSD.org> | 2022-08-04 11:58:55 +0000 |
|---|---|---|
| committer | ryo <ryo@NetBSD.org> | 2022-08-04 11:58:55 +0000 |
| commit | 728d91fdb30d99a7651d5a228bbeb3bedd6d1ca1 (patch) | |
| tree | 9f5c19adbbf5d0dda67e4066f938eb0a2e6decd9 /sys/dev/fdt | |
| parent | bbeae7732bb921b31b5a6ef43382a0bbf5beed1f (diff) | |
Don't pass a block of size 0 to fdt_memory_add_range().
There are some environments where size 0 blocks are passed from the loader.
Diffstat (limited to 'sys/dev/fdt')
| -rw-r--r-- | sys/dev/fdt/fdt_memory.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/dev/fdt/fdt_memory.c b/sys/dev/fdt/fdt_memory.c index 2761f0f9717..d663c1451e1 100644 --- a/sys/dev/fdt/fdt_memory.c +++ b/sys/dev/fdt/fdt_memory.c @@ -1,4 +1,4 @@ -/* $NetBSD: fdt_memory.c,v 1.4 2022/01/07 07:25:37 mlelstv Exp $ */ +/* $NetBSD: fdt_memory.c,v 1.5 2022/08/04 11:58:55 ryo Exp $ */ /*- * Copyright (c) 2018 The NetBSD Foundation, Inc. @@ -32,7 +32,7 @@ #include "opt_fdt.h" #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: fdt_memory.c,v 1.4 2022/01/07 07:25:37 mlelstv Exp $"); +__KERNEL_RCSID(0, "$NetBSD: fdt_memory.c,v 1.5 2022/08/04 11:58:55 ryo Exp $"); #include <sys/param.h> #include <sys/queue.h> @@ -88,6 +88,8 @@ fdt_memory_get(uint64_t *pstart, uint64_t *pend) for (index = 0; fdtbus_get_reg64(memory, index, &cur_addr, &cur_size) == 0; index++) { + if (cur_size == 0) + continue; fdt_memory_add_range(cur_addr, cur_size); if (index == 0) { |
