X-Git-Url: https://git.karo-electronics.de/?a=blobdiff_plain;f=fs%2Fjffs2%2Fwrite.c;h=664c164aa67c19bef7583ce6fa7014cc715ffef5;hb=09d4b9aa90ab7a0ce7c266d2ea18153bf79bba33;hp=bc6185933664b68e76694de35ed1df68c6408699;hpb=7a883eaf62f4b943ebec738ce3b0796c67ef5d32;p=karo-tx-linux.git diff --git a/fs/jffs2/write.c b/fs/jffs2/write.c index bc6185933664..664c164aa67c 100644 --- a/fs/jffs2/write.c +++ b/fs/jffs2/write.c @@ -566,6 +566,9 @@ int jffs2_do_unlink(struct jffs2_sb_info *c, struct jffs2_inode_info *dir_f, struct jffs2_full_dirent **prev = &dir_f->dents; uint32_t nhash = full_name_hash(name, namelen); + /* We don't actually want to reserve any space, but we do + want to be holding the alloc_sem when we write to flash */ + down(&c->alloc_sem); down(&dir_f->sem); while ((*prev) && (*prev)->nhash <= nhash) {