[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] m25p80: Warn the user when the backend file is too small for the
From: |
Cédric Le Goater |
Subject: |
[PATCH] m25p80: Warn the user when the backend file is too small for the device |
Date: |
Tue, 15 Nov 2022 15:21:41 +0100 |
Currently, when a block backend is attached to a m25p80 device and the
associated file size does not match the flash model, QEMU complains
with the error message "failed to read the initial flash content".
This is confusing for the user.
Improve the reported error with a new message regarding the file size.
Signed-off-by: Cédric Le Goater <clg@kaod.org>
---
hw/block/m25p80.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/hw/block/m25p80.c b/hw/block/m25p80.c
index 02adc87527..e0515e2a1e 100644
--- a/hw/block/m25p80.c
+++ b/hw/block/m25p80.c
@@ -1606,6 +1606,14 @@ static void m25p80_realize(SSIPeripheral *ss, Error
**errp)
if (s->blk) {
uint64_t perm = BLK_PERM_CONSISTENT_READ |
(blk_supports_write_perm(s->blk) ? BLK_PERM_WRITE : 0);
+
+ if (blk_getlength(s->blk) < s->size) {
+ error_setg(errp,
+ "backend file is too small for flash device %s (%d MB)",
+ object_class_get_name(OBJECT_CLASS(mc)), s->size >> 20);
+ return;
+ }
+
ret = blk_set_perm(s->blk, perm, BLK_PERM_ALL, errp);
if (ret < 0) {
return;
--
2.38.1
- [PATCH] m25p80: Warn the user when the backend file is too small for the device,
Cédric Le Goater <=