Ver código fonte

cmd/onenand.c: block align warning

An attempt to write non block aligned data fails silently, add warning and
set result.

Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Ladislav Michl 7 anos atrás
pai
commit
9c00d982f1
1 arquivos alterados com 6 adições e 0 exclusões
  1. 6 0
      cmd/onenand.c

+ 6 - 0
cmd/onenand.c

@@ -139,6 +139,12 @@ static int onenand_block_write(loff_t to, size_t len,
 	size_t _retlen = 0;
 	int ret;
 
+	if ((to & (mtd->writesize - 1)) != 0) {
+		printf("Attempt to write non block-aligned data\n");
+		*retlen = 0;
+		return 1;
+	}
+
 	if (to == next_ofs) {
 		next_ofs = to + len;
 		to += skip_ofs;