Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fbe43ff0 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'upstream-3.13-rc1' of git://git.infradead.org/linux-ubifs

Pull ubifs changes from Artem Bityutskiy:
 "Mostly fixes for the power cut emulation UBIFS mode, and only one
  functional change which fixes a return error code"

* tag 'upstream-3.13-rc1' of git://git.infradead.org/linux-ubifs:
  UBIFS: correct data corruption range
  UBIFS: fix return code
  UBIFS: remove unnecessary code in ubifs_garbage_collect
parents a7fa20a5 58a4e237
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -2563,9 +2563,9 @@ static int corrupt_data(const struct ubifs_info *c, const void *buf,
	unsigned int from, to, ffs = chance(1, 2);
	unsigned char *p = (void *)buf;

	from = prandom_u32() % (len + 1);
	/* Corruption may only span one max. write unit */
	to = min(len, ALIGN(from, c->max_write_size));
	from = prandom_u32() % len;
	/* Corruption span max to end of write unit */
	to = min(len, ALIGN(from + 1, c->max_write_size));

	ubifs_warn("filled bytes %u-%u with %s", from, to - 1,
		   ffs ? "0xFFs" : "random data");
+1 −2
Original line number Diff line number Diff line
@@ -668,8 +668,7 @@ int ubifs_garbage_collect(struct ubifs_info *c, int anyway)
	ubifs_assert(!wbuf->used);

	for (i = 0; ; i++) {
		int space_before = c->leb_size - wbuf->offs - wbuf->used;
		int space_after;
		int space_before, space_after;

		cond_resched();

+6 −2
Original line number Diff line number Diff line
@@ -1630,8 +1630,10 @@ static int ubifs_remount_rw(struct ubifs_info *c)
	}

	c->write_reserve_buf = kmalloc(COMPRESSED_DATA_NODE_BUF_SZ, GFP_KERNEL);
	if (!c->write_reserve_buf)
	if (!c->write_reserve_buf) {
		err = -ENOMEM;
		goto out;
	}

	err = ubifs_lpt_init(c, 0, 1);
	if (err)
@@ -2064,8 +2066,10 @@ static int ubifs_fill_super(struct super_block *sb, void *data, int silent)
	}

	sb->s_root = d_make_root(root);
	if (!sb->s_root)
	if (!sb->s_root) {
		err = -ENOMEM;
		goto out_umount;
	}

	mutex_unlock(&c->umount_mutex);
	return 0;