diff options
author | Nikita Shubin <n.shubin@yadro.com> | 2022-02-11 14:11:54 +0300 |
---|---|---|
committer | Anup Patel <anup@brainfault.org> | 2022-02-15 18:29:38 +0300 |
commit | f2ccf2f783b43e8ca2b42cdeade7663599284a86 (patch) | |
tree | 82cc44778551db003ab58188c9d50f5f9be38dc8 | |
parent | 3a69cc1487dc318aadede61c7e580d6fb1109fe8 (diff) | |
download | opensbi-f2ccf2f783b43e8ca2b42cdeade7663599284a86.tar.xz |
lib: sbi: verbose sbi_domain_root_add_memregion
Be more verbose on region confict, print addresses in conflict.
Signed-off-by: Nikita Shubin <n.shubin@yadro.com>
Reviewed-by: Xiang W <wxjstz@126.com>
Reviewed-by: Anup Patel <anup@brainfault.org>
-rw-r--r-- | include/sbi/sbi_domain.h | 4 | ||||
-rw-r--r-- | lib/sbi/sbi_domain.c | 8 |
2 files changed, 9 insertions, 3 deletions
diff --git a/include/sbi/sbi_domain.h b/include/sbi/sbi_domain.h index 15e3a53..b90f59c 100644 --- a/include/sbi/sbi_domain.h +++ b/include/sbi/sbi_domain.h @@ -174,7 +174,9 @@ int sbi_domain_register(struct sbi_domain *dom, * Add a memory region to the root domain * @param reg pointer to the memory region to be added * - * @return 0 on success and negative error code on failure + * @return 0 on success + * @return SBI_EALREADY if memory region conflicts with existing + * @return SBI_EINVAL otherwise */ int sbi_domain_root_add_memregion(const struct sbi_domain_memregion *reg); diff --git a/lib/sbi/sbi_domain.c b/lib/sbi/sbi_domain.c index a1ac1bb..4e4c1e1 100644 --- a/lib/sbi/sbi_domain.c +++ b/lib/sbi/sbi_domain.c @@ -471,8 +471,12 @@ int sbi_domain_root_add_memregion(const struct sbi_domain_memregion *reg) /* Check for conflicts */ sbi_domain_for_each_memregion(&root, nreg) { - if (is_region_conflict(reg, nreg)) - return SBI_EINVAL; + if (is_region_conflict(reg, nreg)) { + sbi_printf("%s: is_region_conflict check failed" + " 0x%lx conflicts existing 0x%lx\n", __func__, + reg->base, nreg->base); + return SBI_EALREADY; + } } /* Append the memregion to root memregions */ |