[PATCH 2/6] fscrypt: Release fscrypt context on in-place encryption

Eric Biggers ebiggers at google.com
Fri Dec 2 00:12:49 PST 2016


On Thu, Dec 01, 2016 at 11:14:54PM +0100, Richard Weinberger wrote:
> From: David Gstir <david at sigma-star.at>
> 
> In case of in-place encryption ctx must be released right away.
> Otherwise ctx is never freed.
> 

I didn't notice this before, but the fscrypt_ctx isn't actually used at all in
the "own pages" crypto case.  So there's really no need to allocate one.  How
about we just handle the "own pages" case at the beginning of
fscrypt_encrypt_page():

	if (inode->i_sb->s_cop->flags & FS_CFLG_OWN_PAGES) {
		err = do_page_crypto(inode, FS_ENCRYPT, lblk_num, page, page,
				     len, offs, gfp_flags);
		if (err)
			return ERR_PTR(err);
		return page;
	}

	(and the rest essentially the same as it used to be)

Eric



More information about the linux-mtd mailing list