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

Commit 3c6af7fa authored by Anton Altaparmakov's avatar Anton Altaparmakov
Browse files

NTFS: Fix a potential overflow by casting (index + 1) to s64 before doing a


      left shift using PAGE_CACHE_SHIFT in fs/ntfs/file.c.  Thanks to Andrew
      Morton pointing this out to.

Signed-off-by: default avatarAnton Altaparmakov <aia21@cantab.net>
parent 33bc227e
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -248,7 +248,7 @@ static int ntfs_attr_extend_initialized(ntfs_inode *ni, const s64 new_init_size,
		 * enough to make ntfs_writepage() work.
		 * enough to make ntfs_writepage() work.
		 */
		 */
		write_lock_irqsave(&ni->size_lock, flags);
		write_lock_irqsave(&ni->size_lock, flags);
		ni->initialized_size = (index + 1) << PAGE_CACHE_SHIFT;
		ni->initialized_size = (s64)(index + 1) << PAGE_CACHE_SHIFT;
		if (ni->initialized_size > new_init_size)
		if (ni->initialized_size > new_init_size)
			ni->initialized_size = new_init_size;
			ni->initialized_size = new_init_size;
		write_unlock_irqrestore(&ni->size_lock, flags);
		write_unlock_irqrestore(&ni->size_lock, flags);