lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <20200106204357.GA254289@gmail.com> Date: Mon, 6 Jan 2020 12:43:58 -0800 From: Eric Biggers <ebiggers@...nel.org> To: Jaegeuk Kim <jaegeuk@...nel.org> Cc: linux-fscrypt@...r.kernel.org, linux-fsdevel@...r.kernel.org, linux-ext4@...r.kernel.org, Victor Hsieh <victorhsieh@...gle.com>, linux-f2fs-devel@...ts.sourceforge.net Subject: Re: [PATCH] fs-verity: implement readahead of Merkle tree pages On Mon, Jan 06, 2020 at 10:15:08AM -0800, Jaegeuk Kim wrote: > > static struct page *f2fs_read_merkle_tree_page(struct inode *inode, > > - pgoff_t index) > > + pgoff_t index, > > + unsigned long num_ra_pages) > > { > > + struct page *page; > > + > > index += f2fs_verity_metadata_pos(inode) >> PAGE_SHIFT; > > > > - return read_mapping_page(inode->i_mapping, index, NULL); > > + page = find_get_page(inode->i_mapping, index); > > + if (!page || !PageUptodate(page)) { > > + if (page) > > + put_page(page); > > + else if (num_ra_pages > 1) > > + f2fs_merkle_tree_readahead(inode->i_mapping, index, > > + num_ra_pages); > > + page = read_mapping_page(inode->i_mapping, index, NULL); > > + if (IS_ERR(page)) > > + return page; > > We don't need to check this, but can use the below return page? > Indeed, I'll remove the unnecessary IS_ERR(page) check. > > + } > > mark_page_accessed(page)? > > > + return page; > > } Good idea, but read_mapping_page() already calls mark_page_accessed(). It's just find_get_page() that doesn't. So after this patch, mark_page_accessed() is no longer called in the case where the page is already cached and Uptodate. I'll change it to use: find_get_page_flags(inode->i_mapping, index, FGP_ACCESSED); - Eric
Powered by blists - more mailing lists