Commit 94a76d9b authored by Linus Torvalds's avatar Linus Torvalds

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
parents 146c3d32 0af83abb
...@@ -51,7 +51,7 @@ ...@@ -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) ...@@ -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) ...@@ -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) ...@@ -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 @@ ...@@ -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 */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment