f2fs: add NULL pointer check
authorP J P <ppandit@redhat.com>
Wed, 3 Apr 2013 02:38:00 +0000 (11:38 +0900)
committerJaegeuk Kim <jaegeuk.kim@samsung.com>
Wed, 3 Apr 2013 08:27:52 +0000 (17:27 +0900)
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

  This patch adds a NULL pointer check in f2fs_write_data_pages() to avoid
  a possible NULL pointer dereference, in case if - mapping->a_ops->writepage -
  is NULL.

Signed-off-by: P J P <ppandit@redhat.com>
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
fs/f2fs/data.c

index 47a2d7c..cf9ff5f 100644 (file)
@@ -559,6 +559,10 @@ static int f2fs_write_data_pages(struct address_space *mapping,
        int ret;
        long excess_nrtw = 0, desired_nrtw;
 
+       /* deal with chardevs and other special file */
+       if (!mapping->a_ops->writepage)
+               return 0;
+
        if (wbc->nr_to_write < MAX_DESIRED_PAGES_WP) {
                desired_nrtw = MAX_DESIRED_PAGES_WP;
                excess_nrtw = desired_nrtw - wbc->nr_to_write;