diff options
author | Vincent Stehlé <vincent.stehle@intel.com> | 2016-08-12 13:26:30 (GMT) |
---|---|---|
committer | Richard Weinberger <richard@nod.at> | 2016-08-23 21:02:40 (GMT) |
commit | c0082e985fdf77b02fc9e0dac3b58504dcf11b7a (patch) | |
tree | b14fae90c71b66f98072597d31945c3d2b59070f /fs | |
parent | 7a1dcf6adaa7cc4b8cd93a3883267497a77b1051 (diff) | |
download | linux-c0082e985fdf77b02fc9e0dac3b58504dcf11b7a.tar.xz |
ubifs: Fix assertion in layout_in_gaps()
An assertion in layout_in_gaps() verifies that the gap_lebs pointer is
below the maximum bound. When computing this maximum bound the idx_lebs
count is multiplied by sizeof(int), while C pointers arithmetic does take
into account the size of the pointed elements implicitly already. Remove
the multiplication to fix the assertion.
Fixes: 1e51764a3c2ac05a ("UBIFS: add new flash file system")
Cc: <stable@vger.kernel.org>
Signed-off-by: Vincent Stehlé <vincent.stehle@intel.com>
Cc: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/ubifs/tnc_commit.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ubifs/tnc_commit.c b/fs/ubifs/tnc_commit.c index b45345d..51157da 100644 --- a/fs/ubifs/tnc_commit.c +++ b/fs/ubifs/tnc_commit.c @@ -370,7 +370,7 @@ static int layout_in_gaps(struct ubifs_info *c, int cnt) p = c->gap_lebs; do { - ubifs_assert(p < c->gap_lebs + sizeof(int) * c->lst.idx_lebs); + ubifs_assert(p < c->gap_lebs + c->lst.idx_lebs); written = layout_leb_in_gaps(c, p); if (written < 0) { err = written; |