Hello,
Commit - fa9150a84c - replaces a call to generic_writepages() in
f2fs_write_data_pages() with write_cache_pages(), with a function pointer
argument pointing to routine: __f2fs_writepage.
-> https://git.kernel.org/linus/fa9150a84ca333f68127097c4fa1eda4b3913a22
The patch below adds a NULL pointer check, from generic_writepages(), to avoid
a possible NULL pointer dereference, in case if - mapping->a_ops->writepage -
is NULL.
===
$ git diff
diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c
index 7bd22a2..9841372 100644
--- a/fs/f2fs/data.c
+++ b/fs/f2fs/data.c
@@ -550,9 +550,16 @@ redirty_out:
static int __f2fs_writepage(struct page *page, struct writeback_control *wbc,
void *data)
{
+ int ret = 0;
struct address_space *mapping = data;
- int ret = mapping->a_ops->writepage(page, wbc);
+
+ /* deal with chardevs and other special file */
+ if (!mapping->a_ops->writepage)
+ return ret;
+
+ ret = mapping->a_ops->writepage(page, wbc);
mapping_set_error(mapping, ret);
+
return ret;
}
===
Thank you.
--
Prasad J Pandit / Red Hat Security Response Team
DB7A 84C5 D3F9 7CD1 B5EB C939 D048 7860 3655 602B
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html