diff options
author | Vincent Stehlé <vincent.stehle@intel.com> | 2016-08-12 15:26:30 +0200 |
---|---|---|
committer | Sasha Levin <alexander.levin@verizon.com> | 2016-08-31 22:05:44 -0400 |
commit | 53cd25db577885493f93b997aaf46dda0da494c5 (patch) | |
tree | 191bac771976f3d924a4d47d1fd7b43936acfbcf /fs/ubifs | |
parent | e09bf1516765b02960afa72f3dc9ec2625ea1f95 (diff) | |
download | lwn-53cd25db577885493f93b997aaf46dda0da494c5.tar.gz lwn-53cd25db577885493f93b997aaf46dda0da494c5.zip |
ubifs: Fix assertion in layout_in_gaps()
[ Upstream commit c0082e985fdf77b02fc9e0dac3b58504dcf11b7a ]
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>
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Diffstat (limited to 'fs/ubifs')
-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 7a205e046776..9bece329a12c 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; |