UBI: fix buffer padding

Linux-MTD Mailing List linux-mtd at lists.infradead.org
Fri Jul 25 10:59:03 EDT 2008


Gitweb:     http://git.infradead.org/?p=mtd-2.6.git;a=commit;h=a0fd1efd488092951f310fdb777b8a540cf84dcb
Commit:     a0fd1efd488092951f310fdb777b8a540cf84dcb
Parent:     beeea636030622f6de67d15c61f5b311a03d188c
Author:     Kyungmin Park <kmpark at infradead.org>
AuthorDate: Wed May 21 14:34:56 2008 +0300
Committer:  Artem Bityutskiy <Artem.Bityutskiy at nokia.com>
CommitDate: Thu Jul 24 13:32:54 2008 +0300

    UBI: fix buffer padding
    
    Instead of correctly pad the buffer wich we are writing to the
    eraseblock during update, we used weird construct:
    
    memset(buf + len, 0xFF, len - len);
    
    Fix this.
    
    Signed-off-by: Kyungmin Park <kmpark at infradead.org>
    Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy at nokia.com>
---
 drivers/mtd/ubi/upd.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/mtd/ubi/upd.c b/drivers/mtd/ubi/upd.c
index ddaa1a5..6fa1ab3 100644
--- a/drivers/mtd/ubi/upd.c
+++ b/drivers/mtd/ubi/upd.c
@@ -237,10 +237,10 @@ static int write_leb(struct ubi_device *ubi, struct ubi_volume *vol, int lnum,
 	int err;
 
 	if (vol->vol_type == UBI_DYNAMIC_VOLUME) {
-		len = ALIGN(len, ubi->min_io_size);
-		memset(buf + len, 0xFF, len - len);
+		int l = ALIGN(len, ubi->min_io_size);
 
-		len = ubi_calc_data_len(ubi, buf, len);
+		memset(buf + len, 0xFF, l - len);
+		len = ubi_calc_data_len(ubi, buf, l);
 		if (len == 0) {
 			dbg_msg("all %d bytes contain 0xFF - skip", len);
 			return 0;



More information about the linux-mtd-cvs mailing list