diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2018-04-11 19:39:34 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2018-04-11 19:39:34 -0400 |
commit | 77cb51e65df0010cb22169bcbb6ea1b4f21da7e0 (patch) | |
tree | 0ed38a1edb87fb612e86331e9f93b0b4413001f3 /fs | |
parent | 375479c38689fbc403cf57b2999278615a4163f5 (diff) | |
parent | b5094b7f135be34630e3ea8a98fa215715d0f29d (diff) |
Merge tag 'tags/upstream-4.17-rc1' of git://git.infradead.org/linux-ubifs
Pull UBI and UBIFS updates from Richard Weinberger:
"Minor bug fixes and improvements"
* tag 'tags/upstream-4.17-rc1' of git://git.infradead.org/linux-ubifs:
ubi: Reject MLC NAND
ubifs: Remove useless parameter of lpt_heap_replace
ubifs: Constify struct ubifs_lprops in scan_for_leb_for_idx
ubifs: remove unnecessary assignment
ubi: Fix error for write access
ubi: fastmap: Don't flush fastmap work on detach
ubifs: Check ubifs_wbuf_sync() return code
Diffstat (limited to 'fs')
-rw-r--r-- | fs/ubifs/find.c | 2 | ||||
-rw-r--r-- | fs/ubifs/lprops.c | 4 | ||||
-rw-r--r-- | fs/ubifs/scan.c | 1 | ||||
-rw-r--r-- | fs/ubifs/super.c | 14 |
4 files changed, 12 insertions, 9 deletions
diff --git a/fs/ubifs/find.c b/fs/ubifs/find.c index 2dcf3d473fec..9571616b5dda 100644 --- a/fs/ubifs/find.c +++ b/fs/ubifs/find.c | |||
@@ -632,7 +632,7 @@ static int scan_for_idx_cb(struct ubifs_info *c, | |||
632 | */ | 632 | */ |
633 | static const struct ubifs_lprops *scan_for_leb_for_idx(struct ubifs_info *c) | 633 | static const struct ubifs_lprops *scan_for_leb_for_idx(struct ubifs_info *c) |
634 | { | 634 | { |
635 | struct ubifs_lprops *lprops; | 635 | const struct ubifs_lprops *lprops; |
636 | struct scan_data data; | 636 | struct scan_data data; |
637 | int err; | 637 | int err; |
638 | 638 | ||
diff --git a/fs/ubifs/lprops.c b/fs/ubifs/lprops.c index 6c3a1abd0e22..f5a46844340c 100644 --- a/fs/ubifs/lprops.c +++ b/fs/ubifs/lprops.c | |||
@@ -244,7 +244,6 @@ static void remove_from_lpt_heap(struct ubifs_info *c, | |||
244 | /** | 244 | /** |
245 | * lpt_heap_replace - replace lprops in a category heap. | 245 | * lpt_heap_replace - replace lprops in a category heap. |
246 | * @c: UBIFS file-system description object | 246 | * @c: UBIFS file-system description object |
247 | * @old_lprops: LEB properties to replace | ||
248 | * @new_lprops: LEB properties with which to replace | 247 | * @new_lprops: LEB properties with which to replace |
249 | * @cat: LEB category | 248 | * @cat: LEB category |
250 | * | 249 | * |
@@ -254,7 +253,6 @@ static void remove_from_lpt_heap(struct ubifs_info *c, | |||
254 | * lprops. This function does that. | 253 | * lprops. This function does that. |
255 | */ | 254 | */ |
256 | static void lpt_heap_replace(struct ubifs_info *c, | 255 | static void lpt_heap_replace(struct ubifs_info *c, |
257 | struct ubifs_lprops *old_lprops, | ||
258 | struct ubifs_lprops *new_lprops, int cat) | 256 | struct ubifs_lprops *new_lprops, int cat) |
259 | { | 257 | { |
260 | struct ubifs_lpt_heap *heap; | 258 | struct ubifs_lpt_heap *heap; |
@@ -362,7 +360,7 @@ void ubifs_replace_cat(struct ubifs_info *c, struct ubifs_lprops *old_lprops, | |||
362 | case LPROPS_DIRTY: | 360 | case LPROPS_DIRTY: |
363 | case LPROPS_DIRTY_IDX: | 361 | case LPROPS_DIRTY_IDX: |
364 | case LPROPS_FREE: | 362 | case LPROPS_FREE: |
365 | lpt_heap_replace(c, old_lprops, new_lprops, cat); | 363 | lpt_heap_replace(c, new_lprops, cat); |
366 | break; | 364 | break; |
367 | case LPROPS_UNCAT: | 365 | case LPROPS_UNCAT: |
368 | case LPROPS_EMPTY: | 366 | case LPROPS_EMPTY: |
diff --git a/fs/ubifs/scan.c b/fs/ubifs/scan.c index aab87340d3de..16f03d9929e5 100644 --- a/fs/ubifs/scan.c +++ b/fs/ubifs/scan.c | |||
@@ -175,7 +175,6 @@ struct ubifs_scan_leb *ubifs_start_scan(const struct ubifs_info *c, int lnum, | |||
175 | void ubifs_end_scan(const struct ubifs_info *c, struct ubifs_scan_leb *sleb, | 175 | void ubifs_end_scan(const struct ubifs_info *c, struct ubifs_scan_leb *sleb, |
176 | int lnum, int offs) | 176 | int lnum, int offs) |
177 | { | 177 | { |
178 | lnum = lnum; | ||
179 | dbg_scan("stop scanning LEB %d at offset %d", lnum, offs); | 178 | dbg_scan("stop scanning LEB %d at offset %d", lnum, offs); |
180 | ubifs_assert(offs % c->min_io_size == 0); | 179 | ubifs_assert(offs % c->min_io_size == 0); |
181 | 180 | ||
diff --git a/fs/ubifs/super.c b/fs/ubifs/super.c index b16ef162344a..6c397a389105 100644 --- a/fs/ubifs/super.c +++ b/fs/ubifs/super.c | |||
@@ -1737,8 +1737,11 @@ static void ubifs_remount_ro(struct ubifs_info *c) | |||
1737 | 1737 | ||
1738 | dbg_save_space_info(c); | 1738 | dbg_save_space_info(c); |
1739 | 1739 | ||
1740 | for (i = 0; i < c->jhead_cnt; i++) | 1740 | for (i = 0; i < c->jhead_cnt; i++) { |
1741 | ubifs_wbuf_sync(&c->jheads[i].wbuf); | 1741 | err = ubifs_wbuf_sync(&c->jheads[i].wbuf); |
1742 | if (err) | ||
1743 | ubifs_ro_mode(c, err); | ||
1744 | } | ||
1742 | 1745 | ||
1743 | c->mst_node->flags &= ~cpu_to_le32(UBIFS_MST_DIRTY); | 1746 | c->mst_node->flags &= ~cpu_to_le32(UBIFS_MST_DIRTY); |
1744 | c->mst_node->flags |= cpu_to_le32(UBIFS_MST_NO_ORPHS); | 1747 | c->mst_node->flags |= cpu_to_le32(UBIFS_MST_NO_ORPHS); |
@@ -1804,8 +1807,11 @@ static void ubifs_put_super(struct super_block *sb) | |||
1804 | int err; | 1807 | int err; |
1805 | 1808 | ||
1806 | /* Synchronize write-buffers */ | 1809 | /* Synchronize write-buffers */ |
1807 | for (i = 0; i < c->jhead_cnt; i++) | 1810 | for (i = 0; i < c->jhead_cnt; i++) { |
1808 | ubifs_wbuf_sync(&c->jheads[i].wbuf); | 1811 | err = ubifs_wbuf_sync(&c->jheads[i].wbuf); |
1812 | if (err) | ||
1813 | ubifs_ro_mode(c, err); | ||
1814 | } | ||
1809 | 1815 | ||
1810 | /* | 1816 | /* |
1811 | * We are being cleanly unmounted which means the | 1817 | * We are being cleanly unmounted which means the |