Merge tag 'for-linus-5.3-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubifs
Pull UBIFS and JFFS2 fixes from Richard Weinberger: "UBIFS: - Don't block too long in writeback_inodes_sb() - Fix for a possible overrun of the log head - Fix double unlock in orphan_delete() JFFS2: - Remove C++ style from UAPI header and unbreak picky toolchains" * tag 'for-linus-5.3-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/ubifs: ubifs: Limit the number of pages in shrink_liability ubifs: Correctly initialize c->min_log_bytes ubifs: Fix double unlock around orphan_delete() jffs2: Remove C++ style comments from uapi header
This commit is contained in:
@@ -51,7 +51,7 @@
|
|||||||
static void shrink_liability(struct ubifs_info *c, int nr_to_write)
|
static void shrink_liability(struct ubifs_info *c, int nr_to_write)
|
||||||
{
|
{
|
||||||
down_read(&c->vfs_sb->s_umount);
|
down_read(&c->vfs_sb->s_umount);
|
||||||
writeback_inodes_sb(c->vfs_sb, WB_REASON_FS_FREE_SPACE);
|
writeback_inodes_sb_nr(c->vfs_sb, nr_to_write, WB_REASON_FS_FREE_SPACE);
|
||||||
up_read(&c->vfs_sb->s_umount);
|
up_read(&c->vfs_sb->s_umount);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -129,7 +129,6 @@ static void __orphan_drop(struct ubifs_info *c, struct ubifs_orphan *o)
|
|||||||
static void orphan_delete(struct ubifs_info *c, struct ubifs_orphan *orph)
|
static void orphan_delete(struct ubifs_info *c, struct ubifs_orphan *orph)
|
||||||
{
|
{
|
||||||
if (orph->del) {
|
if (orph->del) {
|
||||||
spin_unlock(&c->orphan_lock);
|
|
||||||
dbg_gen("deleted twice ino %lu", orph->inum);
|
dbg_gen("deleted twice ino %lu", orph->inum);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -138,7 +137,6 @@ static void orphan_delete(struct ubifs_info *c, struct ubifs_orphan *orph)
|
|||||||
orph->del = 1;
|
orph->del = 1;
|
||||||
orph->dnext = c->orph_dnext;
|
orph->dnext = c->orph_dnext;
|
||||||
c->orph_dnext = orph;
|
c->orph_dnext = orph;
|
||||||
spin_unlock(&c->orphan_lock);
|
|
||||||
dbg_gen("delete later ino %lu", orph->inum);
|
dbg_gen("delete later ino %lu", orph->inum);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -609,6 +609,10 @@ static int init_constants_early(struct ubifs_info *c)
|
|||||||
c->max_bu_buf_len = UBIFS_MAX_BULK_READ * UBIFS_MAX_DATA_NODE_SZ;
|
c->max_bu_buf_len = UBIFS_MAX_BULK_READ * UBIFS_MAX_DATA_NODE_SZ;
|
||||||
if (c->max_bu_buf_len > c->leb_size)
|
if (c->max_bu_buf_len > c->leb_size)
|
||||||
c->max_bu_buf_len = c->leb_size;
|
c->max_bu_buf_len = c->leb_size;
|
||||||
|
|
||||||
|
/* Log is ready, preserve one LEB for commits. */
|
||||||
|
c->min_log_bytes = c->leb_size;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -77,11 +77,6 @@
|
|||||||
|
|
||||||
#define JFFS2_ACL_VERSION 0x0001
|
#define JFFS2_ACL_VERSION 0x0001
|
||||||
|
|
||||||
// Maybe later...
|
|
||||||
//#define JFFS2_NODETYPE_CHECKPOINT (JFFS2_FEATURE_RWCOMPAT_DELETE | JFFS2_NODE_ACCURATE | 3)
|
|
||||||
//#define JFFS2_NODETYPE_OPTIONS (JFFS2_FEATURE_RWCOMPAT_COPY | JFFS2_NODE_ACCURATE | 4)
|
|
||||||
|
|
||||||
|
|
||||||
#define JFFS2_INO_FLAG_PREREAD 1 /* Do read_inode() for this one at
|
#define JFFS2_INO_FLAG_PREREAD 1 /* Do read_inode() for this one at
|
||||||
mount time, don't wait for it to
|
mount time, don't wait for it to
|
||||||
happen later */
|
happen later */
|
||||||
|
|||||||
Reference in New Issue
Block a user