...and set UBIFS format version Signed-off-by: Richard Weinberger <richard@xxxxxx> --- ubifs-utils/mkfs.ubifs/mkfs.ubifs.c | 13 ++++++++++++- ubifs-utils/mkfs.ubifs/ubifs.h | 1 + 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/ubifs-utils/mkfs.ubifs/mkfs.ubifs.c b/ubifs-utils/mkfs.ubifs/mkfs.ubifs.c index fc1b0cb1f6cc..09c28ab0b6bd 100644 --- a/ubifs-utils/mkfs.ubifs/mkfs.ubifs.c +++ b/ubifs-utils/mkfs.ubifs/mkfs.ubifs.c @@ -2357,6 +2357,15 @@ static int finalize_leb_cnt(void) return 0; } +static int ubifs_format_version(void) +{ + if (c->double_hash || c->encrypted) + return 5; + + /* Default */ + return 4; +} + /** * write_super - write the super block. */ @@ -2379,7 +2388,7 @@ static int write_super(void) sup.jhead_cnt = cpu_to_le32(c->jhead_cnt); sup.fanout = cpu_to_le32(c->fanout); sup.lsave_cnt = cpu_to_le32(c->lsave_cnt); - sup.fmt_version = cpu_to_le32(UBIFS_FORMAT_VERSION); + sup.fmt_version = cpu_to_le32(ubifs_format_version()); sup.default_compr = cpu_to_le16(c->default_compr); sup.rp_size = cpu_to_le64(c->rp_size); sup.time_gran = cpu_to_le32(DEFAULT_TIME_GRAN); @@ -2396,6 +2405,8 @@ static int write_super(void) sup.flags |= cpu_to_le32(UBIFS_FLG_SPACE_FIXUP); if (c->double_hash) sup.flags |= cpu_to_le32(UBIFS_FLG_DOUBLE_HASH); + if (c->encrypted) + sup.flags |= cpu_to_le32(UBIFS_FLG_ENCRYPTION); return write_node(&sup, UBIFS_SB_NODE_SZ, UBIFS_SB_LNUM); } diff --git a/ubifs-utils/mkfs.ubifs/ubifs.h b/ubifs-utils/mkfs.ubifs/ubifs.h index 5a4af997e7bd..c26d0944ac50 100644 --- a/ubifs-utils/mkfs.ubifs/ubifs.h +++ b/ubifs-utils/mkfs.ubifs/ubifs.h @@ -410,6 +410,7 @@ struct ubifs_info int big_lpt; int space_fixup; int double_hash; + int encrypted; long long lpt_sz; int ltab_lnum; -- 2.19.1 ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/