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

Commit 1721095e authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Alistair Strachan
Browse files

FROMLIST: jffs2: pass the correct prototype to read_cache_page



Fix the callback jffs2 passes to read_cache_page to actually have the
proper type expected.  Casting around function pointers can easily
hide typing bugs, and defeats control flow protection.

Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Change-Id: Ie5bfeff009a555c1894784458d2fe79a87f1be03
Link: https://lkml.org/lkml/2019/5/1/295


Signed-off-by: default avatarSami Tolvanen <samitolvanen@google.com>
parent c87c5f55
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -109,9 +109,9 @@ static int jffs2_do_readpage_nolock (struct inode *inode, struct page *pg)
	return ret;
}

int jffs2_do_readpage_unlock(struct inode *inode, struct page *pg)
int jffs2_do_readpage_unlock(void *data, struct page *pg)
{
	int ret = jffs2_do_readpage_nolock(inode, pg);
	int ret = jffs2_do_readpage_nolock(data, pg);
	unlock_page(pg);
	return ret;
}
+1 −1
Original line number Diff line number Diff line
@@ -686,7 +686,7 @@ unsigned char *jffs2_gc_fetch_page(struct jffs2_sb_info *c,
	struct page *pg;

	pg = read_cache_page(inode->i_mapping, offset >> PAGE_SHIFT,
			     (void *)jffs2_do_readpage_unlock, inode);
			     jffs2_do_readpage_unlock, inode);
	if (IS_ERR(pg))
		return (void *)pg;

+1 −1
Original line number Diff line number Diff line
@@ -155,7 +155,7 @@ extern const struct file_operations jffs2_file_operations;
extern const struct inode_operations jffs2_file_inode_operations;
extern const struct address_space_operations jffs2_file_address_operations;
int jffs2_fsync(struct file *, loff_t, loff_t, int);
int jffs2_do_readpage_unlock (struct inode *inode, struct page *pg);
int jffs2_do_readpage_unlock(void *data, struct page *pg);

/* ioctl.c */
long jffs2_ioctl(struct file *, unsigned int, unsigned long);