[openwrt/openwrt] fritz-tools: fritz_tffs_nand: exclude oob code when disabled

LEDE Commits lede-commits at lists.infradead.org
Wed Dec 7 03:31:10 PST 2022


blocktrron pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/4e2d5f4f9f136d52ba76185df897e14586a2af83

commit 4e2d5f4f9f136d52ba76185df897e14586a2af83
Author: Andre Heider <a.heider at gmail.com>
AuthorDate: Wed Dec 15 11:38:20 2021 +0100

    fritz-tools: fritz_tffs_nand: exclude oob code when disabled
    
    Skip unnecessary stuff if checking the oob data is disabled.
    
    Signed-off-by: Andre Heider <a.heider at gmail.com>
---
 package/utils/fritz-tools/src/fritz_tffs_nand_read.c | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/package/utils/fritz-tools/src/fritz_tffs_nand_read.c b/package/utils/fritz-tools/src/fritz_tffs_nand_read.c
index 22b27336f8..32f3cdf693 100644
--- a/package/utils/fritz-tools/src/fritz_tffs_nand_read.c
+++ b/package/utils/fritz-tools/src/fritz_tffs_nand_read.c
@@ -186,15 +186,18 @@ static int find_entry(uint32_t id, struct tffs_entry *entry)
 				fprintf(stderr, "ERROR: sector isn't readable, but has been previously!\n");
 				exit(EXIT_FAILURE);
 			}
-			uint32_t oob_id = read_uint32(oobbuf, 0x02);
-			uint32_t oob_len = read_uint32(oobbuf, 0x06);
-			uint32_t oob_rev = read_uint32(oobbuf, 0x0a);
 			uint32_t read_id = read_uint32(readbuf, 0x00);
 			uint32_t read_len = read_uint32(readbuf, 0x04);
 			uint32_t read_rev = read_uint32(readbuf, 0x0c);
-			if (read_oob_sector_health && (oob_id != read_id || oob_len != read_len || oob_rev != read_rev)) {
-				fprintf(stderr, "Warning: sector has inconsistent metadata\n");
-				continue;
+			if (read_oob_sector_health) {
+				uint32_t oob_id = read_uint32(oobbuf, 0x02);
+				uint32_t oob_len = read_uint32(oobbuf, 0x06);
+				uint32_t oob_rev = read_uint32(oobbuf, 0x0a);
+
+				if (oob_id != read_id || oob_len != read_len || oob_rev != read_rev) {
+					fprintf(stderr, "Warning: sector has inconsistent metadata\n");
+					continue;
+				}
 			}
 			if (read_id == TFFS_ID_END) {
 				/* no more entries in this block */




More information about the lede-commits mailing list