mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-08 18:23:57 -06:00
hw/nvram: Fix Memory Leak in Xilinx eFuse QOM
Signed-off-by: Tong Ho <tong.ho@xilinx.com> Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> Reviewed-by: Francisco Iglesias <frasse.iglesias@gmail.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Message-Id: <20211015203532.2463705-2-tong.ho@xilinx.com> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
This commit is contained in:
parent
f18d403f15
commit
c4e4d0d92b
1 changed files with 6 additions and 3 deletions
|
@ -144,10 +144,11 @@ static bool efuse_ro_bits_find(XlnxEFuse *s, uint32_t k)
|
||||||
bool xlnx_efuse_set_bit(XlnxEFuse *s, unsigned int bit)
|
bool xlnx_efuse_set_bit(XlnxEFuse *s, unsigned int bit)
|
||||||
{
|
{
|
||||||
if (efuse_ro_bits_find(s, bit)) {
|
if (efuse_ro_bits_find(s, bit)) {
|
||||||
|
g_autofree char *path = object_get_canonical_path(OBJECT(s));
|
||||||
|
|
||||||
qemu_log_mask(LOG_GUEST_ERROR, "%s: WARN: "
|
qemu_log_mask(LOG_GUEST_ERROR, "%s: WARN: "
|
||||||
"Ignored setting of readonly efuse bit<%u,%u>!\n",
|
"Ignored setting of readonly efuse bit<%u,%u>!\n",
|
||||||
object_get_canonical_path(OBJECT(s)),
|
path, (bit / 32), (bit % 32));
|
||||||
(bit / 32), (bit % 32));
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -202,9 +203,11 @@ static void efuse_realize(DeviceState *dev, Error **errp)
|
||||||
efuse_ro_bits_sort(s);
|
efuse_ro_bits_sort(s);
|
||||||
|
|
||||||
if ((s->efuse_size % 32) != 0) {
|
if ((s->efuse_size % 32) != 0) {
|
||||||
|
g_autofree char *path = object_get_canonical_path(OBJECT(s));
|
||||||
|
|
||||||
error_setg(errp,
|
error_setg(errp,
|
||||||
"%s.efuse-size: %u: property value not multiple of 32.",
|
"%s.efuse-size: %u: property value not multiple of 32.",
|
||||||
object_get_canonical_path(OBJECT(dev)), s->efuse_size);
|
path, s->efuse_size);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue