ubifs: Set double hash cookie also for RENAME_EXCHANGE
authorRichard Weinberger <richard@nod.at>
Mon, 26 Jun 2017 11:49:04 +0000 (13:49 +0200)
committerRichard Weinberger <richard@nod.at>
Fri, 14 Jul 2017 20:50:57 +0000 (22:50 +0200)
We developed RENAME_EXCHANGE and UBIFS_FLG_DOUBLE_HASH more or less in
parallel and this case was forgotten. :-(

Cc: stable@vger.kernel.org
Fixes: d63d61c16972 ("ubifs: Implement UBIFS_FLG_DOUBLE_HASH")
Signed-off-by: Richard Weinberger <richard@nod.at>
fs/ubifs/journal.c

index 9f356432f35f945225d7514e76d4fa75194fb8ad..04c4ec6483e5208b043724a6f8d5fefb85976977 100644 (file)
@@ -985,6 +985,7 @@ int ubifs_jnl_xrename(struct ubifs_info *c, const struct inode *fst_dir,
        dent1->nlen = cpu_to_le16(fname_len(snd_nm));
        memcpy(dent1->name, fname_name(snd_nm), fname_len(snd_nm));
        dent1->name[fname_len(snd_nm)] = '\0';
+       set_dent_cookie(c, dent1);
        zero_dent_node_unused(dent1);
        ubifs_prep_grp_node(c, dent1, dlen1, 0);
 
@@ -997,6 +998,7 @@ int ubifs_jnl_xrename(struct ubifs_info *c, const struct inode *fst_dir,
        dent2->nlen = cpu_to_le16(fname_len(fst_nm));
        memcpy(dent2->name, fname_name(fst_nm), fname_len(fst_nm));
        dent2->name[fname_len(fst_nm)] = '\0';
+       set_dent_cookie(c, dent2);
        zero_dent_node_unused(dent2);
        ubifs_prep_grp_node(c, dent2, dlen2, 0);