[PATCH 2/2] libubigen: No need to calculate crc for each ubi_vtbl_record
Rock Lee
rockdotlee at gmail.com
Thu Nov 16 01:00:37 PST 2017
When create empty volume table, no need to calculate crc for each
record.
Signed-off-by: Rock Lee <RLi at sierrawireless.com>
---
lib/libubigen.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/lib/libubigen.c b/lib/libubigen.c
index d2a949b..6ad8d5f 100644
--- a/lib/libubigen.c
+++ b/lib/libubigen.c
@@ -66,6 +66,7 @@ void ubigen_info_init(struct ubigen_info *ui, int
peb_size, int min_io_size,
struct ubi_vtbl_record *ubigen_create_empty_vtbl(const struct ubigen_info *ui)
{
struct ubi_vtbl_record *vtbl;
+ uint32_t crc;
int i;
vtbl = calloc(1, ui->vtbl_size);
@@ -74,11 +75,9 @@ struct ubi_vtbl_record
*ubigen_create_empty_vtbl(const struct ubigen_info *ui)
return NULL;
}
- for (i = 0; i < ui->max_volumes; i++) {
- uint32_t crc = mtd_crc32(UBI_CRC32_INIT, &vtbl[i],
- UBI_VTBL_RECORD_SIZE_CRC);
+ crc = mtd_crc32(UBI_CRC32_INIT, &vtbl[0], UBI_VTBL_RECORD_SIZE_CRC);
+ for (i = 0; i < ui->max_volumes; i++)
vtbl[i].crc = cpu_to_be32(crc);
- }
return vtbl;
}
--
1.9.1
More information about the linux-mtd
mailing list